aboutsummaryrefslogtreecommitdiff
path: root/protocol/wlr-layer-shell-unstable-v1.xml
diff options
context:
space:
mode:
authortiosgz <alamica@protonmail.com>2023-03-25 14:46:08 +0000
committerIsaac Freund <mail@isaacfreund.com>2023-09-05 12:25:42 +0200
commit7f30c655c75568ae331ed0243578d91870f3f9c6 (patch)
tree8a5bcc62781291e27693a1ef6d67c867d583a427 /protocol/wlr-layer-shell-unstable-v1.xml
parent0cc930b738064cdab99fe4a34e07e0ae7d726b42 (diff)
downloadriver-7f30c655c75568ae331ed0243578d91870f3f9c6.tar.gz
river-7f30c655c75568ae331ed0243578d91870f3f9c6.tar.xz
Cursor: keep focus_follows_cursor_target updated
This goes as close as possible to the behavior before this state was introduced (keeping the improvement which needed it, 931405ab), fixing various mis-interactions of keyboard and focus_follows_cursor focus changes. The following text is irrelevant to restoring correct basic FFC behavior and talks about less common scenarios with regards to FFC clashing with views' input region beyond their geometry, continuing the work done in 931405ab. Scenario 1: the cursor traveling along a view's border in a "dead zone", never initiating a focus change. If the focused view has an extended input region, that area has some functionality (such as client-initiated resizing); therefore it should be respected and even if another view's geometry is also under the cursor, focus shouldn't change. In case of unfocused views, it is a matter of consistency with the focused-view case. This outcome is also easier to implement, as it doesn't require any additional code. Scenario 2: *clicking* such a dead zone, i.e. extended input region (of an unfocused view). In question is not whether to focus the view (yes), but whether the focus_follows_cursor_target should be set to the view as well. Only one case seems relevant to me here, which is when ffc_target is another view whose geometry is under the cursor, but covered by this newly-focused view's input region. The most likely action following the click is resizing the newly-focused view, where a touchpad or faulty mouse could make the cursor move a bit farther after the button has been released. I believe that ffc_target shouldn't have been updated, in order to now prevent focus from skipping away. (Another variant is me, wondering why the wrong view got focused and trying to focus the right one using FFC. In that case, however, one could ask if it's river that misbehaves and whether the application is really well-integrated into the user's desktop when it provides a feature they don't desire.)
Diffstat (limited to 'protocol/wlr-layer-shell-unstable-v1.xml')
0 files changed, 0 insertions, 0 deletions