Fixed problems of launching phone appcontrol and deleting inputfields.
authorDongseok Jang <dongseok.jang@samsung.com>
Fri, 5 Apr 2013 08:42:15 +0000 (17:42 +0900)
committerDongseok Jang <dongseok.jang@samsung.com>
Fri, 5 Apr 2013 08:42:15 +0000 (17:42 +0900)
Change-Id: Ibe35f43c8f2c97dce1374e3ee3679626432bc05b
Signed-off-by: Dongseok Jang <dongseok.jang@samsung.com>
src/CtContactDetailsForm.cpp
src/CtContactEditorForm.cpp
src/CtContactListPanel.cpp
src/CtContactSelectorForm.cpp
src/CtContactsApp.cpp
src/CtFavoriteListPanel.cpp
src/CtGroupContactListForm.cpp
src/CtSettingsForm.cpp

index 1595ca9..7abbb22 100644 (file)
@@ -136,7 +136,7 @@ static const wchar_t* INPUT_KEY_MESSAGE_TO = L"http://tizen.org/appcontrol/data/
 static const wchar_t* INPUT_KEY_SELECTION_MODE = L"http://tizen.org/appcontrol/data/selection_mode";
 static const wchar_t* INPUT_DATA_SELECTION_MODE_SINGLE = L"single";
 static const wchar_t* INPUT_MIME_TYPE_AUDIO = L"audio/*";
-static const wchar_t* INPUT_URI_TEL = L"tel";
+static const wchar_t* INPUT_URI_TEL = L"tel:";
 static const wchar_t* INPUT_TYPE_VIDEO = L"video";
 static const wchar_t* INPUT_TYPE_VOICE = L"voice";
 static const wchar_t* INPUT_TYPE_SMS = L"sms";
@@ -747,7 +747,14 @@ ContactDetailsForm::UpdateItem(int itemIndex, Tizen::Ui::Controls::TableViewItem
        }
        else if (contentItemIndex == DETAIL_PROPERTY_RINGTONE)
        {
-               value =  __pPresentationModel->GetValue(DETAIL_PROPERTY_RINGTONE);
+               String path =  __pPresentationModel->GetValue(DETAIL_PROPERTY_RINGTONE);
+               int index = 0;
+               path.LastIndexOf(L"/", path.GetLength() - 1, index);
+
+               if (index != 0)
+               {
+                       path.SubString(index + 1, value);
+               }
        }
 
        Label* pValueLabel = static_cast<Label*>(pItem->GetControl(2));
