[Title] recovering sweeped item whem genlist go into edit mode.
authorSangpyo Kim <sangpyo7.kim@samsung.com>
Thu, 6 Sep 2012 16:19:11 +0000 (01:19 +0900)
committerSangpyo Kim <sangpyo7.kim@samsung.com>
Fri, 7 Sep 2012 02:16:05 +0000 (11:16 +0900)
[Issue#] N_SE-9364
[Problem] list layout is broken
[Cause] sweeped item on the genlist should be recovered before edit mode changed.
[Solution] recovering sweeped item whem genlist go into edit mode.
[Team] Browser UI
[Developer] sangpyo7.kim
[Request] N/A

Change-Id: Idb4ea3b0473aae17702d670222e2e28fe9341b1e

src/browser-bookmark/browser-bookmark-view.cpp
src/browser-history/browser-history-layout.cpp
src/browser-utility.cpp
src/browser-utility.h

index dac73ff..bc9625b 100755 (executable)
@@ -936,6 +936,12 @@ void Browser_Bookmark_View::_set_edit_mode(Eina_Bool edit_mode)
        hide_notify_popup_layout(m_sub_main_layout);
 
        if (edit_mode) {
+#if defined(GENLIST_SWEEP)
+               if (m_current_folder_id = BROWSER_BOOKMARK_MAIN_FOLDER_ID)
+                       br_elm_genlist_sweep_item_recover(m_main_folder_genlist);
+               else
+                       br_elm_genlist_sweep_item_recover(m_sub_folder_genlist);
+#endif
                elm_object_style_set(m_bg, "edit_mode");
 
                m_edit_mode_select_all_layout = elm_layout_add(m_genlist_content_box);
index 5846398..b24c522 100755 (executable)
@@ -338,6 +338,9 @@ void Browser_History_Layout::_set_edit_mode(Eina_Bool edit_mode)
        _enable_searchbar_layout(!edit_mode);
 
        if (edit_mode) {
+#if defined(GENLIST_SWEEP)
+               br_elm_genlist_sweep_item_recover(m_history_genlist);
+#endif
                elm_object_style_set(m_bg, "edit_mode");
 
                m_edit_mode_select_all_layout = elm_layout_add(m_content_box);
index bcc66b7..58893fb 100755 (executable)
@@ -343,6 +343,25 @@ Evas_Object *br_elm_searchbar_entry_get(Evas_Object *obj)
        return elm_object_part_content_get(obj, "elm.swallow.content");
 }
 
+#if defined(GENLIST_SWEEP)
+void br_elm_genlist_sweep_item_recover(Evas_Object *obj)
+{
+       if (obj == NULL) {
+               BROWSER_LOGD("obj is NULL");
+               return;
+       }
+
+       Elm_Object_Item *it = (Elm_Object_Item *) elm_genlist_decorated_item_get(obj);
+
+       /* Finish genlist sweep*/
+       if (it) {
+               elm_genlist_item_decorate_mode_set(it, "slide", EINA_FALSE);
+               elm_genlist_item_select_mode_set(it, ELM_OBJECT_SELECT_MODE_DEFAULT);
+               elm_genlist_item_update(it);
+       }
+}
+#endif
+
 bool br_preference_set_bool(const char *key, bool value)
 {
        int ret;
index 7d5a3f1..19ac761 100755 (executable)
@@ -39,6 +39,10 @@ char *br_elm_searchbar_text_get(Evas_Object *obj);
 Evas_Object *br_elm_searchbar_entry_get(Evas_Object *obj);
 Evas_Object *br_elm_find_word_editfield_add(Evas_Object *parent);
 
+#if defined(GENLIST_SWEEP)
+void br_elm_genlist_sweep_item_recover(Evas_Object *obj);
+#endif
+
 /* preference APIs */
 bool br_preference_set_bool(const char *key, bool value);
 bool br_preference_get_bool(const char *key, bool *value);