After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 725751 - Fix handling of dynamic updates to colors/font/etc.
Fix handling of dynamic updates to colors/font/etc.
Status: RESOLVED FIXED
Product: mutter
Classification: Core
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: mutter-maint
mutter-maint
Depends on:
Blocks:
 
 
Reported: 2014-03-05 20:30 UTC by Owen Taylor
Modified: 2014-03-05 22:22 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Fix handling of dynamic updates to colors/font/etc. (4.65 KB, patch)
2014-03-05 20:30 UTC, Owen Taylor
committed Details | Review

Description Owen Taylor 2014-03-05 20:30:49 UTC
Since the introduction of frame sync in GTK+, updates to titlebar font and
colors haven't been working because GTK+ counts on the frame clock to
do style updates, and the frame clock doesn't run for an unmapped
GdkWindow. (It's possible that GtkStyleContext changes subsequent to
the introduction of the frame clock were also needed to fully break
things.)

We actually need to map the MetaFrames GdkWindow and let the
compositor code send out the frame sync messages in order to pick up
style changes.

Hopefully no bad side effects will occur from this - we make the window
override-redirect, 1x1, and outside the bounds of the screen.
Comment 1 Owen Taylor 2014-03-05 20:30:51 UTC
Created attachment 271031 [details] [review]
Fix handling of dynamic updates to colors/font/etc.
Comment 2 Jasper St. Pierre (not reading bugmail) 2014-03-05 20:43:27 UTC
Review of attachment 271031 [details] [review]:

Looks good.

::: src/ui/frames.c
@@ +529,3 @@
+                         NULL);
+
+  gtk_window_move (GTK_WINDOW (frames), -200, -200);

Add a comment about how -200,-200 was picked arbitrarily, and how it's *not* -100,-100 because that's what meta_create_offscreen_window uses, and we need to manage this window.
Comment 3 Owen Taylor 2014-03-05 22:21:57 UTC
Attachment 271031 [details] pushed as 4a8f7aa - Fix handling of dynamic updates to colors/font/etc.