[KDE/Mac] Review Request 126624: respect "ShowIconsOnButtons" in the Qt5/KF5 style

René J.V. Bertin rjvbertin at gmail.com
Tue Jan 12 21:40:10 UTC 2016


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/126624/
-----------------------------------------------------------

(Updated Jan. 12, 2016, 10:40 p.m.)


Review request for KDE Software on Mac OS X, KDE Frameworks and Yichao Yu.


Changes
-------

This replaces `KGlobalSettings::showIconsOnPushButtons()` with `styleHint(SH_DialogButtonBox_ButtonsHaveIcons,btn,widget)`, leaving the actual setting lookup to the `Style::styleHint()` function. That means it will show sensible behaviour regardless of whether QtCurve is compiled with KF5 enabled or not.
It also means a note will probably have to be made somewhere in the documentation that the QtCurve style generalises the `SH_DialogButtonBox_ButtonsHaveIcons` setting to all buttons.


Repository: qtcurve


Description
-------

Implementation details have changed in Qt5 that affect when icons were being shown in pushbuttons; as a result, many buttons were drawn with icons visible regardless the `ShowIconsInButtons` preference.

This patch implements a solution in the Qt5 style itself, which appears to be the only way to respect the preference both robustly (= on all buttons) and reversibly (i.e. icons will appear or disappear when toggling the setting without need to restart running applications).
Buttons that have only an icon but no text will continue to show the icon.

Note that `KGlobalSettings::showIconsOnPushButtons()` is deprecated and will have to be replaced with something that is not...


Diffs (updated)
-----

  qt5/style/qtcurve_api.cpp 9b7adfa 

Diff: https://git.reviewboard.kde.org/r/126624/diff/


Testing
-------

On OS X 10.9.5 and Linux, both with Qt 5.5.1 and KF5 5.17.0 installed into /opt/local


Thanks,

René J.V. Bertin

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-mac/attachments/20160112/f5c91784/attachment.html>


More information about the kde-mac mailing list