diff options
author | Benjamin Otte <otte@redhat.com> | 2015-02-06 10:13:11 +0100 |
---|---|---|
committer | Benjamin Otte <otte@redhat.com> | 2015-02-06 11:26:31 +0100 |
commit | 808bfe0a98ac4cd2e11ea4eed82a66470121c19b (patch) | |
tree | b797131884364ce9defb544b7fc195532e97ec58 /gtk/gtksettingsprivate.h | |
parent | 9209c4ea411efc08a59eba12ff7898bd7be1aa05 (diff) | |
download | gtk+-808bfe0a98ac4cd2e11ea4eed82a66470121c19b.tar.gz |
settings: Provide a default style cascade per scale
This guarantees we only create 1 extra style cascade in total for hidpi
and not one per style context.
Style cascades are now nested like this:
GtkSettings root cascade (scale == 1)
|
+-- GtkSettings per scale cascade (for any scale, no custom providers)
|
+-- GtkStyleContext custom cascade (for any scale, custom providers)
This requires a bunch of care when changing cascade-related properties
inside GtkStyleContext, so that it ends up with a properly setup
cascade, but I think I got those cases right.
The only thing we don't do yet is reverting to a GtkSettings cascade
when the last custom provider is removed from a custom cascade.
Diffstat (limited to 'gtk/gtksettingsprivate.h')
-rw-r--r-- | gtk/gtksettingsprivate.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gtk/gtksettingsprivate.h b/gtk/gtksettingsprivate.h index 4ba07cd2b8..e14ec5fb89 100644 --- a/gtk/gtksettingsprivate.h +++ b/gtk/gtksettingsprivate.h @@ -38,7 +38,8 @@ gboolean _gtk_settings_parse_convert (GtkRcPropertyParse GParamSpec *pspec, GValue *dest_value); GdkScreen *_gtk_settings_get_screen (GtkSettings *settings); -GtkStyleCascade *_gtk_settings_get_style_cascade (GtkSettings *settings); +GtkStyleCascade *_gtk_settings_get_style_cascade (GtkSettings *settings, + gint scale); typedef enum { |