From 9150cf6812a3457a74eea5fc38d5e1cd2111e5a7 Mon Sep 17 00:00:00 2001 From: discomfitor Date: Mon, 14 Oct 2013 18:00:14 +0100 Subject: [PATCH] feature: allow moveresize visuals to be replaced the existing moveresize popup infrastructure is very limiting in that it requires you to create a popup. if you don't want to create a popup, now you don't have to. --- src/bin/e_moveresize.c | 14 ++++++++++++-- src/bin/e_moveresize.h | 2 +- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/bin/e_moveresize.c b/src/bin/e_moveresize.c index d44990071..a8dacece2 100644 --- a/src/bin/e_moveresize.c +++ b/src/bin/e_moveresize.c @@ -13,6 +13,8 @@ static Evas_Object *_disp_content = NULL; static Eina_List *hooks = NULL; static int visible = 0; +static Eina_Bool _e_moveresize_enabled = EINA_TRUE; + EINTERN int e_moveresize_init(void) { @@ -42,9 +44,17 @@ e_moveresize_shutdown(void) EINA_LIST_FREE(hooks, h) e_client_hook_del(h); + _e_moveresize_enabled = EINA_TRUE; + return 1; } +EAPI void +e_moveresize_replace(Eina_Bool enable) +{ + _e_moveresize_enabled = !enable; +} + static void _e_resize_begin(void *data __UNUSED__, E_Client *ec) { @@ -56,7 +66,7 @@ _e_resize_begin(void *data __UNUSED__, E_Client *ec) if (_disp_obj) evas_object_hide(_disp_obj); E_FREE_FUNC(_disp_obj, evas_object_del); - if (!e_config->resize_info_visible) + if ((!e_config->resize_info_visible) || (!_e_moveresize_enabled)) return; _e_resize_client_extents(ec, &w, &h); @@ -165,7 +175,7 @@ _e_move_begin(void *data __UNUSED__, E_Client *ec) } _disp_obj = NULL; - if (!e_config->move_info_visible) + if ((!e_config->move_info_visible) || (!_e_moveresize_enabled)) return; _disp_content = o = edje_object_add(e_comp_get(ec)->evas); diff --git a/src/bin/e_moveresize.h b/src/bin/e_moveresize.h index 45cbe2054..0d9364943 100644 --- a/src/bin/e_moveresize.h +++ b/src/bin/e_moveresize.h @@ -6,6 +6,6 @@ EINTERN int e_moveresize_init(void); EINTERN int e_moveresize_shutdown(void); - +EAPI void e_moveresize_replace(Eina_Bool enable); #endif #endif