compositor-x11: remove redundant state arg of x11_backend_deliver_button_event
The "state" variable in x11_backend_deliver_button_event is basically the same as (event->response_type == XCB_BUTTON_PRESS), thus update the code to use the last one. Signed-off-by: Benoit Gschwind <gschwind@gnu-log.net> Reviewed-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Quentin Glidic <sardemff7+git@sardemff7.net>
This commit is contained in:
committed by
Quentin Glidic
parent
4ddc4cc4fa
commit
51c6f631c0
@@ -1060,13 +1060,14 @@ update_xkb_state_from_core(struct x11_backend *b, uint16_t x11_mask)
|
|||||||
|
|
||||||
static void
|
static void
|
||||||
x11_backend_deliver_button_event(struct x11_backend *b,
|
x11_backend_deliver_button_event(struct x11_backend *b,
|
||||||
xcb_generic_event_t *event, int state)
|
xcb_generic_event_t *event)
|
||||||
{
|
{
|
||||||
xcb_button_press_event_t *button_event =
|
xcb_button_press_event_t *button_event =
|
||||||
(xcb_button_press_event_t *) event;
|
(xcb_button_press_event_t *) event;
|
||||||
uint32_t button;
|
uint32_t button;
|
||||||
struct x11_output *output;
|
struct x11_output *output;
|
||||||
struct weston_pointer_axis_event weston_event;
|
struct weston_pointer_axis_event weston_event;
|
||||||
|
bool is_button_pressed = event->response_type == XCB_BUTTON_PRESS;
|
||||||
|
|
||||||
assert(event->response_type == XCB_BUTTON_PRESS ||
|
assert(event->response_type == XCB_BUTTON_PRESS ||
|
||||||
event->response_type == XCB_BUTTON_RELEASE);
|
event->response_type == XCB_BUTTON_RELEASE);
|
||||||
@@ -1075,7 +1076,7 @@ x11_backend_deliver_button_event(struct x11_backend *b,
|
|||||||
if (!output)
|
if (!output)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (state)
|
if (is_button_pressed)
|
||||||
xcb_grab_pointer(b->conn, 0, output->window,
|
xcb_grab_pointer(b->conn, 0, output->window,
|
||||||
XCB_EVENT_MASK_BUTTON_PRESS |
|
XCB_EVENT_MASK_BUTTON_PRESS |
|
||||||
XCB_EVENT_MASK_BUTTON_RELEASE |
|
XCB_EVENT_MASK_BUTTON_RELEASE |
|
||||||
@@ -1105,7 +1106,7 @@ x11_backend_deliver_button_event(struct x11_backend *b,
|
|||||||
case 4:
|
case 4:
|
||||||
/* Axis are measured in pixels, but the xcb events are discrete
|
/* Axis are measured in pixels, but the xcb events are discrete
|
||||||
* steps. Therefore move the axis by some pixels every step. */
|
* steps. Therefore move the axis by some pixels every step. */
|
||||||
if (state) {
|
if (is_button_pressed) {
|
||||||
weston_event.value = -DEFAULT_AXIS_STEP_DISTANCE;
|
weston_event.value = -DEFAULT_AXIS_STEP_DISTANCE;
|
||||||
weston_event.discrete = -1;
|
weston_event.discrete = -1;
|
||||||
weston_event.has_discrete = true;
|
weston_event.has_discrete = true;
|
||||||
@@ -1118,7 +1119,7 @@ x11_backend_deliver_button_event(struct x11_backend *b,
|
|||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
case 5:
|
case 5:
|
||||||
if (state) {
|
if (is_button_pressed) {
|
||||||
weston_event.value = DEFAULT_AXIS_STEP_DISTANCE;
|
weston_event.value = DEFAULT_AXIS_STEP_DISTANCE;
|
||||||
weston_event.discrete = 1;
|
weston_event.discrete = 1;
|
||||||
weston_event.has_discrete = true;
|
weston_event.has_discrete = true;
|
||||||
@@ -1131,7 +1132,7 @@ x11_backend_deliver_button_event(struct x11_backend *b,
|
|||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
case 6:
|
case 6:
|
||||||
if (state) {
|
if (is_button_pressed) {
|
||||||
weston_event.value = -DEFAULT_AXIS_STEP_DISTANCE;
|
weston_event.value = -DEFAULT_AXIS_STEP_DISTANCE;
|
||||||
weston_event.discrete = -1;
|
weston_event.discrete = -1;
|
||||||
weston_event.has_discrete = true;
|
weston_event.has_discrete = true;
|
||||||
@@ -1144,7 +1145,7 @@ x11_backend_deliver_button_event(struct x11_backend *b,
|
|||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
case 7:
|
case 7:
|
||||||
if (state) {
|
if (is_button_pressed) {
|
||||||
weston_event.value = DEFAULT_AXIS_STEP_DISTANCE;
|
weston_event.value = DEFAULT_AXIS_STEP_DISTANCE;
|
||||||
weston_event.discrete = 1;
|
weston_event.discrete = 1;
|
||||||
weston_event.has_discrete = true;
|
weston_event.has_discrete = true;
|
||||||
@@ -1163,7 +1164,7 @@ x11_backend_deliver_button_event(struct x11_backend *b,
|
|||||||
|
|
||||||
notify_button(&b->core_seat,
|
notify_button(&b->core_seat,
|
||||||
weston_compositor_get_time(), button,
|
weston_compositor_get_time(), button,
|
||||||
state ? WL_POINTER_BUTTON_STATE_PRESSED :
|
is_button_pressed ? WL_POINTER_BUTTON_STATE_PRESSED :
|
||||||
WL_POINTER_BUTTON_STATE_RELEASED);
|
WL_POINTER_BUTTON_STATE_RELEASED);
|
||||||
notify_pointer_frame(&b->core_seat);
|
notify_pointer_frame(&b->core_seat);
|
||||||
}
|
}
|
||||||
@@ -1357,10 +1358,8 @@ x11_backend_handle_event(int fd, uint32_t mask, void *data)
|
|||||||
STATE_UPDATE_NONE);
|
STATE_UPDATE_NONE);
|
||||||
break;
|
break;
|
||||||
case XCB_BUTTON_PRESS:
|
case XCB_BUTTON_PRESS:
|
||||||
x11_backend_deliver_button_event(b, event, 1);
|
|
||||||
break;
|
|
||||||
case XCB_BUTTON_RELEASE:
|
case XCB_BUTTON_RELEASE:
|
||||||
x11_backend_deliver_button_event(b, event, 0);
|
x11_backend_deliver_button_event(b, event);
|
||||||
break;
|
break;
|
||||||
case XCB_MOTION_NOTIFY:
|
case XCB_MOTION_NOTIFY:
|
||||||
x11_backend_deliver_motion_event(b, event);
|
x11_backend_deliver_motion_event(b, event);
|
||||||
|
|||||||
Reference in New Issue
Block a user