[gtk/wip/settings-portal] wayland: Fix a thinko in settings portal support
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/wip/settings-portal] wayland: Fix a thinko in settings portal support
- Date: Mon, 5 Nov 2018 23:14:38 +0000 (UTC)
commit 65f818e39bd0d7f881efe8cf9550ec9a3fc2ab66
Author: Matthias Clasen <mclasen redhat com>
Date: Mon Nov 5 18:12:40 2018 -0500
wayland: Fix a thinko in settings portal support
When we decide to fall back because the settings portal
is not present, adhere to that decision elsewhere. And
treat the fontconfig-timestamp like the other special-cased
settings, with G_TYPE_NONE.
gdk/wayland/gdkdisplay-wayland.c | 26 ++++++++++++++++----------
1 file changed, 16 insertions(+), 10 deletions(-)
---
diff --git a/gdk/wayland/gdkdisplay-wayland.c b/gdk/wayland/gdkdisplay-wayland.c
index 4ddb5e3c99..fb1ed3e25b 100644
--- a/gdk/wayland/gdkdisplay-wayland.c
+++ b/gdk/wayland/gdkdisplay-wayland.c
@@ -1483,7 +1483,7 @@ update_xft_settings (GdkDisplay *display)
GsdXftSettings xft_settings;
double dpi;
- if (gdk_should_use_portal ())
+ if (display_wayland->settings_portal)
{
TranslationEntry *entry;
@@ -1637,7 +1637,7 @@ static TranslationEntry translations[] = {
{ FALSE, "org.gnome.desktop.wm.preferences", "action-middle-click-titlebar", "gtk-titlebar-middle-click",
G_TYPE_STRING, { .s = "none" } },
{ FALSE, "org.gnome.desktop.wm.preferences", "action-right-click-titlebar", "gtk-titlebar-right-click",
G_TYPE_STRING, { .s = "menu" } },
{ FALSE, "org.gnome.desktop.a11y", "always-show-text-caret", "gtk-keynav-use-caret", G_TYPE_BOOLEAN, { .b
= FALSE } },
- { FALSE, "org.gnome.fontconfig", "serial", "gtk-fontconfig-timestamp", G_TYPE_INT, { .i = 0 } }
+ { FALSE, "org.gnome.fontconfig", "serial", "gtk-fontconfig-timestamp", G_TYPE_NONE, { .i = 0 } }
};
@@ -1720,6 +1720,11 @@ apply_portal_setting (TranslationEntry *entry,
entry->fallback.b = g_variant_get_boolean (value);
break;
case G_TYPE_NONE:
+ if (strcmp (entry->key, "serial") == 0)
+ {
+ entry->fallback.i = g_variant_get_int32 (value);
+ break;
+ }
if (strcmp (entry->key, "antialiasing") == 0)
entry->fallback.i = get_antialiasing (g_variant_get_string (value, NULL));
else if (strcmp (entry->key, "hinting") == 0)
@@ -1930,7 +1935,7 @@ set_value_from_entry (GdkDisplay *display,
GdkWaylandDisplay *display_wayland = GDK_WAYLAND_DISPLAY (display);
GSettings *settings;
- if (gdk_should_use_portal ())
+ if (display_wayland->settings_portal)
{
switch (entry->type)
{
@@ -1938,16 +1943,15 @@ set_value_from_entry (GdkDisplay *display,
g_value_set_string (value, entry->fallback.s);
break;
case G_TYPE_INT:
- if (g_str_equal (entry->setting, "gtk-fontconfig-timestamp"))
- g_value_set_uint (value, (guint)entry->fallback.i);
- else
- g_value_set_int (value, entry->fallback.i);
+ g_value_set_int (value, entry->fallback.i);
break;
case G_TYPE_BOOLEAN:
g_value_set_boolean (value, entry->fallback.b);
break;
case G_TYPE_NONE:
- if (g_str_equal (entry->setting, "gtk-xft-antialias"))
+ if (g_str_equal (entry->setting, "gtk-fontconfig-timestamp"))
+ g_value_set_uint (value, (guint)entry->fallback.i);
+ else if (g_str_equal (entry->setting, "gtk-xft-antialias"))
g_value_set_int (value, display_wayland->xft_settings.antialias);
else if (g_str_equal (entry->setting, "gtk-xft-hinting"))
g_value_set_int (value, display_wayland->xft_settings.hinting);
@@ -1995,7 +1999,9 @@ set_value_from_entry (GdkDisplay *display,
: entry->fallback.b);
break;
case G_TYPE_NONE:
- if (g_str_equal (entry->setting, "gtk-xft-antialias"))
+ if (g_str_equal (entry->setting, "gtk-fontconfig-timestamp"))
+ g_value_set_uint (value, (guint)entry->fallback.i);
+ else if (g_str_equal (entry->setting, "gtk-xft-antialias"))
g_value_set_int (value, display_wayland->xft_settings.antialias);
else if (g_str_equal (entry->setting, "gtk-xft-hinting"))
g_value_set_int (value, display_wayland->xft_settings.hinting);
@@ -2021,7 +2027,7 @@ set_decoration_layout_from_entry (GdkDisplay *display,
GdkWaylandDisplay *display_wayland = GDK_WAYLAND_DISPLAY (display);
GSettings *settings = NULL;
- if (gdk_should_use_portal ())
+ if (display_wayland->settings_portal)
{
g_value_set_string (value, entry->fallback.s);
return;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]