interfaces: Remove display_mode from EO size hints
authorJean-Philippe Andre <jp.andre@samsung.com>
Wed, 31 May 2017 08:58:14 +0000 (17:58 +0900)
committerJean-Philippe Andre <jp.andre@samsung.com>
Wed, 31 May 2017 09:42:32 +0000 (18:42 +0900)
This size hint is only used by naviframe, which is not part of
our EO widgets. I also believe it might be an even more confusing
hint than the others.

I kept the typedef as is in Evas_Legacy.h in case an app is
written using EFL_GFX_ instead of EVAS_...

src/lib/efl/interfaces/efl_gfx_size_hint.eo
src/lib/efl/interfaces/efl_gfx_types.eot
src/lib/elementary/elm_widget.c
src/lib/elementary/elm_widget.eo
src/lib/evas/Evas_Common.h
src/lib/evas/Evas_Legacy.h
src/lib/evas/canvas/efl_canvas_object.eo
src/lib/evas/canvas/evas_object_main.c

index 2a6a79a..7431e36 100644 (file)
@@ -250,22 +250,6 @@ interface Efl.Gfx.Size.Hint
                          #EFL_GFX_SIZE_HINT_FILL, to use as vertical alignment hint.]]
          }
       }
-      @property hint_display_mode {
-         [[A hint for an object's display mode.
-
-           These are hints on the display mode $obj. This is not a size
-           enforcement in any way, it's just a hint that can be used
-           whenever appropriate. This mode can be used object's display
-           mode like commpress or expand.
-
-           This is not a size enforcement in any way, it's just a hint
-           that can be used whenever appropriate. Very few widgets implement
-           support for this hint for now.
-         ]]
-         values {
-            dispmode: Efl.Gfx.Size.Hint.Mode; [[Display mode hint.]]
-         }
-      }
    }
    events {
       change,size,hints; [[Object size hints changed.]]
index cbfb04f..bd156ba 100644 (file)
@@ -196,14 +196,3 @@ enum Efl.Image.Load.Error
    unknown_collection = 9,         [[(Edje only) The group/collection set to load from was not found in the file]]
    recursive_reference = 10        [[(Edje only) The group/collection set to load from had recursive references on its components]]
 }
-
-enum Efl.Gfx.Size.Hint.Mode {
-   [[Display mode size hint.]]
-   none = 0, [[Default mode]]
-   compress = 1, [[Use this mode when you want to give compress display mode
-                   hint to an object]]
-   expand = 2, [[Use this mode when you want to give expand display mode hint
-                 to an object]]
-   dont_change = 3 [[Use this mode when an object should not change its display
-                     mode]]
-}
index 69fa61a..8bfcf22 100644 (file)
@@ -4624,13 +4624,15 @@ elm_widget_activate(Evas_Object *obj, Elm_Activate act)
  * After keypad showing, conform widget can change child's Evas_Display_Mode.
  * @ingroup Widget
  */
