Merge "Changing incall ui label to the already translated "Phone"" into klp-dev
diff --git a/src/com/android/dialer/DialtactsActivity.java b/src/com/android/dialer/DialtactsActivity.java
index 7ba4997..398c90e 100644
--- a/src/com/android/dialer/DialtactsActivity.java
+++ b/src/com/android/dialer/DialtactsActivity.java
@@ -501,9 +501,7 @@
}
private void hideDialpadAndSearchUi() {
- if (getInSearchUi()) {
- exitSearchUi();
- }
+ mSearchView.setText(null);
hideDialpadFragment(false, true);
}
diff --git a/src/com/android/dialer/database/DialerDatabaseHelper.java b/src/com/android/dialer/database/DialerDatabaseHelper.java
index 2fa561f..e9d7735 100644
--- a/src/com/android/dialer/database/DialerDatabaseHelper.java
+++ b/src/com/android/dialer/database/DialerDatabaseHelper.java
@@ -71,7 +71,7 @@
* 0-98 KeyLimePie
* </pre>
*/
- public static final int DATABASE_VERSION = 3;
+ public static final int DATABASE_VERSION = 4;
public static final String DATABASE_NAME = "dialer.db";
/**
@@ -337,6 +337,11 @@
*/
@Override
public void onCreate(SQLiteDatabase db) {
+ setupTables(db);
+ }
+
+ private void setupTables(SQLiteDatabase db) {
+ dropTables(db);
db.execSQL("CREATE TABLE " + Tables.SMARTDIAL_TABLE + " (" +
SmartDialDbColumns._ID + " INTEGER PRIMARY KEY AUTOINCREMENT," +
SmartDialDbColumns.DATA_ID + " INTEGER, " +
@@ -369,6 +374,12 @@
resetSmartDialLastUpdatedTime();
}
+ public void dropTables(SQLiteDatabase db) {
+ db.execSQL("DROP TABLE IF EXISTS " + Tables.PREFIX_TABLE);
+ db.execSQL("DROP TABLE IF EXISTS " + Tables.SMARTDIAL_TABLE);
+ db.execSQL("DROP TABLE IF EXISTS " + Tables.PROPERTIES);
+ }
+
@Override
public void onUpgrade(SQLiteDatabase db, int oldNumber, int newNumber) {
// Disregard the old version and new versions provided by SQLiteOpenHelper, we will read
@@ -382,21 +393,11 @@
Log.e(TAG, "Malformed database version..recreating database");
}
- if (oldVersion < 2) {
- db.execSQL("DROP TABLE IF EXISTS " + Tables.PREFIX_TABLE);
- db.execSQL("DROP TABLE IF EXISTS " + Tables.SMARTDIAL_TABLE);
- onCreate(db);
+ if (oldVersion < 4) {
+ setupTables(db);
return;
}
- if (oldVersion < 3) {
- db.execSQL("CREATE TABLE " + Tables.PROPERTIES + " (" +
- PropertiesColumns.PROPERTY_KEY + " TEXT PRIMARY KEY, " +
- PropertiesColumns.PROPERTY_VALUE + " TEXT " +
- ");");
- oldVersion = 3;
- }
-
if (oldVersion != DATABASE_VERSION) {
throw new IllegalStateException(
"error upgrading the database to version " + DATABASE_VERSION);
@@ -447,7 +448,7 @@
}
public int getPropertyAsInt(SQLiteDatabase db, String key, int defaultValue) {
- final String stored = getProperty(db, DATABASE_VERSION_PROPERTY, "");
+ final String stored = getProperty(db, key, "");
try {
return Integer.parseInt(stored);
} catch (NumberFormatException e) {
diff --git a/src/com/android/dialer/list/PhoneFavoritesTileAdapter.java b/src/com/android/dialer/list/PhoneFavoritesTileAdapter.java
index 263794f..1c6ffde 100644
--- a/src/com/android/dialer/list/PhoneFavoritesTileAdapter.java
+++ b/src/com/android/dialer/list/PhoneFavoritesTileAdapter.java
@@ -121,6 +121,15 @@
private static final int PIN_LIMIT = 20;
+ /**
+ * The soft limit on how many contact tiles to show.
+ * NOTE This soft limit would not restrict the number of starred contacts to show, rather
+ * 1. If the count of starred contacts is less than this limit, show 20 tiles total.
+ * 2. If the count of starred contacts is more than or equal to this limit,
+ * show all starred tiles and no frequents.
+ */
+ private static final int TILES_SOFT_LIMIT = 20;
+
final Comparator<ContactEntry> mContactEntryComparator = new Comparator<ContactEntry>() {
@Override
public int compare(ContactEntry lhs, ContactEntry rhs) {
@@ -254,6 +263,9 @@
final Object dummy = new Object();
+ // Track the length of {@link #mContactEntries} and compare to {@link #TILES_SOFT_LIMIT}.
+ int counter = 0;
+
while (cursor.moveToNext()) {
final int starred = cursor.getInt(mStarredIndex);
@@ -261,6 +273,8 @@
if (starred > 0) {
id = cursor.getLong(mIdIndex);
+ } else if (counter >= TILES_SOFT_LIMIT) {
+ break;
} else {
// The contact id for frequent contacts is stored in the .contact_id field rather
// than the _id field
@@ -305,6 +319,8 @@
contact.pinned = pinned;
mContactEntries.add(contact);
+
+ counter++;
}
mAwaitingRemove = false;
diff --git a/src/com/android/dialer/list/SmartDialSearchFragment.java b/src/com/android/dialer/list/SmartDialSearchFragment.java
index e3882ca..a163f5d 100644
--- a/src/com/android/dialer/list/SmartDialSearchFragment.java
+++ b/src/com/android/dialer/list/SmartDialSearchFragment.java
@@ -48,10 +48,8 @@
public Loader<Cursor> onCreateLoader(int id, Bundle args) {
// Smart dialing does not support Directory Load, falls back to normal search instead.
if (id == getDirectoryLoaderId()) {
- Log.v(TAG, "Directory load");
return super.onCreateLoader(id, args);
} else {
- Log.v(TAG, "Creating loader");
final SmartDialNumberListAdapter adapter = (SmartDialNumberListAdapter) getAdapter();
SmartDialCursorLoader loader = new SmartDialCursorLoader(super.getContext());
adapter.configureLoader(loader);