Review Request 128056: Provide a style-selection menu as in KDenlive (WIP)

René J.V. Bertin rjvbertin at gmail.com
Tue May 31 21:21:56 UTC 2016


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

(Updated May 31, 2016, 11:21 p.m.)


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


Changes
-------

Here's an initial working draft for `KWidgetStyleSelector` with an API inspired by `KColorSchemeManager`.

For some reason I cannot get the signal/slot connection to work when I specify the receiver which (according to a StackOverflow reply) is the safe thing to do. I did indeed have a crash once when triggering a style menu item, so eagle-eyed reviewers beware that there may be a glitch somewhere.

If this is to go into KConfigWidgets I'd prefer to expose it as a KStandardAction; advice welcome on that part.

I haven't done anything to hide the feature under Plasma for now; that's for easier testing.


Repository: kdevplatform


Description
-------

I filed a bug report recently that raises an issue about the QTabBar widget for the tabbed document interface  (https://bugs.kde.org/show_bug.cgi?id=363473). On OS X, that widget is rendered like the native tab bar widget that should only be used in dialogs and comparable views where the number of tabs is preferably fixed and limited. There are also other rendering issues which probably stem from presumptions KDevelop makes about the tab layout in the extensions it implements.
Qt does provide a `documentMode` which changes the look to suit use for document tabs better, but this mode doesn't work well with KDevelop's extensions either.

For lack of a better solution or workaround I would thus like to explore the idea to provide a widget style picker, like KDenlive does (presumably not without reason either). The underlying idea is that it allows users to find an style that works better for them if they feel a reason to do so. This option works regardless of whether a platform theme plugin is available.

For now the patch is a proof-of-concept and work in progress. It is still lacking a mechanism to make the style choice persistent across restarts; I think I'll need a hand in determining how to do that correctly (it should be a global setting, not a session-specific setting I think).


Diffs (updated)
-----

  sublime/CMakeLists.txt 2144087 
  sublime/kwidgetstyleselector.h PRE-CREATION 
  sublime/kwidgetstyleselector.cpp PRE-CREATION 
  sublime/mainwindow_p.cpp 74ef494 

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


Testing
-------

On OS X 10.9.5 and Linux, both with fw. 5.20.0 and Qt 5.6.0


File Attachments
----------------

diff for kdevelopui.rc
  https://git.reviewboard.kde.org/media/uploaded/files/2016/05/30/cb07a061-aef5-42f5-bc83-68ca7ce2ce3b__patch-kdevplatform-add-style-menu-uirc.diff
This screenshot shows where the menu item appears with the kdevelopui.rc patch in another attachment. This KDevelop instance was running with my platform theme plugin and my OS X palette and config for the QtCurve style. Only the UI fonts change when the p
  https://git.reviewboard.kde.org/media/uploaded/files/2016/05/30/543bffc8-26fd-44f8-8bd8-372a24c9b01f__Screen_Shot_2016-05-30_at_15.47.14.png


Thanks,

René J.V. Bertin

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20160531/e2cea1fb/attachment-0001.html>


More information about the KDevelop-devel mailing list