refactor(backend/X11): 将 event_reset 调用移到事件分发处
This commit is contained in:
@@ -91,7 +91,6 @@ static bool handle_map_request(
|
|||||||
) {
|
) {
|
||||||
xcb_window_t window = xcb_event->window;
|
xcb_window_t window = xcb_event->window;
|
||||||
|
|
||||||
event_reset(event);
|
|
||||||
event->type = ZDWM_EVENT_WINDOW_MAP_REQUEST;
|
event->type = ZDWM_EVENT_WINDOW_MAP_REQUEST;
|
||||||
|
|
||||||
window_map_request_event_t *ev = &event->as.window_map_request;
|
window_map_request_event_t *ev = &event->as.window_map_request;
|
||||||
@@ -170,7 +169,6 @@ static bool handle_unmap_notify(
|
|||||||
event_t *event,
|
event_t *event,
|
||||||
const xcb_unmap_notify_event_t *xcb_event
|
const xcb_unmap_notify_event_t *xcb_event
|
||||||
) {
|
) {
|
||||||
event_reset(event);
|
|
||||||
event->type = ZDWM_EVENT_WINDOW_REMOVE;
|
event->type = ZDWM_EVENT_WINDOW_REMOVE;
|
||||||
event->as.window_remove.window = xcb_event->window;
|
event->as.window_remove.window = xcb_event->window;
|
||||||
event->as.window_remove.reason = ZDWM_WINDOW_REMOVE_WITHDRAWN;
|
event->as.window_remove.reason = ZDWM_WINDOW_REMOVE_WITHDRAWN;
|
||||||
@@ -183,7 +181,6 @@ static bool handle_destroy_notify(
|
|||||||
event_t *event,
|
event_t *event,
|
||||||
const xcb_destroy_notify_event_t *xcb_event
|
const xcb_destroy_notify_event_t *xcb_event
|
||||||
) {
|
) {
|
||||||
event_reset(event);
|
|
||||||
event->type = ZDWM_EVENT_WINDOW_REMOVE;
|
event->type = ZDWM_EVENT_WINDOW_REMOVE;
|
||||||
event->as.window_remove.window = xcb_event->window;
|
event->as.window_remove.window = xcb_event->window;
|
||||||
event->as.window_remove.reason = ZDWM_WINDOW_REMOVE_DESTROY;
|
event->as.window_remove.reason = ZDWM_WINDOW_REMOVE_DESTROY;
|
||||||
@@ -196,7 +193,6 @@ static bool handle_configure_request(
|
|||||||
event_t *event,
|
event_t *event,
|
||||||
const xcb_configure_request_event_t *xcb_event
|
const xcb_configure_request_event_t *xcb_event
|
||||||
) {
|
) {
|
||||||
event_reset(event);
|
|
||||||
event->type = ZDWM_EVENT_CONFIGURE_REQUEST;
|
event->type = ZDWM_EVENT_CONFIGURE_REQUEST;
|
||||||
/* TODO: */
|
/* TODO: */
|
||||||
return true;
|
return true;
|
||||||
@@ -217,6 +213,7 @@ bool backend_next_event(backend_t *backend, event_t *event) {
|
|||||||
switch (response_type) {
|
switch (response_type) {
|
||||||
#define EVENT(type, handler) \
|
#define EVENT(type, handler) \
|
||||||
case type: \
|
case type: \
|
||||||
|
event_reset(event); \
|
||||||
handled = handler(backend, event, (void *)raw_event); \
|
handled = handler(backend, event, (void *)raw_event); \
|
||||||
break
|
break
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user