Bug 161087 - conflicting directions of mouse scroll when zooming
Summary: conflicting directions of mouse scroll when zooming
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Usability-Mouse (show other bugs)
Version: 0.9.4
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-04-20 22:00 UTC by Mikolaj Machowski
Modified: 2017-08-06 09:41 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In: 0.9.4


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mikolaj Machowski 2008-04-20 22:00:52 UTC
Version:           0.9.4-svn (using Devel)
Installed from:    Compiled sources
Compiler:          gcc4.3 
OS:                Linux

In preview mode there are two ways to zoom with mouse wheel:

- hover mouse over slider and scroll wheel
- use Ctrl+mouse wheel over image

Both are good, logical, common actions for many applications.

Problem is: to zoom in (or out) in both ways you have to scroll wheel in opposite directions. To zoom in while hovering over slider you have to scroll mouse wheel "in" toward yourself. But to perform the same action with Ctrl you have to scroll "out" - in opposite direction. There should be consistency in both actions. To keep consistency with other KDE application behavior of hovering action should be changed.
Comment 1 Arnd Baecker 2008-04-23 20:33:27 UTC
Gilles, is digikam/libs/widgets/common/statuszoombar.cpp
the right place to modify?

I think for 0.10, this can be easily done
by defining the slider using
http://doc.trolltech.com/4.3/qabstractslider.html#invertedControls-prop

"""If this property is false, scrolling the mouse wheel "up" and using
keys like page up will increase the slider's value towards its
maximum. Otherwise pressing page up will move value towards the
slider's minimum."""

For 0.9.x: is it necessary to overwrite wheelEvent?

Comment 2 caulier.gilles 2008-04-23 21:03:18 UTC
Arnd,

> is digikam/libs/widgets/common/statuszoombar.cpp the right place to modify? 

yes it is.

> I think for 0.10, this can be easily done by defining the slider using
> http://doc.trolltech.com/4.3/qabstractslider.html#invertedControls-prop 

right.

> For 0.9.x: is it necessary to overwrite wheelEvent? 

yes.

Gilles
Comment 3 Arnd Baecker 2008-04-25 13:03:51 UTC
SVN commit 800977 by abaecker:

Enforce consistent behaviour when using the mouse wheel over the zoom slider.

CCBUGS: 161087
TODO:KDE4PORT



 M  +2 -1      NEWS  
 M  +39 -3     libs/widgets/common/statuszoombar.cpp  
 M  +21 -0     libs/widgets/common/statuszoombar.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=800977
Comment 4 Arnd Baecker 2008-04-25 13:06:36 UTC
Note that the KDE4PORT will be much simpler: Adding
  d->zoomSlider->setInvertedControls(true);
should do the job.
Comment 5 caulier.gilles 2008-04-25 13:29:53 UTC
SVN commit 800982 by cgilles:

backport commit #800977 to KDE3 branch
BUG: 161087


 M  +1 -0      statuszoombar.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=800982