summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Philippe Andre <jp.andre@samsung.com>2017-08-31 16:45:08 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2017-09-01 10:09:37 +0900
commitf88f0798bafd91c0188f50c303fd0263dba3c9c4 (patch)
tree222d8b48a0ef3223b1c44004ff6a01911b7fca5a
parent9633023511c2da377e36bf984b6bff40f9de21d7 (diff)
downloadefl-f88f0798bafd91c0188f50c303fd0263dba3c9c4.tar.gz
win: Implement raise from stack (EO)
I think the intercept is not required anymore. All raise functions call the ecore evas raise function. Ref T5322
-rw-r--r--src/lib/elementary/efl_ui_win.c11
-rw-r--r--src/lib/elementary/efl_ui_win.eo9
-rw-r--r--src/lib/elementary/elm_win_legacy.h10
3 files changed, 21 insertions, 9 deletions
diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index 6b0ad4d63d..d4bea99f22 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -816,6 +816,7 @@ _elm_win_associate_get(const Ecore_Evas *ee)
static void
_elm_win_obj_intercept_raise(void *data, Evas_Object *obj EINA_UNUSED)
{
+ // Note: This is probably not necessary anymore (Win implements raise)
ELM_WIN_DATA_GET(data, sd);
TRAP(sd, raise);
}
@@ -5544,9 +5545,15 @@ _efl_ui_win_activate(Eo *obj EINA_UNUSED, Efl_Ui_Win_Data *sd)
}
EOLIAN static void
-_efl_ui_win_raise(Eo *obj EINA_UNUSED, Efl_Ui_Win_Data *sd)
+_efl_ui_win_efl_gfx_stack_raise(Eo *obj EINA_UNUSED, Efl_Ui_Win_Data *pd)
{
- TRAP(sd, raise);
+ TRAP(pd, raise);
+}
+
+EAPI void
+elm_win_raise(Eo *obj)
+{
+ efl_gfx_stack_raise(obj);
}
EOLIAN static void
diff --git a/src/lib/elementary/efl_ui_win.eo b/src/lib/elementary/efl_ui_win.eo
index f7f1d058bd..cc05d53c09 100644
--- a/src/lib/elementary/efl_ui_win.eo
+++ b/src/lib/elementary/efl_ui_win.eo
@@ -736,13 +736,6 @@ class Efl.Ui.Win (Elm.Widget, Efl.Canvas, Elm.Interface.Atspi.Window,
window will be the active one after it.
]]
}
- raise {
- [[Raise a window object.
-
- Places the window pointed by $obj at the top of the stack, so
- that it's not covered by any other window.
- ]]
- }
center {
[[Center a window on its screen
@@ -847,6 +840,8 @@ class Efl.Ui.Win (Elm.Widget, Efl.Canvas, Elm.Interface.Atspi.Window,
Efl.Gfx.visible { set; }
Efl.Gfx.position { set; }
Efl.Gfx.size { set; }
+ Efl.Gfx.Stack.raise; [[Places the window at the top of the stack, so
+ that it's not covered by any other window.]]
Elm.Widget.focus_direction;
Elm.Widget.focus_next_manager_is;
Elm.Widget.focus_direction_manager_is;
diff --git a/src/lib/elementary/elm_win_legacy.h b/src/lib/elementary/elm_win_legacy.h
index 061beafe06..b306f6f623 100644
--- a/src/lib/elementary/elm_win_legacy.h
+++ b/src/lib/elementary/elm_win_legacy.h
@@ -1220,3 +1220,13 @@ EAPI void elm_win_focus_highlight_animate_set(Elm_Win *obj, Eina_Bool animate);
* @ingroup Efl_Ui_Win
*/
EAPI Eina_Bool elm_win_focus_highlight_animate_get(const Elm_Win *obj);
+
+/**
+ * @brief Raise a window object.
+ *
+ * Places the window pointed by @c obj at the top of the stack, so that it's
+ * not covered by any other window.
+ *
+ * @ingroup Efl_Ui_Win
+ */
+EAPI void elm_win_raise(Elm_Win *obj);