[Bug 768275] New: Qt applications in GNOME: qgtkstyle unable detect current gtk+ theme
https://bugzilla.novell.com/show_bug.cgi?id=768275 https://bugzilla.novell.com/show_bug.cgi?id=768275#c0 Summary: Qt applications in GNOME: qgtkstyle unable detect current gtk+ theme Classification: openSUSE Product: openSUSE 12.2 Version: Beta 2 Platform: x86-64 OS/Version: openSUSE 12.2 Status: NEW Severity: Normal Priority: P5 - None Component: GNOME AssignedTo: bnc-team-gnome@forge.provo.novell.com ReportedBy: badshah400@gmail.com QAContact: qa-bugs@suse.de Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:13.0) Gecko/20100101 Firefox/13.0 When Qt applications are used from within the GNOME desktop, the application does not inherit the users gtk2 theme and looks ugly because it then adopts the "clearlooks" look by default. Previously all qt applications would correctly inherit the gtk2 theme and look like any other gtk2 applications when used from within a GNOME or an XFCE session. when the qt app is started from the terminal, it gives the following warning "qgtkstyle unable detect current gtk+ theme". The problem is solved completely by installing the two packages: libgnome and libgnomecanvas-2-0. I think this has to do with some gconf schemas being required by Qt's qgtkstyle (wchich is supposed to do the entire process of inheriting the user's gtk2 theme for the qt apps) which are not installed in the system by default and are installed by the two packages libgnome and libgnomecanvas-2-0. Notes: [1] Upstream bug: https://bugreports.qt-project.org/browse/QTBUG-21294 [2] More info on a comment to a blog post: http://mikemcquaid.com/2011/12/01/make-qt-use-the-gtk-style-on-xfce-or-xubun... Reproducible: Always Steps to Reproduce: 1. 2. 3. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=768275 https://bugzilla.novell.com/show_bug.cgi?id=768275#c1 Dominique Leuenberger <dimstar@opensuse.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED CC| |dimstar@opensuse.org --- Comment #1 from Dominique Leuenberger <dimstar@opensuse.org> 2012-06-26 19:53:50 UTC --- Submitted SR #126245: +Tue Jun 26 19:50:16 UTC 2012 - dimstar@opensuse.org + +- Add libgnome and libgnomecanvas-2-0 Requires: Currently, QtCurve + requires those libs. Fixes bnc#768275. + +------------------------------------------------------------------- It's merely a workaround until upstream actually fixes the real issue: GConf is dead.. long live dconf! -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=768275 https://bugzilla.novell.com/show_bug.cgi?id=768275#c2 --- Comment #2 from Atri Bhattacharya <badshah400@gmail.com> 2012-06-30 04:47:48 UTC --- Update on what I have done to fix the issue on a default installation of openSUSE's GNOME (from LiveCD and DVD):- Background: Currently nothing requires QtCurve to be present in a default installation of the GNOME pattern. Installing any qt app on top of the GNOME stack also does not pull in QtCurve, as a result the above fix does not serve to fix the problem for a user who does not explicitly installs qtcurve-gtk2 himself/herself. Situation in openSUSE 12.1: I am not sure what really pulled in libgnome and libgnomecanvas in openSUSE 12.1 by default, but by removing these two from 12.1 (which also removes gnucash libbonoboui libgnome libgnomecanvas-2-0 libgnomeui python-bonobo python-gnome python-gnomecanvas) I get the same problem with qt apps in 12.1 as well. So my understanding is that the dropping of some of these from the deafult stack, led to a situation where nothing in the default 12.2 GNOME stack needed libgnome and libgnomecanvas any more. What could fix the problem: Introducing dependencies of libgnome and libgnomecanvas on a core gtk2 package would pull these back into the default stack and make qt apps work without problems again. Now, qt's qgtkstyle hooks into the gtk2-theme that the user is using to dress the qt applications look like the gtk2 ones. If a valid gtk2 theme is being used by the user, then for the qt app to also imitate that look, qt would still require the two libraries (gnome and gnomecanvas). Therefore, I introduced run-time dependencies of these two libraries on all the gtk2 theming engines, including the gtk2-engine-clearlooks one installed by default in openSUSE 12.2. This pulls in the two dependencies into the default GNOME stack. At any point, a user using any valid gtk2 theme has to have at least one valid gtk2 theming engine installed. So if he/she might choose to uninstall the clearlooks theme and install sonar theme, which requires gtk2-engine-murrine, for example, the two libraries (gnome and gnoecanvas) should also be required by the murrine engine. Ditto for all the gtk2 theming engines. Solution: All gtk2-engine-* packages with the fixed requirements were submitted to the respective devel projects (GNOME:Apps & GNOME:Factory). I am not sure if I should push similar changes for the one or two gtk2 theme engines based at X11:lxde [1] and X11:xfce [2], since I am not sure whether the xfce and lxde desktop would prefer having these extra gnome dependencies. Any thoughts? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=768275 https://bugzilla.novell.com/show_bug.cgi?id=768275#c3 --- Comment #3 from Dominique Leuenberger <dimstar@opensuse.org> 2012-06-30 11:02:04 UTC --- Side warning here: adding those libs in the dep tree of a default gnome install increases our live cd size by ~ 5MB... hope we have that much left. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=768275 https://bugzilla.novell.com/show_bug.cgi?id=768275#c4 --- Comment #4 from Vincent Untz <vuntz@suse.com> 2012-07-02 07:35:34 UTC --- I don't think we want those libs in a default install (if we can avoid this). Can't we simply have a "Supplements: packageand(foo:bar)"? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=768275 https://bugzilla.novell.com/show_bug.cgi?id=768275#c5 --- Comment #5 from Vincent Untz <vuntz@suse.com> 2012-07-02 07:39:06 UTC --- As an alternative solution: we can just split the relevant gconf schemas in a libgnome-mini-schema-needed-for-qt subpackage, and have this package installed by default. But adding explicit Requires for libgnome/libgnomecanvas sounds really bad to me, as we want to get rid of those -- especially as they will bring other deps. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=768275 https://bugzilla.novell.com/show_bug.cgi?id=768275#c6 Atri Bhattacharya <badshah400@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution| |INVALID --- Comment #6 from Atri Bhattacharya <badshah400@gmail.com> 2012-07-05 17:55:23 UTC --- Well at present I do not see this problem with my latest installation of Beta 2 + updates from widehat. So I am closing this as INVALID. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@novell.com