Bugfix: Change the event mask to ignore enter notifies when rendering the layout and changing workspaces
This commit is contained in:
@ -17,6 +17,7 @@ Rect get_unoccupied_space(Workspace *workspace);
|
||||
void decorate_window(xcb_connection_t *conn, Client *client, xcb_drawable_t drawable, xcb_gcontext_t gc, int offset);
|
||||
void redecorate_window(xcb_connection_t *conn, Client *client);
|
||||
void render_container(xcb_connection_t *conn, Container *container);
|
||||
void ignore_enter_notify_forall(xcb_connection_t *conn, Workspace *workspace, bool ignore_enter_notify);
|
||||
void render_layout(xcb_connection_t *conn);
|
||||
|
||||
#endif
|
||||
|
@ -20,6 +20,10 @@
|
||||
CIRCLEQ_NEXT(elm, field) : NULL)
|
||||
#define CIRCLEQ_PREV_OR_NULL(head, elm, field) (CIRCLEQ_PREV(elm, field) != CIRCLEQ_END(head) ? \
|
||||
CIRCLEQ_PREV(elm, field) : NULL)
|
||||
#define FOR_TABLE(workspace) \
|
||||
for (int cols = 0; cols < workspace->cols; cols++) \
|
||||
for (int rows = 0; rows < workspace->rows; rows++)
|
||||
|
||||
/* ##__VA_ARGS__ means: leave out __VA_ARGS__ completely if it is empty, that is,
|
||||
delete the preceding comma */
|
||||
#define LOG(fmt, ...) slog("%s:%s:%d - " fmt, __FILE__, __FUNCTION__, __LINE__, ##__VA_ARGS__)
|
||||
|
@ -22,6 +22,21 @@
|
||||
#define XCB_CURSOR_SB_H_DOUBLE_ARROW 108
|
||||
#define XCB_CURSOR_SB_V_DOUBLE_ARROW 116
|
||||
|
||||
/* The event masks are defined here because we don’t only set them once but we need to set slight
|
||||
variations of them (without XCB_EVENT_MASK_ENTER_WINDOW while rendering the layout) */
|
||||
/* The XCB_CW_EVENT_MASK for the child (= real window) */
|
||||
#define CHILD_EVENT_MASK (XCB_EVENT_MASK_PROPERTY_CHANGE | \
|
||||
XCB_EVENT_MASK_STRUCTURE_NOTIFY | \
|
||||
XCB_EVENT_MASK_ENTER_WINDOW)
|
||||
|
||||
/* The XCB_CW_EVENT_MASK for its frame */
|
||||
#define FRAME_EVENT_MASK (XCB_EVENT_MASK_BUTTON_PRESS | /* …mouse is pressed/released */ \
|
||||
XCB_EVENT_MASK_BUTTON_RELEASE | \
|
||||
XCB_EVENT_MASK_EXPOSURE | /* …our window needs to be redrawn */ \
|
||||
XCB_EVENT_MASK_SUBSTRUCTURE_REDIRECT | /* …user moves cursor inside our window */ \
|
||||
XCB_EVENT_MASK_ENTER_WINDOW) /* …the application tries to resize itself */
|
||||
|
||||
|
||||
enum { _NET_SUPPORTED = 0,
|
||||
_NET_SUPPORTING_WM_CHECK,
|
||||
_NET_WM_NAME,
|
||||
|
Reference in New Issue
Block a user