fix to save as draft
authorSungbok Park <parksb@samsung.com>
Wed, 17 Oct 2012 07:30:28 +0000 (16:30 +0900)
committerSungbok Park <parksb@samsung.com>
Wed, 17 Oct 2012 07:30:28 +0000 (16:30 +0900)
composer/src/email-composer-callback.c

index 17071c7..a1145df 100755 (executable)
@@ -57,6 +57,7 @@ static void _composer_delete_contacts_list(EMAIL_CONTACT_LIST_INFO_S *contacts_l
 static void _composer_get_html_content_for_draft_cb(Evas_Object *o, const char *result, void *data);
 static void _composer_send_clicked_cb(Evas_Object *o, const char *result, void *data);
 static void _composer_plain_text_get_cb(Evas_Object *o, const char *plain_text, void *user_data);
+static void _composer_save_to_draft_cb(Evas_Object *o, const char *plain_text, void *user_data);
 
 
 void _composer_edit_field_changed_cb(void *data, Evas_Object *obj, void *event_info)
@@ -2163,14 +2164,6 @@ static void _composer_cbar_save_as_draft_cb(Evas_Object *o, const char *result,
                debug_log("ugd->latest_html_content => %s", ugd->latest_html_content);
        }
 
-       if (EINA_FALSE == ewk_view_plain_text_get(ugd->body_ewkview, _composer_plain_text_get_cb, (void *)ugd)) {
-               debug_log("ewk_view_plain_text_get Failed");
-       }
-
-       if (EINA_FALSE == ewk_view_script_execute(ugd->body_ewkview, COMPOSER_JS_GET_IMAGE_LIST, _composer_get_image_list_cb, (void *)ugd)) {
-               debug_log("COMPOSER_JS_GET_IMAGE_LIST error.");
-       }
-
        if (ugd->timeout_noti) {
                debug_log("delete timeout_noti");
                evas_object_del(ugd->timeout_noti);
@@ -2268,8 +2261,8 @@ void _composer_cbar_save_as_draft_clicked(void *data, Evas_Object *obj, void *ev
 
        EmailComposerUGD *ugd = (EmailComposerUGD *)data;
 
-       if (EINA_FALSE == ewk_view_script_execute(ugd->body_ewkview, COMPOSER_JS_GET_HTML_CONTENT, _composer_cbar_save_as_draft_cb, (void *)ugd))
-               debug_log("COMPOSER_JS_GET_HTML_CONTENT failed.");
+       if (EINA_FALSE == ewk_view_plain_text_get(ugd->body_ewkview, _composer_save_to_draft_cb, (void *)ugd))
+               debug_log("ewk_view_plain_text_get Failed");
 }
 
 static void _composer_priority_radio_cb(void *data, Evas_Object *obj, void *event_info)
@@ -2765,6 +2758,27 @@ void _composer_get_latest_html_content_cb(Evas_Object *o, const char *result, vo
        }
 }
 
+static void _composer_save_to_draft_cb(Evas_Object *o, const char *plain_text, void *user_data)
+{
+       debug_log("");
+
+       EmailComposerUGD *ugd = (EmailComposerUGD *) user_data;
+
+       if (NULL != ugd->plain_content) {
+               g_free(ugd->plain_content);
+               ugd->plain_content = NULL;
+       }
+
+       ugd->plain_content = g_strdup(plain_text);
+       debug_log("ugd->plain_content => %s", ugd->plain_content);
+
+       if (EINA_FALSE == ewk_view_script_execute(ugd->body_ewkview, COMPOSER_JS_GET_IMAGE_LIST, _composer_get_image_list_cb, (void *)ugd))
+               debug_log("COMPOSER_JS_GET_IMAGE_LIST error.");
+
+       if (EINA_FALSE == ewk_view_script_execute(ugd->body_ewkview, COMPOSER_JS_GET_HTML_CONTENT, _composer_cbar_save_as_draft_cb, (void *)ugd))
+               debug_log("COMPOSER_JS_GET_HTML_CONTENT failed.");
+}
+
 static void _composer_plain_text_get_cb(Evas_Object *o, const char *plain_text, void *user_data)
 {
        debug_log("");