Rarely Window Manager get the event of surface creation
after activateWindow.
In that case, Window Manager reject application request
because client doesn't have surface.
This patch makes WM does provisional registration.
Change-Id: Ib0a54a7f399f333175e0a4613364f7bcb0de9cc7
Signed-off-by: Kazumasa Mitsunari <knimitz@witz-inc.co.jp>
auto id = int(this->id_alloc.generate_id(role));
this->tmp_surface2app[id] = {str_id, lid};
+ auto client = g_app_list.lookUpClient(str_id);
+ client->registerSurface(id);
+
return Ok<int>(id);
}
return this->surface;
}
+void WMClient::registerSurface(unsigned surface)
+{
+ this->surface = surface;
+}
+
/**
* Add surface to the client
*
std::string role() const;
unsigned layerID() const;
unsigned surfaceID() const;
+ void registerSurface(unsigned surface);
WMError addSurface(unsigned surface);
bool removeSurfaceIfExist(unsigned surface);