-EOLIAN static void
-_elm_widget_display_mode_set(Eo *obj, Elm_Widget_Smart_Data *sd, Evas_Display_Mode dispmode)
+/* Legacy only */
+EAPI void
+elm_widget_display_mode_set(Evas_Object *obj, Evas_Display_Mode dispmode)
 {
    Evas_Display_Mode prev_dispmode;
    Evas_Object *child;
    Eina_List *l;
 
+   API_ENTRY return;
    prev_dispmode = evas_object_size_hint_display_mode_get(obj);
 
    if ((prev_dispmode == dispmode) ||
index c91db8a..bb1cf07 100644 (file)
@@ -231,14 +231,6 @@ abstract Elm.Widget (Efl.Canvas.Group, Elm.Interface.Atspi_Accessible, Elm.Inter
             sobj: Efl.Canvas.Object @nullable; [[Hover sub object]]
          }
       }
-      @property display_mode {
-        [[Display mode property]]
-         set {
-         }
-         values {
-            dispmode: Efl.Gfx.Size.Hint.Mode; [[Display mode]]
-         }
-      }
       @property on_show_region_hook {
         [[Region hook on show property]]
          set {
index f85cbc4..8eaada2 100644 (file)
@@ -340,13 +340,6 @@ typedef Efl_Gfx_Size_Hint_Aspect           Evas_Aspect_Control; /**< Aspect type
 #define EVAS_ASPECT_CONTROL_VERTICAL       EFL_GFX_SIZE_HINT_ASPECT_VERTICAL
 #define EVAS_ASPECT_CONTROL_BOTH           EFL_GFX_SIZE_HINT_ASPECT_BOTH
 
-typedef Efl_Gfx_Size_Hint_Mode             Evas_Display_Mode;
-
-#define EVAS_DISPLAY_MODE_NONE             EFL_GFX_SIZE_HINT_MODE_NONE
-#define EVAS_DISPLAY_MODE_COMPRESS         EFL_GFX_SIZE_HINT_MODE_COMPRESS
-#define EVAS_DISPLAY_MODE_EXPAND           EFL_GFX_SIZE_HINT_MODE_EXPAND
-#define EVAS_DISPLAY_MODE_DONT_CHANGE      EFL_GFX_SIZE_HINT_MODE_DONT_CHANGE
-
 typedef Efl_Text_Bidirectional_Type        Evas_BiDi_Direction;
 
 #define EVAS_BIDI_DIRECTION_NATURAL        EFL_TEXT_BIDIRECTIONAL_TYPE_NATURAL
index 86dd94d..a98aae4 100644 (file)
@@ -1837,6 +1837,25 @@ EAPI void evas_object_size_hint_aspect_set(Evas_Object *obj, Evas_Aspect_Control
  */
 EAPI void evas_object_size_hint_aspect_get(const Evas_Object *obj, Evas_Aspect_Control *aspect, Evas_Coord *w, Evas_Coord *h);
 
+/** Display mode size hint. */
+typedef enum
+{
+  EFL_GFX_SIZE_HINT_MODE_NONE = 0, /**< Default mode */
+  EFL_GFX_SIZE_HINT_MODE_COMPRESS = 1, /**< Use this mode when you want to give
+                                        * compress display mode hint to an object */
+  EFL_GFX_SIZE_HINT_MODE_EXPAND = 2, /**< Use this mode when you want to give
+                                      * expand display mode hint to an object */
+  EFL_GFX_SIZE_HINT_MODE_DONT_CHANGE = 3 /**< Use this mode when an object
+                                          * should not change its display mode */
+} Efl_Gfx_Size_Hint_Mode;
+
+typedef Efl_Gfx_Size_Hint_Mode             Evas_Display_Mode;
+
+#define EVAS_DISPLAY_MODE_NONE             EFL_GFX_SIZE_HINT_MODE_NONE
+#define EVAS_DISPLAY_MODE_COMPRESS         EFL_GFX_SIZE_HINT_MODE_COMPRESS
+#define EVAS_DISPLAY_MODE_EXPAND           EFL_GFX_SIZE_HINT_MODE_EXPAND
+#define EVAS_DISPLAY_MODE_DONT_CHANGE      EFL_GFX_SIZE_HINT_MODE_DONT_CHANGE
+
 /**
  * @brief Sets the hints for an object's disply mode,
  *
index 687cc8b..2c8b8c2 100644 (file)
@@ -627,7 +627,6 @@ abstract Efl.Canvas.Object (Efl.Object, Efl.Gfx, Efl.Gfx.Stack, Efl.Animator,
       Efl.Gfx.Size.Hint.hint_aspect { get; set; }
       Efl.Gfx.Size.Hint.hint_align { get; set; }
       Efl.Gfx.Size.Hint.hint_combined_min { get; }
-      Efl.Gfx.Size.Hint.hint_display_mode { get; set; }
       Efl.Gfx.Size.Hint.hint_restricted_min { get; set; }
       Efl.Gfx.Size.Hint.hint_min { get; set; }
       Efl.Gfx.Size.Hint.hint_max { get; set; }
index b0baadb..7e5f476 100644 (file)
@@ -1322,20 +1322,22 @@ _evas_object_size_hint_alloc(Evas_Object *eo_obj EINA_UNUSED, Evas_Object_Protec
    obj->size_hints->dispmode = EVAS_DISPLAY_MODE_NONE;
 }
 
-EOLIAN static Evas_Display_Mode
-_efl_canvas_object_efl_gfx_size_hint_hint_display_mode_get(Eo *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj)
+/* Legacy only */
+EAPI Evas_Display_Mode
+evas_object_size_hint_display_mode_get(const Evas_Object *eo_obj)
 {
-   if (!obj) return EVAS_DISPLAY_MODE_NONE;
-   if ((!obj->size_hints) || obj->delete_me)
-     return EVAS_DISPLAY_MODE_NONE;
+   Evas_Object_Protected_Data *obj = EVAS_OBJECT_DATA_SAFE_GET(eo_obj);
+   EVAS_OBJECT_DATA_ALIVE_CHECK(obj, EVAS_DISPLAY_MODE_NONE);
+   if (!obj->size_hints) return EVAS_DISPLAY_MODE_NONE;
    return obj->size_hints->dispmode;
 }
 
-EOLIAN static void
-_efl_canvas_object_efl_gfx_size_hint_hint_display_mode_set(Eo *eo_obj EINA_UNUSED, Evas_Object_Protected_Data *obj, Evas_Display_Mode dispmode)
+/* Legacy only */
+EAPI void
+evas_object_size_hint_display_mode_set(Eo *eo_obj, Evas_Display_Mode dispmode)
 {
-   if (!obj) return;
-   if (obj->delete_me) return;
+   Evas_Object_Protected_Data *obj = EVAS_OBJECT_DATA_SAFE_GET(eo_obj);
+   EVAS_OBJECT_DATA_ALIVE_CHECK(obj);
    evas_object_async_block(obj);
    if (EINA_UNLIKELY(!obj->size_hints))
      {
@@ -2548,18 +2550,6 @@ evas_object_evas_get(const Eo *eo_obj)
    return efl_provider_find((Eo *) eo_obj, EVAS_CANVAS_CLASS);
 }
 
-EAPI void
-evas_object_size_hint_display_mode_set(Evas_Object *obj, Evas_Display_Mode dispmode)
-{
-   efl_gfx_size_hint_display_mode_set(obj, dispmode);
-}
-
-EAPI Evas_Display_Mode
-evas_object_size_hint_display_mode_get(const Evas_Object *obj)
-{
-   return efl_gfx_size_hint_display_mode_get(obj);
-}
-
 /* Internal EO APIs and hidden overrides */
 
 EOAPI EFL_VOID_FUNC_BODY(efl_canvas_object_legacy_ctor)