[Development] Question about GTK+ support status

Nurmi J-P jpnurmi at theqtcompany.com
Tue Jun 16 19:44:06 CEST 2015


> On 16 Jun 2015, at 16:32, Dmitry Shachnev <mitya57.ml at gmail.com> wrote:
> 
> Hi all,
> 
> In Debian, we have recently removed the gtk2 platform theme from default
> Qt 5 installation [1], and now I start getting reports about missing icons
> in my Qt 5 application on Debian (currently Qt 5 supports themed icons
> only on KDE and when using the gtk2 platform theme).
> 
>> From the discussion it seemed that we can keep the platform theme around,
> but only if it is ported from GTK+ 2 to GTK+ 3. That task itself is not
> hard, but then this theme will become incompatible with QGtkStyle, which
> is using theming engine specific to GTK+ 2, and GTK+ 3 port does not seem
> possible.
> 
> Looking at QGtkStyle, it not only relies on a deprecated library, but
> doesn't play well with default GNOME theme (Adwaita). Also, the theme
> authors usually do not care about GTK+ 2 anymore, and focus their efforts
> on a CSS theme for GTK+ 3. Also, Adwaita theme is now available in a native
> Qt 5 variant [2], i.e. Fedora ships it.
> 
> So my question is: can we drop the QGtkStyle completely and port the gtk
> platform theme to GTK+ 3? I will contribute to that effort if it gets the
> consensus.
> 
> [1]: https://bugs.debian.org/781148
> [2]: https://github.com/MartinBriza/adwaita-qt

Hi,

Given that QGtkStyle is no longer part of the public API in Qt 5, how about making it a QStylePlugin and moving it out of QtWidgets? If someone implements a style plugin for GTK+ 3, then it also becomes feasible to have platform theme plugins for both GTK+ 2 and 3. As you mentioned, a platform theme is the easy part. Implementing a QStyle for GTK+ 3.x is a lot more work.

configure: add support for GTK+ 3.x - https://codereview.qt-project.org/#/c/75599/
QGtk3ThemePlugin - https://codereview.qt-project.org/#/c/75757/

--
J-P Nurmi




More information about the Development mailing list