GtkThemingEngine: Fix handles rendering

The wrong class was being used, so the theming engine didn't
match it properly.
This commit is contained in:
Carlos Garnacho
2011-01-10 23:23:54 +01:00
parent d5b0ccacce
commit 4c4df23d12
3 changed files with 13 additions and 2 deletions

View File

@ -648,6 +648,7 @@ static void
gtk_paned_init (GtkPaned *paned) gtk_paned_init (GtkPaned *paned)
{ {
GtkPanedPrivate *priv; GtkPanedPrivate *priv;
GtkStyleContext *context;
gtk_widget_set_has_window (GTK_WIDGET (paned), FALSE); gtk_widget_set_has_window (GTK_WIDGET (paned), FALSE);
gtk_widget_set_can_focus (GTK_WIDGET (paned), TRUE); gtk_widget_set_can_focus (GTK_WIDGET (paned), TRUE);
@ -684,6 +685,9 @@ gtk_paned_init (GtkPaned *paned)
priv->handle_pos.y = -1; priv->handle_pos.y = -1;
priv->drag_pos = -1; priv->drag_pos = -1;
context = gtk_widget_get_style_context (GTK_WIDGET (paned));
gtk_style_context_add_class (context, GTK_STYLE_CLASS_PANE_SEPARATOR);
} }
static void static void

View File

@ -360,6 +360,13 @@ struct _GtkStyleContextClass
*/ */
#define GTK_STYLE_CLASS_DND "dnd" #define GTK_STYLE_CLASS_DND "dnd"
/**
* GTK_STYLE_CLASS_PANE_SEPARATOR:
*
* A CSS class for a pane separator, such as those in #GtkPaned.
*/
#define GTK_STYLE_CLASS_PANE_SEPARATOR "pane-separator"
/** /**
* GTK_STYLE_CLASS_INFO: * GTK_STYLE_CLASS_INFO:
* *

View File

@ -2604,7 +2604,7 @@ gtk_theming_engine_render_handle (GtkThemingEngine *engine,
cairo_rectangle (cr, x, y, width, height); cairo_rectangle (cr, x, y, width, height);
cairo_fill (cr); cairo_fill (cr);
if (gtk_theming_engine_has_class (engine, "grip")) if (gtk_theming_engine_has_class (engine, GTK_STYLE_CLASS_GRIP))
{ {
GtkJunctionSides sides; GtkJunctionSides sides;
gint skip = -1; gint skip = -1;
@ -2869,7 +2869,7 @@ gtk_theming_engine_render_handle (GtkThemingEngine *engine,
cairo_restore (cr); cairo_restore (cr);
} }
else if (gtk_theming_engine_has_class (engine, "paned")) else if (gtk_theming_engine_has_class (engine, GTK_STYLE_CLASS_PANE_SEPARATOR))
{ {
if (width > height) if (width > height)
for (xx = x + width / 2 - 15; xx <= x + width / 2 + 15; xx += 5) for (xx = x + width / 2 - 15; xx <= x + width / 2 + 15; xx += 5)