gnome-settings-daemon r662 - in trunk: . plugins/media-keys
- From: jensg svn gnome org
- To: svn-commits-list gnome org
- Subject: gnome-settings-daemon r662 - in trunk: . plugins/media-keys
- Date: Thu, 15 Jan 2009 18:38:06 +0000 (UTC)
Author: jensg
Date: Thu Jan 15 18:38:06 2009
New Revision: 662
URL: http://svn.gnome.org/viewvc/gnome-settings-daemon?rev=662&view=rev
Log:
2009-01-15 Jens Granseuer <jensgr gmx net>
* plugins/media-keys/gsd-media-keys-manager.c:
(gsd_media_keys_manager_stop): ungrab shortcut keys when the plugin
is disabled (bug #567867)
Modified:
trunk/ChangeLog
trunk/plugins/media-keys/gsd-media-keys-manager.c
Modified: trunk/plugins/media-keys/gsd-media-keys-manager.c
==============================================================================
--- trunk/plugins/media-keys/gsd-media-keys-manager.c (original)
+++ trunk/plugins/media-keys/gsd-media-keys-manager.c Thu Jan 15 18:38:06 2009
@@ -724,7 +724,7 @@
}
}
- g_debug ("Registering %s at %ld", application, time);
+ g_debug ("Registering %s at %u", application, time);
media_player = g_new0 (MediaPlayer, 1);
media_player->application = g_strdup (application);
media_player->time = time;
@@ -997,6 +997,7 @@
GSList *ls;
GList *l;
int i;
+ gboolean need_flush;
g_debug ("Stopping media_keys manager");
@@ -1006,9 +1007,6 @@
manager);
}
- g_slist_free (priv->screens);
- priv->screens = NULL;
-
if (priv->conf_client) {
gconf_client_remove_dir (priv->conf_client,
GCONF_BINDING_DIR,
@@ -1030,14 +1028,27 @@
priv->connection = NULL;
}
+ need_flush = FALSE;
+ gdk_error_trap_push ();
+
for (i = 0; i < HANDLED_KEYS; ++i) {
if (keys[i].key) {
+ need_flush = TRUE;
+ grab_key_unsafe (keys[i].key, FALSE, priv->screens);
+
g_free (keys[i].key->keycodes);
g_free (keys[i].key);
keys[i].key = NULL;
}
}
+ if (need_flush)
+ gdk_flush ();
+ gdk_error_trap_pop ();
+
+ g_slist_free (priv->screens);
+ priv->screens = NULL;
+
if (priv->volume) {
g_object_unref (priv->volume);
priv->volume = NULL;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]