mirror of
https://github.com/labwc/labwc.git
synced 2025-11-03 09:01:51 -05:00
seat: use focus_change event to update focused/active view
- Connect to wlr_seat_keyboard_state's focus_change event. - Add view_from_wlr_surface(), which does what the name says. - Use focus_change event along with view_from_wlr_surface() to update server->focused_view and set SSD states via view_set_activated(). - Eliminate desktop_focused_view() since server->focused_view should be reliably up-to-date now. - Eliminate view_focus/defocus() since we can now just call seat_focus_surface() directly.
This commit is contained in:
parent
bb5d272dc9
commit
4028a9482f
9 changed files with 77 additions and 100 deletions
|
|
@ -287,7 +287,7 @@ workspaces_switch_to(struct workspace *target, bool update_focus)
|
|||
* Only refocus if the focus is not already on an always-on-top view.
|
||||
*/
|
||||
if (update_focus) {
|
||||
struct view *view = desktop_focused_view(server);
|
||||
struct view *view = server->focused_view;
|
||||
if (!view || !view_is_always_on_top(view)) {
|
||||
desktop_focus_topmost_mapped_view(server);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue