Review Request 126624: respect "ShowIconsOnButtons" in the Qt5/KF5 style
René J.V. Bertin
rjvbertin at gmail.com
Mon Jan 18 14:17:52 UTC 2016
> On Jan. 11, 2016, 4:17 p.m., Yichao Yu wrote:
> > qt5/style/qtcurve_api.cpp, line 3211
> > <https://git.reviewboard.kde.org/r/126624/diff/1/?file=428407#file428407line3211>
> >
> > Should this be turned on only when KF5 is enabled?
>
> Aleix Pol Gonzalez wrote:
> KGlobalSettings is deprecated in KF5.
>
> I recommend quering it from QCommonStyle or KStyle though, they both provide the value through `SH_DialogButtonBox_ButtonsHaveIcons`. If none of these aren't bases of QtCurve (I don't know about its internals), then the raw KConfig value should be queried (See `KStyle` to see how to implement it).
>
> René J.V. Bertin wrote:
> This is an issue that will have to be tackled some day, sooner rather than later probably.
> I just don't know if it's better to do it here already, or not (and do everything in one fell swoop).
>
> That'd be up to Yichao to decide, but I think I'd prefer the 2nd option.
>
> René J.V. Bertin wrote:
> To answer Yichao's question: yes, probably.
>
> Ideally one would use a "pure" Qt styleHint call and then determine if the button is a part of a QDialogButtonBox when KF5 isn't enabled. Ideally meaning if you want to take `SH_DialogButtonBox_ButtonsHaveIcons` to the letter. You could also state loud and clear that "this style generalises `SH_DialogButtonBox_ButtonsHaveIcons` to all buttons" and see how many people write in to complain ;)
>
> Yichao Yu wrote:
> For non-KF5 build, just use `SH_DialogButtonBox_ButtonsHaveIcons` sounds good.
>
> Also am I reading correctly that the latest patch is no-op?
Something indeed appears very wrong there. I can hardly imagine that I uploaded an empty diff, but will check...
- René J.V.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/126624/#review90902
-----------------------------------------------------------
On Jan. 12, 2016, 10:40 p.m., René J.V. Bertin wrote:
>
> -----------------------------------------------------------
> 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.
>
>
> 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
> -----
>
> 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-frameworks-devel/attachments/20160118/d63487b6/attachment-0001.html>
More information about the Kde-frameworks-devel
mailing list