summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Michael <cp.michael@samsung.com>2018-06-25 11:30:27 -0400
committerMike Blumenkrantz <zmike@samsung.com>2018-06-25 11:36:52 -0400
commit580100d87dc73936d17caf2930543537150d9128 (patch)
treeb040219f7378c3ef4425b61af973e788bd9c552f
parenta1704700acac2c1df2fe3e75dfec41af99df758a (diff)
elm_clock: Wrap calls to edje_object_part_object_get with freeze/thaw
Summary: @ref T6884 Depends on D6417 Reviewers: zmike, ManMower Reviewed By: zmike Subscribers: cedric, #committers Tags: #efl Maniphest Tasks: T6884 Differential Revision: https://phab.enlightenment.org/D6418
-rw-r--r--src/lib/elementary/elm_clock.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/lib/elementary/elm_clock.c b/src/lib/elementary/elm_clock.c
index 4ba69a1f67..39ab38e515 100644
--- a/src/lib/elementary/elm_clock.c
+++ b/src/lib/elementary/elm_clock.c
@@ -195,7 +195,9 @@ _access_activate_cb(void *data,
195 digit = evas_object_smart_parent_get(part_obj); 195 digit = evas_object_smart_parent_get(part_obj);
196 if (!digit) return; 196 if (!digit) return;
197 197
198 edje_object_freeze(digit);
198 inc_btn = (Evas_Object *)edje_object_part_object_get(digit, "access.t"); 199 inc_btn = (Evas_Object *)edje_object_part_object_get(digit, "access.t");
200 edje_object_thaw(digit);
199 201
200 if (part_obj != inc_btn) 202 if (part_obj != inc_btn)
201 _on_clock_val_down_start(data, digit, NULL, NULL); 203 _on_clock_val_down_start(data, digit, NULL, NULL);
@@ -286,6 +288,7 @@ _access_time_register(Evas_Object *obj, Eina_Bool is_access)
286 } 288 }
287 289
288 /* no need to propagate mouse event with acess */ 290 /* no need to propagate mouse event with acess */
291 edje_object_freeze(sd->digit[i]);
289 po = (Evas_Object *)edje_object_part_object_get 292 po = (Evas_Object *)edje_object_part_object_get
290 (sd->digit[i], "access.t"); 293 (sd->digit[i], "access.t");
291 evas_object_propagate_events_set(po, !is_access); 294 evas_object_propagate_events_set(po, !is_access);
@@ -293,7 +296,7 @@ _access_time_register(Evas_Object *obj, Eina_Bool is_access)
293 po = (Evas_Object *)edje_object_part_object_get 296 po = (Evas_Object *)edje_object_part_object_get
294 (sd->digit[i], "access.b"); 297 (sd->digit[i], "access.b");
295 evas_object_propagate_events_set(po, !is_access); 298 evas_object_propagate_events_set(po, !is_access);
296 299 edje_object_thaw(sd->digit[i]);
297 } 300 }
298 301
299 /* am, pm edit button */ 302 /* am, pm edit button */
@@ -331,6 +334,7 @@ _access_time_register(Evas_Object *obj, Eina_Bool is_access)
331 } 334 }
332 335
333 /* no need to propagate mouse event with access */ 336 /* no need to propagate mouse event with access */
337 edje_object_freeze(sd->am_pm_obj);
334 po = (Evas_Object *)edje_object_part_object_get 338 po = (Evas_Object *)edje_object_part_object_get
335 (sd->am_pm_obj, "access.t"); 339 (sd->am_pm_obj, "access.t");
336 evas_object_propagate_events_set(po, !is_access); 340 evas_object_propagate_events_set(po, !is_access);
@@ -338,7 +342,7 @@ _access_time_register(Evas_Object *obj, Eina_Bool is_access)
338 po = (Evas_Object *)edje_object_part_object_get 342 po = (Evas_Object *)edje_object_part_object_get
339 (sd->am_pm_obj, "access.b"); 343 (sd->am_pm_obj, "access.b");
340 evas_object_propagate_events_set(po, !is_access); 344 evas_object_propagate_events_set(po, !is_access);
341 345 edje_object_thaw(sd->am_pm_obj);
342} 346}
343 347
344static Evas_Object* 348static Evas_Object*
@@ -346,13 +350,14 @@ _focus_part_get(Evas_Object *part, const char *part_name)
346{ 350{
347 Evas_Object *po, *adapter; 351 Evas_Object *po, *adapter;
348 352
353 edje_object_freeze(part);
349 po = (Evas_Object *)edje_object_part_object_get 354 po = (Evas_Object *)edje_object_part_object_get
350 (part, part_name); 355 (part, part_name);
356 edje_object_thaw(part);
351 357
352 if (_elm_config->access_mode == ELM_ACCESS_MODE_ON) 358 if (_elm_config->access_mode == ELM_ACCESS_MODE_ON)
353 po = evas_object_data_get(po, "_part_access_obj"); 359 po = evas_object_data_get(po, "_part_access_obj");
354 360
355
356 adapter = evas_object_data_get(po, "_focus_adapter_object"); 361 adapter = evas_object_data_get(po, "_focus_adapter_object");
357 362
358 if (!adapter) 363 if (!adapter)