[Xfce4-commits] <xfwm4:xfce-4.6> Reloading settings on keys-changed signal is a huge overhead and complete nonsense (fix bug #5964)

Olivier Fourdan noreply at xfce.org
Tue Nov 24 15:46:01 CET 2009


Updating branch refs/heads/xfce-4.6
         to c776c4a2a2ab0dfeca838620e9598db0b3adc91d (commit)
       from 32b452ee4a3b6efb512095727a88b534f2f991c6 (commit)

commit c776c4a2a2ab0dfeca838620e9598db0b3adc91d
Author: Olivier Fourdan <fourdan at xfce.org>
Date:   Mon Nov 23 15:45:12 2009 +0100

    Reloading settings on keys-changed signal is a huge overhead and complete nonsense (fix bug #5964)

 src/settings.c |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/src/settings.c b/src/settings.c
index a837235..cc0fa9b 100644
--- a/src/settings.c
+++ b/src/settings.c
@@ -1348,8 +1348,15 @@ cb_xfwm4_channel_property_changed(XfconfChannel *channel, const gchar *property_
 static void
 cb_keys_changed (GdkKeymap *keymap, ScreenInfo *screen_info)
 {
+    /* Recompute modifiers mask in case it changed */
     initModifiers (myScreenGetXDisplay (screen_info));
-    reloadSettings (screen_info->display_info, UPDATE_BUTTON_GRABS);
+
+    /* Ungrab/regrab shortcuts */
+    myScreenUngrabKeys (screen_info);
+    myScreenGrabKeys (screen_info);
+
+    /* Uupdate all grabs for mouse buttons */
+    clientUpdateAllFrames (screen_info, UPDATE_BUTTON_GRABS);
 }
 
 static void



More information about the Xfce4-commits mailing list