@ -698,7 +698,7 @@ static void seat_configure_keyboard(struct sway_seat *seat,
struct sway_node * focus = seat_get_focus ( seat ) ;
struct sway_node * focus = seat_get_focus ( seat ) ;
if ( focus & & node_is_view ( focus ) ) {
if ( focus & & node_is_view ( focus ) ) {
// force notify reenter to pick up the new configuration
// force notify reenter to pick up the new configuration
wlr_seat_keyboard_ clear_focus( seat - > wlr_seat ) ;
wlr_seat_keyboard_ notify_ clear_focus( seat - > wlr_seat ) ;
seat_keyboard_notify_enter ( seat , focus - > sway_container - > view - > surface ) ;
seat_keyboard_notify_enter ( seat , focus - > sway_container - > view - > surface ) ;
}
}
}
}
@ -963,7 +963,7 @@ static void send_unfocus(struct sway_container *con, void *data) {
// Unfocus the container and any children (eg. when leaving `focus parent`)
// Unfocus the container and any children (eg. when leaving `focus parent`)
static void seat_send_unfocus ( struct sway_node * node , struct sway_seat * seat ) {
static void seat_send_unfocus ( struct sway_node * node , struct sway_seat * seat ) {
sway_cursor_constrain ( seat - > cursor , NULL ) ;
sway_cursor_constrain ( seat - > cursor , NULL ) ;
wlr_seat_keyboard_ clear_focus( seat - > wlr_seat ) ;
wlr_seat_keyboard_ notify_ clear_focus( seat - > wlr_seat ) ;
if ( node - > type = = N_WORKSPACE ) {
if ( node - > type = = N_WORKSPACE ) {
workspace_for_each_container ( node - > sway_workspace , send_unfocus , seat ) ;
workspace_for_each_container ( node - > sway_workspace , send_unfocus , seat ) ;
} else {
} else {
@ -1230,7 +1230,7 @@ void seat_set_exclusive_client(struct sway_seat *seat,
}
}
if ( seat - > wlr_seat - > pointer_state . focused_client ) {
if ( seat - > wlr_seat - > pointer_state . focused_client ) {
if ( seat - > wlr_seat - > pointer_state . focused_client - > client ! = client ) {
if ( seat - > wlr_seat - > pointer_state . focused_client - > client ! = client ) {
wlr_seat_pointer_ clear_focus( seat - > wlr_seat ) ;
wlr_seat_pointer_ notify_ clear_focus( seat - > wlr_seat ) ;
}
}
}
}
struct timespec now ;
struct timespec now ;