From 2a387616e79566079bcef5468c026325b97db9d2 Mon Sep 17 00:00:00 2001 From: Radek Kintop Date: Wed, 5 Oct 2016 18:17:34 +0200 Subject: [PATCH] Setting->Clock - fixed focus losing on setup type dropdown Change-Id: I484b0dc68cb09860a1776c235083ec6b5b2c587c Signed-off-by: Radek Kintop --- src/view/system/view_clock.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/view/system/view_clock.c b/src/view/system/view_clock.c index 02b0a75..6a58cb6 100644 --- a/src/view/system/view_clock.c +++ b/src/view/system/view_clock.c @@ -90,11 +90,14 @@ static void _cancel_mouse_cb(int id, void *data, Evas_Object *obj); static void _disable_manual_settings(bool disable, const clock_view_priv_data *priv); /* Helper to make time out of widgets values: */ static void _get_time_from_controls(struct tm *result, const clock_view_priv_data *priv); +/* When auto/manual setup dropdown is active, focus should be only on it*/ +static void _focused(int id, void *data, Evas_Object *obj, Elm_Object_Item *item); static input_handler _auto_manual_setup_input_handler = { .mouse_move = _auto_manual_mouse_move_cb, .key_down = _auto_manual_setup_key_down_cb, - .mouse_down = _auto_manual_setup_mouse_down_cb + .mouse_down = _auto_manual_setup_mouse_down_cb, + .focused = _focused }; static input_handler _auto_manual_setup_option_selection_input_handler = { @@ -176,7 +179,7 @@ static void _draw_setup_type_popup(clock_view_priv_data *priv) evas_object_geometry_get(priv->auto_manual_setup_btn, &x, &y, &w, &h); evas_object_move(ctxpopup, (x + w / 2), (y + h)); - evas_object_resize(ctxpopup, w, 0); + evas_object_size_hint_min_set(ctxpopup, w, 0); priv->setup_type_popup = ctxpopup; @@ -555,3 +558,10 @@ static void _get_time_from_controls(struct tm *result, const clock_view_priv_dat result->tm_sec = tmp.tm_sec; result->tm_isdst = -1; } + +static void _focused(int id, void *data, Evas_Object *obj, Elm_Object_Item *item) +{ + clock_view_priv_data *priv = data; + if (priv && priv->setup_type_popup) + elm_object_focus_set(priv->setup_type_popup, EINA_TRUE); +} -- 2.7.4