Merge pull request #9 from NikitaIvanovV/fix-mouse-scale

Fix broken click in-line command when scale > 1
This commit is contained in:
kolunmi 2023-06-09 17:14:42 -07:00 committed by GitHub
commit d1c09ac0a7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

6
dwlb.c
View File

@ -664,7 +664,7 @@ pointer_frame(void *data, struct wl_pointer *pointer)
znet_tapesoftware_dwl_wm_monitor_v1_set_layout(seat->bar->dwl_wm_monitor, 2);
}
} else {
uint32_t status_x = seat->bar->width - TEXT_WIDTH(seat->bar->status.text, seat->bar->width - x, seat->bar->textpadding);
uint32_t status_x = seat->bar->width / buffer_scale - TEXT_WIDTH(seat->bar->status.text, seat->bar->width - x, seat->bar->textpadding) / buffer_scale;
if (seat->pointer_x < status_x) {
/* Clicked on title */
if (custom_title) {
@ -687,8 +687,8 @@ pointer_frame(void *data, struct wl_pointer *pointer)
/* Clicked on status */
for (i = 0; i < seat->bar->status.buttons_l; i++) {
if (seat->pointer_button == seat->bar->status.buttons[i].btn
&& seat->pointer_x >= status_x + seat->bar->textpadding + seat->bar->status.buttons[i].x1
&& seat->pointer_x < status_x + seat->bar->textpadding + seat->bar->status.buttons[i].x2) {
&& seat->pointer_x >= status_x + seat->bar->textpadding + seat->bar->status.buttons[i].x1 / buffer_scale
&& seat->pointer_x < status_x + seat->bar->textpadding + seat->bar->status.buttons[i].x2 / buffer_scale) {
shell_command(seat->bar->status.buttons[i].command);
break;
}