{November 9, 2010} Recent Activity… uh.. activities

:) There’s been lots of fun plasma stuff going on as feature freeze approaches.

Ivan’s been doing lots of stuff behind the scenes, making big changes to the activitymanager service. He’s also been polishing up the UI – you’ll notice that it highlights the current activity now (although the effect’s a bit subtle in whatever theme I’m using), various little bugs have been cleaned out, and it’s possible to edit the name and icon right there. :)

Then there’s the template thing Ivan mentioned – I hardly had to write any code for this really. The options are organized so that new users won’t be as overwhelmed (it was.. educational.. watching people try the UI at the opensuse conference) and anyone can write templates – little javascript snippets that set up widgets for an activity. :)

There’s one unfortunate thing here – the guy who was planning to actually create a set of templates for 4.6 is busy, and the freeze is thursday, and all we have right now is one ugly demo template I threw together in a few minutes. So if you want to create some – well, come pester me to document the process. ;) Hopefully I’ll have time to add a GHNS button to the UI too, and then more templates can be downloaded – but it’d be nice to have more than one shipped with 4.6. :)

That’s not all that’s been going on, though. :) Thanks to ivan’s changes under the hood, we can finally hook up my activity-session stuff to an actual UI! :D Clicking the little stop button in plasma now properly closes it, windows and all. :)

There’s more to do, like queuing things under the hood so that you don’t have to wait for one activity to finish shutting down before clicking hte stop button on the next; that’ll give us something to do after freeze. ;) I’m sure bugs will turn up too, now that I’m not the only person using the session thing. In fact, this will also expose bugs in most applications’ session handling. I already know that many qt apps (assistant, anki, etc) are not very good at session-restore; I’m still hoping there are a few things I can do on the kwin/ksmserver side, but a lot of this is up to the application itself.

One more thing: I created a dataengine for activities. This means that if you think you can do better than the current activity management UI, you can easily give it a try. :) There’s even examples to look at – I’ve ported the activitybar plasmoid and the switchactivity mouse plugin to use it. I haven’t added all the new API yet (you can add/remove activities but not open/close them) but I’ll get that done today or tomorrow. :)

One thing I’d love to see is a popupapplet for quickly switching activities. The activitybar takes too much space for my liking – I just want a cute little icon showing my current activity, and a popup that lets me switch to the others. then I could put it right into my regular panel. :) I’d write the applet myself if I only had the time…

btw, sorry for the lack of screenshots – my ksnapshot is crashing instantly this week. the joys of running trunk, eh? ;)

Maybe I’ll do a screencast instead, this weekend. :)