Merge "Import translations. DO NOT MERGE"
diff --git a/res/menu/dialpad_options.xml b/res/menu/dialpad_options.xml
index 6f0b5dd..c1f2515 100644
--- a/res/menu/dialpad_options.xml
+++ b/res/menu/dialpad_options.xml
@@ -19,6 +19,10 @@
android:title="@string/add_contact"
android:showAsAction="withText" />
<item
+ android:id="@+id/menu_select_sim"
+ android:title="@string/menu_select_sim"
+ android:showAsAction="withText" />
+ <item
android:id="@+id/menu_2s_pause"
android:title="@string/add_2sec_pause"
android:showAsAction="withText" />
@@ -26,7 +30,8 @@
android:id="@+id/menu_add_wait"
android:title="@string/add_wait"
android:showAsAction="withText" />
- <item android:id="@+id/menu_send_message"
+ <item
+ android:id="@+id/menu_send_message"
android:title="@string/menu_sendTextMessage"
android:showAsAction="withText" />
</menu>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 18f0694..86604ed 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -93,7 +93,6 @@
<!-- Margin below the search box. -->
<dimen name="search_bottom_margin">8dp</dimen>
<dimen name="search_collapsed_text_size">14sp</dimen>
- <dimen name="search_expanded_text_size">20sp</dimen>
<!-- Search box interior padding - left -->
<dimen name="search_box_left_padding">8dp</dimen>
<!-- Search box interior padding - right -->
diff --git a/src/com/android/dialer/DialerApplication.java b/src/com/android/dialer/DialerApplication.java
index 39a1ac7..e788144 100644
--- a/src/com/android/dialer/DialerApplication.java
+++ b/src/com/android/dialer/DialerApplication.java
@@ -1,16 +1,47 @@
-// Copyright 2013 Google Inc. All Rights Reserved.
+/*
+ * Copyright (C) 2013 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
package com.android.dialer;
import android.app.Application;
+import com.android.contacts.common.ContactPhotoManager;
import com.android.contacts.common.extensions.ExtensionsFactory;
public class DialerApplication extends Application {
+ private ContactPhotoManager mContactPhotoManager;
+
@Override
public void onCreate() {
super.onCreate();
ExtensionsFactory.init(getApplicationContext());
}
+
+ @Override
+ public Object getSystemService(String name) {
+ if (ContactPhotoManager.CONTACT_PHOTO_SERVICE.equals(name)) {
+ if (mContactPhotoManager == null) {
+ mContactPhotoManager = ContactPhotoManager.createContactPhotoManager(this);
+ registerComponentCallbacks(mContactPhotoManager);
+ mContactPhotoManager.preloadPhotosInBackground();
+ }
+ return mContactPhotoManager;
+ }
+
+ return super.getSystemService(name);
+ }
}
diff --git a/src/com/android/dialer/DialtactsActivity.java b/src/com/android/dialer/DialtactsActivity.java
index f5a2d3e..d48b28e 100644
--- a/src/com/android/dialer/DialtactsActivity.java
+++ b/src/com/android/dialer/DialtactsActivity.java
@@ -59,7 +59,6 @@
import android.widget.FrameLayout;
import android.widget.ImageButton;
import android.widget.PopupMenu;
-import android.widget.RelativeLayout;
import android.widget.Toast;
import com.android.contacts.common.CallUtil;
@@ -69,7 +68,6 @@
import com.android.contacts.common.dialog.SelectSIMDialogFragment;
import com.android.contacts.common.interactions.ImportExportDialogFragment;
import com.android.contacts.common.list.OnPhoneNumberPickerActionListener;
-import com.android.contacts.common.util.ViewUtil;
import com.android.contacts.common.widget.FloatingActionButtonController;
import com.android.dialer.calllog.CallLogActivity;
import com.android.dialer.database.DialerDatabaseHelper;
@@ -609,6 +607,9 @@
@Override
public void passSimUpdate(int simId) {
mCurrentSimCard = simId;
+ if (mIsDialpadShown) {
+ mDialpadFragment.setSimCard(simId);
+ }
}
@Override
@@ -641,6 +642,7 @@
}
mIsDialpadShown = true;
mDialpadFragment.setAnimate(animate);
+ mDialpadFragment.setSimCard(mCurrentSimCard);
final FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.show(mDialpadFragment);
@@ -960,7 +962,9 @@
@Override
public void onBackPressed() {
if (mIsDialpadShown) {
- if (TextUtils.isEmpty(mSearchQuery)) {
+ if (TextUtils.isEmpty(mSearchQuery) ||
+ (mSmartDialSearchFragment != null && mSmartDialSearchFragment.isVisible()
+ && mSmartDialSearchFragment.getAdapter().getCount() == 0)) {
exitSearchUi();
}
hideDialpadFragment(true, false);
diff --git a/src/com/android/dialer/dialpad/DialpadFragment.java b/src/com/android/dialer/dialpad/DialpadFragment.java
index 134c2a7..bb58802 100644
--- a/src/com/android/dialer/dialpad/DialpadFragment.java
+++ b/src/com/android/dialer/dialpad/DialpadFragment.java
@@ -71,6 +71,7 @@
import com.android.contacts.common.CallUtil;
import com.android.contacts.common.GeoUtil;
+import com.android.contacts.common.dialog.SelectSIMDialogFragment;
import com.android.contacts.common.dialpad.DialpadKeyButton;
import com.android.contacts.common.dialpad.DialpadView;
import com.android.contacts.common.util.PhoneNumberFormatter;
@@ -99,6 +100,16 @@
private static final String TAG = DialpadFragment.class.getSimpleName();
/**
+ * Constant to indicate there is only a single service provider available
+ */
+ private static final int NO_MULTI_SIM = -1;
+
+ /**
+ * Information about the currently selected SIM card.
+ */
+ private int mCurrentSimCard = NO_MULTI_SIM;
+
+ /**
* This interface allows the DialpadFragment to tell its hosting Activity when and when not
* to display the "dial" button. While this is logically part of the DialpadFragment, the
* need to have a particular kind of slick animation puts the "dial" button in the parent.
@@ -850,7 +861,9 @@
@Override
public void show() {
final Menu menu = getMenu();
+ final MenuItem selectSim = menu.findItem(R.id.menu_select_sim);
final MenuItem sendMessage = menu.findItem(R.id.menu_send_message);
+ selectSim.setVisible(mCurrentSimCard != NO_MULTI_SIM);
sendMessage.setVisible(mSmsPackageComponentName != null);
boolean enable = !isDigitsEmpty();
@@ -1435,6 +1448,10 @@
smsIntent.setComponent(mSmsPackageComponentName);
DialerUtils.startActivityWithErrorToast(getActivity(), smsIntent);
}
+ case R.id.menu_select_sim:
+ SelectSIMDialogFragment.show(getFragmentManager(), mCurrentSimCard);
+ return true;
+
default:
return false;
}
@@ -1604,6 +1621,10 @@
return mAnimate;
}
+ public void setSimCard(int simId) {
+ mCurrentSimCard = simId;
+ }
+
public void setYFraction(float yFraction) {
((DialpadSlidingLinearLayout) getView()).setYFraction(yFraction);
}