Review Request: Fancy-schmancy Kickoff layout tricks for dissident panel placements
Aaron Seigo
aseigo at kde.org
Tue Feb 26 17:45:22 CET 2008
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://mattr.info/r/224/#review201
-----------------------------------------------------------
i like the general idea, but i have some reservations. i'm about to bounce it off of celeste.
as for the tab drawing properly, add a method to TabBar that returns a QPainterPath, takes a Position and which for now contains the current PainterPath created on line 126 of tabbar.cpp and i can fill that in with the right stuff once this is finalized and committed.
/trunk/KDE/kdebase/workspace/plasma/applets/kickoff/applet/applet.cpp
<http://mattr.info/r/224/#comment143>
it's code like this in kickoff that makes me feel that Launcher should just know about it's associated Applet.
/trunk/KDE/kdebase/workspace/plasma/applets/kickoff/ui/launcher.cpp
<http://mattr.info/r/224/#comment144>
is it worth changing the button order depending on whether it's on the left or right side? this seems to me like it would be somewhat destroy muscle memory usage.
i do agree with the vertical tabs and swapping the tabs/search though.
- Aaron
On 2008-02-26 05:00:51, Will Stephenson wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://mattr.info/r/224/
> -----------------------------------------------------------
>
> (Updated 2008-02-26 05:00:51)
>
>
> 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
> -----------
>
> Launcher northwest, panel TopEdge
> http://mattr.info/r/224/s/21/
> Launcher SE, panel BottomEdge
> http://mattr.info/r/224/s/22/
> Launcher NE, panel RightEdge (my desktop layout)
> http://mattr.info/r/224/s/23/
> Launcher NW, panel LeftEdge
> http://mattr.info/r/224/s/24/
>
>
> Thanks,
>
> Will
>
>
More information about the Panel-devel
mailing list