From 8adfb4713d036a07b2454667d86a432506daab6d Mon Sep 17 00:00:00 2001 From: Pawel Wasowski Date: Wed, 6 Mar 2019 18:11:57 +0100 Subject: [PATCH] [messaging] Support new filtering options in findFolders (SMS/MMS) Related ACR: TWDAPI-205 [Verification] tct-messaging-sms-tests & tct-messaging-mms-tests: pass rate did not change after applying the commit This commit has already been reviewed: https://review.tizen.org/gerrit/#/c/platform/core/api/webapi-plugins/+/200975/ Change-Id of the original change was: I8cea3b5cb0a0a19a827446c5bb34bce0e2710d7e Change-Id: I88e7720dcbc6dd500d8bb27ae8aca4cd5d429655 Signed-off-by: Pawel Wasowski --- src/messaging/message_folder.h | 2 +- src/messaging/message_storage_short_msg.cc | 25 ++++++++-------------- 2 files changed, 10 insertions(+), 17 deletions(-) diff --git a/src/messaging/message_folder.h b/src/messaging/message_folder.h index a9a7ded6..e88e54cb 100644 --- a/src/messaging/message_folder.h +++ b/src/messaging/message_folder.h @@ -30,7 +30,7 @@ namespace extension { namespace messaging { enum MessageFolderType { - MESSAGE_FOLDER_TYPE_INBOX, + MESSAGE_FOLDER_TYPE_INBOX = 1, MESSAGE_FOLDER_TYPE_OUTBOX, MESSAGE_FOLDER_TYPE_DRAFTS, MESSAGE_FOLDER_TYPE_SENTBOX, diff --git a/src/messaging/message_storage_short_msg.cc b/src/messaging/message_storage_short_msg.cc index 2c1e4727..c5bae61c 100644 --- a/src/messaging/message_storage_short_msg.cc +++ b/src/messaging/message_storage_short_msg.cc @@ -225,24 +225,17 @@ void MessageStorageShortMsg::findFolders(FoldersCallbackData* callback) { } std::string content_type = getMsgServiceTypeString(); - std::string empty = ""; - std::shared_ptr folder; - - /* For SMS and MMS, folderId can be one of these values: - * - * INBOX = 1, - * OUTBOX = 2, - * DRAFTS = 3, - * SENTBOX = 4 - */ - - for (int i = 1; i < 5; i++) { + FolderPtr folder; + + auto filter = callback->getFilter(); + for (int i = MESSAGE_FOLDER_TYPE_INBOX; i < MESSAGE_FOLDER_TYPE_NOTSTANDARD; ++i) { folder = std::make_shared( - std::to_string(i), empty, std::to_string(m_id), content_type, - MessagingUtil::messageFolderTypeToString((MessageFolderType)i), empty, (MessageFolderType)i, + std::to_string(i), "", std::to_string(m_id), content_type, + MessagingUtil::messageFolderTypeToString(static_cast(i)), "", static_cast(i), false); - - callback->addFolder(folder); + if (filter->isMatching(folder.get())) { + callback->addFolder(folder); + } } guint id = g_idle_add(findFoldersCB, static_cast(callback)); -- 2.34.1