diff options
author | Cedric BAIL <cedric.bail@free.fr> | 2012-07-18 07:18:45 +0000 |
---|---|---|
committer | Cedric BAIL <cedric.bail@free.fr> | 2012-07-18 07:18:45 +0000 |
commit | ef79bfe671e1d27aa8ba99d387772f3024d437d7 (patch) | |
tree | 2b690503c790e0f7395f7b551a719a59881d8d1b /src | |
parent | a76946b624bf31a9fdd0631a3cf649e8c65fa2d0 (diff) |
terminology: correctly detect death of window.
SVN revision: 74045
Diffstat (limited to 'src')
-rw-r--r-- | src/bin/main.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/bin/main.c b/src/bin/main.c index 5187a8c..771e4f3 100644 --- a/src/bin/main.c +++ b/src/bin/main.c | |||
@@ -17,6 +17,13 @@ static Evas_Object *popmedia = NULL; | |||
17 | static Evas_Object *conform = NULL; | 17 | static Evas_Object *conform = NULL; |
18 | static Ecore_Timer *flush_timer = NULL; | 18 | static Ecore_Timer *flush_timer = NULL; |
19 | static Eina_Bool focused = EINA_FALSE; | 19 | static Eina_Bool focused = EINA_FALSE; |
20 | static Eina_Bool win_deleted = EINA_FALSE; | ||
21 | |||
22 | static void | ||
23 | _cb_del(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event __UNUSED__) | ||
24 | { | ||
25 | win_deleted = EINA_TRUE; | ||
26 | } | ||
20 | 27 | ||
21 | static void | 28 | static void |
22 | _cb_focus_in(void *data, Evas_Object *obj __UNUSED__, void *event __UNUSED__) | 29 | _cb_focus_in(void *data, Evas_Object *obj __UNUSED__, void *event __UNUSED__) |
@@ -426,6 +433,7 @@ elm_main(int argc, char **argv) | |||
426 | 433 | ||
427 | win = tg_win_add(name, role, title, icon_name); | 434 | win = tg_win_add(name, role, title, icon_name); |
428 | 435 | ||
436 | evas_object_event_callback_add(win, EVAS_CALLBACK_DEL, _cb_del, NULL); | ||
429 | elm_win_conformant_set(win, EINA_TRUE); | 437 | elm_win_conformant_set(win, EINA_TRUE); |
430 | 438 | ||
431 | if (fullscreen) elm_win_fullscreen_set(win, EINA_TRUE); | 439 | if (fullscreen) elm_win_fullscreen_set(win, EINA_TRUE); |
@@ -497,7 +505,7 @@ elm_main(int argc, char **argv) | |||
497 | config_del(config); | 505 | config_del(config); |
498 | config_shutdown(); | 506 | config_shutdown(); |
499 | 507 | ||
500 | evas_object_del(win); | 508 | if (!win_deleted) evas_object_del(win); |
501 | 509 | ||
502 | eina_log_domain_unregister(_log_domain); | 510 | eina_log_domain_unregister(_log_domain); |
503 | _log_domain = -1; | 511 | _log_domain = -1; |