index 6cafed3..e5f20fd 100644 (file)
@@ -495,11 +495,6 @@ ContactEditorForm::OnActionPerformed(const Tizen::Ui::Control& source, int actio
                {
                        ChangeNameFieldStatus();
 
-                       if (__pCurrentFocusedItem != null)
-                       {
-                               SetFocus();
-                       }
-
                        __pTableView->UpdateTableView();
 
                        Rectangle clientBounds = GetClientAreaBounds();
@@ -1189,9 +1184,10 @@ ContactEditorForm::DeleteItem(int groupIndex, int itemIndex, Tizen::Ui::Controls
                if ((itemIndex == __pPhoneNumberFieldItem->GetCount()) && __isDefaultPhoneNumberButtonEnabled == true)
                {
                        delete pItem;
-               }
+                       pItem = null;
 
-               return true;
+                       return true;
+               }
        }
 
        if ((groupIndex > TABLE_VIEW_NAME_FIELD_INDEX && groupIndex < TABLE_VIEW_BIRTHDAY_FIELD_INDEX) || groupIndex == TABLE_VIEW_NOTE_FIELD_INDEX)
@@ -2039,16 +2035,14 @@ ContactEditorForm::DeleteInputField(int groupIndex, int itemIndex)
 
        TryReturn(pFieldList != null, E_FAILURE, "[E_FAILURE] Unable to delete the item.")
 
-       if (pFieldList->GetAt(itemIndex) == __pCurrentFocusedItem)
-       {
-               SetFocus();
-       }
-
        r = pFieldList->RemoveAt(itemIndex, false);
        __isDataRemoved = true;
        __pTableView->RefreshItem(groupIndex, itemIndex, TABLE_VIEW_REFRESH_TYPE_ITEM_REMOVE);
        __isDataRemoved = false;
 
+       Rectangle clientBounds = GetClientAreaBounds();
+       __pTableView->SetSize(clientBounds.width, clientBounds.height);
+
        for (int i = itemIndex; i < pFieldList->GetCount(); i++)
        {
                TableViewItem* pItem = static_cast<TableViewItem *>(pFieldList->GetAt(i));
@@ -2432,7 +2426,7 @@ ContactEditorForm::SaveContactData(bool isSaved)
                                invalidEmailMessage.Construct(L"", ResourceManager::GetString(L"IDS_PB_POP_INVALID_EMAIL_ADDRESS"), MSGBOX_STYLE_OK);
                                invalidEmailMessage.ShowAndWait(modalResult);
 
-                               pEditField->SetFocus();
+                               pEditField->ShowKeypad();
 
                                return E_FAILURE;
                        }
@@ -2782,12 +2776,12 @@ ContactEditorForm::OnTextValueChanged(const Tizen::Ui::Control& source)
        itemCount = __pTableView->GetItemCountAt(groupIndex);
        if (groupIndex == TABLE_VIEW_PHONE_NUMBER_FIELD_INDEX)
        {
-               if (itemCount == 1)
+               if (__isDefaultPhoneNumberButtonEnabled == false && __pPresentationModel->GetMultiValuesCount(DETAIL_PROPERTY_PHONE_NUMBER) > 1)
                {
                        __isDefaultPhoneNumberButtonEnabled = true;
                        __pTableView->RefreshItem(groupIndex, __pTableView->GetItemCountAt(groupIndex), TABLE_VIEW_REFRESH_TYPE_ITEM_ADD);
                }
-               else
+               else if (itemCount > 1)
                {
                        itemCount--;
                }
index daca992..414670d 100644 (file)
@@ -112,7 +112,7 @@ static const wchar_t* INPUT_KEY_MESSAGE_TO = L"http://tizen.org/appcontrol/data/
 static const wchar_t* INPUT_TYPE_VIDEO = L"video";
 static const wchar_t* INPUT_TYPE_VOICE = L"voice";
 static const wchar_t* INPUT_TYPE_SMS = L"sms";
-static const wchar_t* INPUT_URI_TEL = L"tel://";
+static const wchar_t* INPUT_URI_TEL = L"tel:";
 
 
 ContactListPanel::ContactListPanel(void)
index e05e60a..ed7c3b4 100644 (file)
@@ -550,7 +550,7 @@ ContactSelectorForm::UpdateBottomLabel(void)
        string.Append(selectedCount);
        string.Append(L")");
        __pBottomLabel->SetText(string);
-       __pBottomLabel->Invalidate(true);
+       __pBottomLabel->Invalidate(false);
 
        Footer* pFooter = GetFooter();
 
index 7ac87e6..6b1fce6 100644 (file)
@@ -476,15 +476,6 @@ ContactsApp::OnAppControlRequestReceived(RequestId reqId, const Tizen::Base::Str
        }
        else if (operationId.Equals(OPERATION_ID_VIEW, true))
        {
-               if (pMimeType == null || pMimeType->Equals(VIEW_MIME_TYPE_VCF, true) == false)
-               {
-                       AppLogDebug("To launch AppControl by the view operation, the mime type should be input.");
-                       AppControlProviderManager::GetInstance()->SendAppControlResult(reqId, APP_CTRL_RESULT_FAILED, null);
-                       Terminate();
-
-                       return;
-               }
-
                if (pUriData == null)
                {
                        AppLogDebug("To launch AppControl by the view operation, the uri data should be input.");
@@ -496,18 +487,33 @@ ContactsApp::OnAppControlRequestReceived(RequestId reqId, const Tizen::Base::Str
 
                String vcfPrefix(VIEW_URI_VCF_PREFIX);
                String path;
+               String mimeType;
 
-               if (pUriData->StartsWith(vcfPrefix, 0) == false)
+               if (pMimeType != null)
                {
-                       AppLogDebug("To launch AppControl by the view operation, the uri data should be input.");
+                       mimeType.Append(*pMimeType);
+               }
+
+               if (pUriData->StartsWith(vcfPrefix, 0))
+               {
+                       pUriData->SubString(vcfPrefix.GetLength() - 1, pUriData->GetLength() - vcfPrefix.GetLength() + 1, path);
+                       mimeType.Clear();
+                       mimeType.Append(VIEW_MIME_TYPE_VCF);
+               }
+               else
+               {
+                       path.Append(*pUriData);
+               }
+
+               if (mimeType.Equals(VIEW_MIME_TYPE_VCF, true) == false)
+               {
+                       AppLogDebug("The MIME type is wrong.");
                        AppControlProviderManager::GetInstance()->SendAppControlResult(reqId, APP_CTRL_RESULT_FAILED, null);
                        Terminate();
 
                        return;
                }
 
-               pUriData->SubString(vcfPrefix.GetLength() - 1, pUriData->GetLength() - vcfPrefix.GetLength() + 1, path);
-
                if (File::IsFileExist(path) == false)
                {
                        AppLogDebug("The vcf file is not existed.");
index 7d940cc..fec68ad 100644 (file)
@@ -95,7 +95,7 @@ static const wchar_t* INPUT_KEY_MESSAGE_TO = L"http://tizen.org/appcontrol/data/
 static const wchar_t* INPUT_TYPE_VIDEO = L"video";
 static const wchar_t* INPUT_TYPE_VOICE = L"voice";
 static const wchar_t* INPUT_TYPE_SMS = L"sms";
-static const wchar_t* INPUT_URI_TEL = L"tel://";
+static const wchar_t* INPUT_URI_TEL = L"tel:";
 
 FavoriteListPanel::FavoriteListPanel(void)
 : __scrolledDistance(0)
index b7b46fc..392d283 100644 (file)
@@ -99,7 +99,7 @@ static const wchar_t* INPUT_KEY_MESSAGE_TO = L"http://tizen.org/appcontrol/data/
 static const wchar_t* INPUT_TYPE_VIDEO = L"video";
 static const wchar_t* INPUT_TYPE_VOICE = L"voice";
 static const wchar_t* INPUT_TYPE_SMS = L"sms";
-static const wchar_t* INPUT_URI_TEL = L"tel://";
+static const wchar_t* INPUT_URI_TEL = L"tel:";
 
 GroupContactListForm::GroupContactListForm(void)
  : __pAppControl(null)
index 03f99a4..05f9993 100644 (file)
@@ -262,6 +262,8 @@ SettingsForm::GetDefaultItemHeight(void)
 void
 SettingsForm::OnTableViewItemStateChanged(Tizen::Ui::Controls::TableView& tableView, int itemIndex, Tizen::Ui::Controls::TableViewItem* pItem, Tizen::Ui::Controls::TableViewItemStatus status)
 {
+       result r = E_SUCCESS;
+
        if (itemIndex == 0)
        {
                __isExpanded ? __isExpanded = false : __isExpanded = true;
@@ -280,12 +282,12 @@ SettingsForm::OnTableViewItemStateChanged(Tizen::Ui::Controls::TableView& tableV
        else if (itemIndex == INDEX_FIRST_NAME)
        {
                __isFirstNameFirst = true;
-               SettingInfo::SetValue(SETTING_KEY_FIRST_NAME, true);
+               r = SettingInfo::SetValue(SETTING_KEY_FIRST_NAME, true);
        }
        else if (itemIndex == INDEX_LAST_NAME)
        {
                __isFirstNameFirst = false;
-               SettingInfo::SetValue(SETTING_KEY_FIRST_NAME, false);
+               r = SettingInfo::SetValue(SETTING_KEY_FIRST_NAME, false);
        }
 
        __pTableView->RefreshItem(0, TABLE_VIEW_REFRESH_TYPE_ITEM_MODIFY);