bu5hm4n pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=44fb906c4ffcc5aa6a198d54ab2f9e05133d2a32

commit 44fb906c4ffcc5aa6a198d54ab2f9e05133d2a32
Author: Cedric BAIL <cedric.b...@free.fr>
Date:   Thu Apr 18 16:17:05 2019 -0700

    elementary: enforce Efl.IoModel as a base type for fileselector.
    
    On the long run, we might just want to have an Efl.Model dedicated to
    be used by fileselector and inherit Efl.IoModel from it. At the moment,
    we don't, but I think it is still best to rely on this assumption to
    make the fileselector code simpler.
    
    Reviewed-by: Marcel Hollerbach <m...@marcel-hollerbach.de>
    Differential Revision: https://phab.enlightenment.org/D8654
---
 src/lib/elementary/elc_fileselector.c        | 2 ++
 src/lib/elementary/elc_fileselector_button.c | 3 +++
 src/lib/elementary/elc_fileselector_entry.c  | 2 ++
 3 files changed, 7 insertions(+)

diff --git a/src/lib/elementary/elc_fileselector.c 
b/src/lib/elementary/elc_fileselector.c
index 59ce7b1321..9283dc3190 100644
--- a/src/lib/elementary/elc_fileselector.c
+++ b/src/lib/elementary/elc_fileselector.c
@@ -2115,6 +2115,8 @@ _elm_fileselector_path_set_internal(Evas_Object *obj, 
const char *_path)
 EOLIAN static void
 _elm_fileselector_efl_ui_view_model_set(Eo *obj, Elm_Fileselector_Data *sd 
EINA_UNUSED, Efl_Model *model)
 {
+   if (!efl_isa(model, EFL_IO_MODEL_CLASS))
+     return ;
    _populate(obj, model, NULL, NULL);
 }
 
diff --git a/src/lib/elementary/elc_fileselector_button.c 
b/src/lib/elementary/elc_fileselector_button.c
index 1a644534f1..30aa8b225f 100644
--- a/src/lib/elementary/elc_fileselector_button.c
+++ b/src/lib/elementary/elc_fileselector_button.c
@@ -351,6 +351,9 @@ _elm_fileselector_button_efl_ui_view_model_set(Eo *obj 
EINA_UNUSED, Elm_Filesele
 {
    char *file = NULL;
 
+   if (!efl_isa(model, EFL_IO_MODEL_CLASS))
+     return ;
+
    efl_replace(&sd->fsd.model, model);
 
    if (model)
diff --git a/src/lib/elementary/elc_fileselector_entry.c 
b/src/lib/elementary/elc_fileselector_entry.c
index df9ac79d2c..eee488267b 100644
--- a/src/lib/elementary/elc_fileselector_entry.c
+++ b/src/lib/elementary/elc_fileselector_entry.c
@@ -406,6 +406,8 @@ _elm_fileselector_entry_path_set_internal(Evas_Object *obj, 
const char *path)
 EOLIAN static void
 _elm_fileselector_entry_efl_ui_view_model_set(Eo *obj EINA_UNUSED, 
Elm_Fileselector_Entry_Data *sd, Efl_Model *model)
 {
+   if (!efl_isa(model, EFL_IO_MODEL_CLASS))
+     return ;
    efl_ui_view_model_set(sd->button, model);
    efl_ui_view_model_set(sd->entry, model);
    efl_ui_property_bind(sd->entry, "default", "path");

-- 


Reply via email to