aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2014-03-20 09:52:01 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-03-20 09:52:02 +0000
commit0c268b08b69e9f4f730dc145bb86522ca2964a52 (patch)
treee02ca2a5faf535c168f200eb8a00c3256ffea160
parentd6517e7cf5bfa9d3f2c311924a3afb6e7f21b96f (diff)
parent6007a1b7a91437a211bf53dee248b78d95636bdb (diff)
downloadlatinime-0c268b08b69e9f4f730dc145bb86522ca2964a52.tar.gz
latinime-0c268b08b69e9f4f730dc145bb86522ca2964a52.tar.xz
latinime-0c268b08b69e9f4f730dc145bb86522ca2964a52.zip
Merge "Refactor KeyboardTextsSet class"
-rw-r--r--java/src/com/android/inputmethod/keyboard/internal/KeyboardTextsSet.java14
-rw-r--r--tests/src/com/android/inputmethod/keyboard/internal/MoreKeySpecSplitTests.java5
2 files changed, 12 insertions, 7 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/internal/KeyboardTextsSet.java b/java/src/com/android/inputmethod/keyboard/internal/KeyboardTextsSet.java
index 976038c10..bdc36ed45 100644
--- a/java/src/com/android/inputmethod/keyboard/internal/KeyboardTextsSet.java
+++ b/java/src/com/android/inputmethod/keyboard/internal/KeyboardTextsSet.java
@@ -43,18 +43,19 @@ public final class KeyboardTextsSet {
mTextsTable = KeyboardTextsTable.getTextsTable(language);
}
+ // TODO: Consolidate this method with {@link #setLocale(Locale)}.
public void loadStringResources(final Context context) {
+ final Resources res = context.getResources();
final int referenceId = context.getApplicationInfo().labelRes;
- loadStringResourcesInternal(context, RESOURCE_NAMES, referenceId);
+ final String resourcePackageName = res.getResourcePackageName(referenceId);
+ loadStringResourcesInternal(res, RESOURCE_NAMES, resourcePackageName);
}
@UsedForTesting
- void loadStringResourcesInternal(final Context context, final String[] resourceNames,
- final int referenceId) {
- final Resources res = context.getResources();
- final String packageName = res.getResourcePackageName(referenceId);
+ void loadStringResourcesInternal(final Resources res, final String[] resourceNames,
+ final String resourcePackageName) {
for (final String resName : resourceNames) {
- final int resId = res.getIdentifier(resName, "string", packageName);
+ final int resId = res.getIdentifier(resName, "string", resourcePackageName);
mResourceNameToTextsMap.put(resName, res.getString(resId));
}
}
@@ -77,6 +78,7 @@ public final class KeyboardTextsSet {
return size;
}
+ // TODO: Resolve text reference when creating {@link KeyboardTextsTable} class.
public String resolveTextReference(final String rawText) {
if (TextUtils.isEmpty(rawText)) {
return null;
diff --git a/tests/src/com/android/inputmethod/keyboard/internal/MoreKeySpecSplitTests.java b/tests/src/com/android/inputmethod/keyboard/internal/MoreKeySpecSplitTests.java
index 42a94f420..d01c2ec79 100644
--- a/tests/src/com/android/inputmethod/keyboard/internal/MoreKeySpecSplitTests.java
+++ b/tests/src/com/android/inputmethod/keyboard/internal/MoreKeySpecSplitTests.java
@@ -51,10 +51,13 @@ public class MoreKeySpecSplitTests extends InstrumentationTestCase {
}.runInLocale(targetContext.getResources(), TEST_LOCALE);
final String[] testResourceNames = getAllResourceIdNames(
com.android.inputmethod.latin.tests.R.string.class);
- mTextsSet.loadStringResourcesInternal(instrumentation.getContext(), testResourceNames,
+ final Context testContext = instrumentation.getContext();
+ final Resources testRes = testContext.getResources();
+ final String testResPackageName = testRes.getResourcePackageName(
// This dummy raw resource is needed to be able to load string resources from a test
// APK successfully.
com.android.inputmethod.latin.tests.R.raw.dummy_resource_for_testing);
+ mTextsSet.loadStringResourcesInternal(testRes, testResourceNames, testResPackageName);
}
private static String[] getAllResourceIdNames(final Class<?> resourceIdClass) {