summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <matthiasc@src.gnome.org>2008-07-01 06:22:04 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2008-07-01 06:22:04 +0000
commit44e2afaadbd264c15a8691086b85dbc0d532fe65 (patch)
treecd59e07dc0b13c9c7cbc58e1b3949774fade352f
parentbabcfbf01d4f0d263f6a5c26d6a6fd603c065f8a (diff)
downloadgtk+-44e2afaadbd264c15a8691086b85dbc0d532fe65.tar.gz
Add event sound settings. Patch by Lennart Pöttering.
* gdk/x11/gdksettings.c: * gtk/gtksettings.c: Add event sound settings. Patch by Lennart Pöttering. svn path=/trunk/; revision=20717
-rw-r--r--ChangeLog8
-rw-r--r--gdk/x11/gdksettings.c10
-rw-r--r--gtk/gtksettings.c70
3 files changed, 85 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index e57c8afbcb..dbf85e48a1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
2008-07-01 Matthias Clasen <mclasen@redhat.com>
+ 539790 – [PATCH] Please add three new settings to GtkSettings
+
+ * gdk/x11/gdksettings.c:
+ * gtk/gtksettings.c: Add event sound settings.
+ Patch by Lennart Pöttering.
+
+2008-07-01 Matthias Clasen <mclasen@redhat.com>
+
Bug 434535 – printoperation's create_surface doesn't check temp file
creation for success
diff --git a/gdk/x11/gdksettings.c b/gdk/x11/gdksettings.c
index 22878ab253..0e98816bf0 100644
--- a/gdk/x11/gdksettings.c
+++ b/gdk/x11/gdksettings.c
@@ -70,7 +70,10 @@ static const char gdk_settings_names[] =
"Gtk/EnableMnemonics\0" "gtk-enable-mnemonics\0"
"Gtk/ScrolledWindowPlacement\0" "gtk-scrolled-window-placement\0"
"Gtk/IMModule\0" "gtk-im-module\0"
- "Fontconfig/Timestamp\0" "gtk-fontconfig-timestamp\0";
+ "Fontconfig/Timestamp\0" "gtk-fontconfig-timestamp\0"
+ "Net/SoundThemeName\0" "gtk-sound-theme-name\0"
+ "Net/EnableInputFeedbackSounds\0" "gtk-enable-input-feedback-sounds\0"
+ "Net/EnableEventSounds\0" "gtk-enable-event-sounds\0";
static const struct
@@ -118,5 +121,8 @@ static const struct
{ 1361, 1381 },
{ 1402, 1430 },
{ 1460, 1473 },
- { 1487, 1508 }
+ { 1487, 1508 },
+ { 1533, 1552 },
+ { 1573, 1603 },
+ { 1636, 1658 }
};
diff --git a/gtk/gtksettings.c b/gtk/gtksettings.c
index fad288d8b7..40d8ebaafa 100644
--- a/gtk/gtksettings.c
+++ b/gtk/gtksettings.c
@@ -112,7 +112,10 @@ enum {
PROP_RECENT_FILES_LIMIT,
PROP_IM_MODULE,
PROP_RECENT_FILES_MAX_AGE,
- PROP_FONTCONFIG_TIMESTAMP
+ PROP_FONTCONFIG_TIMESTAMP,
+ PROP_SOUND_THEME_NAME,
+ PROP_ENABLE_INPUT_FEEDBACK_SOUNDS,
+ PROP_ENABLE_EVENT_SOUNDS
};
@@ -857,6 +860,71 @@ gtk_settings_class_init (GtkSettingsClass *class)
g_assert (result == PROP_FONTCONFIG_TIMESTAMP);
+ /**
+ * GtkSettings:gtk-sound-theme-name:
+ *
+ * The XDG sound theme to use for event sounds.
+ *
+ * See the <ulink url="http://www.freedesktop.org/wiki/Specifications/sound-theme-spec">Sound Theme spec</ulink>
+ * for more information on event sounds and sound themes.
+ *
+ * GTK+ itself does not support event sounds, you have to use a loadable
+ * module like the one that comes with libcanberra.
+ *
+ * Since: 2.14
+ */
+ result = settings_install_property_parser (class,
+ g_param_spec_string ("gtk-sound-theme-name",
+ P_("Sound Theme Name"),
+ P_("XDG sound theme name"),
+ "freedesktop",
+ GTK_PARAM_READWRITE),
+ NULL);
+ g_assert (result == PROP_SOUND_THEME_NAME);
+
+ /**
+ * GtkSettings:gtk-enable-input-feedback-sounds:
+ *
+ * Whether to play event sounds as feedback to user input.
+ *
+ * See the <ulink url="http://www.freedesktop.org/wiki/Specifications/sound-theme-spec">Sound Theme spec</ulink>
+ * for more information on event sounds and sound themes.
+ *
+ * GTK+ itself does not support event sounds, you have to use a loadable
+ * module like the one that comes with libcanberra.
+ *
+ * Since: 2.14
+ */
+ result = settings_install_property_parser (class,
+ g_param_spec_boolean ("gtk-enable-input-feedback-sounds",
+ P_("Aureal Input Feedback"),
+ P_("Whether to play event sounds as feedback to user input"),
+ TRUE,
+ GTK_PARAM_READWRITE),
+ NULL);
+ g_assert (result == PROP_ENABLE_INPUT_FEEDBACK_SOUNDS);
+
+ /**
+ * GtkSettings:gtk-enable-event-sounds:
+ *
+ * Whether to play any event sounds at all.
+ *
+ * See the <ulink url="http://www.freedesktop.org/wiki/Specifications/sound-theme-spec">Sound Theme spec</ulink>
+ * for more information on event sounds and sound themes.
+ *
+ * GTK+ itself does not support event sounds, you have to use a loadable
+ * module like the one that comes with libcanberra.
+ *
+ * Since: 2.14
+ */
+ result = settings_install_property_parser (class,
+ g_param_spec_boolean ("gtk-enable-event-sounds",
+ P_("Enable Event Sounds"),
+ P_("Whether to play any event sounds at all"),
+ TRUE,
+ GTK_PARAM_READWRITE),
+ NULL);
+ g_assert (result == PROP_ENABLE_EVENT_SOUNDS);
}
static void