My ongoing work on the libtaskmanager rewrite and applet adaptation is now at:

kde:clones/plasma-workspace/hein/libtmng (library)
kde:clones/plasma-desktop/hein/libtmng (applet)

Master branch for both, libtaskmanagerng/ and applets/{taskmanagerng,icontasksng} respectively.

Both the library and the applets currently install separately to ease testing/comparisons, so you can just "make install" the subfolders, then pick one of the applets marked "(NG backend)".

What to expect:
* It works acceptably on X11 (it's my daily driver), unless you can't live without grouping or manual sorting (both are on the way, see below). * I took the opportunity to reassess and improve some of the behaviors as I was rewriting, e.g. better mapping of startup notifications and windows to apps allows for improved sorting, meaning for example startup notifications will now appear where the window will replace them when using alphabetic sorting (the default) for a less busy panel. * Some things are faster, e.g. because the new model-oriented API simplifies data provision and caching (no/less work done unless data roles are fetched). Other things still need to be profiled and optimized more. * Wayland displays obvious feature gaps, but it's definite improvement over the old stack and makes the Wayland session more dogfoodable already.
* It probably eats children. And kittens. And your candy stash.

The work ahead:
* I'll be filing many small reviews against kwayland in the upcoming weeks to fill in required-yet-missing API (e.g. missing actions). I will also need to add radio button support in PlasmaComponents.MenuItem for the context menu rewrite. Expect talk/brainstorming in our Monday hangouts, also around the WindowMetaData lib plans. * Manual sort mode and grouping will of course return - the data and extension points for them exist in the current code, and I have most of it outlined.
* Write many more tests and fix all the bugs they will _definitely_ turn up.

There's a more complete list in plasma-workspace/libtaskmanagerng/TODO.txt, and areas of the code that are known to need more work are generally marked with FIXMEs.

Note in terms of priorities, while Wayland is the ultimate goal, X11 is the prerequisite. The new lib improves over the old one by achieving greater separation of concerns and composability, making it possible to add Wayland support while sharing common logic between the windowing systems. The remaining Wayland bits are reasonably easy to add, while the old lib wasn't at all suited to it. However, first it needs to be merged, and it needs to be regression-free for 5.7. That requires feature parity and proven quality (i.e. tests) on X.

Feel free to give it a look and comment at this point. My aim is to get a bit more serious about polling for reviews and eventually a merge after more progress on some of the outstanding todos.


Cheers,
Eike
_______________________________________________
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel

Reply via email to