GtkStyle is specific to a particular colormap. Metacity uses different

2009-01-27  Owen Taylor  <otaylor@redhat.com>

       GtkStyle is specific to a particular colormap. Metacity
       uses different colormaps for windows with different
       visuals, so it must specialize the GtkStyle.

       Closes #568365 and #513944.

       * src/ui/frames.[ch]: Keep a GtkStyle for each MetaUIFrame, which is
         obtained by calling gtk_style_attach() on the style for the
         MetaFrames. When the style of the MetaFrames changes, reattach
         everything. When we call gtk_style_set_background() pass in the
         right style.

       * src/ui/themes.[ch]: Create a _with_style() variant of functions that
         previously took the style from widget->style passed in, so we
         can draw with the right style for the colormap.


svn path=/trunk/; revision=4092
This commit is contained in:
Owen Taylor
2009-01-28 01:47:18 +00:00
committed by Thomas James Alexander Thurman
parent 0a172cc053
commit a6c951352f
5 changed files with 293 additions and 92 deletions

View File

@ -75,6 +75,7 @@ struct _MetaUIFrame
{
Window xwindow;
GdkWindow *window;
GtkStyle *style;
MetaFrameStyle *cache_style;
PangoLayout *layout;
int text_height;