summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarsten Haitzler (Rasterman) <raster@rasterman.com>2013-07-26 16:26:17 +0900
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>2013-07-26 16:26:17 +0900
commit57ae6209c85320a2b502734875bc13252426d7df (patch)
tree87a5b263cdf08251d9dbafa161312edbb91ef3f8
parentfd0648286f9fad13ab8f8cf2ef56ba4d95c9920a (diff)
downloadelementary-57ae6209c85320a2b502734875bc13252426d7df.tar.gz
re-fix slider to work again with def theme.
-rw-r--r--src/lib/elm_slider.c21
1 files changed, 18 insertions, 3 deletions
diff --git a/src/lib/elm_slider.c b/src/lib/elm_slider.c
index 4134c7a60..097f0f254 100644
--- a/src/lib/elm_slider.c
+++ b/src/lib/elm_slider.c
@@ -136,13 +136,13 @@ _units_set(Evas_Object *obj)
}
else
{
+ elm_layout_text_set(obj, "elm.units", NULL);
if (sd->units_show)
{
elm_layout_signal_emit(obj, "elm,state,units,hidden", "elm");
sd->units_show = EINA_FALSE;
}
}
-
if (sd->units_format_free) sd->units_format_free(buf);
}
else if (sd->units)
@@ -497,7 +497,7 @@ _elm_slider_smart_theme(Eo *obj, void *_pd, va_list *list)
if (sd->popup)
edje_object_scale_set(sd->popup, elm_widget_scale_get(obj) *
elm_config_scale_get());
-
+
if (sd->horizontal)
evas_object_size_hint_min_set
(sd->spacer, (double)sd->size * elm_widget_scale_get(obj) *
@@ -978,8 +978,23 @@ _elm_slider_unit_format_set(Eo *obj, void *_pd, va_list *list)
{
const char *units = va_arg(*list, const char *);
Elm_Slider_Smart_Data *sd = _pd;
-
+ Elm_Widget_Smart_Data *wd = eo_data_scope_get(obj, ELM_OBJ_WIDGET_CLASS);
+
eina_stringshare_replace(&sd->units, units);
+ if (units)
+ {
+ elm_layout_signal_emit(obj, "elm,state,units,visible", "elm");
+ edje_object_message_signal_process(wd->resize_obj);
+ if (sd->popup)
+ edje_object_signal_emit(sd->popup, "elm,state,units,visible", "elm");
+ }
+ else
+ {
+ elm_layout_signal_emit(obj, "elm,state,units,hidden", "elm");
+ edje_object_message_signal_process(wd->resize_obj);
+ if (sd->popup)
+ edje_object_signal_emit(sd->popup, "elm,state,units,hidden", "elm");
+ }
evas_object_smart_changed(obj);
}