Bug 464449 - Feature to clone existing Activity
Summary: Feature to clone existing Activity
Status: CONFIRMED
Alias: None
Product: systemsettings
Classification: Applications
Component: kcm_activities (show other bugs)
Version: unspecified
Platform: openSUSE Linux
: NOR wishlist
Target Milestone: ---
Assignee: Ivan Čukić
URL:
Keywords: usability
Depends on:
Blocks:
 
Reported: 2023-01-18 13:04 UTC by realsircoleman
Modified: 2023-02-25 12:54 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description realsircoleman 2023-01-18 13:04:32 UTC
SUMMARY
By default, a newly created activity contains a black wallpaper (or rather, no wallpaper), uses the Folder View layout, and contains absolutely no widgets. (The wallpaper and layout may be defaults of openSUSE, but that's irrelevant).

I have a set of guidelines for how plasma widgets are placed, sized, and configured on most of my activities. However, the creation of a new activity means that I have to insert the same set of widgets, as per the guidelines, all over again, and configure them, size them, and place them.

I hope it's understandable that this causes the creation of new activities that have the same "spirit" as other activities (disregarding any particular modifications or customizations I make for that particular activity) rather painfully long and boring, not to mention unproductive.

Thus, the whole process of creating a new activity either becomes rather expensive and I'd want to avoid doing it, or I have to customize each and every new activity manually every time I create one.

It would be reasonable if one could define, at activity creation time, whether it should be a "clone" of an existing one. For instance, I may maintain a plain activity that contains the customizations that I'd want to have in each activity (let's call this particular activity "plain"), then whenever I may want to create a new activity (let's call this "new"), I choose one of the existing activities ("plain" in this case), and the newly created activity, "new", may be indistinguishable from "plain", apart from the fact that the activity manager says they both have different names and treats them as distinct.

Thus, I could use existing activities as templates for newly created activities, and I could either apply additional, unique customizations, or I may just stick to how the activity looks, since it already looks a lot like how I'd want it to be.

OBSERVED RESULT
The process of customizing activities is too manual, and it's kind of impossible to automatically specify how newly created activities should look like (that is, what other activity it should look like).

EXPECTED RESULT
An option to specify what other existing activity the to be created activity should look like, what widgets and customiztaions to apply from the existing one, etc.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: openSUSE Tumbleweed
KDE Plasma Version: 5.26.4
KDE Frameworks Version: 5.101.0
Qt Version: 5.17.7

ADDITIONAL INFORMATION
We may take this a step further and define templates, which are just snapshots of how a particular activity looks like, is customized, what widgets it has, at a particular point of time, and the template be saved locally, independently from the original activity that created it.

Thus, we don't need to have the "template activity" as an existing activity every time we want to "clone" it. Instead, we permanently maintain how it is as a local snapshot, which can be used independent of the original activity.

Such templates may be exported as an independent file (or archive), containing all the necessary information. This exported file may then be transferred to different systems, and each one of them, using this file, could recreate the original activity.

Further, we may choose which widgets we may want to clone from the template activity, if we could consider widgets as uniquely identified objects on a grid (the desktop, in this case). In that case, we would have full control over which widgets get copied, and which to leave out.
Comment 1 Nate Graham 2023-01-18 20:23:35 UTC
Seems reasonable.