X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fmain.cpp;h=feb2124f445dc0ee5695b017ce4dfb9fadebcb24;hb=587d384f52c624a75eafe2588b728de4cdd53e4f;hp=25fbf2aeed239b5bb64c3544378c5dd6598ea3e1;hpb=bbf684fb596414141190958dbd0b0abcc0f7f6d3;p=apps%2Fagl-service-windowmanager.git diff --git a/src/main.cpp b/src/main.cpp index 25fbf2a..feb2124 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -18,11 +18,9 @@ #include #include #include -#include -#include "app.hpp" -#include "result.hpp" +#include "../include/json.hpp" +#include "window_manager.hpp" #include "json_helper.hpp" -#include "util.hpp" #include "wayland_ivi_wm.hpp" extern "C" @@ -197,6 +195,18 @@ static void cbRemoveClientCtxt(void *data) if (pSid) { auto sid = *pSid; + auto o_state = *g_afb_instance->app.layers.get_layout_state(sid); + if (o_state != nullptr) + { + if (o_state->main == sid) + { + o_state->main = -1; + } + else if (o_state->sub == sid) + { + o_state->sub = -1; + } + } g_afb_instance->app.id_alloc.remove_id(sid); g_afb_instance->app.layers.remove_surface(sid); g_afb_instance->app.controller->sprops.erase(sid);