diff options
author | Yeongjong Lee <yj34.lee@samsung.com> | 2018-08-30 14:02:34 +0900 |
---|---|---|
committer | Hermet Park <hermetpark@gmail.com> | 2018-08-30 14:02:34 +0900 |
commit | 086783f31daf5c6f1fca81cdf55439447a78d43f (patch) | |
tree | d4f315b2f812bcd3d9143cb75697ff61516e849d | |
parent | e06a9b6acf2d74880a3d4697248fd4e24971eef0 (diff) | |
download | efl-086783f31daf5c6f1fca81cdf55439447a78d43f.tar.gz |
elm_panel: fix mirrored_set work correctly
Summary:
When elm_panel isn't scrollable, It can't pass `if (!sid->edje_obj) return;` in
_elm_interface_scrollable_efl_ui_base_mirrored_set. so elm_panel's mirrored_set
didn't work. we neet to consider non-scrollable panel.
Test Plan:
1. elementary_test
2. Open 'Panel' and 'Panel Scrollable'
3. Turn on UI-Mirroring on Elementary Tests window.
4. Check that mirror mode works correctly.
Reviewers: Hermet, Jaehyun_Cho
Reviewed By: Hermet
Subscribers: cedric, #reviewers, #committers
Tags: #efl
Differential Revision: https://phab.enlightenment.org/D6944
-rw-r--r-- | src/lib/elementary/elm_panel.c | 9 | ||||
-rw-r--r-- | src/lib/elementary/elm_panel.eo | 1 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/lib/elementary/elm_panel.c b/src/lib/elementary/elm_panel.c index 478d82c60d..5366684b8e 100644 --- a/src/lib/elementary/elm_panel.c +++ b/src/lib/elementary/elm_panel.c @@ -1440,6 +1440,15 @@ _elm_panel_scrollable_set(Eo *obj, Elm_Panel_Data *sd, Eina_Bool scrollable) } } +EOLIAN static void +_elm_panel_efl_ui_base_mirrored_set(Eo *obj, Elm_Panel_Data *sd, Eina_Bool mirrored) +{ + if (sd->scrollable) + efl_ui_mirrored_set(efl_cast(obj, ELM_INTERFACE_SCROLLABLE_MIXIN), mirrored); + else + efl_ui_mirrored_set(efl_cast(obj, EFL_UI_WIDGET_CLASS), mirrored); +} + static void _elm_panel_class_constructor(Efl_Class *klass) { diff --git a/src/lib/elementary/elm_panel.eo b/src/lib/elementary/elm_panel.eo index ba4db117c9..be8bdc5dda 100644 --- a/src/lib/elementary/elm_panel.eo +++ b/src/lib/elementary/elm_panel.eo @@ -85,6 +85,7 @@ class Elm.Panel (Efl.Ui.Layout.Object, Efl.Ui.Focus.Layer, Elm.Interface_Scrolla Efl.Ui.Widget.widget_event; Efl.Ui.Widget.interest_region { get; } Efl.Access.Widget.Action.elm_actions { get; } + Efl.Ui.Base.mirrored { set; } Efl.Part.part_get; } events { |