diff options
author | Ryan Lortie <desrt@desrt.ca> | 2013-10-27 11:09:39 -0700 |
---|---|---|
committer | Ryan Lortie <desrt@desrt.ca> | 2013-10-28 10:24:20 -0700 |
commit | 863fa5c1ee630a2ba3988896a957b922faceee87 (patch) | |
tree | f4d61a9bfb88ccc909029f881917604400fa02e7 /gsettings/dconfsettingsbackend.c | |
parent | af4cab4ae533d21e8a02b6041c43e928bc74f96e (diff) | |
download | dconf-863fa5c1ee630a2ba3988896a957b922faceee87.tar.gz |
GSettings: implement _read_user_value()
Implement g_settings_backend_read_user_value() in DConfSettingsBackend.
This will help us support g_settings_get_user_value() properly.
We add a new engine API to support this as well. It takes a
read_through queue, even though we don't bother using that from
DConfSettingsBackend.
https://bugzilla.gnome.org/show_bug.cgi?id=668233
Diffstat (limited to 'gsettings/dconfsettingsbackend.c')
-rw-r--r-- | gsettings/dconfsettingsbackend.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gsettings/dconfsettingsbackend.c b/gsettings/dconfsettingsbackend.c index 53f701e..85930d2 100644 --- a/gsettings/dconfsettingsbackend.c +++ b/gsettings/dconfsettingsbackend.c @@ -63,6 +63,16 @@ dconf_settings_backend_read (GSettingsBackend *backend, return value; } +static GVariant * +dconf_settings_backend_read_user_value (GSettingsBackend *backend, + const gchar *key, + const GVariantType *expected_type) +{ + DConfSettingsBackend *dcsb = (DConfSettingsBackend *) backend; + + return dconf_engine_read_user_value (dcsb->engine, NULL, key); +} + static gboolean dconf_settings_backend_write (GSettingsBackend *backend, const gchar *key, @@ -193,6 +203,7 @@ dconf_settings_backend_class_init (GSettingsBackendClass *class) object_class->finalize = dconf_settings_backend_finalize; class->read = dconf_settings_backend_read; + class->read_user_value = dconf_settings_backend_read_user_value; class->write = dconf_settings_backend_write; class->write_tree = dconf_settings_backend_write_tree; class->reset = dconf_settings_backend_reset; |