summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHyerim Bae <hyerim.bae@samsung.com>2012-08-09 18:50:19 +0900
committerHyerim Bae <hyerim.bae@samsung.com>2012-09-06 11:58:24 +0900
commit94cff4ae951c4ebb950da645d0bb761612bfce8e (patch)
tree720b6f0fd961541f2d296e72298657cb47e2c296
parent7d7fc54a3c4f49e123e39f41f8f6f4702dfd7556 (diff)
downloadbrowser-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.edc1
-rwxr-xr-xsrc/browser-multi-window/browser-multi-window-view.cpp8
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", "");
+ }
}
}