dragging: instead of using a custom event loop, use libev
This is done by installing a new check watcher that replaces the main X11 event handler and calling ev_run with EVRUN_ONCE until the dragging loop left state DRAGGING. With this commit, other handlers, most notably the redraw handler for placeholder windows, get a chance to run when dragging (placeholder!) windows around.
This commit is contained in:
21
include/main.h
Normal file
21
include/main.h
Normal file
@ -0,0 +1,21 @@
|
||||
/*
|
||||
* vim:ts=4:sw=4:expandtab
|
||||
*
|
||||
* i3 - an improved dynamic tiling window manager
|
||||
* © 2009-2013 Michael Stapelberg and contributors (see also: LICENSE)
|
||||
*
|
||||
* main.c: Initialization, main loop
|
||||
*
|
||||
*/
|
||||
#ifndef I3_MAIN_H
|
||||
#define I3_MAIN_H
|
||||
|
||||
/**
|
||||
* Enable or disable the main X11 event handling function.
|
||||
* This is used by drag_pointer() which has its own, modal event handler, which
|
||||
* takes precedence over the normal event handler.
|
||||
*
|
||||
*/
|
||||
void main_set_x11_cb(bool enable);
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user