diff options
author | Alberts Muktupāvels <alberts.muktupavels@gmail.com> | 2016-03-23 20:43:28 +0200 |
---|---|---|
committer | Alberts Muktupāvels <alberts.muktupavels@gmail.com> | 2016-03-23 20:59:18 +0200 |
commit | fabd75a3655fdfee8f4fc8436c105f85629a607f (patch) | |
tree | 844398d8ea9683f3eaee7980aabbbf89216cf15c | |
parent | 1cf06d8270dfeb6aad3898a9eb24b3e577c8ded9 (diff) | |
download | metacity-fabd75a3655fdfee8f4fc8436c105f85629a607f.tar.gz |
libmetacity: add get_window_scaling_factor
Based on mutter commit:
https://git.gnome.org/browse/mutter/commit/?id=57c1078ee742d9f01e80e7fe05c88adfec4b4ac3
-rw-r--r-- | libmetacity/meta-theme-impl-private.h | 3 | ||||
-rw-r--r-- | libmetacity/meta-theme-impl.c | 16 |
2 files changed, 19 insertions, 0 deletions
diff --git a/libmetacity/meta-theme-impl-private.h b/libmetacity/meta-theme-impl-private.h index e31a9486..1ec87b4c 100644 --- a/libmetacity/meta-theme-impl-private.h +++ b/libmetacity/meta-theme-impl-private.h @@ -98,6 +98,9 @@ G_GNUC_INTERNAL void scale_border (GtkBorder *border, double factor); +G_GNUC_INTERNAL +int get_window_scaling_factor (void); + G_END_DECLS #endif diff --git a/libmetacity/meta-theme-impl.c b/libmetacity/meta-theme-impl.c index b16d5ead..1002adfc 100644 --- a/libmetacity/meta-theme-impl.c +++ b/libmetacity/meta-theme-impl.c @@ -308,3 +308,19 @@ scale_border (GtkBorder *border, border->top *= factor; border->bottom *= factor; } + +int +get_window_scaling_factor (void) +{ + GdkScreen *screen; + GValue value = G_VALUE_INIT; + + screen = gdk_screen_get_default (); + + g_value_init (&value, G_TYPE_INT); + + if (gdk_screen_get_setting (screen, "gdk-window-scaling-factor", &value)) + return g_value_get_int (&value); + else + return 1; +} |