commit 147a88260a74f536e1a1e513f0f8087d02982b00
parent e66f813d49e60728064fa563e01f00f7d99e0a08
Author: Drew DeVault <sir@cmpwn.com>
Date: Sat, 16 Jul 2016 09:09:22 -0400
Fix #753
Diffstat:
3 files changed, 8 insertions(+), 5 deletions(-)
diff --git a/include/client/window.h b/include/client/window.h
@@ -38,8 +38,7 @@ struct pointer_input {
int last_x;
int last_y;
- void (*notify_button)(struct window *window, int x, int y, uint32_t button);
-
+ void (*notify_button)(struct window *window, int x, int y, uint32_t button, uint32_t state_w);
void (*notify_scroll)(struct window *window, enum scroll_direction direction);
};
diff --git a/swaybar/bar.c b/swaybar/bar.c
@@ -58,8 +58,12 @@ struct output *new_output(const char *name) {
return output;
}
-static void mouse_button_notify(struct window *window, int x, int y, uint32_t button) {
- sway_log(L_DEBUG, "Mouse button %d clicked at %d %d\n", button, x, y);
+static void mouse_button_notify(struct window *window, int x, int y,
+ uint32_t button, uint32_t state_w) {
+ sway_log(L_DEBUG, "Mouse button %d clicked at %d %d %d\n", button, x, y, state_w);
+ if (!state_w) {
+ return;
+ }
struct output *clicked_output = NULL;
for (int i = 0; i < swaybar.outputs->length; i++) {
diff --git a/wayland/window.c b/wayland/window.c
@@ -42,7 +42,7 @@ static void pointer_handle_button(void *data, struct wl_pointer *pointer, uint32
struct pointer_input *input = &window->pointer_input;
if (window->pointer_input.notify_button) {
- window->pointer_input.notify_button(window, input->last_x, input->last_y, button);
+ window->pointer_input.notify_button(window, input->last_x, input->last_y, button, state_w);
}
}