summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCosimo Cecchi <cosimoc@gnome.org>2016-02-28 10:00:15 -0800
committerCosimo Cecchi <cosimoc@gnome.org>2016-02-28 12:30:44 -0800
commit4971f26968d25aea47cab156c69c495abe00fca1 (patch)
treef3fa60fd3bd1cb0f958956dd4476d4de66fbe845
parente73c4334e85b43538003df2874d3edfa80dac37d (diff)
downloadgtk+-4971f26968d25aea47cab156c69c495abe00fca1.tar.gz
range: draw slider on top of all contents
This is so that e.g. the focus ring is drawn under the slider.
-rw-r--r--gtk/gtkrange.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/gtk/gtkrange.c b/gtk/gtkrange.c
index e8f04d50bb..b665ec299b 100644
--- a/gtk/gtkrange.c
+++ b/gtk/gtkrange.c
@@ -2297,8 +2297,6 @@ gtk_range_render_trough (GtkCssGadget *gadget,
if (priv->has_origin)
gtk_css_gadget_draw (priv->highlight_gadget, cr);
- gtk_css_gadget_draw (priv->slider_gadget, cr);
-
return gtk_widget_has_visible_focus (widget);
}
@@ -2318,13 +2316,11 @@ gtk_range_render (GtkCssGadget *gadget,
/* HACK: we can't render the contents box directly because
* GtkColorScale wants to omit the trough but still draw the slider...
*/
- if (GTK_IS_COLOR_SCALE (widget))
- {
- gtk_css_gadget_draw (priv->slider_gadget, cr);
- return FALSE;
- }
+ if (!GTK_IS_COLOR_SCALE (widget))
+ gtk_css_gadget_draw (priv->contents_gadget, cr);
- gtk_css_gadget_draw (priv->contents_gadget, cr);
+ /* Draw the slider last, so that e.g. the focus ring stays below it */
+ gtk_css_gadget_draw (priv->slider_gadget, cr);
return FALSE;
}