Make Kate mousewheel zoom feature respect the corresponding global setting (KGlobalSettings::wheelMouseZooms())

Review Request #120319 - Created Sept. 22, 2014 and discarded

René J.V. Bertin
kate, kde-mac, kdelibs

KDE has a global text editor option that can be used to let Ctrl-MouseWheel events zoom the text font being used. Kate does not respect this setting, which is an omission that can lead to unexpected behaviour.

On OS X, the feature works slightly differently in the sense that Qt::ControlModifier does not designate the control key, but the command (?, Apple) key. In addition, Qt's event handling does not appear to be able to distinguish between scrolling under direct control, and residual scroll movement that's due to simulated inertia. As a result, any attempt to use a keyboard shortcut while a text view has not stopped moving completely will lead to text zooming.
See .

At first I thought to replace Qt::ControlModifier with Qt::MetaModifier on OS X but that would probably require changes in many locations, and thus best be preceded by a design decision if the standard shortcut modifier key ought not be referenced via a symbolic platform constant not named after a specific key, instead of being hardcoded (and using a key name).

Therefore, I present a small patch that checks KGlobalSettings::wheelMouseZooms() when the platform's ControlModifier is held and a wheel event received.

An alternative solution could introduce a Kate-specific setting (just like Konsole has one), but that would require far more changes.

On OS X against kdelibs 4.14.1 (git/kde4). The change consists of an additional call to a standard kdelibs function which I do not expect to introduce regressions on any platform.

I looked at kate's git/master code, which lacks a wheelEvent handler suggesting the feature works differently there. However, Qt 5.3.1 applications (like Digia's own Qt Creator) still suffer from the phenomenon described above, so a fix would be beneficial for KF5 too)


Thomas Lübking
Dominik Haumann
René J.V. Bertin
René J.V. Bertin
Review request changed

Status: Discarded

Change Summary:

We don't patch that in in KDE 4 any more and I agree that it should not be patched in client code anyways. Otherwise, scrolling/zooming seems to be fine with KF5 stuff on my Mac.