X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fwayland.cpp;h=38092e3e67a9a18f2a95d665f4b3a5553f3182ec;hb=b54df759ebab6b240d3cd7271ef91e558866a92d;hp=b4f48000e8ba68fa107da66d0e2befd7827fc399;hpb=648cc13845c4bb212460e4960896a0541e5b8b59;p=staging%2Fwindowmanager.git diff --git a/src/wayland.cpp b/src/wayland.cpp index b4f4800..38092e3 100644 --- a/src/wayland.cpp +++ b/src/wayland.cpp @@ -32,6 +32,10 @@ void display::roundtrip() { wl_display_roundtrip(this->d.get()); } int display::dispatch() { return wl_display_dispatch(this->d.get()); } +void display::flush() { wl_display_flush(this->d.get()); } + +int display::get_fd() const { return wl_display_get_fd(this->d.get()); } + // _ _ // _ __ ___ __ _(_)___| |_ _ __ _ _ // | '__/ _ \/ _` | / __| __| '__| | | | @@ -503,6 +507,10 @@ void controller::surface_destroyed(uint32_t id) { void controller::surface_content(uint32_t id, int32_t content_state) { logdebug("genivi::surface %s @ %p s %i", __func__, this->proxy, content_state); + + if (content_state == IVI_CONTROLLER_SURFACE_CONTENT_STATE_CONTENT_REMOVED) { + this->surfaces.erase(id); + } } //