diff options
Diffstat (limited to 'gtk')
-rw-r--r-- | gtk/gtkcsstypesprivate.h | 5 | ||||
-rw-r--r-- | gtk/gtkstylecontext.c | 2 |
2 files changed, 4 insertions, 3 deletions
diff --git a/gtk/gtkcsstypesprivate.h b/gtk/gtkcsstypesprivate.h index 55ad3b53ce..ab360ef7d5 100644 --- a/gtk/gtkcsstypesprivate.h +++ b/gtk/gtkcsstypesprivate.h @@ -49,10 +49,11 @@ typedef enum { /*< skip >*/ GTK_CSS_CHANGE_PARENT_SIBLING_STATE = (1 << 15), /* add more */ GTK_CSS_CHANGE_SOURCE = (1 << 16), - GTK_CSS_CHANGE_ANIMATE = (1 << 17) + GTK_CSS_CHANGE_ANIMATE = (1 << 17), + GTK_CSS_CHANGE_FORCE_INVALIDATE = (1 << 18) } GtkCssChange; -#define GTK_CSS_CHANGE_ANY ((1 << 18) - 1) +#define GTK_CSS_CHANGE_ANY ((1 << 19) - 1) #define GTK_CSS_CHANGE_ANY_SELF (GTK_CSS_CHANGE_CLASS | GTK_CSS_CHANGE_NAME | GTK_CSS_CHANGE_POSITION | GTK_CSS_CHANGE_STATE) #define GTK_CSS_CHANGE_ANY_SIBLING (GTK_CSS_CHANGE_SIBLING_CLASS | GTK_CSS_CHANGE_SIBLING_NAME | \ GTK_CSS_CHANGE_SIBLING_POSITION | GTK_CSS_CHANGE_SIBLING_STATE) diff --git a/gtk/gtkstylecontext.c b/gtk/gtkstylecontext.c index c0253a4993..8a193cc65d 100644 --- a/gtk/gtkstylecontext.c +++ b/gtk/gtkstylecontext.c @@ -3180,7 +3180,7 @@ _gtk_style_context_validate (GtkStyleContext *context, _gtk_bitmask_free (animation_changes); } - if (!_gtk_bitmask_is_empty (changes)) + if (!_gtk_bitmask_is_empty (changes) || (change & GTK_CSS_CHANGE_FORCE_INVALIDATE)) gtk_style_context_do_invalidate (context); change = _gtk_css_change_for_child (change); |