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