I’ve always had more than a few activities lying around - mainly one for each project I’m working on. Be it KDE, Work, Studies, etc. But I was basing my workflow not only on them, but also on virtual desktops. I had four of them, the first one to keep the web browser and the mail client in, two for actual work (that is related to the current activity), and the last one to keep the music player in.

I have noticed that this setup does not really force me to switch activities that often, which, in turn, did not expose all the ‘papercuts’ in the UI.

I’ve decided to change my workflow a bit.

Firefox

The first step was to create quite a few Firefox (Iceweasel) profiles. One for each activity, and a couple of different ones for the ‘Web’ activity (I like to separate social sites like gmail, facebook, etc. from other sites that I visit).

Now I needed to make each profile stick to its related activity. Unfortunately, all Firefox profiles have the same window properties, so KWin rules were not going to work for them.

Fortunately, there is a nice extension called ‘Nightly Tester Tools’ which allows setting a custom window title for Firefox. So, instead of it showing the application name, I set it up to show the name of the current profile. This allowed creating KWin rules based also on the window title (match on regular expression 'ProfileName: .*'), and not only the type.

With this setup, if I want to access my mail, I have to be in the ‘Web’ activity, and if I wanted to reach bugs.kde.org, I need to switch to ‘KDE Development’ activity.

I’ve also written a small script that starts a different Firefox profile, depending on activity (I know somebody already created something like this quite a while ago, but I was not able to find it).

Keyboard accessibility

While the activity switcher was always mouse-friendly, in the days of Plasma 4.x it was not as pleasant to use for heavy keyboard users.

Maybe that is the reason why I thought that activities are not meant to be switched often, and why I had special virtual desktops for the things that often interrupt my work (messaging and music).

The current activity switcher is a rather different beast. I have only one activity tied to a keyboard shortcut (the ‘Web’ activity), and I’m switching to all of the others by opening the activity switcher (Meta+Q) typing a few letters from the name of the activity I want to switch to, and pressing enter.

I have to say it is a really fast workflow.

The only thing that I think might improve it is a keyboard shortcut for switching back to the previous activity – since I’m often switching to the Web activity, and back to the project I was working on, it could be a nice time-saver.

I don’t intend to make this shortcut enabled by default, but it could be a nice option for people who have a similar workflow as I currently do.

I have also seen that for my workflow, the Meta+Tab switching of activities is useless and much slower than the above type-a-part-of-the-name-and-press-enter.

Papercuts

The main issue I have now is that I sometimes forget whether I have something open in an activity or not. This is something that I was always planning on creating, but never found the time.

What are your papercuts when working with activities?