GSList *actions[OB_MOUSE_NUM_ACTIONS]; /* lists of Action pointers */
} ObMouseBinding;
+#define FRAME_CONTEXT(co, cl) ((cl && cl->type != OB_CLIENT_TYPE_DESKTOP) ? \
+ co == OB_FRAME_CONTEXT_FRAME : FALSE)
#define CLIENT_CONTEXT(co, cl) ((cl && cl->type == OB_CLIENT_TYPE_DESKTOP) ? \
co == OB_FRAME_CONTEXT_DESKTOP : \
co == OB_FRAME_CONTEXT_CLIENT)
int mode;
unsigned int mask;
- if (i == OB_FRAME_CONTEXT_FRAME) {
+ if (FRAME_CONTEXT(i, client)) {
win = client->frame->window;
mode = GrabModeAsync;
mask = ButtonPressMask | ButtonMotionMask | ButtonReleaseMask;
} else continue;
if (grab)
- grab_button_full(b->button, b->state, win, mask, mode, None);
+ grab_button_full(b->button, b->state, win, mask, mode,
+ OB_CURSOR_NONE);
else
ungrab_button(b->button, b->state, win);
}
g_free(b);
}
g_slist_free(bound_contexts[i]);
+ bound_contexts[i] = NULL;
}
}
return TRUE;
}
-void mouse_startup()
+void mouse_startup(gboolean reconfig)
{
}
-void mouse_shutdown()
+void mouse_shutdown(gboolean reconfig)
{
grab_all_clients(FALSE);
clearall();