[drwright] Port to gsettings
- From: Christian Persch <chpe src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [drwright] Port to gsettings
- Date: Sat, 20 Nov 2010 22:14:17 +0000 (UTC)
commit 2d8b9f853ef72b8a607df269552f8f04fe0ef445
Author: Christian Persch <chpe gnome org>
Date: Thu Nov 18 20:24:52 2010 +0100
Port to gsettings
configure.in | 23 +++-
po/POTFILES.in | 3 +-
src/Makefile.am | 23 ++--
src/drw-break-window.c | 42 ++----
src/drwright.c | 83 ++++--------
src/drwright.convert | 7 +
src/drwright.h | 2 +-
src/drwright.schemas.in | 28 ----
src/gsd-typing-break-manager.c | 139 ++++----------------
src/gsd-typing-break-plugin.c | 2 +-
...tings-daemon.plugins.TypingBreak.gschema.xml.in | 48 +++++++
11 files changed, 157 insertions(+), 243 deletions(-)
---
diff --git a/configure.in b/configure.in
index af8779d..4f54e62 100644
--- a/configure.in
+++ b/configure.in
@@ -36,16 +36,22 @@ AC_HEADER_STDC
AM_PROG_LIBTOOL
# ************
-# Typing Break
+# Requirements
# ************
-GLIB_REQUIRED=2.12.0
+GLIB_REQUIRED=2.26.0
+GIO_REQUIRED=2.26.0
GTK_REQUIRED=2.91.0
LIBCANBERRA_REQUIRED=0
+GSD_REQUIRED=2.91.0
+
+# ************
+# Typing Break
+# ************
PKG_CHECK_MODULES([TYPING],[
glib-2.0 >= $GLIB_REQUIRED
- gconf-2.0
+ gio-2.0 >= $GIO_REQUIRED
gtk+-3.0 >= $GTK_REQUIRED
libcanberra-gtk3 >= $LIBCANBERRA_REQUIRED
x11])
@@ -70,13 +76,11 @@ AC_SUBST(SCREENSAVER_LIBS)
# GSD plugin
# **********
-GSD_REQUIRED=2.91.0
-
PKG_CHECK_MODULES([GSD_PLUGIN],[
gnome-settings-daemon >= $GSD_REQUIRED
+ gio-2.0 >= $GIO_REQUIRED
gtk+-3.0
- gdk-x11-3.0
- gconf-2.0])
+ gdk-x11-3.0])
gsd_plugindir=`$PKG_CONFIG --variable plugindir gnome-settings-daemon`
AC_SUBST([gsd_plugindir])
@@ -92,6 +96,11 @@ case $host_os in
esac
AC_SUBST([GSD_PLUGIN_LDFLAGS])
+# *********
+# GSettings
+# *********
+
+GLIB_GSETTINGS
# *****************
# Optional features
diff --git a/po/POTFILES.in b/po/POTFILES.in
index c563fc9..71e0d17 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -2,4 +2,5 @@ src/main.c
src/drwright.c
src/drw-break-window.c
src/drw-monitor.c
-src/drwright.schemas.in
+src/org.gnome.settings-daemon.plugins.TypingBreak.gschema.xml.in
+
diff --git a/src/Makefile.am b/src/Makefile.am
index 9c25169..b2314bc 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -93,34 +93,31 @@ gsd_plugin_DATA = $(gsd_plugin_in_files:.gnome-settings-plugin.in=.gnome-setting
@GSD_INTLTOOL_PLUGIN_RULE@
-# GConf schema
+# GSettings
-schemadir = $(GCONF_SCHEMA_FILE_DIR)
-schema_in_files = drwright.schemas.in
-schema_DATA = drwright.schemas
+gsettings_schemas_in_files = org.gnome-settings-daemon.plugins.TypingBreak.gschema.xml.in
+gsettings_SCHEMAS = $(gsettings_schemas_in_files:.gschema.xml.in=.gschema.xml)
-if GCONF_SCHEMAS_INSTALL
-install-data-local:
- GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) $(GCONFTOOL) --makefile-install-rule $(top_builddir)/src/$(schema_DATA)
-endif
+gsettings_convertdir = $(datadir)/GConf/gsettings
+dist_gsettings_convert_DATA = drwright.convert
- INTLTOOL_SCHEMAS_RULE@
+ GSETTINGS_RULES@
+ INTLTOOL_XML_NOMERGE_RULE@
# Clean
EXTRA_DIST = \
$(gsd_plugin_in_files) \
- $(schema_in_files) \
+ $(gsettings_schemas_in_files) \
$(NULL)
CLEANFILES = \
- $(gsd_plugin_DATA) \
- $(schema_DATA) \
+ $(gsd_plugin_DATA) \
+ $(gsettings_SCHEMAS) \
$(NULL)
DISTCLEANFILES = \
$(gsd_plugin_DATA) \
- $(schema_DATA) \
$(NULL)
# includes
diff --git a/src/drw-break-window.c b/src/drw-break-window.c
index 6af4a11..45c4d80 100644
--- a/src/drw-break-window.c
+++ b/src/drw-break-window.c
@@ -24,9 +24,9 @@
#include <string.h>
#include <math.h>
#include <glib/gi18n.h>
+#include <gio/gio.h>
#include <gtk/gtk.h>
#include <gdk/gdkkeysyms.h>
-#include <gconf/gconf-client.h>
#ifdef HAVE_CANBERRA_GTK
#include <canberra-gtk.h>
@@ -52,6 +52,8 @@ struct _DrwBreakWindowPrivate {
guint clock_timeout_id;
guint postpone_timeout_id;
guint postpone_sensitize_id;
+
+ GSettings *settings;
};
#define DRW_BREAK_WINDOW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), DRW_TYPE_BREAK_WINDOW, DrwBreakWindowPrivate))
@@ -131,23 +133,17 @@ drw_break_window_init (DrwBreakWindow *window)
GdkRectangle monitor;
gint right_padding;
gint bottom_padding;
- GConfClient *client;
+ GSettings *settings;
priv = DRW_BREAK_WINDOW_GET_PRIVATE (window);
window->priv = priv;
- client = gconf_client_get_default ();
+ priv->settings = g_settings_new (DRW_SETTINGS_SCHEMA_ID);
- priv->break_time = 60 * gconf_client_get_int (client,
- GCONF_PATH "/break_time",
- NULL);
+ priv->break_time = 60 * g_settings_get_int (priv->settings, "break-time");
- allow_postpone = gconf_client_get_bool (client,
- GCONF_PATH "/allow_postpone",
- NULL);
- g_object_unref (client);
+ allow_postpone = g_settings_get_boolean (priv->settings, "allow-postpone");
- g_object_set (window, "type", GTK_WINDOW_POPUP, NULL);
gtk_window_set_keep_above (GTK_WINDOW (window), TRUE);
gtk_window_fullscreen (GTK_WINDOW (window));
gtk_window_set_modal (GTK_WINDOW (window), TRUE);
@@ -304,11 +300,11 @@ drw_break_window_finalize (GObject *object)
g_source_remove (priv->postpone_sensitize_id);
}
+ g_object_unref (priv->settings);
+
window->priv = NULL;
- if (G_OBJECT_CLASS (drw_break_window_parent_class)->finalize) {
- (* G_OBJECT_CLASS (drw_break_window_parent_class)->finalize) (object);
- }
+ G_OBJECT_CLASS (drw_break_window_parent_class)->finalize (object);
}
static void
@@ -417,24 +413,18 @@ static void
postpone_entry_activate_cb (GtkWidget *entry,
DrwBreakWindow *window)
{
- const gchar *str;
- gchar *phrase;
- GConfClient *client = gconf_client_get_default();
+ DrwBreakWindowPrivate *priv = window->priv;
+ const gchar *str, *phrase;
str = gtk_entry_get_text (GTK_ENTRY (entry));
- phrase = gconf_client_get_string (client,
- GCONF_PATH "/unlock_phrase",
- NULL);
- g_object_unref (client);
+ g_settings_get (priv->settings, "unlock-phrase", "&s", &phrase);
if (!strcmp (str, phrase)) {
g_signal_emit (window, signals[POSTPONE], 0, NULL);
- g_free (phrase);
return;
}
- g_free (phrase);
gtk_entry_set_text (GTK_ENTRY (entry), "");
}
@@ -506,12 +496,10 @@ postpone_clicked_cb (GtkWidget *button,
{
DrwBreakWindow *bw = DRW_BREAK_WINDOW (window);
DrwBreakWindowPrivate *priv = bw->priv;
- gchar *phrase;
+ const gchar *phrase;
/* Disable the phrase for now. */
- phrase = NULL; /*gconf_client_get_string (gconf_client_get_default (),
- GCONF_PATH "/unlock_phrase",
- NULL);*/
+ phrase = NULL; /* g_settings_get_string (priv->settings, "unlock-phrase", "&s", &phrase); */
if (!phrase || !phrase[0]) {
g_signal_emit (window, signals[POSTPONE], 0, NULL);
diff --git a/src/drwright.c b/src/drwright.c
index 5e8674d..716a5e2 100644
--- a/src/drwright.c
+++ b/src/drwright.c
@@ -23,11 +23,11 @@
#include <config.h>
#include <string.h>
#include <math.h>
+#include <gio/gio.h>
#include <glib/gi18n.h>
#include <gdk/gdk.h>
#include <gdk/gdkkeysyms.h>
#include <gtk/gtk.h>
-#include <gconf/gconf-client.h>
#ifdef HAVE_APP_INDICATOR
#include <libappindicator/app-indicator.h>
@@ -48,6 +48,8 @@
#define POPUP_ITEM_ENABLED 1
#define POPUP_ITEM_BREAK 2
+#define I_(string) (g_intern_static_string (string))
+
typedef enum {
STATE_START,
STATE_RUNNING,
@@ -64,6 +66,8 @@ typedef enum {
#endif /* HAVE_APP_INDICATOR */
struct _DrWright {
+ GSettings *settings;
+
/* Widgets. */
GtkWidget *break_window;
GList *secondary_break_windows;
@@ -548,39 +552,29 @@ activity_detected_cb (DrwMonitor *monitor,
}
static void
-gconf_notify_cb (GConfClient *client,
- guint cnxn_id,
- GConfEntry *entry,
- gpointer user_data)
+settings_change_cb (GSettings *settings,
+ const char *key,
+ DrWright *dr)
{
- DrWright *dr = user_data;
GtkWidget *item;
- if (!strcmp (entry->key, GCONF_PATH "/type_time")) {
- if (entry->value->type == GCONF_VALUE_INT) {
- dr->type_time = 60 * gconf_value_get_int (entry->value);
- dr->warn_time = MIN (dr->type_time / 10, 5*60);
+ if (key == I_("type-time")) {
+ dr->type_time = 60 * g_settings_get_int (settings, key);
+ dr->warn_time = MIN (dr->type_time / 10, 5*60);
- dr->state = STATE_START;
- }
- }
- else if (!strcmp (entry->key, GCONF_PATH "/break_time")) {
- if (entry->value->type == GCONF_VALUE_INT) {
- dr->break_time = 60 * gconf_value_get_int (entry->value);
- dr->state = STATE_START;
- }
- }
- else if (!strcmp (entry->key, GCONF_PATH "/enabled")) {
- if (entry->value->type == GCONF_VALUE_BOOL) {
- dr->enabled = gconf_value_get_bool (entry->value);
- dr->state = STATE_START;
+ dr->state = STATE_START;
+ } else if (key == I_("break-time")) {
+ dr->break_time = 60 * g_settings_get_int (settings, key);
+ dr->state = STATE_START;
+ } else if (key == I_("enabled")) {
+ dr->enabled = g_settings_get_boolean (settings, key);
+ dr->state = STATE_START;
- item = gtk_ui_manager_get_widget (dr->ui_manager,
- "/Pop/TakeABreak");
- gtk_widget_set_sensitive (item, dr->enabled);
+ item = gtk_ui_manager_get_widget (dr->ui_manager,
+ "/Pop/TakeABreak");
+ gtk_widget_set_sensitive (item, dr->enabled);
- update_status (dr);
- }
+ update_status (dr);
}
maybe_change_state (dr);
@@ -810,8 +804,8 @@ drwright_new (void)
{
DrWright *dr;
GtkWidget *item;
- GConfClient *client;
GtkActionGroup *action_group;
+ GSettings *settings;
static const char ui_description[] =
"<ui>"
@@ -825,33 +819,14 @@ drwright_new (void)
dr = g_new0 (DrWright, 1);
- client = gconf_client_get_default ();
-
- gconf_client_add_dir (client,
- GCONF_PATH,
- GCONF_CLIENT_PRELOAD_NONE,
- NULL);
-
- gconf_client_notify_add (client, GCONF_PATH,
- gconf_notify_cb,
- dr,
- NULL,
- NULL);
-
- dr->type_time = 60 * gconf_client_get_int (
- client, GCONF_PATH "/type_time", NULL);
+ dr->settings = g_settings_new (DRW_SETTINGS_SCHEMA_ID);
+ g_signal_connect (dr->settings, "changed",
+ G_CALLBACK (settings_change_cb), dr);
+ dr->type_time = 60 * g_settings_get_int (dr->settings, "type-time");
dr->warn_time = MIN (dr->type_time / 12, 60*3);
-
- dr->break_time = 60 * gconf_client_get_int (
- client, GCONF_PATH "/break_time", NULL);
-
- dr->enabled = gconf_client_get_bool (
- client,
- GCONF_PATH "/enabled",
- NULL);
-
- g_object_unref (client);
+ dr->break_time = 60 * g_settings_get_int (dr->settings, "break-time");
+ dr->enabled = g_settings_get_boolean (dr->settings, "enabled");
if (debug) {
setup_debug_values (dr);
diff --git a/src/drwright.convert b/src/drwright.convert
new file mode 100644
index 0000000..b11daca
--- /dev/null
+++ b/src/drwright.convert
@@ -0,0 +1,7 @@
+[org.gnome.settings-daemon.plugins.TypingBreak]
+active = /apps/gnome_settings_daemon/plugins/typing-break/active
+enabled = /desktop/gnome/typing_break/enabled
+allow-postpone = /desktop/gnome/typing_break/allow_postpone
+type-time = /desktop/gnome/typing_break/type_time
+break-time = /desktop/gnome/typing_break/break_time
+unlock-phrase = /desktop/gnome/typing_break/unlock_phrase
\ No newline at end of file
diff --git a/src/drwright.h b/src/drwright.h
index df2cf99..12234ac 100644
--- a/src/drwright.h
+++ b/src/drwright.h
@@ -21,7 +21,7 @@
#ifndef __DR_WRIGHT_H__
#define __DR_WRIGHT_H__
-#define GCONF_PATH "/desktop/gnome/typing_break"
+#define DRW_SETTINGS_SCHEMA_ID "org.gnome.settings-daemon.plugins.TypingBreak"
typedef struct _DrWright DrWright;
diff --git a/src/gsd-typing-break-manager.c b/src/gsd-typing-break-manager.c
index 69b60cd..f4f3495 100644
--- a/src/gsd-typing-break-manager.c
+++ b/src/gsd-typing-break-manager.c
@@ -33,25 +33,26 @@
#include <glib.h>
#include <glib/gi18n.h>
+#include <gio/gio.h>
#include <gdk/gdk.h>
#include <gdk/gdkx.h>
#include <gtk/gtk.h>
-#include <gconf/gconf-client.h>
#include "gnome-settings-profile.h"
#include "gsd-typing-break-manager.h"
-#define GSD_TYPING_BREAK_MANAGER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GSD_TYPE_TYPING_BREAK_MANAGER, GsdTypingBreakManagerPrivate))
+#define DRW_SETTINGS_SCHEMA_ID "org.gnome.settings-daemon.plugins.TypingBreak"
+#define I_(string) (g_intern_static_string (string))
-#define GCONF_BREAK_DIR "/desktop/gnome/typing_break"
+#define GSD_TYPING_BREAK_MANAGER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GSD_TYPE_TYPING_BREAK_MANAGER, GsdTypingBreakManagerPrivate))
struct GsdTypingBreakManagerPrivate
{
+ GSettings *settings;
GPid typing_monitor_pid;
guint typing_monitor_idle_id;
guint child_watch_id;
guint setup_id;
- guint notify;
};
static void gsd_typing_break_manager_class_init (GsdTypingBreakManagerClass *klass);
@@ -137,16 +138,13 @@ setup_typing_break (GsdTypingBreakManager *manager,
}
static void
-typing_break_callback (GConfClient *client,
- guint cnxn_id,
- GConfEntry *entry,
- GsdTypingBreakManager *manager)
+typing_break_enabled_changed_cb (GSettings *settings,
+ const char *key,
+ GsdTypingBreakManager *manager)
{
- if (! strcmp (entry->key, "/desktop/gnome/typing_break/enabled")) {
- if (entry->value->type == GCONF_VALUE_BOOL) {
- setup_typing_break (manager, gconf_value_get_bool (entry->value));
- }
- }
+ g_assert (key == I_("enabled"));
+
+ setup_typing_break (manager, g_settings_get_boolean (settings, key));
}
static gboolean
@@ -161,28 +159,20 @@ gboolean
gsd_typing_break_manager_start (GsdTypingBreakManager *manager,
GError **error)
{
- GConfClient *client;
- gboolean enabled;
+ GsdTypingBreakManagerPrivate *priv = manager->priv;
g_debug ("Starting typing_break manager");
gnome_settings_profile_start (NULL);
- client = gconf_client_get_default ();
-
- gconf_client_add_dir (client, GCONF_BREAK_DIR, GCONF_CLIENT_PRELOAD_ONELEVEL, NULL);
- manager->priv->notify =
- gconf_client_notify_add (client,
- GCONF_BREAK_DIR,
- (GConfClientNotifyFunc) typing_break_callback, manager,
- NULL, NULL);
-
- enabled = gconf_client_get_bool (client, GCONF_BREAK_DIR "/enabled", NULL);
- g_object_unref (client);
- if (enabled) {
- manager->priv->setup_id =
- g_timeout_add_seconds (3,
- (GSourceFunc) really_setup_typing_break,
- manager);
+ priv->settings = g_settings_new (DRW_SETTINGS_SCHEMA_ID);
+ g_signal_connect (priv->settings, "changed::enabled",
+ G_CALLBACK (typing_break_enabled_changed_cb),
+ manager);
+
+ if (g_settings_get_boolean (priv->settings, "enabled")) {
+ priv->setup_id = g_timeout_add_seconds (3,
+ (GSourceFunc) really_setup_typing_break,
+ manager);
}
gnome_settings_profile_end (NULL);
@@ -218,85 +208,20 @@ gsd_typing_break_manager_stop (GsdTypingBreakManager *manager)
p->typing_monitor_pid = 0;
}
- if (p->notify != 0) {
- GConfClient *client = gconf_client_get_default ();
- gconf_client_remove_dir (client, GCONF_BREAK_DIR, NULL);
- gconf_client_notify_remove (client, p->notify);
- g_object_unref (client);
- p->notify = 0;
- }
-}
-
-static void
-gsd_typing_break_manager_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec)
-{
- GsdTypingBreakManager *self;
-
- self = GSD_TYPING_BREAK_MANAGER (object);
-
- switch (prop_id) {
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
- break;
- }
-}
-
-static void
-gsd_typing_break_manager_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec)
-{
- GsdTypingBreakManager *self;
-
- self = GSD_TYPING_BREAK_MANAGER (object);
-
- switch (prop_id) {
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
- break;
+ if (p->settings != NULL) {
+ g_signal_handlers_disconnect_by_func (p->settings,
+ G_CALLBACK (typing_break_enabled_changed_cb),
+ manager);
+ g_object_unref (p->settings);
+ p->settings = NULL;
}
}
-static GObject *
-gsd_typing_break_manager_constructor (GType type,
- guint n_construct_properties,
- GObjectConstructParam *construct_properties)
-{
- GsdTypingBreakManager *typing_break_manager;
- GsdTypingBreakManagerClass *klass;
-
- klass = GSD_TYPING_BREAK_MANAGER_CLASS (g_type_class_peek (GSD_TYPE_TYPING_BREAK_MANAGER));
-
- typing_break_manager = GSD_TYPING_BREAK_MANAGER (G_OBJECT_CLASS (gsd_typing_break_manager_parent_class)->constructor (type,
- n_construct_properties,
- construct_properties));
-
- return G_OBJECT (typing_break_manager);
-}
-
-static void
-gsd_typing_break_manager_dispose (GObject *object)
-{
- GsdTypingBreakManager *typing_break_manager;
-
- typing_break_manager = GSD_TYPING_BREAK_MANAGER (object);
-
- G_OBJECT_CLASS (gsd_typing_break_manager_parent_class)->dispose (object);
-}
-
static void
gsd_typing_break_manager_class_init (GsdTypingBreakManagerClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
- object_class->get_property = gsd_typing_break_manager_get_property;
- object_class->set_property = gsd_typing_break_manager_set_property;
- object_class->constructor = gsd_typing_break_manager_constructor;
- object_class->dispose = gsd_typing_break_manager_dispose;
object_class->finalize = gsd_typing_break_manager_finalize;
g_type_class_add_private (klass, sizeof (GsdTypingBreakManagerPrivate));
@@ -306,20 +231,12 @@ static void
gsd_typing_break_manager_init (GsdTypingBreakManager *manager)
{
manager->priv = GSD_TYPING_BREAK_MANAGER_GET_PRIVATE (manager);
-
}
static void
gsd_typing_break_manager_finalize (GObject *object)
{
- GsdTypingBreakManager *typing_break_manager;
-
- g_return_if_fail (object != NULL);
- g_return_if_fail (GSD_IS_TYPING_BREAK_MANAGER (object));
-
- typing_break_manager = GSD_TYPING_BREAK_MANAGER (object);
-
- g_return_if_fail (typing_break_manager->priv != NULL);
+ GsdTypingBreakManager *typing_break_manager = GSD_TYPING_BREAK_MANAGER (object);
G_OBJECT_CLASS (gsd_typing_break_manager_parent_class)->finalize (object);
}
diff --git a/src/gsd-typing-break-plugin.c b/src/gsd-typing-break-plugin.c
index 28621fa..ceb5e88 100644
--- a/src/gsd-typing-break-plugin.c
+++ b/src/gsd-typing-break-plugin.c
@@ -35,7 +35,7 @@ struct GsdTypingBreakPluginPrivate {
GNOME_SETTINGS_PLUGIN_REGISTER (GsdTypingBreakPlugin, gsd_typing_break_plugin)
static void
-gsd_typing_break_plugin_class_finalize (GsdTypingBreakPluginClass*klass)
+gsd_typing_break_plugin_class_finalize (GsdTypingBreakPluginClass *klass)
{
}
diff --git a/src/org.gnome-settings-daemon.plugins.TypingBreak.gschema.xml.in b/src/org.gnome-settings-daemon.plugins.TypingBreak.gschema.xml.in
new file mode 100644
index 0000000..55b3117
--- /dev/null
+++ b/src/org.gnome-settings-daemon.plugins.TypingBreak.gschema.xml.in
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright © 2010 Christian Persch
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 3, or (at your option)
+ any later version.
+
+ This program is distributed in the hope conf it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+-->
+<schemalist>
+ <schema id="org.gnome.settings-daemon.plugins.TypingBreak"
+ path="/org/gnome/settings-daemon/plugins/typing-break/"
+ gettext-domain="drwright">
+ <key name="active" type="b">
+ <default>true</default>
+ <_summary>Whether the settings daemon should activate the typing break plugin</_summary>
+ </key>
+ <key name="enabled" type="b">
+ <default>true</default>
+ <_summary>Whether typing break is enabled</_summary>
+ </key>
+ <key name="allow-postpone" type="b">
+ <default>false</default>
+ <_summary>Whether the typing break can be postponed</_summary>
+ </key>
+ <key name="type-time" type="i">
+ <default>60</default>
+ <_summary>Number of minutes of typing time before break mode starts</_summary>
+ </key>
+ <key name="break-time" type="i">
+ <default>3</default>
+ <_summary>Number of minutes that the typing break should last</_summary>
+ </key>
+ <key name="unlock-phrase" type="s">
+ <default>''</default>
+ <_summary>Phrase to unlock the break screen with</_summary>
+ </key>
+ </schema>
+</schemalist>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]