mirror of
https://github.com/swaywm/sway.git
synced 2024-11-30 03:41:27 +00:00
#149 change focus before pointer_mode
This commit is contained in:
parent
9acd3d2068
commit
836f24b047
|
@ -447,19 +447,8 @@ static bool handle_pointer_button(wlc_handle view, uint32_t time, const struct w
|
|||
pointer_mode_set(button, !(modifiers->mods ^ config->floating_mod));
|
||||
}
|
||||
|
||||
// Return if mode has been set
|
||||
if (pointer_state.mode) {
|
||||
return EVENT_HANDLED;
|
||||
}
|
||||
|
||||
// Always send mouse release
|
||||
if (state == WLC_BUTTON_STATE_RELEASED) {
|
||||
return EVENT_PASSTHROUGH;
|
||||
}
|
||||
|
||||
// Check whether to change focus
|
||||
swayc_t *pointer = pointer_state.view;
|
||||
sway_log(L_DEBUG, "pointer:%p",pointer);
|
||||
if (pointer) {
|
||||
if (focused != pointer) {
|
||||
set_focused_container(pointer_state.view);
|
||||
|
@ -478,6 +467,16 @@ static bool handle_pointer_button(wlc_handle view, uint32_t time, const struct w
|
|||
}
|
||||
}
|
||||
|
||||
// Return if mode has been set
|
||||
if (pointer_state.mode) {
|
||||
return EVENT_HANDLED;
|
||||
}
|
||||
|
||||
// Always send mouse release
|
||||
if (state == WLC_BUTTON_STATE_RELEASED) {
|
||||
return EVENT_PASSTHROUGH;
|
||||
}
|
||||
|
||||
// Finally send click
|
||||
return EVENT_PASSTHROUGH;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue