Bug 289519

Summary: Use mouse button to provide "Back" in Kickoff
Product: [Unmaintained] plasma4 Reporter: Rick Stockton <rickstockton>
Component: widget-kickoffAssignee: Rick Stockton <rickstockton>
Status: RESOLVED FIXED    
Severity: wishlist CC: rickstockton
Priority: NOR Keywords: regression, usability
Version: unspecified   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Rick Stockton 2011-12-21 18:40:06 UTC
Version:           unspecified (using Devel) 
OS:                Linux

KDE 4.9 will feature a QML-based Kickoff. http://bugs.kde.org/show_bug.cgi?id=274489 (and it's Duplicates) request that a 'Back' Button be added to the GUI, but this would increase code size, testing requirements, and maintenance headaches by an UNACCEPTABLE amount.

'Back' Functionality can probably be provided, without distorting the GUI code, by using a mouse button instead. The appropriate button is the 'Back' Button, Qt::XButton1. 

Reproducible: Didn't try

Steps to Reproduce:
Use Kickoff in KDE 4.7 or 4.8, look for a GUI Button to perform 'back' functionality.

Actual Results:  
It's no longer available, and Kickoff doesn't listen for a click of the "Back" Button on your mouse.

Expected Results:  
Pressing the "Back" Button (on the mouse) should behave in the manner of the GUI Button in KDE 4.6. 

Study for possible inclusion in 4.9, after Qt5 becomes more stable.
Comment 1 Rick Stockton 2011-12-21 18:54:48 UTC
DO NOT! "spam" this bug with comments which simply duplicate Requests that the pre-4.7 GUI button be "restored" in the new version of Kickoff.

That request was considered via Bug 274489, and rejected for good reasons. That was considered, very carefully, but some of KDE's most important Designers and Developers. THIS is the "back button" enhancement which we can probably provide, in the next Release.

And yes, you'll need to buy a mouse with at least two thumb buttons ;).
Comment 2 Rick Stockton 2012-03-20 17:11:53 UTC
(In reply to comment #0)
> Version:           unspecified (using Devel) 
> OS:                Linux
> 
> KDE 4.9 will feature a QML-based Kickoff.
> http://bugs.kde.org/show_bug.cgi?id=274489 (and it's Duplicates) request
> that a 'Back' Button be added to the GUI, but this would increase code size,
> testing requirements, and maintenance headaches by an UNACCEPTABLE amount.
> 
> 'Back' Functionality can probably be provided, without distorting the GUI
> code, by using a mouse button instead. The appropriate button is the 'Back'
> Button, Qt::XButton1. 
> 
> Study for possible inclusion in 4.9, after Qt5 becomes more stable.

I will ALSO be doing this as a regression bugfix in 4.8.x. Although the code is completely different,
both implementations are easy to write.

With the 4.8 widget-based program, we already "hear" the Qt::BackButton button Press event. We simply fail to treat it any differently than the Qt::LeftButton 'click': It either executes the item, or or shifts the view to the contents of the "clicked" Directory. (View moves only to the right.)

The back button should move the view to the parent item, if one exists.
Comment 3 Rick Stockton 2012-03-24 03:17:59 UTC
I have completed, and tested, the following mouse and wheel events:

#1 tilt-wheel Left: this goes 'back' to the parent item (we are in a submenu or specific child item, and a "parent" exists.)
#2 tilt-wheel Right: this enters the submenu, if the currently chosen item has children. (i.e., the right
             arrow is shown, and it is a collection -- not an individual executable.)
#3 Back Button: works like #1.
#4 Forward Button: works like #2.

AFAIK, there are lots of mice with tilt wheels which DON'T have thumb buttons -- and no mice at all, which contain thumb buttons WITHOUT a tilt wheel. So the Tilt-Wheel should actually be useable for a larger number of people than the Back/Forward buttons.
Comment 4 Rick Stockton 2012-03-24 17:35:06 UTC
(In reply to comment #1)
> 
> And yes, you'll need to buy a mouse with at least two thumb buttons ;).
No, you merely need a mouse with left/right Tilt-Wheel. No thumb buttons required. :)
Comment 5 Rick Stockton 2012-03-25 21:19:12 UTC
enhancement is now in code review: https://git.reviewboard.kde.org/r/104406/
Comment 6 Rick Stockton 2012-03-28 04:18:54 UTC
Git commit 3d216ac247e92575830a7a99c2d0b849b069f103 by Rick Stockton.
Committed on 28/03/2012 at 06:05.
Pushed by stockton into branch 'KDE/4.8'.

Add Tilt-Wheel, "XButton1", "XButton2" support for Kickoff

Workaround removal of the "Back Button" (in 4.7): In the
"Applications" GUI, users with tilt-wheel mice can use
"Tilt-Left" as a "Back Button" equivalent. If the focused
item is a Parent for other items, "Tilt-Right" will move
to the right, expanding the Children.

For "gamer" mice with thumb buttons, "XButton1" (AKA the
"back" button) will work just like the "Tilt-Left" Wheel
Event; and "XButton2" will work just like "Tilt-Right".
REVIEW: 104406

M  +28   -0    plasma/desktop/applets/kickoff/ui/flipscrollview.cpp
M  +1    -0    plasma/desktop/applets/kickoff/ui/flipscrollview.h

http://commits.kde.org/kde-workspace/3d216ac247e92575830a7a99c2d0b849b069f103