diff options
author | Hyerim Bae <hyerim.bae@samsung.com> | 2012-08-09 18:50:19 +0900 |
---|---|---|
committer | Hyerim Bae <hyerim.bae@samsung.com> | 2012-09-06 11:58:24 +0900 |
commit | 94cff4ae951c4ebb950da645d0bb761612bfce8e (patch) | |
tree | 720b6f0fd961541f2d296e72298657cb47e2c296 | |
parent | 7d7fc54a3c4f49e123e39f41f8f6f4702dfd7556 (diff) | |
download | browser-94cff4ae951c4ebb950da645d0bb761612bfce8e.tar.gz browser-94cff4ae951c4ebb950da645d0bb761612bfce8e.tar.bz2 browser-94cff4ae951c4ebb950da645d0bb761612bfce8e.zip |
[Title] Fix crash issue when delete multi window rapidly on emulator.
[Issue#] N_SE-6880
[Problem] Crash happens when delete multi window if the previous multi window flow is not completed.
[Cause] The duplicated delete callback is called.
[Solution] Modify to be able to delete the multi window after the previous multi window is deleted completely.
[Team] Browser UI
[Developer] Hyerim Bae (hyerim.bae)
[Request] N/A
Change-Id: Icdab6ddcf04594779174fa9fad88cf5186750471
-rw-r--r--[-rwxr-xr-x] | edc/browser-multi-window.edc | 1 | ||||
-rwxr-xr-x | src/browser-multi-window/browser-multi-window-view.cpp | 8 |
2 files changed, 7 insertions, 2 deletions
diff --git a/edc/browser-multi-window.edc b/edc/browser-multi-window.edc index 47df52a3..84deb549 100755..100644 --- a/edc/browser-multi-window.edc +++ b/edc/browser-multi-window.edc @@ -468,6 +468,7 @@ collections { action: STATE_SET "grey" 0.0; transition: ACCELERATE 0.3; target: "rect.clipper"; + after: "hide,delete_window_icon"; } program { name: "non_grey,snapshot"; signal: "non_grey,snapshot,signal"; diff --git a/src/browser-multi-window/browser-multi-window-view.cpp b/src/browser-multi-window/browser-multi-window-view.cpp index 01783a49..48898485 100755 --- a/src/browser-multi-window/browser-multi-window-view.cpp +++ b/src/browser-multi-window/browser-multi-window-view.cpp @@ -749,12 +749,16 @@ void Browser_Multi_Window_View::_show_grey_effect(void) { BROWSER_LOGD("[%s]", __func__); for (int i = 0 ; i < m_item_list.size() ; i++) { - if (i == m_current_position_index) + if (i == m_current_position_index) { edje_object_signal_emit(elm_layout_edje_get(m_item_list[i]), "non_grey,snapshot,signal", ""); - else + if (m_item_list.size() > 1) + edje_object_signal_emit(elm_layout_edje_get(m_item_list[i]), + "show,delete_window_icon,signal", ""); + } else { edje_object_signal_emit(elm_layout_edje_get(m_item_list[i]), "grey,snapshot,signal", ""); + } } } |