diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2016-03-17 18:40:33 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2016-03-17 18:40:33 +0000 |
commit | 1bc8fc3de2113b7be9df304309a42276d642a8c4 (patch) | |
tree | a9d6a8d1e292a25bc58c49584d6cd0cabdf46c1d | |
parent | c5b31965d9bcb4c9899e2d1c45b5c95c70bac9f2 (diff) | |
parent | bf67f3b1847c435bbaf19600ec7babbb9d4c7674 (diff) | |
download | android_packages_apps_Trebuchet-1bc8fc3de2113b7be9df304309a42276d642a8c4.tar.gz android_packages_apps_Trebuchet-1bc8fc3de2113b7be9df304309a42276d642a8c4.tar.bz2 android_packages_apps_Trebuchet-1bc8fc3de2113b7be9df304309a42276d642a8c4.zip |
Merge "Creating database without localized collators on NYC and above" into ub-launcher3-calgary
-rw-r--r-- | src/com/android/launcher3/LauncherProvider.java | 6 | ||||
-rw-r--r-- | src/com/android/launcher3/util/NoLocaleSqliteContext.java | 27 | ||||
-rw-r--r-- | src/com/android/launcher3/util/SQLiteCacheHelper.java | 2 |
3 files changed, 32 insertions, 3 deletions
diff --git a/src/com/android/launcher3/LauncherProvider.java b/src/com/android/launcher3/LauncherProvider.java index 792605fc9..47ceb8c6e 100644 --- a/src/com/android/launcher3/LauncherProvider.java +++ b/src/com/android/launcher3/LauncherProvider.java @@ -54,6 +54,7 @@ import com.android.launcher3.compat.UserHandleCompat; import com.android.launcher3.compat.UserManagerCompat; import com.android.launcher3.config.ProviderConfig; import com.android.launcher3.util.ManagedProfileHeuristic; +import com.android.launcher3.util.NoLocaleSqliteContext; import com.android.launcher3.util.Thunk; import java.net.URISyntaxException; @@ -526,7 +527,8 @@ public class LauncherProvider extends ContentProvider { private long mMaxScreenId = -1; DatabaseHelper(Context context, LauncherProvider provider) { - super(context, LauncherFiles.LAUNCHER_DB, null, DATABASE_VERSION); + super(new NoLocaleSqliteContext(context), LauncherFiles.LAUNCHER_DB, + null, DATABASE_VERSION); mContext = context; mProvider = provider; @@ -556,7 +558,7 @@ public class LauncherProvider extends ContentProvider { * Constructor used only in tests. */ public DatabaseHelper(Context context, LauncherProvider provider, String tableName) { - super(context, tableName, null, DATABASE_VERSION); + super(new NoLocaleSqliteContext(context), tableName, null, DATABASE_VERSION); mContext = context; mProvider = provider; diff --git a/src/com/android/launcher3/util/NoLocaleSqliteContext.java b/src/com/android/launcher3/util/NoLocaleSqliteContext.java new file mode 100644 index 000000000..3b258e4a5 --- /dev/null +++ b/src/com/android/launcher3/util/NoLocaleSqliteContext.java @@ -0,0 +1,27 @@ +package com.android.launcher3.util; + +import android.content.Context; +import android.content.ContextWrapper; +import android.database.DatabaseErrorHandler; +import android.database.sqlite.SQLiteDatabase; +import android.database.sqlite.SQLiteDatabase.CursorFactory; + +/** + * A context wrapper which creates databases without support for localized collators. + */ +public class NoLocaleSqliteContext extends ContextWrapper { + + // TODO: Use the flag defined in Context when the new SDK is available + private static final int MODE_NO_LOCALIZED_COLLATORS = 0x0010; + + public NoLocaleSqliteContext(Context context) { + super(context); + } + + @Override + public SQLiteDatabase openOrCreateDatabase( + String name, int mode, CursorFactory factory, DatabaseErrorHandler errorHandler) { + return super.openOrCreateDatabase( + name, mode | MODE_NO_LOCALIZED_COLLATORS, factory, errorHandler); + } +} diff --git a/src/com/android/launcher3/util/SQLiteCacheHelper.java b/src/com/android/launcher3/util/SQLiteCacheHelper.java index 62a30d0d4..c455791b3 100644 --- a/src/com/android/launcher3/util/SQLiteCacheHelper.java +++ b/src/com/android/launcher3/util/SQLiteCacheHelper.java @@ -98,7 +98,7 @@ public abstract class SQLiteCacheHelper { private class MySQLiteOpenHelper extends SQLiteOpenHelper { public MySQLiteOpenHelper(Context context, String name, int version) { - super(context, name, null, version); + super(new NoLocaleSqliteContext(context), name, null, version); } @Override |