Review Request: Fancy-schmancy Kickoff layout tricks for dissident panel placements

Will Stephenson wstephenson at kde.org
Tue Feb 26 11:55:26 CET 2008


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://mattr.info/r/224/
-----------------------------------------------------------

Review request for Plasma.


Summary
-------

KDE 3 Kickoff amends its layout according to the direction the popup is appearing relative to the launcher button.  This patch adds this to KDE 4 kickoff and extends this behaviour to improve the ergonomics of kickoff when its launcher is not in the standard position.  This was a TODOs for KDE 3 kickoff that never got done.

from Launcher::setLauncherOrigin(): (ui/launcher.cpp)

Determines optimum layout according to Fitt's Law: (isn't invoking Fitt's law turning into a special case of Godwin's law for usability applications?)

Assumption 1: The hardcoded tab order defines a desirable priority order
Goal 1: TabBar alignment is perpendicular to direction of mouse travel from launcher to target, to prevent mousing over non-target tabs and potential unnecessary tab switches
Goal 2 the movie: Tabs are ordered by decreasing priority along the mouse travel vector away from the launcher
Constraint: The search widget is different to the tabs and the footer is of lowest priority so these should always be situated furthest away from the origin

This gives vertical tabs when Kickoff is used in a vertical panel, and it reorders the tabs so the Favourites tab is always closest to the launcher, etc.

NB I haven't hacked the paint code to draw the tabs in non-South layouts yet, I suck at painting and maybe someone else who doesn't would be able to write this elegantly.


Diffs
-----

  /trunk/KDE/kdebase/workspace/plasma/applets/kickoff/applet/applet.cpp
  /trunk/KDE/kdebase/workspace/plasma/applets/kickoff/ui/launcher.h
  /trunk/KDE/kdebase/workspace/plasma/applets/kickoff/ui/launcher.cpp

Diff: http://mattr.info/r/224/diff


Testing
-------


Screenshots
-----------


  http://mattr.info/r/224/s/21/

  http://mattr.info/r/224/s/22/

  http://mattr.info/r/224/s/23/

  http://mattr.info/r/224/s/24/


Thanks,

Will



More information about the Panel-devel mailing list