efl_ui_progressbar: do not allow parts on unified widgets

this only allows the default part to be gotten when running the unified
widget. A later widget can then be used to expose the second progressbar
part.

ref T8501

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D11075
This commit is contained in:
Marcel Hollerbach 2020-01-13 14:49:31 +01:00
parent 008517645e
commit b57d0aa571
1 changed files with 11 additions and 4 deletions

View File

@ -681,10 +681,17 @@ _efl_ui_progressbar_efl_part_part_get(const Eo *obj, Efl_Ui_Progressbar_Data *sd
EINA_SAFETY_ON_NULL_RETURN_VAL(part, NULL);
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd, NULL);
// Progress bars are dragable types
if (edje_object_part_drag_dir_get(wd->resize_obj, part) != (Edje_Drag_Dir)EFL_UI_DRAG_DIR_NONE)
return ELM_PART_IMPLEMENT(EFL_UI_PROGRESSBAR_PART_CLASS, obj, part);
if (elm_widget_is_legacy(obj))
{
// Progress bars are dragable types
if (edje_object_part_drag_dir_get(wd->resize_obj, part) != (Edje_Drag_Dir)EFL_UI_DRAG_DIR_NONE)
return ELM_PART_IMPLEMENT(EFL_UI_PROGRESSBAR_PART_CLASS, obj, part);
}
else
{
if (eina_streq(part, "efl.cur.progressbar"))
return ELM_PART_IMPLEMENT(EFL_UI_PROGRESSBAR_PART_CLASS, obj, part);
}
return efl_part_get(efl_super(obj, MY_CLASS), part);
}