always grab Button1
This commit is contained in:
parent
f9c9bc53c6
commit
37b4f62258
4
client.c
4
client.c
|
@ -187,7 +187,6 @@ focus(Client *c, int screen, Bool from_mouse)
|
|||
if(globalconf.focus->client)
|
||||
client_unfocus(globalconf.focus->client);
|
||||
|
||||
|
||||
if(c)
|
||||
{
|
||||
/* save sel in focus history */
|
||||
|
@ -199,6 +198,9 @@ focus(Client *c, int screen, Bool from_mouse)
|
|||
|| !globalconf.screens[screen].sloppy_focus
|
||||
|| globalconf.screens[screen].sloppy_focus_raise)
|
||||
XRaiseWindow(globalconf.display, c->win);
|
||||
/* since we're dropping EnterWindow events and sometimes the window
|
||||
* will appear under the mouse, grabbuttons */
|
||||
window_grabbuttons(phys_screen, c->win);
|
||||
}
|
||||
else
|
||||
XSetInputFocus(globalconf.display,
|
||||
|
|
4
event.c
4
event.c
|
@ -122,7 +122,7 @@ handle_event_buttonpress(XEvent *e)
|
|||
&& ev->button == Button1)
|
||||
{
|
||||
XAllowEvents(globalconf.display, ReplayPointer, CurrentTime);
|
||||
window_grabbuttons(get_phys_screen(c->screen), c->win, True);
|
||||
window_grabbuttons(get_phys_screen(c->screen), c->win);
|
||||
}
|
||||
else
|
||||
handle_mouse_button_press(c->screen, ev->button, ev->state, globalconf.buttons.client, NULL);
|
||||
|
@ -228,7 +228,7 @@ handle_event_enternotify(XEvent * e)
|
|||
|
||||
if((c = get_client_bywin(globalconf.clients, ev->window)))
|
||||
{
|
||||
window_grabbuttons(get_phys_screen(c->screen), c->win, False);
|
||||
window_grabbuttons(get_phys_screen(c->screen), c->win);
|
||||
if(globalconf.screens[c->screen].sloppy_focus)
|
||||
focus(c, c->screen, True);
|
||||
}
|
||||
|
|
23
window.c
23
window.c
|
@ -89,25 +89,20 @@ window_configure(Window win, Area geometry, int border)
|
|||
/** Grab or ungrab buttons on a window
|
||||
* \param screen The screen
|
||||
* \param win The window
|
||||
* \param focused True if client is focused
|
||||
* \param raised True if the client is above other clients
|
||||
*/
|
||||
void
|
||||
window_grabbuttons(int screen, Window win, Bool raised)
|
||||
window_grabbuttons(int screen, Window win)
|
||||
{
|
||||
Button *b;
|
||||
|
||||
if(!raised)
|
||||
{
|
||||
XGrabButton(globalconf.display, Button1, NoSymbol,
|
||||
win, False, BUTTONMASK, GrabModeSync, GrabModeAsync, None, None);
|
||||
XGrabButton(globalconf.display, Button1, NoSymbol | LockMask,
|
||||
win, False, BUTTONMASK, GrabModeSync, GrabModeAsync, None, None);
|
||||
XGrabButton(globalconf.display, Button1, NoSymbol | globalconf.numlockmask,
|
||||
win, False, BUTTONMASK, GrabModeSync, GrabModeAsync, None, None);
|
||||
XGrabButton(globalconf.display, Button1, NoSymbol | globalconf.numlockmask | LockMask,
|
||||
win, False, BUTTONMASK, GrabModeSync, GrabModeAsync, None, None);
|
||||
}
|
||||
XGrabButton(globalconf.display, Button1, NoSymbol,
|
||||
win, False, BUTTONMASK, GrabModeSync, GrabModeAsync, None, None);
|
||||
XGrabButton(globalconf.display, Button1, NoSymbol | LockMask,
|
||||
win, False, BUTTONMASK, GrabModeSync, GrabModeAsync, None, None);
|
||||
XGrabButton(globalconf.display, Button1, NoSymbol | globalconf.numlockmask,
|
||||
win, False, BUTTONMASK, GrabModeSync, GrabModeAsync, None, None);
|
||||
XGrabButton(globalconf.display, Button1, NoSymbol | globalconf.numlockmask | LockMask,
|
||||
win, False, BUTTONMASK, GrabModeSync, GrabModeAsync, None, None);
|
||||
|
||||
for(b = globalconf.buttons.client; b; b = b->next)
|
||||
{
|
||||
|
|
2
window.h
2
window.h
|
@ -27,7 +27,7 @@
|
|||
int window_setstate(Window, long);
|
||||
long window_getstate(Window);
|
||||
Status window_configure(Window, Area, int);
|
||||
void window_grabbuttons(int, Window, Bool);
|
||||
void window_grabbuttons(int, Window);
|
||||
void window_root_grabbuttons(int);
|
||||
void window_setshape(int, Window);
|
||||
int window_settrans(Window, double);
|
||||
|
|
Loading…
Reference in New Issue