diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/afb_binding_api.cpp | 11 | ||||
-rw-r--r-- | src/app.cpp | 4 | ||||
-rw-r--r-- | src/layers.cpp | 2 | ||||
-rw-r--r-- | src/layers.hpp | 4 | ||||
-rwxr-xr-x | src/main.cpp | 9 | ||||
-rw-r--r-- | src/util.hpp | 9 | ||||
-rw-r--r-- | src/wayland.cpp | 85 | ||||
-rw-r--r-- | src/wayland.hpp | 93 |
9 files changed, 71 insertions, 148 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index fc7e8ad..25849de 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -72,7 +72,7 @@ target_compile_definitions(${TARGETS_WM} # We do not want source location of messages AFB_BINDING_PRAGMA_NO_VERBOSE_DETAILS WINMAN_VERSION_STRING="${PACKAGE_VERSION}" - _GNU_SOURCE) # XXX should I define this here?! + _GNU_SOURCE) if(NOT ${CMAKE_BUILD_TYPE} STREQUAL "Release") target_compile_definitions(${TARGETS_WM} diff --git a/src/afb_binding_api.cpp b/src/afb_binding_api.cpp index beada73..3c75524 100644 --- a/src/afb_binding_api.cpp +++ b/src/afb_binding_api.cpp @@ -26,12 +26,9 @@ using json = nlohmann::json; #include <json-c/json.h> namespace wm { -// _ _ _ _ _ _ _ -// | |__ (_)_ __ __| (_)_ __ __ _ __ _ _ __ (_) (_)_ __ ___ _ __ | | -// | '_ \| | '_ \ / _` | | '_ \ / _` | / _` | '_ \| | | | '_ ` _ \| '_ \| | -// | |_) | | | | | (_| | | | | | (_| | | (_| | |_) | | | | | | | | | |_) | | -// |_.__/|_|_| |_|\__,_|_|_| |_|\__, |___\__,_| .__/|_| |_|_| |_| |_| .__/|_| -// |___/_____| |_| |_| +/** + * binding_api impl + */ binding_api::result_type binding_api::requestsurface( char const *drawing_name) { auto r = this->app->api_request_surface(drawing_name); @@ -100,7 +97,7 @@ binding_api::result_type binding_api::debug_status() { binding_api::result_type binding_api::debug_terminate() { HMI_DEBUG("wm", "%s", __func__); if (getenv("WINMAN_DEBUG_TERMINATE") != nullptr) { - raise(SIGKILL); // XXX afb-daemon kills it's pgroup using TERM, which + raise(SIGKILL); // afb-daemon kills it's pgroup using TERM, which // doesn't play well with perf } return Ok(json_object_new_object()); diff --git a/src/app.cpp b/src/app.cpp index af552b5..307217e 100644 --- a/src/app.cpp +++ b/src/app.cpp @@ -504,8 +504,7 @@ char const *App::api_deactivate_surface(char const *drawing_name) { return "No surface active"; } - // XXX: check against main_surface, main_surface_name is the configuration - // item. + // Check against main_surface, main_surface_name is the configuration item. if (*surface_id == this->layers.main_surface) { HMI_DEBUG("wm", "Refusing to deactivate main_surface %d", *surface_id); return nullptr; @@ -580,7 +579,6 @@ char const *App::api_enddraw(char const *drawing_name) { if (n && *n == drawing_name) { std::swap(this->pending_end_draw[i], this->pending_end_draw[iend - 1]); this->pending_end_draw.resize(iend - 1); - // XXX: Please tell the compositor to thaw the surface... this->activate(this->pending_end_draw[i]); this->layout_commit(); this->emit_flushdraw(drawing_name); diff --git a/src/layers.cpp b/src/layers.cpp index 30828dd..04f944d 100644 --- a/src/layers.cpp +++ b/src/layers.cpp @@ -77,7 +77,7 @@ struct result<struct layer_map> to_layer_map(nlohmann::json const &j) { j.value("layer_id", -1), layer(j)); }); - // XXX: add sanity checks here? + // TODO: add sanity checks here? // * check for double IDs // * check for double names/roles diff --git a/src/layers.hpp b/src/layers.hpp index 268936b..1942229 100644 --- a/src/layers.hpp +++ b/src/layers.hpp @@ -73,10 +73,6 @@ struct layer_map { using role_to_layer_map = std::vector<std::pair<std::string, int>>; using addsurf_layer_map = std::map<int, int>; - // XXX: we also will need a layer_id to layer map, perhaps - // make this the primary map, and the surface_id->layer a - // secondary map. - storage_type mapping; // map surface_id to layer layers_type layers; // the actual layer IDs we have int main_surface; diff --git a/src/main.cpp b/src/main.cpp index 3a41a50..c615d3a 100755 --- a/src/main.cpp +++ b/src/main.cpp @@ -86,12 +86,9 @@ error: return -1; } -// _ _ _ _ _ _ _ ____ -// | |__ (_)_ __ __| (_)_ __ __ _ (_)_ __ (_) |_ / /\ \ -// | '_ \| | '_ \ / _` | | '_ \ / _` | | | '_ \| | __| | | | -// | |_) | | | | | (_| | | | | | (_| | | | | | | | |_| | | | -// |_.__/|_|_| |_|\__,_|_|_| |_|\__, |___|_|_| |_|_|\__| | | | -// |___/_____| \_\/_/ +/** + * binding_init_() + */ int binding_init_() { HMI_NOTICE("wm", "WinMan ver. %s", WINMAN_VERSION_STRING); diff --git a/src/util.hpp b/src/util.hpp index 5ebee23..f4e6e5f 100644 --- a/src/util.hpp +++ b/src/util.hpp @@ -85,12 +85,9 @@ struct ScopeTrace { }; #endif -// _ _ _ __ _ -// ___| |_ _ __ _ _ ___| |_ _ _ _ __ (_) __ _ _ _ ___ / _| __| | -// / __| __| '__| | | |/ __| __| | | | | '_ \| |/ _` | | | |/ _ \ | |_ / _` | -// \__ \ |_| | | |_| | (__| |_ | |_| | | | | | (_| | |_| | __/ | _| (_| | -// |___/\__|_| \__,_|\___|\__| \__,_|_| |_|_|\__, |\__,_|\___|___|_| \__,_| -// |_| |_____| +/** + * @struct unique_fd + */ struct unique_fd { int fd{-1}; unique_fd() = default; diff --git a/src/wayland.cpp b/src/wayland.cpp index 4a723e5..4d6fc3d 100644 --- a/src/wayland.cpp +++ b/src/wayland.cpp @@ -20,20 +20,14 @@ #include "wayland.hpp" #include "hmi-debug.h" -// _ -// _ __ __ _ _ __ ___ ___ ___ _ __ __ _ ___ ___ __ _| | -// | '_ \ / _` | '_ ` _ \ / _ \/ __| '_ \ / _` |/ __/ _ \ \ \ /\ / / | -// | | | | (_| | | | | | | __/\__ \ |_) | (_| | (_| __/ \ V V /| | -// |_| |_|\__,_|_| |_| |_|\___||___/ .__/ \__,_|\___\___| \_/\_/ |_| -// |_| +/** + * namespace wl + */ namespace wl { -// _ _ _ -// __| (_)___ _ __ | | __ _ _ _ -// / _` | / __| '_ \| |/ _` | | | | -// | (_| | \__ \ |_) | | (_| | |_| | -// \__,_|_|___/ .__/|_|\__,_|\__, | -// |_| |___/ +/** + * display + */ display::display() : d(std::unique_ptr<struct wl_display, void (*)(struct wl_display *)>( wl_display_connect(nullptr), &wl_display_disconnect)), @@ -49,7 +43,6 @@ int display::dispatch_pending() { return wl_display_dispatch_pending(this->d.get int display::read_events() { ST(); - // XXX: uhm, how?! while (wl_display_prepare_read(this->d.get()) == -1) { STN(pending_events_dispatch); if (wl_display_dispatch_pending(this->d.get()) == -1) { @@ -74,12 +67,9 @@ int display::get_fd() const { return wl_display_get_fd(this->d.get()); } int display::get_error() { return wl_display_get_error(this->d.get()); } -// _ _ -// _ __ ___ __ _(_)___| |_ _ __ _ _ -// | '__/ _ \/ _` | / __| __| '__| | | | -// | | | __/ (_| | \__ \ |_| | | |_| | -// |_| \___|\__, |_|___/\__|_| \__, | -// |___/ |___/ +/** + * registry + */ namespace { void registry_global(void *data, struct wl_registry * /*r*/, uint32_t name, char const *iface, uint32_t v) { @@ -117,12 +107,9 @@ void registry::global(uint32_t name, char const *iface, uint32_t v) { void registry::global_remove(uint32_t /*name*/) {} -// _ _ -// ___ _ _| |_ _ __ _ _| |_ -// / _ \| | | | __| '_ \| | | | __| -// | (_) | |_| | |_| |_) | |_| | |_ -// \___/ \__,_|\__| .__/ \__,_|\__| -// |_| +/** + * output + */ namespace { void output_geometry(void *data, struct wl_output * /*wl_output*/, int32_t x, int32_t y, int32_t physical_width, int32_t physical_height, @@ -188,21 +175,14 @@ void output::scale(int32_t factor) { } } // namespace wl -// _ __ __ _ _ __ ___ ___ ___ _ __ __ _ ___ ___ -// | '_ \ / _` | '_ ` _ \ / _ \/ __| '_ \ / _` |/ __/ _ \ -// | | | | (_| | | | | | | __/\__ \ |_) | (_| | (_| __/ -// |_| |_|\__,_|_| |_| |_|\___||___/ .__/ \__,_|\___\___| -// |_| - -// namespace compositor +/** + * namespace compositor + */ namespace compositor { -// _ _ _ -// ___ ___ _ __ | |_ _ __ ___ | | | ___ _ __ -// / __/ _ \| '_ \| __| '__/ _ \| | |/ _ \ '__| -// | (_| (_) | | | | |_| | | (_) | | | __/ | -// \___\___/|_| |_|\__|_| \___/|_|_|\___|_| -// +/** + * controller + */ namespace { void controller_screen(void *data, struct ivi_controller * /*ivi_controller*/, uint32_t id_screen, @@ -278,12 +258,9 @@ void controller::controller_error(int32_t object_id, int32_t object_type, this->proxy.get(), object_id, object_type, error_code, error_text); } -// _ -// | | __ _ _ _ ___ _ __ -// | |/ _` | | | |/ _ \ '__| -// | | (_| | |_| | __/ | -// |_|\__,_|\__, |\___|_| -// |___/ +/** + * layer + */ namespace { void layer_visibility(void *data, struct ivi_controller_layer * /*ivi_controller_layer*/, @@ -462,12 +439,9 @@ void controller::layer_destroyed(struct layer *l) { this->layers.erase(l->id); } -// __ -// ___ _ _ _ __ / _| __ _ ___ ___ -// / __| | | | '__| |_ / _` |/ __/ _ \ -// \__ \ |_| | | | _| (_| | (_| __/ -// |___/\__,_|_| |_| \__,_|\___\___| -// +/** + * surface + */ namespace { void surface_visibility( @@ -684,7 +658,6 @@ void controller::surface_stats(struct surface *s, uint32_t redraw_count, void controller::surface_destroyed(struct surface *s) { HMI_DEBUG("wm", "compositor::surface %s @ %d", __func__, s->id); this->chooks->surface_removed(s->id); - // XXX: do I need to actually remove the surface late, i.e. using add_task()? this->sprops.erase(s->id); this->surfaces.erase(s->id); } @@ -693,7 +666,6 @@ void controller::surface_content(struct surface *s, int32_t content_state) { HMI_DEBUG("wm", "compositor::surface %s @ %d s %i", __func__, s->id, content_state); if (content_state == IVI_CONTROLLER_SURFACE_CONTENT_STATE_CONTENT_REMOVED) { - // XXX is this the right thing to do? this->chooks->surface_removed(s->id); this->sprops.erase(s->id); this->surfaces.erase(s->id); @@ -734,12 +706,9 @@ void controller::remove_proxy_to_id_mapping(struct wl_output *p) { this->screen_proxy_to_id.erase(uintptr_t(p)); } -// -// ___ ___ _ __ ___ ___ _ __ -// / __|/ __| '__/ _ \/ _ \ '_ \ -// \__ \ (__| | | __/ __/ | | | -// |___/\___|_| \___|\___|_| |_| -// +/** + * screen + */ screen::screen(uint32_t i, struct controller *c, struct ivi_controller_screen *p) : wayland_proxy(p), controller_child(c, i) { diff --git a/src/wayland.hpp b/src/wayland.hpp index b72edc6..59d7ade 100644 --- a/src/wayland.hpp +++ b/src/wayland.hpp @@ -26,12 +26,9 @@ #include <unordered_map> #include <vector> -// _ _ -// __ ____ _ _ _| | __ _ _ __ __| | _ __ _ __ _____ ___ _ -// \ \ /\ / / _` | | | | |/ _` | '_ \ / _` | | '_ \| '__/ _ \ \/ / | | | -// \ V V / (_| | |_| | | (_| | | | | (_| | | |_) | | | (_) > <| |_| | -// \_/\_/ \__,_|\__, |_|\__,_|_| |_|\__,_|____| .__/|_| \___/_/\_\\__, | -// |___/ |_____|_| |___/ +/** + * @struct wayland_proxy + */ template <typename ProxyT> struct wayland_proxy { std::unique_ptr<ProxyT, std::function<void(ProxyT *)>> proxy; @@ -45,19 +42,14 @@ struct wayland_proxy { static_cast<ProxyT *>(p), p_del)) {} }; -// _ -// _ __ __ _ _ __ ___ ___ ___ _ __ __ _ ___ ___ __ _| | -// | '_ \ / _` | '_ ` _ \ / _ \/ __| '_ \ / _` |/ __/ _ \ \ \ /\ / / | -// | | | | (_| | | | | | | __/\__ \ |_) | (_| | (_| __/ \ V V /| | -// |_| |_|\__,_|_| |_| |_|\___||___/ .__/ \__,_|\___\___| \_/\_/ |_| -// |_| +/** + * namespace wl + */ namespace wl { -// _ _ -// _ __ ___ __ _(_)___| |_ _ __ _ _ -// | '__/ _ \/ _` | / __| __| '__| | | | -// | | | __/ (_| | \__ \ |_| | | |_| | -// |_| \___|\__, |_|___/\__|_| \__, | -// |___/ |___/ + +/** + * @struct registry + */ struct registry : public wayland_proxy<struct wl_registry> { typedef std::function<void(struct wl_registry *, uint32_t, uint32_t)> binder; std::unordered_map<std::string, binder> bindings; @@ -73,12 +65,9 @@ struct registry : public wayland_proxy<struct wl_registry> { void global_remove(uint32_t name); }; -// _ _ _ -// __| (_)___ _ __ | | __ _ _ _ -// / _` | / __| '_ \| |/ _` | | | | -// | (_| | \__ \ |_) | | (_| | |_| | -// \__,_|_|___/ .__/|_|\__,_|\__, | -// |_| |___/ +/** + * @struct display + */ struct display { std::unique_ptr<struct wl_display, void (*)(struct wl_display *)> d; struct registry r; @@ -101,12 +90,9 @@ struct display { } }; -// _ _ -// ___ _ _| |_ _ __ _ _| |_ -// / _ \| | | | __| '_ \| | | | __| -// | (_) | |_| | |_| |_) | |_| | |_ -// \___/ \__,_|\__| .__/ \__,_|\__| -// |_| +/** + * @struct output + */ struct output : wayland_proxy<struct wl_output> { int width{}; int height{}; @@ -126,14 +112,9 @@ struct output : wayland_proxy<struct wl_output> { }; } // namespace wl -// _ __ __ _ _ __ ___ ___ ___ _ __ __ _ ___ ___ -// | '_ \ / _` | '_ ` _ \ / _ \/ __| '_ \ / _` |/ __/ _ \ -// | | | | (_| | | | | | | __/\__ \ |_) | (_| | (_| __/ -// |_| |_|\__,_|_| |_| |_|\___||___/ .__/ \__,_|\___\___| -// |_| -// _ _ - -// namespace compositor +/** + * namespace compositor + */ namespace compositor { struct size { @@ -173,12 +154,9 @@ struct surface_properties { float opacity; }; -// __ -// ___ _ _ _ __ / _| __ _ ___ ___ -// / __| | | | '__| |_ / _` |/ __/ _ \ -// \__ \ |_| | | | _| (_| | (_| __/ -// |___/\__,_|_| |_| \__,_|\___\___| -// +/** + * @struct surface + */ struct surface : public wayland_proxy<struct ivi_controller_surface>, controller_child { surface(surface const &) = delete; @@ -199,12 +177,9 @@ struct surface : public wayland_proxy<struct ivi_controller_surface>, void destroy(int32_t destroy_scene_object); }; -// _ -// | | __ _ _ _ ___ _ __ -// | |/ _` | | | |/ _ \ '__| -// | | (_| | |_| | __/ | -// |_|\__,_|\__, |\___|_| -// |___/ +/** + * @struct layer + */ struct layer : public wayland_proxy<struct ivi_controller_layer>, controller_child { layer(layer const &) = delete; @@ -228,12 +203,9 @@ struct layer : public wayland_proxy<struct ivi_controller_layer>, void set_render_order(std::vector<uint32_t> const &ro); }; -// -// ___ ___ _ __ ___ ___ _ __ -// / __|/ __| '__/ _ \/ _ \ '_ \ -// \__ \ (__| | | __/ __/ | | | -// |___/\___|_| \___|\___|_| |_| -// +/** + * @struct screen + */ struct screen : public wayland_proxy<struct ivi_controller_screen>, controller_child { screen(screen const &) = delete; @@ -244,12 +216,9 @@ struct screen : public wayland_proxy<struct ivi_controller_screen>, void set_render_order(std::vector<uint32_t> const &ro); }; -// _ _ _ -// ___ ___ _ __ | |_ _ __ ___ | | | ___ _ __ -// / __/ _ \| '_ \| __| '__/ _ \| | |/ _ \ '__| -// | (_| (_) | | | | |_| | | (_) | | | __/ | -// \___\___/|_| |_|\__|_| \___/|_|_|\___|_| -// +/** + * @struct controller + */ struct controller : public wayland_proxy<struct ivi_controller> { // This controller is still missing ivi-input |