Σελίδες

Saturday 3 September 2016

Now Dock Plasmoid & Panel, a new journey...

Hello everyone,

time has passed and a new development effort stuck up in my brain :)!!  Three years ago, I was struggling to support the WorkFlow Components and promote the idea around Activities and WorkAreas. This was a very succesful project in my opinion that promoted also a lot the concept around Activities, which I consider as a fanstastic technology for the users workflows. But time passed, Plasma 5 got into our lives :) and its new components and design decisions around Activities found me more than satisfied.


Now Dock

It was around two months before that I first used Plank. This is a dock created around GNOME technologies which implements a very beautiful and easy dock for a Linux desktop with very attractive animations and smoothness. I liked it a lot but my Plasma desktop was obvious that it was a second citizen. I wanted something that would show its love around Plasma! That would use the fastastic tank of plasmoids and could understand of course Activities which have made my life a lot simpler.


hovering the now dock plasmoid


In that sense I started playing with qml again and after a little time the first version of Now Dock Plasmoid appeared in kdelook. The Now Dock plasmoid tries to be an alternative taskmanager for Plasma and its main concerns are beautiful animations, easy to use and smoothness. Its currently implemented features are:


  • smooth zoom animation like Plank
  • support launchers
  • various little animations all around
  • progress visual indicator for tasks e.g. copying a file (v0.3 - master)
  • using plasma theme for panel and colors
  • support dragging tasks and drag n' drop from outside
  • can be added in desktop or a panel
  • different icon sizes

hovering now dock panel

hovering now dock panel above a window

A litlle after plasmoid's publishment there were users that wanted a more personalized experience, for example a way to add their Places, clocks, etc in Now Dock. It was obvious then that it could be possible that a Now Dock Panel could exist. My thought was around a panel that would animate its plasmoids like the plasmoid was. To be honest I wasnt sure at that point that this was possible. But things moved more smoothly than I feared in the beggining. The Now Dock Panel lives in github for now but in a few days its first version (v0.3 in order to be in parallel with the plasmoid) will be published in kdelook. Its currently implemented features are:
  • animate its plasmoids
  • set the panel visual size in order to support plasmoids that live in the air and animate outside the panel
  • its a normal panel so you can add your plasmoids in it with the traditional way
  • can be set in any of the screen's four edges
  • lock any plasmoid you dont want to animate
  • interacts smoothly with the Now Plasmoid in order not to break the animation
  • move your plasmoids 


The Now Dock plasmoid in kdelook stands in version 0.2.2 but shortly versions 0.3 for both the plasmoid and the panel will be published. You can find their code at:


Abstract Roadmap
  1. Release Now Dock Panel and Plasmoid version 0.3
  2. take some feedback from kdelook users and in general the KDE community
  3. try to make this a Plasma project
  4. full code polishing, changing codepaths when it's needed for better practises
  5. finally included in an official repo. e.g. extras???
  6. maintaining littly by little after that :)
phase 1-2, will be probably a month from now
phase 3-4, will probably need two months at least
phase 5, we can not know at this stage

------------------

What you should know if you try this components!!!
  1. The transparency for the panel is offered currently by your plasma theme. There is a way in plasma themes to make a specific panel fully transparent based on its position (top, bottom, left etc.). I have created a python script and gui in order to help you with this. From the gui you can choose your theme, which panel you want transparent and what shadows you would like to be shown and the script creates a new theme that has only the specific panel transparent.
  2. For the above behavior of panel transparency there are messages from the great Plasma team that it could be supported in Plasma 5.9 so the theme solution it will not be needed any more.
  3. Currently the height or width that is needed from the panel in order to show all the animations must be set from the user. There is in the Now Dock plasmoid a configuration option to show you a red line that marks how much space is needed for the animations.

Acknowledgements:
  1. To the great maintainers of the new libtaskmanager and the taskmanager plasmoids based on which the Now Dock plasmoid is based.
  2. To the great maintainers of the Plasma's Panel component on which the Now Dock Panel is also based.
  3. To the great Plasma team which had the patience to answer me so many naive questions during the last weeks... :)

have fun everyone...

regards,
michail

P.S. I would love to have your feedback and sent me also your issues in the project's github page...