Bug#894807: qtbase-opensource-src: Consider recommending qt5ct perhaps in widgets or gui
¡Hola Dmitry! El 2018-04-04 a las 21:53 +0300, Dmitry Shachnev escribió: However there is still one major problem with it: it does not support native GTK+ 3 dialogs. Test case: run Qt Designer under GNOME with qt5ct and without it. If you click Open button, the native GTK+ dialog will be used only when qt5ct is not used. This is a significant regression for users of GNOME, Xfce, Cinnamon, etc (compared to normal Qt setup). Interesting, but at the same time you wouldn't have a well integrated gnome dialog if the gtk and qt5ct themes don't match. I'm not sure if there is a proper way to fix that. Also, kde applications look "sane" when using qt5ct, and using the gtk2 or gtk3 platformtheme some ui annoyances are shown, specially if your kde theme doesn't match your gtk theme. Given this issue, and the fact that it is difficult for an average user to disable qt5ct, I think we should not recommend it in Qt. Suggests is fine though. The user should be able to set QT_QPA_PLATFORMTHEME in ~/.xsessionrc. As Maximiliano mentioned some other things in his IRC message, I will reply to them too: currently nothing depends on qt5-gtk-platformtheme qt5-style-plugins libqt5gui5 currently recommends qt5-gtk-platformtheme. We cannot depend on it because we do not want to depend on GTK+. qt5-style-plugins is a collection of obsolete styles that are no longer maintained or supported by The Qt Company. It can be sometimes safe to use, but we do not want to suggest using it. Ok, then from the cinnamon side of things, I'm fine using the gtk3 platformtheme by default, and then the user might prefer to use qt5ct. I guess we could add a suggests for that. At least on the cinnamon side of things we are setting QT_PLATFORMTHEME=gtk2 s/_/_QPA_/ There is no sense in doing that (and this is the wrong variable name anyway). Qt automatically enables GTK+ integration support when it is run on Cinnamon or on other GTK+ based desktop: https://code.qt.io/cgit/qt/qtbase.git/tree/src/platformsupport/themes/genericunix/qgenericunixthemes.cpp#n863 cinnamon-session upstream already tries to tweak QT_QCA_PLATFORMTHEME, we patched that as the expected platformtheme (qt5ct) was not available in Debian. I don't remember why we used the gtk2 platformtheme but I'm sure that it was the best option at that time. From my side, this bug could be closed. Happy hacking, -- "Don't let what you cannot do interfere with what you can do." -- Wooden's Rule Saludos /\/\ /\ >< `/ signature.asc Description: PGP signature
Bug#894807: qtbase-opensource-src: Consider recommending qt5ct perhaps in widgets or gui
On Thu, Apr 05, 2018 at 09:48:32PM -0300, Lisandro Damián Nicanor Pérez Meyer wrote: > > However there is still one major problem with it: it does not support native > > GTK+ 3 dialogs. Test case: run Qt Designer under GNOME with qt5ct and > > without it. If you click Open button, the native GTK+ dialog will be used > > only when qt5ct is not used. This is a significant regression for users of > > GNOME, Xfce, Cinnamon, etc (compared to normal Qt setup). > > Interesting. Do you have an idea if this is fixable? Upstream might want to > fix this. This can be fixed by either embedding Qt’s gtk3 support code, or loading the libqgtk3.so plugin and somehow calling its methods. Both ways are quite hacky and likely to break when a new Qt release changes something. There is the qgnomeplatform project [1] which went the embedding way, and it did have such crashes. [1]: https://github.com/martinbriza/qgnomeplatform -- Dmitry Shachnev signature.asc Description: PGP signature
Bug#894807: qtbase-opensource-src: Consider recommending qt5ct perhaps in widgets or gui
El miércoles, 4 de abril de 2018 15:53:01 -03 Dmitry Shachnev escribió: [snip] > However there is still one major problem with it: it does not support native > GTK+ 3 dialogs. Test case: run Qt Designer under GNOME with qt5ct and > without it. If you click Open button, the native GTK+ dialog will be used > only when qt5ct is not used. This is a significant regression for users of > GNOME, Xfce, Cinnamon, etc (compared to normal Qt setup). Interesting. Do you have an idea if this is fixable? Upstream might want to fix this. > Given this issue, and the fact that it is difficult for an average user to > disable qt5ct, I think we should not recommend it in Qt. Suggests is fine > though. I wonder if that is necessary considering that qt-based desktop seems to have a special plugin for that and that the rest tend to be gtk3-based. Maxy, any ideas? -- Si vives cada día de tu vida como si fuera el último, algún día realmente tendrás razón. Steve Jobs Lisandro Damián Nicanor Pérez Meyer http://perezmeyer.com.ar/ http://perezmeyer.blogspot.com/ signature.asc Description: This is a digitally signed message part.
Bug#894807: qtbase-opensource-src: Consider recommending qt5ct perhaps in widgets or gui
Hi Lisandro and Maximiliano! On Wed, Apr 04, 2018 at 09:03:34AM -0300, Lisandro Damián Nicanor Pérez Meyer wrote: > [08:50:25] lisandro, mitya57: yet again about PLATFORMTHEMES, > currently nothing depends on qt5-gtk-platformtheme qt5-style-plugins nor > qt5ct, I don't know what qt5 uses when QT_PLATFORMTHEME is not being set, > but it seems reasonable that at least that package gets installed when > installing a qt app. > [08:51:22] let me see if I understand that > [08:52:02] when there is no QT_PLATFORMTHEME set then qt shows a > default theme, which I *think* it's the windows' one > [08:52:52] if the user wants a different theme then she must > install a new theme or qt5ct in order to easily change the ones shipped by > qt > [08:53:52] we could recommend qt5ct with libqt5widgets5 I guess > [08:55:40] That would be fine by me, and qt5ct sets QT_PLATFORMTHEME > in the session if installed. (that would also avoid desktop environments to > have to set QT_PLATFORMTHEME) > [08:56:52] so far it sets it everywhere except Plasma > [08:56:58] At least on the cinnamon side of things we are setting > QT_PLATFORMTHEME=gtk2 as it was the only sensible plaformtheme for stretch, > but that's no longer true. > > It could be recommends or suggests, thoughts welcomed! I must admit that qt5ct has significantly improved since the times I last looked at it. In particular, it now can handle global menus and D-Bus tray icons. However there is still one major problem with it: it does not support native GTK+ 3 dialogs. Test case: run Qt Designer under GNOME with qt5ct and without it. If you click Open button, the native GTK+ dialog will be used only when qt5ct is not used. This is a significant regression for users of GNOME, Xfce, Cinnamon, etc (compared to normal Qt setup). Given this issue, and the fact that it is difficult for an average user to disable qt5ct, I think we should not recommend it in Qt. Suggests is fine though. As Maximiliano mentioned some other things in his IRC message, I will reply to them too: > currently nothing depends on qt5-gtk-platformtheme qt5-style-plugins libqt5gui5 currently recommends qt5-gtk-platformtheme. We cannot depend on it because we do not want to depend on GTK+. qt5-style-plugins is a collection of obsolete styles that are no longer maintained or supported by The Qt Company. It can be sometimes safe to use, but we do not want to suggest using it. > At least on the cinnamon side of things we are setting QT_PLATFORMTHEME=gtk2 There is no sense in doing that (and this is the wrong variable name anyway). Qt automatically enables GTK+ integration support when it is run on Cinnamon or on other GTK+ based desktop: https://code.qt.io/cgit/qt/qtbase.git/tree/src/platformsupport/themes/genericunix/qgenericunixthemes.cpp#n863 -- Dmitry Shachnev signature.asc Description: PGP signature
Bug#894807: qtbase-opensource-src: Consider recommending qt5ct perhaps in widgets or gui
Source: qtbase-opensource-src Version: 5.9.2+dfsg-12 Severity: wishlist [08:50:25] lisandro, mitya57: yet again about PLATFORMTHEMES, currently nothing depends on qt5-gtk-platformtheme qt5-style-plugins nor qt5ct, I don't know what qt5 uses when QT_PLATFORMTHEME is not being set, but it seems reasonable that at least that package gets installed when installing a qt app. [08:51:22] let me see if I understand that [08:52:02] when there is no QT_PLATFORMTHEME set then qt shows a default theme, which I *think* it's the windows' one [08:52:52] if the user wants a different theme then she must install a new theme or qt5ct in order to easily change the ones shipped by qt [08:53:52] we could recommend qt5ct with libqt5widgets5 I guess [08:55:40] That would be fine by me, and qt5ct sets QT_PLATFORMTHEME in the session if installed. (that would also avoid desktop environments to have to set QT_PLATFORMTHEME) [08:56:52] so far it sets it everywhere except Plasma [08:56:58] At least on the cinnamon side of things we are setting QT_PLATFORMTHEME=gtk2 as it was the only sensible plaformtheme for stretch, but that's no longer true. It could be recommends or suggests, thoughts welcomed! -- System Information: Debian Release: buster/sid APT prefers unstable APT policy: (990, 'unstable'), (500, 'unstable-debug'), (500, 'testing-debug'), (500, 'buildd-unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental-debug'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.15.0-2-amd64 (SMP w/2 CPU cores) Locale: LANG=es_AR.UTF-8, LC_CTYPE=es_AR.UTF-8 (charmap=UTF-8), LANGUAGE=es_AR:es (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled