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

Yichao Yu yyc1992 at gmail.com
Mon Jan 18 13:55:38 UTC 2016



> On 一月 11, 2016, 10:17 a.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 ;)

For non-KF5 build, just use `SH_DialogButtonBox_ButtonsHaveIcons` sounds good.

Also am I reading correctly that the latest patch is no-op?


- Yichao


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


On 一月 12, 2016, 4: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 一月 12, 2016, 4: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-mac/attachments/20160118/cc87ed70/attachment.html>


More information about the kde-mac mailing list