diff options
| author | tiosgz <alamica@protonmail.com> | 2023-03-25 14:46:08 +0000 |
|---|---|---|
| committer | Isaac Freund <mail@isaacfreund.com> | 2023-09-05 12:25:42 +0200 |
| commit | 7f30c655c75568ae331ed0243578d91870f3f9c6 (patch) | |
| tree | 8a5bcc62781291e27693a1ef6d67c867d583a427 /README.md | |
| parent | 0cc930b738064cdab99fe4a34e07e0ae7d726b42 (diff) | |
| download | river-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 'README.md')
0 files changed, 0 insertions, 0 deletions
