e focus - fix previous commit segv on no windows left

if window deleted is the focused on... oops - BOOM. not handled.
handle it. also revert x focus to root so bindings work.

fixes previous 2d86d75139

@fix
This commit is contained in:
Carsten Haitzler 2022-01-07 00:10:13 +00:00
parent 1f69e41daa
commit 61584a5f57
1 changed files with 8 additions and 0 deletions

View File

@ -459,6 +459,14 @@ e_client_revert_focus(E_Client *ec)
static void
_e_client_free(E_Client *ec)
{
if (focused == ec)
{
focused = NULL;
#ifndef HAVE_WAYLAND_ONLY
if (e_comp->comp_type != E_PIXMAP_TYPE_WL)
ecore_x_window_focus(e_comp->root);
#endif
}
if (ec->desk)
ec->desk->fullscreen_clients = eina_list_remove(ec->desk->fullscreen_clients, ec);
if (ec->restore_zone_id)