theme: Make meta_frame_draw_theme take a GtkStyleContext instead of a widget

The style context of the widget is rarely what we want. We won't
fix this to be a MetaFrames style context yet; this just changes
the internal API.

https://bugzilla.gnome.org/show_bug.cgi?id=690317
This commit is contained in:
Jasper St. Pierre 2012-12-16 17:31:00 -05:00
parent 9596c24f83
commit 22a3126a2b
5 changed files with 27 additions and 64 deletions

View File

@ -2011,17 +2011,17 @@ meta_frames_paint (MetaFrames *frames,
meta_prefs_get_button_layout (&button_layout); meta_prefs_get_button_layout (&button_layout);
meta_theme_draw_frame_with_style (meta_theme_get_current (), meta_theme_draw_frame (meta_theme_get_current (),
frame->style, frame->style,
cr, cr,
type, type,
flags, flags,
w, h, w, h,
frame->layout, frame->layout,
frame->text_height, frame->text_height,
&button_layout, &button_layout,
button_states, button_states,
mini_icon, icon); mini_icon, icon);
} }
static void static void

View File

@ -212,7 +212,7 @@ meta_preview_draw (GtkWidget *widget,
client_height = 1; client_height = 1;
meta_theme_draw_frame (preview->theme, meta_theme_draw_frame (preview->theme,
widget, gtk_widget_get_style_context (widget),
cr, cr,
preview->type, preview->type,
preview->flags, preview->flags,

View File

@ -1023,7 +1023,7 @@ double meta_theme_get_title_scale (MetaTheme *theme,
MetaFrameFlags flags); MetaFrameFlags flags);
void meta_theme_draw_frame (MetaTheme *theme, void meta_theme_draw_frame (MetaTheme *theme,
GtkWidget *widget, GtkStyleContext *style_gtk,
cairo_t *cr, cairo_t *cr,
MetaFrameType type, MetaFrameType type,
MetaFrameFlags flags, MetaFrameFlags flags,
@ -1036,20 +1036,6 @@ void meta_theme_draw_frame (MetaTheme *theme,
GdkPixbuf *mini_icon, GdkPixbuf *mini_icon,
GdkPixbuf *icon); GdkPixbuf *icon);
void meta_theme_draw_frame_with_style (MetaTheme *theme,
GtkStyleContext *style_gtk,
cairo_t *cr,
MetaFrameType type,
MetaFrameFlags flags,
int client_width,
int client_height,
PangoLayout *title_layout,
int text_height,
const MetaButtonLayout *button_layout,
MetaButtonState button_states[META_BUTTON_TYPE_LAST],
GdkPixbuf *mini_icon,
GdkPixbuf *icon);
void meta_theme_get_frame_borders (MetaTheme *theme, void meta_theme_get_frame_borders (MetaTheme *theme,
MetaFrameType type, MetaFrameType type,
int text_height, int text_height,

View File

@ -1024,7 +1024,7 @@ run_theme_benchmark (void)
cr = cairo_create (pixmap); cr = cairo_create (pixmap);
meta_theme_draw_frame (global_theme, meta_theme_draw_frame (global_theme,
widget, gtk_widget_get_style_context (widget),
cr, cr,
META_FRAME_TYPE_NORMAL, META_FRAME_TYPE_NORMAL,
get_flags (widget), get_flags (widget),

View File

@ -5439,19 +5439,19 @@ meta_theme_get_title_scale (MetaTheme *theme,
} }
void void
meta_theme_draw_frame_with_style (MetaTheme *theme, meta_theme_draw_frame (MetaTheme *theme,
GtkStyleContext *style_gtk, GtkStyleContext *style_gtk,
cairo_t *cr, cairo_t *cr,
MetaFrameType type, MetaFrameType type,
MetaFrameFlags flags, MetaFrameFlags flags,
int client_width, int client_width,
int client_height, int client_height,
PangoLayout *title_layout, PangoLayout *title_layout,
int text_height, int text_height,
const MetaButtonLayout *button_layout, const MetaButtonLayout *button_layout,
MetaButtonState button_states[META_BUTTON_TYPE_LAST], MetaButtonState button_states[META_BUTTON_TYPE_LAST],
GdkPixbuf *mini_icon, GdkPixbuf *mini_icon,
GdkPixbuf *icon) GdkPixbuf *icon)
{ {
MetaFrameGeometry fgeom; MetaFrameGeometry fgeom;
MetaFrameStyle *style; MetaFrameStyle *style;
@ -5484,29 +5484,6 @@ meta_theme_draw_frame_with_style (MetaTheme *theme,
mini_icon, icon); mini_icon, icon);
} }
void
meta_theme_draw_frame (MetaTheme *theme,
GtkWidget *widget,
cairo_t *cr,
MetaFrameType type,
MetaFrameFlags flags,
int client_width,
int client_height,
PangoLayout *title_layout,
int text_height,
const MetaButtonLayout *button_layout,
MetaButtonState button_states[META_BUTTON_TYPE_LAST],
GdkPixbuf *mini_icon,
GdkPixbuf *icon)
{
meta_theme_draw_frame_with_style (theme, gtk_widget_get_style_context (widget),
cr, type,flags,
client_width, client_height,
title_layout, text_height,
button_layout, button_states,
mini_icon, icon);
}
void void
meta_theme_get_frame_borders (MetaTheme *theme, meta_theme_get_frame_borders (MetaTheme *theme,
MetaFrameType type, MetaFrameType type,