]> Dogcows Code - chaz/openbox/blobdiff - openbox/keyboard.c
make mouse use the new action stuff
[chaz/openbox] / openbox / keyboard.c
index e62f5011292a21456533ce6777cb482a9af65d76..d9ec4f88733d67e2ad43c908df77d043b37d9c78 100644 (file)
@@ -25,7 +25,7 @@
 #include "event.h"
 #include "grab.h"
 #include "client.h"
-#include "action.h"
+#include "actions.h"
 #include "prop.h"
 #include "menuframe.h"
 #include "config.h"
@@ -42,7 +42,7 @@ typedef struct {
     gboolean active;
     guint state;
     ObClient *client;
-    ObAction *action;
+    ObActionsAct *action;
 } ObInteractiveState;
 
 KeyBindingTree *keyboard_firstnode = NULL;
@@ -98,11 +98,12 @@ static void set_curpos(KeyBindingTree *newpos)
             g_free(oldtext);
         }
 
-        a = screen_physical_area_monitor_active();
+        a = screen_physical_area_active();
         popup_position(popup, NorthWestGravity, a->x + 10, a->y + 10);
         /* 1 second delay for the popup to show */
         popup_delay_show(popup, G_USEC_PER_SEC, text);
         g_free(text);
+        g_free(a);
     } else {
         popup_hide(popup);
     }
@@ -141,7 +142,7 @@ void keyboard_chroot(GList *keylist)
     }
 }
 
-gboolean keyboard_bind(GList *keylist, ObAction *action)
+gboolean keyboard_bind(GList *keylist, ObActionsAct *action)
 {
     KeyBindingTree *tree, *t;
     gboolean conflict;
@@ -276,7 +277,13 @@ void keyboard_event(ObClient *client, const XEvent *e)
 {
     KeyBindingTree *p;
 
+    if (e->type == KeyRelease) {
+        grab_key_passive_count(-1);
+        return;
+    }
+
     g_assert(e->type == KeyPress);
+    grab_key_passive_count(1);
 
     if (e->xkey.keycode == config_keyboard_reset_keycode &&
         e->xkey.state == config_keyboard_reset_state)
This page took 0.021915 seconds and 4 git commands to generate.