summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@redhat.com>2016-08-26 18:19:10 +0400
committerMarc-André Lureau <marcandre.lureau@redhat.com>2016-08-26 19:32:01 +0400
commit16d0bcf898cb77f2d6ab67dd45b7dc55ce2803f2 (patch)
treea12a906f385e1d30d128a231cae0d5ba6edfb779
parentb576e3a8df111aa73b9ee20381b2425a14bd3823 (diff)
widget: make set_keypress_delay a function
So the widget can call it without going through g_object_set(). Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Acked-by: Victor Toso <victortoso@redhat.com>
-rw-r--r--src/spice-widget.c26
1 files changed, 17 insertions, 9 deletions
diff --git a/src/spice-widget.c b/src/spice-widget.c
index f288c28..46e0e49 100644
--- a/src/spice-widget.c
+++ b/src/spice-widget.c
@@ -329,6 +329,22 @@ whole:
set_monitor_ready(display, true);
}
+static void
+spice_display_set_keypress_delay(SpiceDisplay *display, guint delay)
+{
+ SpiceDisplayPrivate *d = display->priv;
+ const gchar *env = g_getenv("SPICE_KEYPRESS_DELAY");
+
+ if (env != NULL)
+ delay = strtoul(env, NULL, 10);
+
+ if (d->keypress_delay != delay) {
+ SPICE_DEBUG("keypress-delay is set to %u ms", delay);
+ d->keypress_delay = delay;
+ g_object_notify(G_OBJECT(display), "keypress-delay");
+ }
+}
+
static void spice_display_set_property(GObject *object,
guint prop_id,
const GValue *value,
@@ -386,15 +402,7 @@ static void spice_display_set_property(GObject *object,
scaling_updated(display);
break;
case PROP_KEYPRESS_DELAY:
- {
- const gchar *env = g_getenv("SPICE_KEYPRESS_DELAY");
- guint delay = g_value_get_uint(value);
- if (env != NULL)
- delay = strtoul(env, NULL, 10);
-
- SPICE_DEBUG("keypress-delay is set to %u ms", delay);
- d->keypress_delay = delay;
- }
+ spice_display_set_keypress_delay(display, g_value_get_uint(value));
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);