Merge "More multi-user stuff." into jb-mr1-dev
diff --git a/api/17.txt b/api/17.txt
index d002449..cab0cf5 100644
--- a/api/17.txt
+++ b/api/17.txt
@@ -18415,10 +18415,10 @@
field public static final java.lang.String USE_GOOGLE_MAIL = "use_google_mail";
field public static final java.lang.String WIFI_MAX_DHCP_RETRY_COUNT = "wifi_max_dhcp_retry_count";
field public static final java.lang.String WIFI_MOBILE_DATA_TRANSITION_WAKELOCK_TIMEOUT_MS = "wifi_mobile_data_transition_wakelock_timeout_ms";
- field public static final java.lang.String WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON = "wifi_networks_available_notification_on";
- field public static final java.lang.String WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY = "wifi_networks_available_repeat_delay";
- field public static final java.lang.String WIFI_NUM_OPEN_NETWORKS_KEPT = "wifi_num_open_networks_kept";
- field public static final java.lang.String WIFI_ON = "wifi_on";
+ field public static final deprecated java.lang.String WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON = "wifi_networks_available_notification_on";
+ field public static final deprecated java.lang.String WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY = "wifi_networks_available_repeat_delay";
+ field public static final deprecated java.lang.String WIFI_NUM_OPEN_NETWORKS_KEPT = "wifi_num_open_networks_kept";
+ field public static final deprecated java.lang.String WIFI_ON = "wifi_on";
field public static final deprecated java.lang.String WIFI_WATCHDOG_ACCEPTABLE_PACKET_LOSS_PERCENTAGE = "wifi_watchdog_acceptable_packet_loss_percentage";
field public static final deprecated java.lang.String WIFI_WATCHDOG_AP_COUNT = "wifi_watchdog_ap_count";
field public static final deprecated java.lang.String WIFI_WATCHDOG_BACKGROUND_CHECK_DELAY_MS = "wifi_watchdog_background_check_delay_ms";
@@ -26107,35 +26107,6 @@
package android.webkit {
- public final deprecated class CacheManager {
- ctor public CacheManager();
- method public static deprecated boolean cacheDisabled();
- method public static deprecated boolean endCacheTransaction();
- method public static deprecated android.webkit.CacheManager.CacheResult getCacheFile(java.lang.String, java.util.Map<java.lang.String, java.lang.String>);
- method public static deprecated java.io.File getCacheFileBaseDir();
- method public static deprecated void saveCacheFile(java.lang.String, android.webkit.CacheManager.CacheResult);
- method public static deprecated boolean startCacheTransaction();
- }
-
- public static deprecated class CacheManager.CacheResult {
- ctor public CacheManager.CacheResult();
- method public java.lang.String getContentDisposition();
- method public long getContentLength();
- method public java.lang.String getETag();
- method public java.lang.String getEncoding();
- method public long getExpires();
- method public java.lang.String getExpiresString();
- method public int getHttpStatusCode();
- method public java.io.InputStream getInputStream();
- method public java.lang.String getLastModified();
- method public java.lang.String getLocalPath();
- method public java.lang.String getLocation();
- method public java.lang.String getMimeType();
- method public java.io.OutputStream getOutputStream();
- method public void setEncoding(java.lang.String);
- method public void setInputStream(java.io.InputStream);
- }
-
public class ConsoleMessage {
ctor public ConsoleMessage(java.lang.String, java.lang.String, int, android.webkit.ConsoleMessage.MessageLevel);
method public int lineNumber();
@@ -26298,7 +26269,6 @@
public class WebHistoryItem implements java.lang.Cloneable {
method public android.graphics.Bitmap getFavicon();
- method public deprecated int getId();
method public java.lang.String getOriginalUrl();
method public java.lang.String getTitle();
method public java.lang.String getUrl();
@@ -26357,7 +26327,6 @@
method public synchronized boolean getLoadsImagesAutomatically();
method public synchronized int getMinimumFontSize();
method public synchronized int getMinimumLogicalFontSize();
- method public deprecated boolean getNavDump();
method public synchronized android.webkit.WebSettings.PluginState getPluginState();
method public deprecated synchronized boolean getPluginsEnabled();
method public deprecated synchronized java.lang.String getPluginsPath();
@@ -26368,10 +26337,7 @@
method public synchronized java.lang.String getStandardFontFamily();
method public deprecated synchronized android.webkit.WebSettings.TextSize getTextSize();
method public synchronized int getTextZoom();
- method public deprecated synchronized boolean getUseDoubleTree();
- method public deprecated boolean getUseWebViewBackgroundForOverscrollBackground();
method public synchronized boolean getUseWideViewPort();
- method public deprecated synchronized int getUserAgent();
method public synchronized java.lang.String getUserAgentString();
method public void setAllowContentAccess(boolean);
method public void setAllowFileAccess(boolean);
@@ -26406,7 +26372,6 @@
method public synchronized void setLoadsImagesAutomatically(boolean);
method public synchronized void setMinimumFontSize(int);
method public synchronized void setMinimumLogicalFontSize(int);
- method public deprecated void setNavDump(boolean);
method public void setNeedInitialFocus(boolean);
method public synchronized void setPluginState(android.webkit.WebSettings.PluginState);
method public deprecated synchronized void setPluginsEnabled(boolean);
@@ -26421,10 +26386,7 @@
method public void setSupportZoom(boolean);
method public deprecated synchronized void setTextSize(android.webkit.WebSettings.TextSize);
method public synchronized void setTextZoom(int);
- method public deprecated synchronized void setUseDoubleTree(boolean);
- method public deprecated void setUseWebViewBackgroundForOverscrollBackground(boolean);
method public synchronized void setUseWideViewPort(boolean);
- method public deprecated synchronized void setUserAgent(int);
method public synchronized void setUserAgentString(java.lang.String);
method public synchronized boolean supportMultipleWindows();
method public boolean supportZoom();
@@ -26529,12 +26491,8 @@
method public void clearSslPreferences();
method public void clearView();
method public android.webkit.WebBackForwardList copyBackForwardList();
- method public deprecated void debugDump();
method public void destroy();
- method public static deprecated void disablePlatformNotifications();
method public void documentHasImages(android.os.Message);
- method public deprecated void emulateShiftHeld();
- method public static deprecated void enablePlatformNotifications();
method public static java.lang.String findAddress(java.lang.String);
method public deprecated int findAll(java.lang.String);
method public void findAllAsync(java.lang.String);
@@ -26552,7 +26510,6 @@
method public android.webkit.WebSettings getSettings();
method public java.lang.String getTitle();
method public java.lang.String getUrl();
- method public deprecated int getVisibleTitleHeight();
method public void goBack();
method public void goBackOrForward(int);
method public void goForward();
@@ -26577,11 +26534,9 @@
method public void removeJavascriptInterface(java.lang.String);
method public void requestFocusNodeHref(android.os.Message);
method public void requestImageRef(android.os.Message);
- method public deprecated boolean restorePicture(android.os.Bundle, java.io.File);
method public android.webkit.WebBackForwardList restoreState(android.os.Bundle);
method public void resumeTimers();
method public void savePassword(java.lang.String, java.lang.String, java.lang.String);
- method public deprecated boolean savePicture(android.os.Bundle, java.io.File);
method public android.webkit.WebBackForwardList saveState(android.os.Bundle);
method public void saveWebArchive(java.lang.String);
method public void saveWebArchive(java.lang.String, boolean, android.webkit.ValueCallback<java.lang.String>);
@@ -26593,7 +26548,6 @@
method public void setInitialScale(int);
method public void setMapTrackballToArrowKeys(boolean);
method public void setNetworkAvailable(boolean);
- method public deprecated void setPictureListener(android.webkit.WebView.PictureListener);
method public void setVerticalScrollbarOverlay(boolean);
method public void setWebChromeClient(android.webkit.WebChromeClient);
method public void setWebViewClient(android.webkit.WebViewClient);
@@ -26677,7 +26631,6 @@
method public boolean hasFormData();
method public boolean hasHttpAuthUsernamePassword();
method public boolean hasUsernamePassword();
- field protected static final java.lang.String LOGTAG = "webviewdatabase";
}
public class WebViewFragment extends android.app.Fragment {
diff --git a/api/current.txt b/api/current.txt
index 9734532..bd03fac 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -18884,10 +18884,10 @@
field public static final deprecated java.lang.String USE_GOOGLE_MAIL = "use_google_mail";
field public static final deprecated java.lang.String WIFI_MAX_DHCP_RETRY_COUNT = "wifi_max_dhcp_retry_count";
field public static final java.lang.String WIFI_MOBILE_DATA_TRANSITION_WAKELOCK_TIMEOUT_MS = "wifi_mobile_data_transition_wakelock_timeout_ms";
- field public static final java.lang.String WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON = "wifi_networks_available_notification_on";
- field public static final java.lang.String WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY = "wifi_networks_available_repeat_delay";
- field public static final java.lang.String WIFI_NUM_OPEN_NETWORKS_KEPT = "wifi_num_open_networks_kept";
- field public static final java.lang.String WIFI_ON = "wifi_on";
+ field public static final deprecated java.lang.String WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON = "wifi_networks_available_notification_on";
+ field public static final deprecated java.lang.String WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY = "wifi_networks_available_repeat_delay";
+ field public static final deprecated java.lang.String WIFI_NUM_OPEN_NETWORKS_KEPT = "wifi_num_open_networks_kept";
+ field public static final deprecated java.lang.String WIFI_ON = "wifi_on";
field public static final deprecated java.lang.String WIFI_WATCHDOG_ACCEPTABLE_PACKET_LOSS_PERCENTAGE = "wifi_watchdog_acceptable_packet_loss_percentage";
field public static final deprecated java.lang.String WIFI_WATCHDOG_AP_COUNT = "wifi_watchdog_ap_count";
field public static final deprecated java.lang.String WIFI_WATCHDOG_BACKGROUND_CHECK_DELAY_MS = "wifi_watchdog_background_check_delay_ms";
@@ -20192,10 +20192,6 @@
package android.security {
- public class AndroidKeyPairGeneratorSpec implements java.security.spec.AlgorithmParameterSpec {
- ctor public AndroidKeyPairGeneratorSpec(android.content.Context, java.lang.String, javax.security.auth.x500.X500Principal, java.math.BigInteger, java.util.Date, java.util.Date);
- }
-
public final class KeyChain {
ctor public KeyChain();
method public static void choosePrivateKeyAlias(android.app.Activity, android.security.KeyChainAliasCallback, java.lang.String[], java.security.Principal[], java.lang.String, int, java.lang.String);
@@ -22209,9 +22205,9 @@
method public static java.lang.String formatElapsedTime(long);
method public static java.lang.String formatElapsedTime(java.lang.StringBuilder, long);
method public static final java.lang.CharSequence formatSameDayTime(long, long, int, int);
- method public static java.lang.String getAMPMString(int);
- method public static java.lang.String getDayOfWeekString(int, int);
- method public static java.lang.String getMonthString(int, int);
+ method public static deprecated java.lang.String getAMPMString(int);
+ method public static deprecated java.lang.String getDayOfWeekString(int, int);
+ method public static deprecated java.lang.String getMonthString(int, int);
method public static java.lang.CharSequence getRelativeDateTimeString(android.content.Context, long, long, long, int);
method public static java.lang.CharSequence getRelativeTimeSpanString(long);
method public static java.lang.CharSequence getRelativeTimeSpanString(long, long, long);
@@ -22219,24 +22215,24 @@
method public static java.lang.CharSequence getRelativeTimeSpanString(android.content.Context, long, boolean);
method public static java.lang.CharSequence getRelativeTimeSpanString(android.content.Context, long);
method public static boolean isToday(long);
- field public static final java.lang.String ABBREV_MONTH_FORMAT = "%b";
+ field public static final deprecated java.lang.String ABBREV_MONTH_FORMAT = "%b";
field public static final java.lang.String ABBREV_WEEKDAY_FORMAT = "%a";
field public static final long DAY_IN_MILLIS = 86400000L; // 0x5265c00L
- field public static final int FORMAT_12HOUR = 64; // 0x40
- field public static final int FORMAT_24HOUR = 128; // 0x80
+ field public static final deprecated int FORMAT_12HOUR = 64; // 0x40
+ field public static final deprecated int FORMAT_24HOUR = 128; // 0x80
field public static final int FORMAT_ABBREV_ALL = 524288; // 0x80000
field public static final int FORMAT_ABBREV_MONTH = 65536; // 0x10000
field public static final int FORMAT_ABBREV_RELATIVE = 262144; // 0x40000
field public static final int FORMAT_ABBREV_TIME = 16384; // 0x4000
field public static final int FORMAT_ABBREV_WEEKDAY = 32768; // 0x8000
- field public static final int FORMAT_CAP_AMPM = 256; // 0x100
- field public static final int FORMAT_CAP_MIDNIGHT = 4096; // 0x1000
- field public static final int FORMAT_CAP_NOON = 1024; // 0x400
- field public static final int FORMAT_CAP_NOON_MIDNIGHT = 5120; // 0x1400
+ field public static final deprecated int FORMAT_CAP_AMPM = 256; // 0x100
+ field public static final deprecated int FORMAT_CAP_MIDNIGHT = 4096; // 0x1000
+ field public static final deprecated int FORMAT_CAP_NOON = 1024; // 0x400
+ field public static final deprecated int FORMAT_CAP_NOON_MIDNIGHT = 5120; // 0x1400
field public static final int FORMAT_NO_MIDNIGHT = 2048; // 0x800
field public static final int FORMAT_NO_MONTH_DAY = 32; // 0x20
field public static final int FORMAT_NO_NOON = 512; // 0x200
- field public static final int FORMAT_NO_NOON_MIDNIGHT = 2560; // 0xa00
+ field public static final deprecated int FORMAT_NO_NOON_MIDNIGHT = 2560; // 0xa00
field public static final int FORMAT_NO_YEAR = 8; // 0x8
field public static final int FORMAT_NUMERIC_DATE = 131072; // 0x20000
field public static final int FORMAT_SHOW_DATE = 16; // 0x10
@@ -22245,12 +22241,12 @@
field public static final int FORMAT_SHOW_YEAR = 4; // 0x4
field public static final deprecated int FORMAT_UTC = 8192; // 0x2000
field public static final long HOUR_IN_MILLIS = 3600000L; // 0x36ee80L
- field public static final java.lang.String HOUR_MINUTE_24 = "%H:%M";
- field public static final int LENGTH_LONG = 10; // 0xa
- field public static final int LENGTH_MEDIUM = 20; // 0x14
- field public static final int LENGTH_SHORT = 30; // 0x1e
- field public static final int LENGTH_SHORTER = 40; // 0x28
- field public static final int LENGTH_SHORTEST = 50; // 0x32
+ field public static final deprecated java.lang.String HOUR_MINUTE_24 = "%H:%M";
+ field public static final deprecated int LENGTH_LONG = 10; // 0xa
+ field public static final deprecated int LENGTH_MEDIUM = 20; // 0x14
+ field public static final deprecated int LENGTH_SHORT = 30; // 0x1e
+ field public static final deprecated int LENGTH_SHORTER = 40; // 0x28
+ field public static final deprecated int LENGTH_SHORTEST = 50; // 0x32
field public static final long MINUTE_IN_MILLIS = 60000L; // 0xea60L
field public static final java.lang.String MONTH_DAY_FORMAT = "%-d";
field public static final java.lang.String MONTH_FORMAT = "%B";
@@ -22261,8 +22257,8 @@
field public static final java.lang.String YEAR_FORMAT = "%Y";
field public static final java.lang.String YEAR_FORMAT_TWO_DIGITS = "%g";
field public static final long YEAR_IN_MILLIS = 31449600000L; // 0x7528ad000L
- field public static final int[] sameMonthTable;
- field public static final int[] sameYearTable;
+ field public static final deprecated int[] sameMonthTable;
+ field public static final deprecated int[] sameYearTable;
}
public final class Formatter {
@@ -26058,9 +26054,13 @@
field public static final deprecated int MAX_TEXT_LENGTH = 500; // 0x1f4
field public static final int TYPES_ALL_MASK = -1; // 0xffffffff
field public static final int TYPE_ANNOUNCEMENT = 16384; // 0x4000
+ field public static final int TYPE_GESTURE_DETECTION_END = 524288; // 0x80000
+ field public static final int TYPE_GESTURE_DETECTION_START = 262144; // 0x40000
field public static final int TYPE_NOTIFICATION_STATE_CHANGED = 64; // 0x40
field public static final int TYPE_TOUCH_EXPLORATION_GESTURE_END = 1024; // 0x400
field public static final int TYPE_TOUCH_EXPLORATION_GESTURE_START = 512; // 0x200
+ field public static final int TYPE_TOUCH_INTERACTION_END = 2097152; // 0x200000
+ field public static final int TYPE_TOUCH_INTERACTION_START = 1048576; // 0x100000
field public static final int TYPE_VIEW_ACCESSIBILITY_FOCUSED = 32768; // 0x8000
field public static final int TYPE_VIEW_ACCESSIBILITY_FOCUS_CLEARED = 65536; // 0x10000
field public static final int TYPE_VIEW_CLICKED = 1; // 0x1
@@ -26926,35 +26926,6 @@
package android.webkit {
- public final deprecated class CacheManager {
- ctor public CacheManager();
- method public static deprecated boolean cacheDisabled();
- method public static deprecated boolean endCacheTransaction();
- method public static deprecated android.webkit.CacheManager.CacheResult getCacheFile(java.lang.String, java.util.Map<java.lang.String, java.lang.String>);
- method public static deprecated java.io.File getCacheFileBaseDir();
- method public static deprecated void saveCacheFile(java.lang.String, android.webkit.CacheManager.CacheResult);
- method public static deprecated boolean startCacheTransaction();
- }
-
- public static deprecated class CacheManager.CacheResult {
- ctor public CacheManager.CacheResult();
- method public java.lang.String getContentDisposition();
- method public long getContentLength();
- method public java.lang.String getETag();
- method public java.lang.String getEncoding();
- method public long getExpires();
- method public java.lang.String getExpiresString();
- method public int getHttpStatusCode();
- method public java.io.InputStream getInputStream();
- method public java.lang.String getLastModified();
- method public java.lang.String getLocalPath();
- method public java.lang.String getLocation();
- method public java.lang.String getMimeType();
- method public java.io.OutputStream getOutputStream();
- method public void setEncoding(java.lang.String);
- method public void setInputStream(java.io.InputStream);
- }
-
public class ConsoleMessage {
ctor public ConsoleMessage(java.lang.String, java.lang.String, int, android.webkit.ConsoleMessage.MessageLevel);
method public int lineNumber();
@@ -27120,7 +27091,6 @@
public class WebHistoryItem implements java.lang.Cloneable {
method public android.graphics.Bitmap getFavicon();
- method public deprecated int getId();
method public java.lang.String getOriginalUrl();
method public java.lang.String getTitle();
method public java.lang.String getUrl();
@@ -27181,7 +27151,6 @@
method public boolean getMediaPlaybackRequiresUserGesture();
method public synchronized int getMinimumFontSize();
method public synchronized int getMinimumLogicalFontSize();
- method public deprecated boolean getNavDump();
method public synchronized android.webkit.WebSettings.PluginState getPluginState();
method public deprecated synchronized boolean getPluginsEnabled();
method public deprecated synchronized java.lang.String getPluginsPath();
@@ -27192,10 +27161,7 @@
method public synchronized java.lang.String getStandardFontFamily();
method public deprecated synchronized android.webkit.WebSettings.TextSize getTextSize();
method public synchronized int getTextZoom();
- method public deprecated synchronized boolean getUseDoubleTree();
- method public deprecated boolean getUseWebViewBackgroundForOverscrollBackground();
method public synchronized boolean getUseWideViewPort();
- method public deprecated synchronized int getUserAgent();
method public synchronized java.lang.String getUserAgentString();
method public void setAllowContentAccess(boolean);
method public void setAllowFileAccess(boolean);
@@ -27231,7 +27197,6 @@
method public void setMediaPlaybackRequiresUserGesture(boolean);
method public synchronized void setMinimumFontSize(int);
method public synchronized void setMinimumLogicalFontSize(int);
- method public deprecated void setNavDump(boolean);
method public void setNeedInitialFocus(boolean);
method public synchronized void setPluginState(android.webkit.WebSettings.PluginState);
method public deprecated synchronized void setPluginsEnabled(boolean);
@@ -27246,10 +27211,8 @@
method public void setSupportZoom(boolean);
method public deprecated synchronized void setTextSize(android.webkit.WebSettings.TextSize);
method public synchronized void setTextZoom(int);
- method public deprecated synchronized void setUseDoubleTree(boolean);
method public deprecated void setUseWebViewBackgroundForOverscrollBackground(boolean);
method public synchronized void setUseWideViewPort(boolean);
- method public deprecated synchronized void setUserAgent(int);
method public synchronized void setUserAgentString(java.lang.String);
method public synchronized boolean supportMultipleWindows();
method public boolean supportZoom();
@@ -27354,12 +27317,8 @@
method public void clearSslPreferences();
method public void clearView();
method public android.webkit.WebBackForwardList copyBackForwardList();
- method public deprecated void debugDump();
method public void destroy();
- method public static deprecated void disablePlatformNotifications();
method public void documentHasImages(android.os.Message);
- method public deprecated void emulateShiftHeld();
- method public static deprecated void enablePlatformNotifications();
method public static java.lang.String findAddress(java.lang.String);
method public deprecated int findAll(java.lang.String);
method public void findAllAsync(java.lang.String);
@@ -27377,7 +27336,6 @@
method public android.webkit.WebSettings getSettings();
method public java.lang.String getTitle();
method public java.lang.String getUrl();
- method public deprecated int getVisibleTitleHeight();
method public void goBack();
method public void goBackOrForward(int);
method public void goForward();
@@ -27402,11 +27360,9 @@
method public void removeJavascriptInterface(java.lang.String);
method public void requestFocusNodeHref(android.os.Message);
method public void requestImageRef(android.os.Message);
- method public deprecated boolean restorePicture(android.os.Bundle, java.io.File);
method public android.webkit.WebBackForwardList restoreState(android.os.Bundle);
method public void resumeTimers();
method public void savePassword(java.lang.String, java.lang.String, java.lang.String);
- method public deprecated boolean savePicture(android.os.Bundle, java.io.File);
method public android.webkit.WebBackForwardList saveState(android.os.Bundle);
method public void saveWebArchive(java.lang.String);
method public void saveWebArchive(java.lang.String, boolean, android.webkit.ValueCallback<java.lang.String>);
@@ -27418,7 +27374,6 @@
method public void setInitialScale(int);
method public deprecated void setMapTrackballToArrowKeys(boolean);
method public void setNetworkAvailable(boolean);
- method public deprecated void setPictureListener(android.webkit.WebView.PictureListener);
method public void setVerticalScrollbarOverlay(boolean);
method public void setWebChromeClient(android.webkit.WebChromeClient);
method public void setWebViewClient(android.webkit.WebViewClient);
@@ -27502,7 +27457,6 @@
method public boolean hasFormData();
method public boolean hasHttpAuthUsernamePassword();
method public boolean hasUsernamePassword();
- field protected static final java.lang.String LOGTAG = "webviewdatabase";
}
public class WebViewFragment extends android.app.Fragment {
diff --git a/core/java/android/accounts/ChooseTypeAndAccountActivity.java b/core/java/android/accounts/ChooseTypeAndAccountActivity.java
index 6b3b7fd..5358bc7 100644
--- a/core/java/android/accounts/ChooseTypeAndAccountActivity.java
+++ b/core/java/android/accounts/ChooseTypeAndAccountActivity.java
@@ -15,6 +15,8 @@
*/
package android.accounts;
+import com.google.android.collect.Sets;
+
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
@@ -105,6 +107,13 @@
private static final int SELECTED_ITEM_NONE = -1;
+ private Set<Account> mSetOfAllowableAccounts;
+ private Set<String> mSetOfRelevantAccountTypes;
+ private String mSelectedAccountName = null;
+ private boolean mSelectedAddNewAccount = false;
+ private boolean mAlwaysPromptForAccount = false;
+ private String mDescriptionOverride;
+
private ArrayList<Account> mAccounts;
private int mPendingRequest = REQUEST_NULL;
private Parcelable[] mExistingAccounts = null;
@@ -120,22 +129,18 @@
}
// save some items we use frequently
- final AccountManager accountManager = AccountManager.get(this);
final Intent intent = getIntent();
- String selectedAccountName = null;
- boolean selectedAddNewAccount = false;
-
if (savedInstanceState != null) {
mPendingRequest = savedInstanceState.getInt(KEY_INSTANCE_STATE_PENDING_REQUEST);
mExistingAccounts =
savedInstanceState.getParcelableArray(KEY_INSTANCE_STATE_EXISTING_ACCOUNTS);
// Makes sure that any user selection is preserved across orientation changes.
- selectedAccountName = savedInstanceState.getString(
+ mSelectedAccountName = savedInstanceState.getString(
KEY_INSTANCE_STATE_SELECTED_ACCOUNT_NAME);
- selectedAddNewAccount = savedInstanceState.getBoolean(
+ mSelectedAddNewAccount = savedInstanceState.getBoolean(
KEY_INSTANCE_STATE_SELECTED_ADD_ACCOUNT, false);
} else {
mPendingRequest = REQUEST_NULL;
@@ -144,85 +149,38 @@
// show is as pre-selected.
Account selectedAccount = (Account) intent.getParcelableExtra(EXTRA_SELECTED_ACCOUNT);
if (selectedAccount != null) {
- selectedAccountName = selectedAccount.name;
+ mSelectedAccountName = selectedAccount.name;
}
}
if (Log.isLoggable(TAG, Log.VERBOSE)) {
- Log.v(TAG, "selected account name is " + selectedAccountName);
+ Log.v(TAG, "selected account name is " + mSelectedAccountName);
}
- // build an efficiently queryable map of account types to authenticator descriptions
- final HashMap<String, AuthenticatorDescription> typeToAuthDescription =
- new HashMap<String, AuthenticatorDescription>();
- for(AuthenticatorDescription desc : accountManager.getAuthenticatorTypes()) {
- typeToAuthDescription.put(desc.type, desc);
- }
- // Read the validAccounts, if present, and add them to the setOfAllowableAccounts
- Set<Account> setOfAllowableAccounts = null;
- final ArrayList<Parcelable> validAccounts =
- intent.getParcelableArrayListExtra(EXTRA_ALLOWABLE_ACCOUNTS_ARRAYLIST);
- if (validAccounts != null) {
- setOfAllowableAccounts = new HashSet<Account>(validAccounts.size());
- for (Parcelable parcelable : validAccounts) {
- setOfAllowableAccounts.add((Account)parcelable);
- }
- }
+ mSetOfAllowableAccounts = getAllowableAccountSet(intent);
+ mSetOfRelevantAccountTypes = getReleventAccountTypes(intent);
+ mAlwaysPromptForAccount = intent.getBooleanExtra(EXTRA_ALWAYS_PROMPT_FOR_ACCOUNT, false);
+ mDescriptionOverride = intent.getStringExtra(EXTRA_DESCRIPTION_TEXT_OVERRIDE);
+ }
- // An account type is relevant iff it is allowed by the caller and supported by the account
- // manager.
- Set<String> setOfRelevantAccountTypes = null;
- final String[] allowedAccountTypes =
- intent.getStringArrayExtra(EXTRA_ALLOWABLE_ACCOUNT_TYPES_STRING_ARRAY);
- if (allowedAccountTypes != null) {
+ @Override
+ protected void onResume() {
+ super.onResume();
+ final AccountManager accountManager = AccountManager.get(this);
- setOfRelevantAccountTypes = new HashSet<String>(allowedAccountTypes.length);
- Set<String> setOfAllowedAccountTypes = new HashSet<String>(allowedAccountTypes.length);
- for (String type : allowedAccountTypes) {
- setOfAllowedAccountTypes.add(type);
- }
+ mAccounts = getAcceptableAccountChoices(accountManager);
- AuthenticatorDescription[] descs = AccountManager.get(this).getAuthenticatorTypes();
- Set<String> supportedAccountTypes = new HashSet<String>(descs.length);
- for (AuthenticatorDescription desc : descs) {
- supportedAccountTypes.add(desc.type);
- }
-
- for (String acctType : setOfAllowedAccountTypes) {
- if (supportedAccountTypes.contains(acctType)) {
- setOfRelevantAccountTypes.add(acctType);
- }
- }
- }
-
- // Create a list of AccountInfo objects for each account that is allowable. Filter out
- // accounts that don't match the allowable types, if provided, or that don't match the
- // allowable accounts, if provided.
- final Account[] accounts = accountManager.getAccounts();
- mAccounts = new ArrayList<Account>(accounts.length);
- mSelectedItemIndex = SELECTED_ITEM_NONE;
- for (Account account : accounts) {
- if (setOfAllowableAccounts != null
- && !setOfAllowableAccounts.contains(account)) {
- continue;
- }
- if (setOfRelevantAccountTypes != null
- && !setOfRelevantAccountTypes.contains(account.type)) {
- continue;
- }
- if (account.name.equals(selectedAccountName)) {
- mSelectedItemIndex = mAccounts.size();
- }
- mAccounts.add(account);
- }
-
+ // In cases where the activity does not need to show an account picker, cut the chase
+ // and return the result directly. Eg:
+ // Single account -> select it directly
+ // No account -> launch add account activity directly
if (mPendingRequest == REQUEST_NULL) {
// If there are no relevant accounts and only one relevant account type go directly to
// add account. Otherwise let the user choose.
if (mAccounts.isEmpty()) {
- if (setOfRelevantAccountTypes.size() == 1) {
- runAddAccountForAuthenticator(setOfRelevantAccountTypes.iterator().next());
+ if (mSetOfRelevantAccountTypes.size() == 1) {
+ runAddAccountForAuthenticator(mSetOfRelevantAccountTypes.iterator().next());
} else {
startChooseAccountTypeActivity();
}
@@ -230,61 +188,22 @@
}
// if there is only one allowable account return it
- if (!intent.getBooleanExtra(EXTRA_ALWAYS_PROMPT_FOR_ACCOUNT, false)
- && mAccounts.size() == 1) {
+ if (!mAlwaysPromptForAccount && mAccounts.size() == 1) {
Account account = mAccounts.get(0);
setResultAndFinish(account.name, account.type);
return;
}
}
+ String[] listItems = getListOfDisplayableOptions(mAccounts);
+ mSelectedItemIndex = getItemIndexToSelect(
+ mAccounts, mSelectedAccountName, mSelectedAddNewAccount);
+
// Cannot set content view until we know that mPendingRequest is not null, otherwise
// would cause screen flicker.
setContentView(R.layout.choose_type_and_account);
-
- // Override the description text if supplied
- final String descriptionOverride =
- intent.getStringExtra(EXTRA_DESCRIPTION_TEXT_OVERRIDE);
- TextView descriptionView = (TextView) findViewById(R.id.description);
- if (!TextUtils.isEmpty(descriptionOverride)) {
- descriptionView.setText(descriptionOverride);
- } else {
- descriptionView.setVisibility(View.GONE);
- }
-
- // List of options includes all accounts found together with "Add new account" as the
- // last item in the list.
- String[] listItems = new String[mAccounts.size() + 1];
- for (int i = 0; i < mAccounts.size(); i++) {
- listItems[i] = mAccounts.get(i).name;
- }
- listItems[mAccounts.size()] = getResources().getString(
- R.string.add_account_button_label);
-
- ListView list = (ListView) findViewById(android.R.id.list);
- list.setAdapter(new ArrayAdapter<String>(this,
- android.R.layout.simple_list_item_single_choice, listItems));
- list.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
- list.setItemsCanFocus(false);
- list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
- @Override
- public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
- mSelectedItemIndex = position;
- mOkButton.setEnabled(true);
- }
- });
-
- // If "Add account" option was previously selected by user, preserve it across
- // orientation changes.
- if (selectedAddNewAccount) {
- mSelectedItemIndex = mAccounts.size();
- }
- if (mSelectedItemIndex != SELECTED_ITEM_NONE) {
- list.setItemChecked(mSelectedItemIndex, true);
- if (Log.isLoggable(TAG, Log.VERBOSE)) {
- Log.v(TAG, "List item " + mSelectedItemIndex + " should be selected");
- }
- }
+ overrideDescriptionIfSupplied(mDescriptionOverride);
+ populateUIAccountList(listItems);
// Only enable "OK" button if something has been selected.
mOkButton = (Button) findViewById(android.R.id.button2);
@@ -480,4 +399,137 @@
startActivityForResult(intent, REQUEST_CHOOSE_TYPE);
mPendingRequest = REQUEST_CHOOSE_TYPE;
}
+
+ /**
+ * @return a value between 0 (inclusive) and accounts.size() (inclusive) or SELECTED_ITEM_NONE.
+ * An index value of accounts.size() indicates 'Add account' option.
+ */
+ private int getItemIndexToSelect(ArrayList<Account> accounts, String selectedAccountName,
+ boolean selectedAddNewAccount) {
+ // If "Add account" option was previously selected by user, preserve it across
+ // orientation changes.
+ if (selectedAddNewAccount) {
+ return accounts.size();
+ }
+ // search for the selected account name if present
+ for (int i = 0; i < accounts.size(); i++) {
+ if (accounts.get(i).name.equals(selectedAccountName)) {
+ return i;
+ }
+ }
+ // no account selected.
+ return SELECTED_ITEM_NONE;
+ }
+
+ private String[] getListOfDisplayableOptions(ArrayList<Account> accounts) {
+ // List of options includes all accounts found together with "Add new account" as the
+ // last item in the list.
+ String[] listItems = new String[accounts.size() + 1];
+ for (int i = 0; i < accounts.size(); i++) {
+ listItems[i] = accounts.get(i).name;
+ }
+ listItems[accounts.size()] = getResources().getString(
+ R.string.add_account_button_label);
+ return listItems;
+ }
+
+ /**
+ * Create a list of Account objects for each account that is acceptable. Filter out
+ * accounts that don't match the allowable types, if provided, or that don't match the
+ * allowable accounts, if provided.
+ */
+ private ArrayList<Account> getAcceptableAccountChoices(AccountManager accountManager) {
+ final Account[] accounts = accountManager.getAccounts();
+ ArrayList<Account> accountsToPopulate = new ArrayList<Account>(accounts.length);
+ for (Account account : accounts) {
+ if (mSetOfAllowableAccounts != null
+ && !mSetOfAllowableAccounts.contains(account)) {
+ continue;
+ }
+ if (mSetOfRelevantAccountTypes != null
+ && !mSetOfRelevantAccountTypes.contains(account.type)) {
+ continue;
+ }
+ accountsToPopulate.add(account);
+ }
+ return accountsToPopulate;
+ }
+
+ /**
+ * Return a set of account types speficied by the intent as well as supported by the
+ * AccountManager.
+ */
+ private Set<String> getReleventAccountTypes(final Intent intent) {
+ // An account type is relevant iff it is allowed by the caller and supported by the account
+ // manager.
+ Set<String> setOfRelevantAccountTypes = null;
+ final String[] allowedAccountTypes =
+ intent.getStringArrayExtra(EXTRA_ALLOWABLE_ACCOUNT_TYPES_STRING_ARRAY);
+ if (allowedAccountTypes != null) {
+ setOfRelevantAccountTypes = Sets.newHashSet(allowedAccountTypes);
+ AuthenticatorDescription[] descs = AccountManager.get(this).getAuthenticatorTypes();
+ Set<String> supportedAccountTypes = new HashSet<String>(descs.length);
+ for (AuthenticatorDescription desc : descs) {
+ supportedAccountTypes.add(desc.type);
+ }
+ setOfRelevantAccountTypes.retainAll(supportedAccountTypes);
+ }
+ return setOfRelevantAccountTypes;
+ }
+
+ /**
+ * Returns a set of whitelisted accounts given by the intent or null if none specified by the
+ * intent.
+ */
+ private Set<Account> getAllowableAccountSet(final Intent intent) {
+ Set<Account> setOfAllowableAccounts = null;
+ final ArrayList<Parcelable> validAccounts =
+ intent.getParcelableArrayListExtra(EXTRA_ALLOWABLE_ACCOUNTS_ARRAYLIST);
+ if (validAccounts != null) {
+ setOfAllowableAccounts = new HashSet<Account>(validAccounts.size());
+ for (Parcelable parcelable : validAccounts) {
+ setOfAllowableAccounts.add((Account)parcelable);
+ }
+ }
+ return setOfAllowableAccounts;
+ }
+
+ /**
+ * Overrides the description text view for the picker activity if specified by the intent.
+ * If not specified then makes the description invisible.
+ */
+ private void overrideDescriptionIfSupplied(String descriptionOverride) {
+ TextView descriptionView = (TextView) findViewById(R.id.description);
+ if (!TextUtils.isEmpty(descriptionOverride)) {
+ descriptionView.setText(descriptionOverride);
+ } else {
+ descriptionView.setVisibility(View.GONE);
+ }
+ }
+
+ /**
+ * Populates the UI ListView with the given list of items and selects an item
+ * based on {@code mSelectedItemIndex} member variable.
+ */
+ private final void populateUIAccountList(String[] listItems) {
+ ListView list = (ListView) findViewById(android.R.id.list);
+ list.setAdapter(new ArrayAdapter<String>(this,
+ android.R.layout.simple_list_item_single_choice, listItems));
+ list.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
+ list.setItemsCanFocus(false);
+ list.setOnItemClickListener(
+ new AdapterView.OnItemClickListener() {
+ @Override
+ public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
+ mSelectedItemIndex = position;
+ mOkButton.setEnabled(true);
+ }
+ });
+ if (mSelectedItemIndex != SELECTED_ITEM_NONE) {
+ list.setItemChecked(mSelectedItemIndex, true);
+ if (Log.isLoggable(TAG, Log.VERBOSE)) {
+ Log.v(TAG, "List item " + mSelectedItemIndex + " should be selected");
+ }
+ }
+ }
}
diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java
index 1cd5fa2..cb4d4a1 100644
--- a/core/java/android/app/ActivityThread.java
+++ b/core/java/android/app/ActivityThread.java
@@ -84,7 +84,6 @@
import android.view.WindowManager;
import android.view.WindowManagerGlobal;
import android.renderscript.RenderScript;
-import android.security.AndroidKeyStoreProvider;
import com.android.internal.os.BinderInternal;
import com.android.internal.os.RuntimeInit;
@@ -4891,8 +4890,6 @@
// Set the reporter for event logging in libcore
EventLogger.setReporter(new EventLoggingReporter());
- Security.addProvider(new AndroidKeyStoreProvider());
-
Process.setArgV0("<pre-initialized>");
Looper.prepareMainLooper();
diff --git a/core/java/android/appwidget/AppWidgetHost.java b/core/java/android/appwidget/AppWidgetHost.java
index c76bf91..51a81c5 100644
--- a/core/java/android/appwidget/AppWidgetHost.java
+++ b/core/java/android/appwidget/AppWidgetHost.java
@@ -24,8 +24,10 @@
import android.os.IBinder;
import android.os.Looper;
import android.os.Message;
+import android.os.Process;
import android.os.RemoteException;
import android.os.ServiceManager;
+import android.os.UserHandle;
import android.util.DisplayMetrics;
import android.util.TypedValue;
import android.widget.RemoteViews;
@@ -115,18 +117,22 @@
private OnClickHandler mOnClickHandler;
public AppWidgetHost(Context context, int hostId) {
- this(context, hostId, null);
+ this(context, hostId, null, Looper.getMainLooper());
}
/**
* @hide
*/
- public AppWidgetHost(Context context, int hostId, OnClickHandler handler) {
+ public AppWidgetHost(Context context, int hostId, OnClickHandler handler, Looper looper) {
mContext = context;
mHostId = hostId;
mOnClickHandler = handler;
- mHandler = new UpdateHandler(context.getMainLooper());
+ mHandler = new UpdateHandler(looper);
mDisplayMetrics = context.getResources().getDisplayMetrics();
+ bindService();
+ }
+
+ private static void bindService() {
synchronized (sServiceLock) {
if (sService == null) {
IBinder b = ServiceManager.getService(Context.APPWIDGET_SERVICE);
@@ -190,6 +196,32 @@
}
/**
+ * Get a appWidgetId for a host in the calling process.
+ *
+ * @return a appWidgetId
+ * @hide
+ */
+ public static int allocateAppWidgetIdForHost(String packageName, int hostId) {
+ checkCallerIsSystem();
+ try {
+ if (sService == null) {
+ bindService();
+ }
+ return sService.allocateAppWidgetId(packageName, hostId);
+ } catch (RemoteException e) {
+ throw new RuntimeException("system server dead?", e);
+ }
+ }
+
+ private static void checkCallerIsSystem() {
+ int uid = Process.myUid();
+ if (UserHandle.getAppId(uid) == Process.SYSTEM_UID || uid == 0) {
+ return;
+ }
+ throw new SecurityException("Disallowed call for uid " + uid);
+ }
+
+ /**
* Stop listening to changes for this AppWidget.
*/
public void deleteAppWidgetId(int appWidgetId) {
@@ -205,6 +237,22 @@
}
/**
+ * Stop listening to changes for this AppWidget.
+ * @hide
+ */
+ public static void deleteAppWidgetIdForHost(int appWidgetId) {
+ checkCallerIsSystem();
+ try {
+ if (sService == null) {
+ bindService();
+ }
+ sService.deleteAppWidgetId(appWidgetId);
+ } catch (RemoteException e) {
+ throw new RuntimeException("system server dead?", e);
+ }
+ }
+
+ /**
* Remove all records about this host from the AppWidget manager.
* <ul>
* <li>Call this when initializing your database, as it might be because of a data wipe.</li>
diff --git a/core/java/android/appwidget/AppWidgetManager.java b/core/java/android/appwidget/AppWidgetManager.java
index 100a2b8..6fb6dc4 100644
--- a/core/java/android/appwidget/AppWidgetManager.java
+++ b/core/java/android/appwidget/AppWidgetManager.java
@@ -216,6 +216,28 @@
public static final String EXTRA_CUSTOM_EXTRAS = "customExtras";
/**
+ * An intent extra to pass to the AppWidget picker which allows the picker to filter
+ * the list based on the {@link AppWidgetProviderInfo#widgetCategory}.
+ *
+ * @hide
+ */
+ public static final String EXTRA_CATEGORY_FILTER = "categoryFilter";
+
+ /**
+ * An intent extra to pass to the AppWidget picker which allows the picker to filter
+ * the list based on the {@link AppWidgetProviderInfo#widgetFeatures}.
+ * @hide
+ */
+ public static final String EXTRA_FEATURES_FILTER = "featuresFilter";
+
+ /**
+ * An intent extra to pass to the AppWidget picker to specify whether or not to sort
+ * the list of caller-specified extra AppWidgets along with the rest of the AppWidgets
+ * @hide
+ */
+ public static final String EXTRA_CUSTOM_SORT = "customSort";
+
+ /**
* A sentiel value that the AppWidget manager will never return as a appWidgetId.
*/
public static final int INVALID_APPWIDGET_ID = 0;
diff --git a/core/java/android/content/Intent.java b/core/java/android/content/Intent.java
index 15dec3e..fad3e10 100644
--- a/core/java/android/content/Intent.java
+++ b/core/java/android/content/Intent.java
@@ -1473,7 +1473,7 @@
* Broadcast Action: A new application package has been installed on the
* device. The data contains the name of the package. Note that the
* newly installed package does <em>not</em> receive this broadcast.
- * <p>My include the following extras:
+ * <p>May include the following extras:
* <ul>
* <li> {@link #EXTRA_UID} containing the integer uid assigned to the new package.
* <li> {@link #EXTRA_REPLACING} is set to true if this is following
@@ -1489,7 +1489,7 @@
* Broadcast Action: A new version of an application package has been
* installed, replacing an existing version that was previously installed.
* The data contains the name of the package.
- * <p>My include the following extras:
+ * <p>May include the following extras:
* <ul>
* <li> {@link #EXTRA_UID} containing the integer uid assigned to the new package.
* </ul>
diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java
index 5399583..4784d7f 100644
--- a/core/java/android/content/pm/PackageManager.java
+++ b/core/java/android/content/pm/PackageManager.java
@@ -1151,6 +1151,22 @@
= "android.content.pm.extra.VERIFICATION_INSTALL_FLAGS";
/**
+ * Extra field name for the uid of who is requesting to install
+ * the package.
+ *
+ * @hide
+ */
+ public static final String EXTRA_VERIFICATION_INSTALLER_UID
+ = "android.content.pm.extra.VERIFICATION_INSTALLER_UID";
+
+ /**
+ * Extra field name for the package name of a package pending verification.
+ *
+ * @hide
+ */
+ public static final String EXTRA_VERIFICATION_PACKAGE_NAME
+ = "android.content.pm.extra.VERIFICATION_PACKAGE_NAME";
+ /**
* Extra field name for the result of a verification, either
* {@link #VERIFICATION_ALLOW}, or {@link #VERIFICATION_REJECT}.
* Passed to package verifiers after a package is verified.
@@ -1159,6 +1175,14 @@
= "android.content.pm.extra.VERIFICATION_RESULT";
/**
+ * Extra field name for the version code of a package pending verification.
+ *
+ * @hide
+ */
+ public static final String EXTRA_VERIFICATION_VERSION_CODE
+ = "android.content.pm.extra.VERIFICATION_VERSION_CODE";
+
+ /**
* Retrieve overall information about an application package that is
* installed on the system.
* <p>
diff --git a/core/java/android/content/pm/VerificationParams.java b/core/java/android/content/pm/VerificationParams.java
index 9bec87e..6454de0 100644
--- a/core/java/android/content/pm/VerificationParams.java
+++ b/core/java/android/content/pm/VerificationParams.java
@@ -39,6 +39,9 @@
/** HTTP referrer URI associated with the originatingURI. */
private final Uri mReferrer;
+ /** UID of application requesting the install */
+ private int mInstallerUid;
+
/**
* An object that holds the digest of the package which can be used to
* verify ownership.
@@ -63,6 +66,7 @@
mOriginatingURI = originatingURI;
mReferrer = referrer;
mManifestDigest = manifestDigest;
+ mInstallerUid = -1;
}
public Uri getVerificationURI() {
@@ -81,6 +85,15 @@
return mManifestDigest;
}
+ /** @return -1 when not set */
+ public int getInstallerUid() {
+ return mInstallerUid;
+ }
+
+ public void setInstallerUid(int uid) {
+ mInstallerUid = uid;
+ }
+
@Override
public int describeContents() {
return 0;
@@ -126,6 +139,10 @@
return false;
}
+ if (mInstallerUid != other.mInstallerUid) {
+ return false;
+ }
+
return true;
}
@@ -137,6 +154,7 @@
hash += 7 * (mOriginatingURI==null?1:mOriginatingURI.hashCode());
hash += 11 * (mReferrer==null?1:mReferrer.hashCode());
hash += 13 * (mManifestDigest==null?1:mManifestDigest.hashCode());
+ hash += 17 * mInstallerUid;
return hash;
}
@@ -153,6 +171,8 @@
sb.append(mReferrer.toString());
sb.append(",mManifestDigest=");
sb.append(mManifestDigest.toString());
+ sb.append(",mInstallerUid=");
+ sb.append(mInstallerUid);
sb.append('}');
return sb.toString();
@@ -164,6 +184,7 @@
dest.writeParcelable(mOriginatingURI, 0);
dest.writeParcelable(mReferrer, 0);
dest.writeParcelable(mManifestDigest, 0);
+ dest.writeInt(mInstallerUid);
}
@@ -172,6 +193,7 @@
mOriginatingURI = source.readParcelable(Uri.class.getClassLoader());
mReferrer = source.readParcelable(Uri.class.getClassLoader());
mManifestDigest = source.readParcelable(ManifestDigest.class.getClassLoader());
+ mInstallerUid = source.readInt();
}
public static final Parcelable.Creator<VerificationParams> CREATOR =
diff --git a/core/java/android/net/INetworkPolicyManager.aidl b/core/java/android/net/INetworkPolicyManager.aidl
index 3250ae7..df6057e 100644
--- a/core/java/android/net/INetworkPolicyManager.aidl
+++ b/core/java/android/net/INetworkPolicyManager.aidl
@@ -30,9 +30,9 @@
interface INetworkPolicyManager {
/** Control UID policies. */
- void setAppPolicy(int appId, int policy);
- int getAppPolicy(int appId);
- int[] getAppsWithPolicy(int policy);
+ void setUidPolicy(int uid, int policy);
+ int getUidPolicy(int uid);
+ int[] getUidsWithPolicy(int policy);
boolean isUidForeground(int uid);
diff --git a/core/java/android/net/NetworkPolicyManager.java b/core/java/android/net/NetworkPolicyManager.java
index 07bfd4b..2cd1f9b 100644
--- a/core/java/android/net/NetworkPolicyManager.java
+++ b/core/java/android/net/NetworkPolicyManager.java
@@ -26,6 +26,7 @@
import android.content.pm.PackageManager.NameNotFoundException;
import android.content.pm.Signature;
import android.os.RemoteException;
+import android.os.UserHandle;
import android.text.format.Time;
import com.google.android.collect.Sets;
@@ -72,29 +73,29 @@
}
/**
- * Set policy flags for specific application.
+ * Set policy flags for specific UID.
*
* @param policy {@link #POLICY_NONE} or combination of flags like
* {@link #POLICY_REJECT_METERED_BACKGROUND}.
*/
- public void setAppPolicy(int appId, int policy) {
+ public void setUidPolicy(int uid, int policy) {
try {
- mService.setAppPolicy(appId, policy);
+ mService.setUidPolicy(uid, policy);
} catch (RemoteException e) {
}
}
- public int getAppPolicy(int appId) {
+ public int getUidPolicy(int uid) {
try {
- return mService.getAppPolicy(appId);
+ return mService.getUidPolicy(uid);
} catch (RemoteException e) {
return POLICY_NONE;
}
}
- public int[] getAppsWithPolicy(int policy) {
+ public int[] getUidsWithPolicy(int policy) {
try {
- return mService.getAppsWithPolicy(policy);
+ return mService.getUidsWithPolicy(policy);
} catch (RemoteException e) {
return new int[0];
}
@@ -236,8 +237,7 @@
@Deprecated
public static boolean isUidValidForPolicy(Context context, int uid) {
// first, quick-reject non-applications
- if (uid < android.os.Process.FIRST_APPLICATION_UID
- || uid > android.os.Process.LAST_APPLICATION_UID) {
+ if (!UserHandle.isApp(uid)) {
return false;
}
diff --git a/core/java/android/net/http/CertificateChainValidator.java b/core/java/android/net/http/CertificateChainValidator.java
index 6ad8fe3..f66075d 100644
--- a/core/java/android/net/http/CertificateChainValidator.java
+++ b/core/java/android/net/http/CertificateChainValidator.java
@@ -168,7 +168,13 @@
}
try {
- SSLParametersImpl.getDefaultTrustManager().checkServerTrusted(chain, authType);
+ X509TrustManager x509TrustManager = SSLParametersImpl.getDefaultTrustManager();
+ if (x509TrustManager instanceof TrustManagerImpl) {
+ TrustManagerImpl trustManager = (TrustManagerImpl) x509TrustManager;
+ trustManager.checkServerTrusted(chain, authType, domain);
+ } else {
+ x509TrustManager.checkServerTrusted(chain, authType);
+ }
return null; // No errors.
} catch (GeneralSecurityException e) {
if (HttpLog.LOGV) {
diff --git a/core/java/android/os/UserHandle.java b/core/java/android/os/UserHandle.java
index 22994ff..cc96152 100644
--- a/core/java/android/os/UserHandle.java
+++ b/core/java/android/os/UserHandle.java
@@ -87,15 +87,19 @@
/** @hide */
public static final boolean isIsolated(int uid) {
- uid = getAppId(uid);
- return uid >= Process.FIRST_ISOLATED_UID && uid <= Process.LAST_ISOLATED_UID;
+ if (uid > 0) {
+ final int appId = getAppId(uid);
+ return appId >= Process.FIRST_ISOLATED_UID && appId <= Process.LAST_ISOLATED_UID;
+ } else {
+ return false;
+ }
}
/** @hide */
public static boolean isApp(int uid) {
if (uid > 0) {
- uid = UserHandle.getAppId(uid);
- return uid >= Process.FIRST_APPLICATION_UID && uid <= Process.LAST_APPLICATION_UID;
+ final int appId = getAppId(uid);
+ return appId >= Process.FIRST_APPLICATION_UID && appId <= Process.LAST_APPLICATION_UID;
} else {
return false;
}
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index 9ea523d..f3dbecb 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -754,22 +754,29 @@
}
public String getStringForUser(ContentResolver cr, String name, final int userHandle) {
- long newValuesVersion = SystemProperties.getLong(mVersionSystemProperty, 0);
+ final boolean isSelf = (userHandle == UserHandle.myUserId());
+ if (isSelf) {
+ long newValuesVersion = SystemProperties.getLong(mVersionSystemProperty, 0);
- synchronized (this) {
- if (mValuesVersion != newValuesVersion) {
- if (LOCAL_LOGV || false) {
- Log.v(TAG, "invalidate [" + mUri.getLastPathSegment() + "]: current " +
- newValuesVersion + " != cached " + mValuesVersion);
+ // Our own user's settings data uses a client-side cache
+ synchronized (this) {
+ if (mValuesVersion != newValuesVersion) {
+ if (LOCAL_LOGV || false) {
+ Log.v(TAG, "invalidate [" + mUri.getLastPathSegment() + "]: current "
+ + newValuesVersion + " != cached " + mValuesVersion);
+ }
+
+ mValues.clear();
+ mValuesVersion = newValuesVersion;
}
- mValues.clear();
- mValuesVersion = newValuesVersion;
+ if (mValues.containsKey(name)) {
+ return mValues.get(name); // Could be null, that's OK -- negative caching
+ }
}
-
- if (mValues.containsKey(name)) {
- return mValues.get(name); // Could be null, that's OK -- negative caching
- }
+ } else {
+ if (LOCAL_LOGV) Log.v(TAG, "get setting for user " + userHandle
+ + " by user " + UserHandle.myUserId() + " so skipping cache");
}
IContentProvider cp = lazyGetProvider(cr);
@@ -788,8 +795,15 @@
Bundle b = cp.call(mCallGetCommand, name, args);
if (b != null) {
String value = b.getPairValue();
- synchronized (this) {
- mValues.put(name, value);
+ // Don't update our cache for reads of other users' data
+ if (isSelf) {
+ synchronized (this) {
+ mValues.put(name, value);
+ }
+ } else {
+ if (LOCAL_LOGV) Log.i(TAG, "call-query of user " + userHandle
+ + " by " + UserHandle.myUserId()
+ + " so not updating cache");
}
return value;
}
@@ -3187,6 +3201,20 @@
public static final String LOCK_SCREEN_OWNER_INFO = "lock_screen_owner_info";
/**
+ * Id of the time appwidget on the lockscreen, or -1 if none
+ * @hide
+ */
+ public static final String LOCK_SCREEN_CLOCK_APPWIDGET_ID =
+ "lock_screen_clock_appwidget_id";
+
+ /**
+ * Id of the user-selected appwidget on the lockscreen, or -1 if none
+ * @hide
+ */
+ public static final String LOCK_SCREEN_USER_SELECTED_APPWIDGET_ID =
+ "lock_screen_user_selected_appwidget_id";
+
+ /**
* This preference enables showing the owner info on LockScren.
* @hide
*/
@@ -3535,46 +3563,51 @@
public static final String TTS_ENABLED_PLUGINS = "tts_enabled_plugins";
/**
- * Whether to notify the user of open networks.
- * <p>
- * If not connected and the scan results have an open network, we will
- * put this notification up. If we attempt to connect to a network or
- * the open network(s) disappear, we remove the notification. When we
- * show the notification, we will not show it again for
- * {@link android.provider.Settings.Secure#WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY} time.
+ * @deprecated Use {@link android.provider.Settings.Global#WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON}
+ * instead.
*/
+ @Deprecated
public static final String WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON =
- "wifi_networks_available_notification_on";
+ Global.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON;
/**
+ * @deprecated Moved to Global namespace
* {@hide}
*/
+ @Deprecated
public static final String WIMAX_NETWORKS_AVAILABLE_NOTIFICATION_ON =
- "wimax_networks_available_notification_on";
+ Global.WIMAX_NETWORKS_AVAILABLE_NOTIFICATION_ON;
/**
- * Delay (in seconds) before repeating the Wi-Fi networks available notification.
- * Connecting to a network will reset the timer.
+ * @deprecated Use {@link android.provider.Settings.Global#WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY}
+ * instead.
*/
+ @Deprecated
public static final String WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY =
- "wifi_networks_available_repeat_delay";
+ Global.WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY;
/**
- * 802.11 country code in ISO 3166 format
+ * @deprecated Use {@link android.provider.Settings.Global#WIFI_COUNTRY_CODE}
+ * instead.
* @hide
*/
- public static final String WIFI_COUNTRY_CODE = "wifi_country_code";
+ @Deprecated
+ public static final String WIFI_COUNTRY_CODE = Global.WIFI_COUNTRY_CODE;
/**
- * When the number of open networks exceeds this number, the
- * least-recently-used excess networks will be removed.
+ * @deprecated Use {@link android.provider.Settings.Global#WIFI_NUM_OPEN_NETWORKS_KEPT}
+ * instead.
*/
- public static final String WIFI_NUM_OPEN_NETWORKS_KEPT = "wifi_num_open_networks_kept";
+ @Deprecated
+ public static final String WIFI_NUM_OPEN_NETWORKS_KEPT =
+ Global.WIFI_NUM_OPEN_NETWORKS_KEPT;
/**
- * Whether the Wi-Fi should be on. Only the Wi-Fi service should touch this.
+ * @deprecated Use {@link android.provider.Settings.Global#WIFI_ON}
+ * instead.
*/
- public static final String WIFI_ON = "wifi_on";
+ @Deprecated
+ public static final String WIFI_ON = Global.WIFI_ON;
/**
* Used to save the Wifi_ON state prior to tethering.
@@ -3582,8 +3615,10 @@
* the user turns off tethering.
*
* @hide
+ * @deprecated moved to Global
*/
- public static final String WIFI_SAVED_STATE = "wifi_saved_state";
+ @Deprecated
+ public static final String WIFI_SAVED_STATE = Global.WIFI_SAVED_STATE;
/**
* AP SSID
@@ -4192,24 +4227,30 @@
* When idle, it is possible for the device to be switched from Wi-Fi to
* the mobile data network.
* @hide
+ * @deprecated Moved to Global
*/
- public static final String WIFI_IDLE_MS = "wifi_idle_ms";
+ @Deprecated
+ public static final String WIFI_IDLE_MS = Global.WIFI_IDLE_MS;
/**
* The interval in milliseconds to issue wake up scans when wifi needs
* to connect. This is necessary to connect to an access point when
* device is on the move and the screen is off.
* @hide
+ * @deprecated Moved to Global
*/
+ @Deprecated
public static final String WIFI_FRAMEWORK_SCAN_INTERVAL_MS =
- "wifi_framework_scan_interval_ms";
+ Global.WIFI_FRAMEWORK_SCAN_INTERVAL_MS;
/**
* The interval in milliseconds to scan as used by the wifi supplicant
* @hide
+ * @deprecated Moved to Global
*/
+ @Deprecated
public static final String WIFI_SUPPLICANT_SCAN_INTERVAL_MS =
- "wifi_supplicant_scan_interval_ms";
+ Global.WIFI_SUPPLICANT_SCAN_INTERVAL_MS;
/**
* @deprecated Moved to Settings.Global
diff --git a/core/java/android/text/format/DateUtils.java b/core/java/android/text/format/DateUtils.java
index 211453d..0babcc5 100644
--- a/core/java/android/text/format/DateUtils.java
+++ b/core/java/android/text/format/DateUtils.java
@@ -29,6 +29,8 @@
import java.util.Locale;
import java.util.TimeZone;
+import libcore.icu.LocaleData;
+
/**
* This class contains various date-related utilities for creating text for things like
* elapsed time and date ranges, strings for days of the week and months, and AM/PM text etc.
@@ -36,102 +38,6 @@
public class DateUtils
{
private static final Object sLock = new Object();
- private static final int[] sDaysLong = new int[] {
- com.android.internal.R.string.day_of_week_long_sunday,
- com.android.internal.R.string.day_of_week_long_monday,
- com.android.internal.R.string.day_of_week_long_tuesday,
- com.android.internal.R.string.day_of_week_long_wednesday,
- com.android.internal.R.string.day_of_week_long_thursday,
- com.android.internal.R.string.day_of_week_long_friday,
- com.android.internal.R.string.day_of_week_long_saturday,
- };
- private static final int[] sDaysMedium = new int[] {
- com.android.internal.R.string.day_of_week_medium_sunday,
- com.android.internal.R.string.day_of_week_medium_monday,
- com.android.internal.R.string.day_of_week_medium_tuesday,
- com.android.internal.R.string.day_of_week_medium_wednesday,
- com.android.internal.R.string.day_of_week_medium_thursday,
- com.android.internal.R.string.day_of_week_medium_friday,
- com.android.internal.R.string.day_of_week_medium_saturday,
- };
- private static final int[] sDaysShort = new int[] {
- com.android.internal.R.string.day_of_week_short_sunday,
- com.android.internal.R.string.day_of_week_short_monday,
- com.android.internal.R.string.day_of_week_short_tuesday,
- com.android.internal.R.string.day_of_week_short_wednesday,
- com.android.internal.R.string.day_of_week_short_thursday,
- com.android.internal.R.string.day_of_week_short_friday,
- com.android.internal.R.string.day_of_week_short_saturday,
- };
- private static final int[] sDaysShortest = new int[] {
- com.android.internal.R.string.day_of_week_shortest_sunday,
- com.android.internal.R.string.day_of_week_shortest_monday,
- com.android.internal.R.string.day_of_week_shortest_tuesday,
- com.android.internal.R.string.day_of_week_shortest_wednesday,
- com.android.internal.R.string.day_of_week_shortest_thursday,
- com.android.internal.R.string.day_of_week_shortest_friday,
- com.android.internal.R.string.day_of_week_shortest_saturday,
- };
- private static final int[] sMonthsStandaloneLong = new int [] {
- com.android.internal.R.string.month_long_standalone_january,
- com.android.internal.R.string.month_long_standalone_february,
- com.android.internal.R.string.month_long_standalone_march,
- com.android.internal.R.string.month_long_standalone_april,
- com.android.internal.R.string.month_long_standalone_may,
- com.android.internal.R.string.month_long_standalone_june,
- com.android.internal.R.string.month_long_standalone_july,
- com.android.internal.R.string.month_long_standalone_august,
- com.android.internal.R.string.month_long_standalone_september,
- com.android.internal.R.string.month_long_standalone_october,
- com.android.internal.R.string.month_long_standalone_november,
- com.android.internal.R.string.month_long_standalone_december,
- };
- private static final int[] sMonthsLong = new int [] {
- com.android.internal.R.string.month_long_january,
- com.android.internal.R.string.month_long_february,
- com.android.internal.R.string.month_long_march,
- com.android.internal.R.string.month_long_april,
- com.android.internal.R.string.month_long_may,
- com.android.internal.R.string.month_long_june,
- com.android.internal.R.string.month_long_july,
- com.android.internal.R.string.month_long_august,
- com.android.internal.R.string.month_long_september,
- com.android.internal.R.string.month_long_october,
- com.android.internal.R.string.month_long_november,
- com.android.internal.R.string.month_long_december,
- };
- private static final int[] sMonthsMedium = new int [] {
- com.android.internal.R.string.month_medium_january,
- com.android.internal.R.string.month_medium_february,
- com.android.internal.R.string.month_medium_march,
- com.android.internal.R.string.month_medium_april,
- com.android.internal.R.string.month_medium_may,
- com.android.internal.R.string.month_medium_june,
- com.android.internal.R.string.month_medium_july,
- com.android.internal.R.string.month_medium_august,
- com.android.internal.R.string.month_medium_september,
- com.android.internal.R.string.month_medium_october,
- com.android.internal.R.string.month_medium_november,
- com.android.internal.R.string.month_medium_december,
- };
- private static final int[] sMonthsShortest = new int [] {
- com.android.internal.R.string.month_shortest_january,
- com.android.internal.R.string.month_shortest_february,
- com.android.internal.R.string.month_shortest_march,
- com.android.internal.R.string.month_shortest_april,
- com.android.internal.R.string.month_shortest_may,
- com.android.internal.R.string.month_shortest_june,
- com.android.internal.R.string.month_shortest_july,
- com.android.internal.R.string.month_shortest_august,
- com.android.internal.R.string.month_shortest_september,
- com.android.internal.R.string.month_shortest_october,
- com.android.internal.R.string.month_shortest_november,
- com.android.internal.R.string.month_shortest_december,
- };
- private static final int[] sAmPm = new int[] {
- com.android.internal.R.string.am,
- com.android.internal.R.string.pm,
- };
private static Configuration sLastConfig;
private static java.text.DateFormat sStatusTimeFormat;
private static String sElapsedFormatMMSS;
@@ -161,12 +67,17 @@
public static final int FORMAT_NO_YEAR = 0x00008;
public static final int FORMAT_SHOW_DATE = 0x00010;
public static final int FORMAT_NO_MONTH_DAY = 0x00020;
+ @Deprecated
public static final int FORMAT_12HOUR = 0x00040;
+ @Deprecated
public static final int FORMAT_24HOUR = 0x00080;
+ @Deprecated
public static final int FORMAT_CAP_AMPM = 0x00100;
public static final int FORMAT_NO_NOON = 0x00200;
+ @Deprecated
public static final int FORMAT_CAP_NOON = 0x00400;
public static final int FORMAT_NO_MIDNIGHT = 0x00800;
+ @Deprecated
public static final int FORMAT_CAP_MIDNIGHT = 0x01000;
/**
* @deprecated Use
@@ -181,19 +92,25 @@
public static final int FORMAT_NUMERIC_DATE = 0x20000;
public static final int FORMAT_ABBREV_RELATIVE = 0x40000;
public static final int FORMAT_ABBREV_ALL = 0x80000;
+ @Deprecated
public static final int FORMAT_CAP_NOON_MIDNIGHT = (FORMAT_CAP_NOON | FORMAT_CAP_MIDNIGHT);
+ @Deprecated
public static final int FORMAT_NO_NOON_MIDNIGHT = (FORMAT_NO_NOON | FORMAT_NO_MIDNIGHT);
// Date and time format strings that are constant and don't need to be
// translated.
/**
* This is not actually the preferred 24-hour date format in all locales.
+ * @deprecated use {@link java.text.SimpleDateFormat} instead.
*/
+ @Deprecated
public static final String HOUR_MINUTE_24 = "%H:%M";
public static final String MONTH_FORMAT = "%B";
/**
* This is not actually a useful month name in all locales.
+ * @deprecated use {@link java.text.SimpleDateFormat} instead.
*/
+ @Deprecated
public static final String ABBREV_MONTH_FORMAT = "%b";
public static final String NUMERIC_MONTH_FORMAT = "%m";
public static final String MONTH_DAY_FORMAT = "%-d";
@@ -207,6 +124,7 @@
// The index is constructed from a bit-wise OR of the boolean values:
// {showTime, showYear, showWeekDay}. For example, if showYear and
// showWeekDay are both true, then the index would be 3.
+ /** @deprecated do not use. */
public static final int sameYearTable[] = {
com.android.internal.R.string.same_year_md1_md2,
com.android.internal.R.string.same_year_wday1_md1_wday2_md2,
@@ -233,6 +151,7 @@
// The index is constructed from a bit-wise OR of the boolean values:
// {showTime, showYear, showWeekDay}. For example, if showYear and
// showWeekDay are both true, then the index would be 3.
+ /** @deprecated do not use. */
public static final int sameMonthTable[] = {
com.android.internal.R.string.same_month_md1_md2,
com.android.internal.R.string.same_month_wday1_md1_wday2_md2,
@@ -259,7 +178,9 @@
*
* @more <p>
* e.g. "Sunday" or "January"
+ * @deprecated use {@link java.text.SimpleDateFormat} instead.
*/
+ @Deprecated
public static final int LENGTH_LONG = 10;
/**
@@ -268,7 +189,9 @@
*
* @more <p>
* e.g. "Sun" or "Jan"
+ * @deprecated use {@link java.text.SimpleDateFormat} instead.
*/
+ @Deprecated
public static final int LENGTH_MEDIUM = 20;
/**
@@ -278,14 +201,18 @@
* <p>e.g. "Su" or "Jan"
* <p>In most languages, the results returned for LENGTH_SHORT will be the same as
* the results returned for {@link #LENGTH_MEDIUM}.
+ * @deprecated use {@link java.text.SimpleDateFormat} instead.
*/
+ @Deprecated
public static final int LENGTH_SHORT = 30;
/**
* Request an even shorter abbreviated version of the name.
* Do not use this. Currently this will always return the same result
* as {@link #LENGTH_SHORT}.
+ * @deprecated use {@link java.text.SimpleDateFormat} instead.
*/
+ @Deprecated
public static final int LENGTH_SHORTER = 40;
/**
@@ -295,7 +222,9 @@
* <p>e.g. "S", "T", "T" or "J"
* <p>In some languages, the results returned for LENGTH_SHORTEST will be the same as
* the results returned for {@link #LENGTH_SHORT}.
+ * @deprecated use {@link java.text.SimpleDateFormat} instead.
*/
+ @Deprecated
public static final int LENGTH_SHORTEST = 50;
/**
@@ -309,20 +238,21 @@
* Undefined lengths will return {@link #LENGTH_MEDIUM}
* but may return something different in the future.
* @throws IndexOutOfBoundsException if the dayOfWeek is out of bounds.
+ * @deprecated use {@link java.text.SimpleDateFormat} instead.
*/
+ @Deprecated
public static String getDayOfWeekString(int dayOfWeek, int abbrev) {
- int[] list;
+ LocaleData d = LocaleData.get(Locale.getDefault());
+ String[] names;
switch (abbrev) {
- case LENGTH_LONG: list = sDaysLong; break;
- case LENGTH_MEDIUM: list = sDaysMedium; break;
- case LENGTH_SHORT: list = sDaysShort; break;
- case LENGTH_SHORTER: list = sDaysShort; break;
- case LENGTH_SHORTEST: list = sDaysShortest; break;
- default: list = sDaysMedium; break;
+ case LENGTH_LONG: names = d.longWeekdayNames; break;
+ case LENGTH_MEDIUM: names = d.shortWeekdayNames; break;
+ case LENGTH_SHORT: names = d.shortWeekdayNames; break; // TODO
+ case LENGTH_SHORTER: names = d.shortWeekdayNames; break; // TODO
+ case LENGTH_SHORTEST: names = d.tinyWeekdayNames; break;
+ default: names = d.shortWeekdayNames; break;
}
-
- Resources r = Resources.getSystem();
- return r.getString(list[dayOfWeek - Calendar.SUNDAY]);
+ return names[dayOfWeek];
}
/**
@@ -330,10 +260,11 @@
* @param ampm Either {@link Calendar#AM Calendar.AM} or {@link Calendar#PM Calendar.PM}.
* @throws IndexOutOfBoundsException if the ampm is out of bounds.
* @return Localized version of "AM" or "PM".
+ * @deprecated use {@link java.text.SimpleDateFormat} instead.
*/
+ @Deprecated
public static String getAMPMString(int ampm) {
- Resources r = Resources.getSystem();
- return r.getString(sAmPm[ampm - Calendar.AM]);
+ return LocaleData.get(Locale.getDefault()).amPm[ampm - Calendar.AM];
}
/**
@@ -345,24 +276,25 @@
* Undefined lengths will return {@link #LENGTH_MEDIUM}
* but may return something different in the future.
* @return Localized month of the year.
+ * @deprecated use {@link java.text.SimpleDateFormat} instead.
*/
+ @Deprecated
public static String getMonthString(int month, int abbrev) {
- // Note that here we use sMonthsMedium for MEDIUM, SHORT and SHORTER.
+ // Note that here we use d.shortMonthNames for MEDIUM, SHORT and SHORTER.
// This is a shortcut to not spam the translators with too many variations
// of the same string. If we find that in a language the distinction
// is necessary, we can can add more without changing this API.
- int[] list;
+ LocaleData d = LocaleData.get(Locale.getDefault());
+ String[] names;
switch (abbrev) {
- case LENGTH_LONG: list = sMonthsLong; break;
- case LENGTH_MEDIUM: list = sMonthsMedium; break;
- case LENGTH_SHORT: list = sMonthsMedium; break;
- case LENGTH_SHORTER: list = sMonthsMedium; break;
- case LENGTH_SHORTEST: list = sMonthsShortest; break;
- default: list = sMonthsMedium; break;
+ case LENGTH_LONG: names = d.longMonthNames; break;
+ case LENGTH_MEDIUM: names = d.shortMonthNames; break;
+ case LENGTH_SHORT: names = d.shortMonthNames; break;
+ case LENGTH_SHORTER: names = d.shortMonthNames; break;
+ case LENGTH_SHORTEST: names = d.tinyMonthNames; break;
+ default: names = d.shortMonthNames; break;
}
-
- Resources r = Resources.getSystem();
- return r.getString(list[month - Calendar.JANUARY]);
+ return names[month];
}
/**
@@ -378,25 +310,26 @@
* but may return something different in the future.
* @return Localized month of the year.
* @hide Pending API council approval
+ * @deprecated use {@link java.text.SimpleDateFormat} instead.
*/
+ @Deprecated
public static String getStandaloneMonthString(int month, int abbrev) {
- // Note that here we use sMonthsMedium for MEDIUM, SHORT and SHORTER.
+ // Note that here we use d.shortMonthNames for MEDIUM, SHORT and SHORTER.
// This is a shortcut to not spam the translators with too many variations
// of the same string. If we find that in a language the distinction
// is necessary, we can can add more without changing this API.
- int[] list;
+ LocaleData d = LocaleData.get(Locale.getDefault());
+ String[] names;
switch (abbrev) {
- case LENGTH_LONG: list = sMonthsStandaloneLong;
+ case LENGTH_LONG: names = d.longStandAloneMonthNames;
break;
- case LENGTH_MEDIUM: list = sMonthsMedium; break;
- case LENGTH_SHORT: list = sMonthsMedium; break;
- case LENGTH_SHORTER: list = sMonthsMedium; break;
- case LENGTH_SHORTEST: list = sMonthsShortest; break;
- default: list = sMonthsMedium; break;
+ case LENGTH_MEDIUM: names = d.shortMonthNames; break;
+ case LENGTH_SHORT: names = d.shortMonthNames; break;
+ case LENGTH_SHORTER: names = d.shortMonthNames; break;
+ case LENGTH_SHORTEST: names = d.tinyMonthNames; break;
+ default: names = d.shortMonthNames; break;
}
-
- Resources r = Resources.getSystem();
- return r.getString(list[month - Calendar.JANUARY]);
+ return names[month];
}
/**
@@ -619,14 +552,19 @@
int days = Math.abs(currentDay - startDay);
boolean past = (today > day);
+ // TODO: some locales name other days too, such as de_DE's "Vorgestern" (today - 2).
+ Locale locale = r.getConfiguration().locale;
+ if (locale == null) {
+ locale = Locale.getDefault();
+ }
if (days == 1) {
if (past) {
- return r.getString(com.android.internal.R.string.yesterday);
+ return LocaleData.get(locale).yesterday;
} else {
- return r.getString(com.android.internal.R.string.tomorrow);
+ return LocaleData.get(locale).tomorrow;
}
} else if (days == 0) {
- return r.getString(com.android.internal.R.string.today);
+ return LocaleData.get(locale).today;
}
int resId;
diff --git a/core/java/android/text/format/Time.java b/core/java/android/text/format/Time.java
index b0b18da..45d5a70 100644
--- a/core/java/android/text/format/Time.java
+++ b/core/java/android/text/format/Time.java
@@ -21,6 +21,8 @@
import java.util.Locale;
import java.util.TimeZone;
+import libcore.icu.LocaleData;
+
/**
* An alternative to the {@link java.util.Calendar} and
* {@link java.util.GregorianCalendar} classes. An instance of the Time class represents
@@ -317,73 +319,21 @@
Locale locale = Locale.getDefault();
if (sLocale == null || locale == null || !(locale.equals(sLocale))) {
- Resources r = Resources.getSystem();
+ LocaleData localeData = LocaleData.get(locale);
- sShortMonths = new String[] {
- r.getString(com.android.internal.R.string.month_medium_january),
- r.getString(com.android.internal.R.string.month_medium_february),
- r.getString(com.android.internal.R.string.month_medium_march),
- r.getString(com.android.internal.R.string.month_medium_april),
- r.getString(com.android.internal.R.string.month_medium_may),
- r.getString(com.android.internal.R.string.month_medium_june),
- r.getString(com.android.internal.R.string.month_medium_july),
- r.getString(com.android.internal.R.string.month_medium_august),
- r.getString(com.android.internal.R.string.month_medium_september),
- r.getString(com.android.internal.R.string.month_medium_october),
- r.getString(com.android.internal.R.string.month_medium_november),
- r.getString(com.android.internal.R.string.month_medium_december),
- };
- sLongMonths = new String[] {
- r.getString(com.android.internal.R.string.month_long_january),
- r.getString(com.android.internal.R.string.month_long_february),
- r.getString(com.android.internal.R.string.month_long_march),
- r.getString(com.android.internal.R.string.month_long_april),
- r.getString(com.android.internal.R.string.month_long_may),
- r.getString(com.android.internal.R.string.month_long_june),
- r.getString(com.android.internal.R.string.month_long_july),
- r.getString(com.android.internal.R.string.month_long_august),
- r.getString(com.android.internal.R.string.month_long_september),
- r.getString(com.android.internal.R.string.month_long_october),
- r.getString(com.android.internal.R.string.month_long_november),
- r.getString(com.android.internal.R.string.month_long_december),
- };
- sLongStandaloneMonths = new String[] {
- r.getString(com.android.internal.R.string.month_long_standalone_january),
- r.getString(com.android.internal.R.string.month_long_standalone_february),
- r.getString(com.android.internal.R.string.month_long_standalone_march),
- r.getString(com.android.internal.R.string.month_long_standalone_april),
- r.getString(com.android.internal.R.string.month_long_standalone_may),
- r.getString(com.android.internal.R.string.month_long_standalone_june),
- r.getString(com.android.internal.R.string.month_long_standalone_july),
- r.getString(com.android.internal.R.string.month_long_standalone_august),
- r.getString(com.android.internal.R.string.month_long_standalone_september),
- r.getString(com.android.internal.R.string.month_long_standalone_october),
- r.getString(com.android.internal.R.string.month_long_standalone_november),
- r.getString(com.android.internal.R.string.month_long_standalone_december),
- };
- sShortWeekdays = new String[] {
- r.getString(com.android.internal.R.string.day_of_week_medium_sunday),
- r.getString(com.android.internal.R.string.day_of_week_medium_monday),
- r.getString(com.android.internal.R.string.day_of_week_medium_tuesday),
- r.getString(com.android.internal.R.string.day_of_week_medium_wednesday),
- r.getString(com.android.internal.R.string.day_of_week_medium_thursday),
- r.getString(com.android.internal.R.string.day_of_week_medium_friday),
- r.getString(com.android.internal.R.string.day_of_week_medium_saturday),
- };
- sLongWeekdays = new String[] {
- r.getString(com.android.internal.R.string.day_of_week_long_sunday),
- r.getString(com.android.internal.R.string.day_of_week_long_monday),
- r.getString(com.android.internal.R.string.day_of_week_long_tuesday),
- r.getString(com.android.internal.R.string.day_of_week_long_wednesday),
- r.getString(com.android.internal.R.string.day_of_week_long_thursday),
- r.getString(com.android.internal.R.string.day_of_week_long_friday),
- r.getString(com.android.internal.R.string.day_of_week_long_saturday),
- };
+ sAm = localeData.amPm[0];
+ sPm = localeData.amPm[1];
+
+ sShortMonths = localeData.shortMonthNames;
+ sLongMonths = localeData.longMonthNames;
+ sLongStandaloneMonths = localeData.longStandAloneMonthNames;
+ sShortWeekdays = localeData.shortWeekdayNames;
+ sLongWeekdays = localeData.longWeekdayNames;
+
+ Resources r = Resources.getSystem();
sTimeOnlyFormat = r.getString(com.android.internal.R.string.time_of_day);
sDateOnlyFormat = r.getString(com.android.internal.R.string.month_day_year);
sDateTimeFormat = r.getString(com.android.internal.R.string.date_and_time);
- sAm = r.getString(com.android.internal.R.string.am);
- sPm = r.getString(com.android.internal.R.string.pm);
sLocale = locale;
}
diff --git a/core/java/android/util/NtpTrustedTime.java b/core/java/android/util/NtpTrustedTime.java
index 2179ff3..602a68c 100644
--- a/core/java/android/util/NtpTrustedTime.java
+++ b/core/java/android/util/NtpTrustedTime.java
@@ -59,10 +59,10 @@
final long defaultTimeout = res.getInteger(
com.android.internal.R.integer.config_ntpTimeout);
- final String secureServer = Settings.Secure.getString(
- resolver, Settings.Secure.NTP_SERVER);
- final long timeout = Settings.Secure.getLong(
- resolver, Settings.Secure.NTP_TIMEOUT, defaultTimeout);
+ final String secureServer = Settings.Global.getString(
+ resolver, Settings.Global.NTP_SERVER);
+ final long timeout = Settings.Global.getLong(
+ resolver, Settings.Global.NTP_TIMEOUT, defaultTimeout);
final String server = secureServer != null ? secureServer : defaultServer;
sSingleton = new NtpTrustedTime(server, timeout);
@@ -71,7 +71,7 @@
return sSingleton;
}
- /** {@inheritDoc} */
+ @Override
public boolean forceRefresh() {
if (mServer == null) {
// missing server, so no trusted time available
@@ -91,12 +91,12 @@
}
}
- /** {@inheritDoc} */
+ @Override
public boolean hasCache() {
return mHasCache;
}
- /** {@inheritDoc} */
+ @Override
public long getCacheAge() {
if (mHasCache) {
return SystemClock.elapsedRealtime() - mCachedNtpElapsedRealtime;
@@ -105,7 +105,7 @@
}
}
- /** {@inheritDoc} */
+ @Override
public long getCacheCertainty() {
if (mHasCache) {
return mCachedNtpCertainty;
@@ -114,7 +114,7 @@
}
}
- /** {@inheritDoc} */
+ @Override
public long currentTimeMillis() {
if (!mHasCache) {
throw new IllegalStateException("Missing authoritative time source");
diff --git a/core/java/android/view/accessibility/AccessibilityEvent.java b/core/java/android/view/accessibility/AccessibilityEvent.java
index 1a2a194..1500905 100644
--- a/core/java/android/view/accessibility/AccessibilityEvent.java
+++ b/core/java/android/view/accessibility/AccessibilityEvent.java
@@ -424,6 +424,28 @@
* </ul>
* </p>
* <p>
+ * <b>Touch interaction start</b> - represents the event of starting a touch
+ * interaction, which is the user starts touching the screen.</br>
+ * <em>Type:</em> {@link #TYPE_TOUCH_INTERACTION_START}</br>
+ * <em>Properties:</em></br>
+ * <ul>
+ * <li>{@link #getEventType()} - The type of the event.</li>
+ * </ul>
+ * <em>Note:</em> This event is fired only by the system and is not passed to the
+ * view tree to be populated.</br>
+ * </p>
+ * <p>
+ * <b>Touch interaction end</b> - represents the event of ending a touch
+ * interaction, which is the user stops touching the screen.</br>
+ * <em>Type:</em> {@link #TYPE_TOUCH_INTERACTION_END}</br>
+ * <em>Properties:</em></br>
+ * <ul>
+ * <li>{@link #getEventType()} - The type of the event.</li>
+ * </ul>
+ * <em>Note:</em> This event is fired only by the system and is not passed to the
+ * view tree to be populated.</br>
+ * </p>
+ * <p>
* <b>Touch exploration gesture start</b> - represents the event of starting a touch
* exploring gesture.</br>
* <em>Type:</em> {@link #TYPE_TOUCH_EXPLORATION_GESTURE_START}</br>
@@ -431,15 +453,8 @@
* <ul>
* <li>{@link #getEventType()} - The type of the event.</li>
* </ul>
- * <em>Note:</em> This event type is not dispatched to descendants though
- * {@link android.view.View#dispatchPopulateAccessibilityEvent(AccessibilityEvent)
- * View.dispatchPopulateAccessibilityEvent(AccessibilityEvent)}, hence the event
- * source {@link android.view.View} and the sub-tree rooted at it will not receive
- * calls to {@link android.view.View#onPopulateAccessibilityEvent(AccessibilityEvent)
- * View.onPopulateAccessibilityEvent(AccessibilityEvent)}. The preferred way to add
- * text content to such events is by setting the
- * {@link android.R.styleable#View_contentDescription contentDescription} of the source
- * view.</br>
+ * <em>Note:</em> This event is fired only by the system and is not passed to the
+ * view tree to be populated.</br>
* </p>
* <p>
* <b>Touch exploration gesture end</b> - represents the event of ending a touch
@@ -449,15 +464,30 @@
* <ul>
* <li>{@link #getEventType()} - The type of the event.</li>
* </ul>
- * <em>Note:</em> This event type is not dispatched to descendants though
- * {@link android.view.View#dispatchPopulateAccessibilityEvent(AccessibilityEvent)
- * View.dispatchPopulateAccessibilityEvent(AccessibilityEvent)}, hence the event
- * source {@link android.view.View} and the sub-tree rooted at it will not receive
- * calls to {@link android.view.View#onPopulateAccessibilityEvent(AccessibilityEvent)
- * View.onPopulateAccessibilityEvent(AccessibilityEvent)}. The preferred way to add
- * text content to such events is by setting the
- * {@link android.R.styleable#View_contentDescription contentDescription} of the source
- * view.</br>
+ * <em>Note:</em> This event is fired only by the system and is not passed to the
+ * view tree to be populated.</br>
+ * </p>
+ * <p>
+ * <b>Touch gesture detection start</b> - represents the event of starting a user
+ * gesture detection.</br>
+ * <em>Type:</em> {@link #TYPE_GESTURE_DETECTION_START}</br>
+ * <em>Properties:</em></br>
+ * <ul>
+ * <li>{@link #getEventType()} - The type of the event.</li>
+ * </ul>
+ * <em>Note:</em> This event is fired only by the system and is not passed to the
+ * view tree to be populated.</br>
+ * </p>
+ * <p>
+ * <b>Touch gesture detection end</b> - represents the event of ending a user
+ * gesture detection.</br>
+ * <em>Type:</em> {@link #TYPE_GESTURE_DETECTION_END}</br>
+ * <em>Properties:</em></br>
+ * <ul>
+ * <li>{@link #getEventType()} - The type of the event.</li>
+ * </ul>
+ * <em>Note:</em> This event is fired only by the system and is not passed to the
+ * view tree to be populated.</br>
* </p>
* <p>
* <b>MISCELLANEOUS TYPES</b></br>
@@ -610,6 +640,26 @@
public static final int TYPE_VIEW_TEXT_TRAVERSED_AT_MOVEMENT_GRANULARITY = 0x00020000;
/**
+ * Represents the event of beginning gesture detection.
+ */
+ public static final int TYPE_GESTURE_DETECTION_START = 0x00040000;
+
+ /**
+ * Represents the event of ending gesture detection.
+ */
+ public static final int TYPE_GESTURE_DETECTION_END = 0x00080000;
+
+ /**
+ * Represents the event of the user starting to touch the screen.
+ */
+ public static final int TYPE_TOUCH_INTERACTION_START = 0x00100000;
+
+ /**
+ * Represents the event of the user ending to touch the screen.
+ */
+ public static final int TYPE_TOUCH_INTERACTION_END = 0x00200000;
+
+ /**
* Mask for {@link AccessibilityEvent} all types.
*
* @see #TYPE_VIEW_CLICKED
@@ -628,6 +678,10 @@
* @see #TYPE_VIEW_TEXT_SELECTION_CHANGED
* @see #TYPE_ANNOUNCEMENT
* @see #TYPE_VIEW_TEXT_TRAVERSED_AT_MOVEMENT_GRANULARITY
+ * @see #TYPE_GESTURE_DETECTION_START
+ * @see #TYPE_GESTURE_DETECTION_END
+ * @see #TYPE_TOUCH_INTERACTION_START
+ * @see #TYPE_TOUCH_INTERACTION_END
*/
public static final int TYPES_ALL_MASK = 0xFFFFFFFF;
@@ -1120,6 +1174,14 @@
return "TYPE_VIEW_ACCESSIBILITY_FOCUS_CLEARED";
case TYPE_VIEW_TEXT_TRAVERSED_AT_MOVEMENT_GRANULARITY:
return "TYPE_CURRENT_AT_GRANULARITY_MOVEMENT_CHANGED";
+ case TYPE_GESTURE_DETECTION_START:
+ return "TYPE_GESTURE_DETECTION_START";
+ case TYPE_GESTURE_DETECTION_END:
+ return "TYPE_GESTURE_DETECTION_END";
+ case TYPE_TOUCH_INTERACTION_START:
+ return "TYPE_TOUCH_INTERACTION_START";
+ case TYPE_TOUCH_INTERACTION_END:
+ return "TYPE_TOUCH_INTERACTION_END";
default:
return null;
}
diff --git a/core/java/android/webkit/CacheManager.java b/core/java/android/webkit/CacheManager.java
index f0e6ff0..52f41e6 100644
--- a/core/java/android/webkit/CacheManager.java
+++ b/core/java/android/webkit/CacheManager.java
@@ -32,6 +32,7 @@
/**
* Manages the HTTP cache used by an application's {@link WebView} instances.
* @deprecated Access to the HTTP cache will be removed in a future release.
+ * @hide Since {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
// The class CacheManager provides the persistent cache of content that is
// received over the network. The component handles parsing of HTTP headers and
diff --git a/core/java/android/webkit/DateSorter.java b/core/java/android/webkit/DateSorter.java
index 0e8ad7e..82c13ae 100644
--- a/core/java/android/webkit/DateSorter.java
+++ b/core/java/android/webkit/DateSorter.java
@@ -21,6 +21,9 @@
import java.util.Calendar;
import java.util.Date;
+import java.util.Locale;
+
+import libcore.icu.LocaleData;
/**
* Sorts dates into the following groups:
@@ -63,8 +66,13 @@
mBins[3] = c.getTimeInMillis(); // One month ago
// build labels
- mLabels[0] = context.getText(com.android.internal.R.string.today).toString();
- mLabels[1] = context.getText(com.android.internal.R.string.yesterday).toString();
+ Locale locale = resources.getConfiguration().locale;
+ if (locale == null) {
+ locale = Locale.getDefault();
+ }
+ LocaleData localeData = LocaleData.get(locale);
+ mLabels[0] = localeData.today;
+ mLabels[1] = localeData.yesterday;
int resId = com.android.internal.R.plurals.last_num_days;
String format = resources.getQuantityString(resId, NUM_DAYS_AGO);
diff --git a/core/java/android/webkit/WebHistoryItem.java b/core/java/android/webkit/WebHistoryItem.java
index cc9afe0..9a588e4 100644
--- a/core/java/android/webkit/WebHistoryItem.java
+++ b/core/java/android/webkit/WebHistoryItem.java
@@ -38,6 +38,7 @@
* same object.
* @return The id for this item.
* @deprecated This method is now obsolete.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public int getId() {
diff --git a/core/java/android/webkit/WebSettings.java b/core/java/android/webkit/WebSettings.java
index a29ff37..be2d863 100644
--- a/core/java/android/webkit/WebSettings.java
+++ b/core/java/android/webkit/WebSettings.java
@@ -164,6 +164,7 @@
* is false.
*
* @deprecated This method is now obsolete.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public void setNavDump(boolean enabled) {
@@ -176,6 +177,7 @@
* @return whether dumping the navigation cache is enabled
* @see #setNavDump
* @deprecated This method is now obsolete.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public boolean getNavDump() {
@@ -377,6 +379,7 @@
*
* @see #setUseWebViewBackgroundForOverscrollBackground
* @deprecated This method is now obsolete.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public boolean getUseWebViewBackgroundForOverscrollBackground() {
@@ -518,6 +521,7 @@
* it now has no effect.
*
* @deprecated This setting now has no effect.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public synchronized void setUseDoubleTree(boolean use) {
@@ -529,6 +533,7 @@
* it now has no effect.
*
* @deprecated This setting now has no effect.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public synchronized boolean getUseDoubleTree() {
@@ -547,6 +552,7 @@
*
* @param ua the integer code for the user-agent string
* @deprecated Please use {@link #setUserAgentString} instead.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public synchronized void setUserAgent(int ua) {
@@ -565,6 +571,7 @@
* @return the integer code for the user-agent string
* @see #setUserAgent
* @deprecated Please use {@link #getUserAgentString} instead.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public synchronized int getUserAgent() {
@@ -1251,8 +1258,7 @@
/**
* Returns the default User-Agent used by a WebView.
* An instance of WebView could use a different User-Agent if a call
- * is made to {@link WebSettings#setUserAgent(int)} or
- * {@link WebSettings#setUserAgentString(String)}.
+ * is made to {@link WebSettings#setUserAgentString(String)}.
*
* @param context a Context object used to access application assets
*/
diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java
index e1c30f7..4202a7f 100644
--- a/core/java/android/webkit/WebView.java
+++ b/core/java/android/webkit/WebView.java
@@ -555,6 +555,7 @@
* Gets the visible height (in pixels) of the embedded title bar (if any).
*
* @deprecated This method is now obsolete.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
public int getVisibleTitleHeight() {
checkThread();
@@ -658,6 +659,7 @@
* Notifications are enabled by default.
*
* @deprecated This method is now obsolete.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public static void enablePlatformNotifications() {
@@ -670,6 +672,7 @@
* Notifications are enabled by default.
*
* @deprecated This method is now obsolete.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public static void disablePlatformNotifications() {
@@ -694,14 +697,11 @@
* {@link android.app.Activity#onSaveInstanceState}. Please note that this
* method no longer stores the display data for this WebView. The previous
* behavior could potentially leak files if {@link #restoreState} was never
- * called. See {@link #savePicture} and {@link #restorePicture} for saving
- * and restoring the display data.
+ * called.
*
* @param outState the Bundle to store this WebView's state
* @return the same copy of the back/forward list used to save the state. If
* saveState fails, the returned list will be null.
- * @see #savePicture
- * @see #restorePicture
*/
public WebBackForwardList saveState(Bundle outState) {
checkThread();
@@ -716,6 +716,7 @@
* overwritten with this WebView's picture data.
* @return true if the picture was successfully saved
* @deprecated This method is now obsolete.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public boolean savePicture(Bundle b, final File dest) {
@@ -732,6 +733,7 @@
* @param src the file where the picture data was stored
* @return true if the picture was successfully restored
* @deprecated This method is now obsolete.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public boolean restorePicture(Bundle b, File src) {
@@ -746,13 +748,10 @@
* it is called after this WebView has had a chance to build state (load
* pages, create a back/forward list, etc.) there may be undesirable
* side-effects. Please note that this method no longer restores the
- * display data for this WebView. See {@link #savePicture} and {@link
- * #restorePicture} for saving and restoring the display data.
+ * display data for this WebView.
*
* @param inState the incoming Bundle of state
* @return the restored back/forward list or null if restoreState failed
- * @see #savePicture
- * @see #restorePicture
*/
public WebBackForwardList restoreState(Bundle inState) {
checkThread();
@@ -1334,12 +1333,11 @@
}
/**
- * Highlights and scrolls to the next match found by {@link #findAll} or
+ * Highlights and scrolls to the next match found by
* {@link #findAllAsync}, wrapping around page boundaries as necessary.
- * Notifies any registered {@link FindListener}. If neither
- * {@link #findAll} nor {@link #findAllAsync(String)} has been called yet,
- * or if {@link #clearMatches} has been called since the last find
- * operation, this function does nothing.
+ * Notifies any registered {@link FindListener}. If {@link #findAllAsync(String)}
+ * has not been called yet, or if {@link #clearMatches} has been called since the
+ * last find operation, this function does nothing.
*
* @param forward the direction to search
* @see #setFindListener
@@ -1368,8 +1366,7 @@
/**
* Finds all instances of find on the page and highlights them,
* asynchronously. Notifies any registered {@link FindListener}.
- * Successive calls to this or {@link #findAll} will cancel any
- * pending searches.
+ * Successive calls to this will cancel any pending searches.
*
* @param find the string to find.
* @see #setFindListener
@@ -1423,7 +1420,7 @@
/**
* Clears the highlighting surrounding text matches created by
- * {@link #findAll} or {@link #findAllAsync}.
+ * {@link #findAllAsync}.
*/
public void clearMatches() {
checkThread();
@@ -1483,6 +1480,7 @@
*
* @param listener an implementation of WebView.PictureListener
* @deprecated This method is now obsolete.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public void setPictureListener(PictureListener listener) {
@@ -1590,6 +1588,7 @@
* functionality; it will be deprecated in the future.
*
* @deprecated This method is now obsolete.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public void emulateShiftHeld() {
@@ -1709,6 +1708,7 @@
/**
* @deprecated This method is now obsolete.
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
*/
@Deprecated
public void debugDump() {
diff --git a/core/java/android/webkit/WebViewDatabase.java b/core/java/android/webkit/WebViewDatabase.java
index 1987f53..62ec0d5 100644
--- a/core/java/android/webkit/WebViewDatabase.java
+++ b/core/java/android/webkit/WebViewDatabase.java
@@ -29,7 +29,9 @@
* </ul>
*/
public class WebViewDatabase {
- // TODO: deprecate/hide this.
+ /**
+ * @hide Since API level {@link android.os.Build.VERSION_CODES#JELLY_BEAN_MR1}
+ */
protected static final String LOGTAG = "webviewdatabase";
/**
diff --git a/core/java/android/widget/Switch.java b/core/java/android/widget/Switch.java
index 689bd02..e754c17 100644
--- a/core/java/android/widget/Switch.java
+++ b/core/java/android/widget/Switch.java
@@ -508,9 +508,9 @@
@Override
public void onPopulateAccessibilityEvent(AccessibilityEvent event) {
super.onPopulateAccessibilityEvent(event);
- CharSequence text = isChecked() ? mOnLayout.getText() : mOffLayout.getText();
- if (!TextUtils.isEmpty(text)) {
- event.getText().add(text);
+ Layout layout = isChecked() ? mOnLayout : mOffLayout;
+ if (layout != null && !TextUtils.isEmpty(layout.getText())) {
+ event.getText().add(layout.getText());
}
}
diff --git a/core/java/com/android/internal/widget/LockPatternUtils.java b/core/java/com/android/internal/widget/LockPatternUtils.java
index 4777c16..0710d96 100644
--- a/core/java/com/android/internal/widget/LockPatternUtils.java
+++ b/core/java/com/android/internal/widget/LockPatternUtils.java
@@ -20,6 +20,7 @@
import com.android.internal.telephony.ITelephony;
import com.google.android.collect.Lists;
+import android.app.ActivityManagerNative;
import android.app.admin.DevicePolicyManager;
import android.content.BroadcastReceiver;
import android.content.ContentResolver;
@@ -225,7 +226,11 @@
public int getCurrentUser() {
if (Process.myUid() == Process.SYSTEM_UID) {
- return mCurrentUserId;
+ try {
+ return ActivityManagerNative.getDefault().getCurrentUser().id;
+ } catch (RemoteException re) {
+ return mCurrentUserId;
+ }
} else {
throw new SecurityException("Only the system process can get the current user");
}
@@ -1001,6 +1006,17 @@
}
}
+ public int[] getUserDefinedWidgets() {
+ int appWidgetId = -1;
+ String appWidgetIdString = Settings.Secure.getString(
+ mContentResolver, Settings.Secure.LOCK_SCREEN_USER_SELECTED_APPWIDGET_ID);
+ if (appWidgetIdString != null) {
+ appWidgetId = (int) Integer.decode(appWidgetIdString);
+ }
+
+ return new int[] { appWidgetId };
+ }
+
private long getLong(String secureSettingKey, long defaultValue) {
try {
return getLockSettings().getLong(secureSettingKey, defaultValue,
diff --git a/core/jni/android/graphics/Paint.cpp b/core/jni/android/graphics/Paint.cpp
index edc9732..1f70c66 100644
--- a/core/jni/android/graphics/Paint.cpp
+++ b/core/jni/android/graphics/Paint.cpp
@@ -792,7 +792,7 @@
static void doTextBounds(JNIEnv* env, const jchar* text, int count,
jobject bounds, const SkPaint& paint)
{
- SkRect r;
+ SkRect r{0,0,0,0};
SkIRect ir;
sp<TextLayoutValue> value = TextLayoutEngine::getInstance().getValue(&paint,
diff --git a/core/jni/android_text_format_Time.cpp b/core/jni/android_text_format_Time.cpp
index bb09421..aa2c5f39 100644
--- a/core/jni/android_text_format_Time.cpp
+++ b/core/jni/android_text_format_Time.cpp
@@ -239,31 +239,36 @@
jobjectArray ja;
ja = (jobjectArray) env->GetStaticObjectField(timeClass, g_shortMonthsField);
for (int i = 0; i < 12; i++) {
+ // Calendar.JANUARY == 0.
js_mon[i] = (jstring) env->NewGlobalRef(env->GetObjectArrayElement(ja, i));
locale.mon[i] = env->GetStringUTFChars(js_mon[i], NULL);
}
ja = (jobjectArray) env->GetStaticObjectField(timeClass, g_longMonthsField);
for (int i = 0; i < 12; i++) {
+ // Calendar.JANUARY == 0.
js_month[i] = (jstring) env->NewGlobalRef(env->GetObjectArrayElement(ja, i));
locale.month[i] = env->GetStringUTFChars(js_month[i], NULL);
}
ja = (jobjectArray) env->GetStaticObjectField(timeClass, g_longStandaloneMonthsField);
for (int i = 0; i < 12; i++) {
+ // Calendar.JANUARY == 0.
js_standalone_month[i] = (jstring) env->NewGlobalRef(env->GetObjectArrayElement(ja, i));
locale.standalone_month[i] = env->GetStringUTFChars(js_standalone_month[i], NULL);
}
ja = (jobjectArray) env->GetStaticObjectField(timeClass, g_shortWeekdaysField);
for (int i = 0; i < 7; i++) {
- js_wday[i] = (jstring) env->NewGlobalRef(env->GetObjectArrayElement(ja, i));
+ // Calendar.SUNDAY == 1, and there's an empty string in element 0.
+ js_wday[i] = (jstring) env->NewGlobalRef(env->GetObjectArrayElement(ja, i + 1));
locale.wday[i] = env->GetStringUTFChars(js_wday[i], NULL);
}
ja = (jobjectArray) env->GetStaticObjectField(timeClass, g_longWeekdaysField);
for (int i = 0; i < 7; i++) {
- js_weekday[i] = (jstring) env->NewGlobalRef(env->GetObjectArrayElement(ja, i));
+ // Calendar.SUNDAY == 1, and there's an empty string in element 0.
+ js_weekday[i] = (jstring) env->NewGlobalRef(env->GetObjectArrayElement(ja, i + 1));
locale.weekday[i] = env->GetStringUTFChars(js_weekday[i], NULL);
}
diff --git a/core/res/res/values-af/donottranslate-cldr.xml b/core/res/res/values-af/donottranslate-cldr.xml
index 9d38717..77b7f7c 100644
--- a/core/res/res/values-af/donottranslate-cldr.xml
+++ b/core/res/res/values-af/donottranslate-cldr.xml
@@ -1,93 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">Januarie</string>
- <string name="month_long_standalone_february">Februarie</string>
- <string name="month_long_standalone_march">Maart</string>
- <string name="month_long_standalone_april">April</string>
- <string name="month_long_standalone_may">Mei</string>
- <string name="month_long_standalone_june">Junie</string>
- <string name="month_long_standalone_july">Julie</string>
- <string name="month_long_standalone_august">Augustus</string>
- <string name="month_long_standalone_september">September</string>
- <string name="month_long_standalone_october">Oktober</string>
- <string name="month_long_standalone_november">November</string>
- <string name="month_long_standalone_december">Desember</string>
-
- <string name="month_long_january">Januarie</string>
- <string name="month_long_february">Februarie</string>
- <string name="month_long_march">Maart</string>
- <string name="month_long_april">April</string>
- <string name="month_long_may">Mei</string>
- <string name="month_long_june">Junie</string>
- <string name="month_long_july">Julie</string>
- <string name="month_long_august">Augustus</string>
- <string name="month_long_september">September</string>
- <string name="month_long_october">Oktober</string>
- <string name="month_long_november">November</string>
- <string name="month_long_december">Desember</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mar</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">Mei</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Aug</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Okt</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Des</string>
-
- <string name="month_shortest_january">1</string>
- <string name="month_shortest_february">2</string>
- <string name="month_shortest_march">3</string>
- <string name="month_shortest_april">4</string>
- <string name="month_shortest_may">5</string>
- <string name="month_shortest_june">6</string>
- <string name="month_shortest_july">7</string>
- <string name="month_shortest_august">8</string>
- <string name="month_shortest_september">9</string>
- <string name="month_shortest_october">10</string>
- <string name="month_shortest_november">11</string>
- <string name="month_shortest_december">12</string>
-
- <string name="day_of_week_long_sunday">Sondag</string>
- <string name="day_of_week_long_monday">Maandag</string>
- <string name="day_of_week_long_tuesday">Dinsdag</string>
- <string name="day_of_week_long_wednesday">Woensdag</string>
- <string name="day_of_week_long_thursday">Donderdag</string>
- <string name="day_of_week_long_friday">Vrydag</string>
- <string name="day_of_week_long_saturday">Saterdag</string>
-
- <string name="day_of_week_medium_sunday">So</string>
- <string name="day_of_week_medium_monday">Ma</string>
- <string name="day_of_week_medium_tuesday">Di</string>
- <string name="day_of_week_medium_wednesday">Wo</string>
- <string name="day_of_week_medium_thursday">Do</string>
- <string name="day_of_week_medium_friday">Vr</string>
- <string name="day_of_week_medium_saturday">Sa</string>
-
- <string name="day_of_week_short_sunday">So</string>
- <string name="day_of_week_short_monday">Ma</string>
- <string name="day_of_week_short_tuesday">Di</string>
- <string name="day_of_week_short_wednesday">Wo</string>
- <string name="day_of_week_short_thursday">Do</string>
- <string name="day_of_week_short_friday">Vr</string>
- <string name="day_of_week_short_saturday">Sa</string>
-
- <string name="day_of_week_shortest_sunday">1</string>
- <string name="day_of_week_shortest_monday">2</string>
- <string name="day_of_week_shortest_tuesday">3</string>
- <string name="day_of_week_shortest_wednesday">4</string>
- <string name="day_of_week_shortest_thursday">5</string>
- <string name="day_of_week_shortest_friday">6</string>
- <string name="day_of_week_shortest_saturday">7</string>
-
- <string name="am">vm.</string>
- <string name="pm">nm.</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-am/donottranslate-cldr.xml b/core/res/res/values-am/donottranslate-cldr.xml
index 2319fbf..b3b76f9 100644
--- a/core/res/res/values-am/donottranslate-cldr.xml
+++ b/core/res/res/values-am/donottranslate-cldr.xml
@@ -1,93 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">ጃንዩወሪ</string>
- <string name="month_long_standalone_february">ፌብሩወሪ</string>
- <string name="month_long_standalone_march">ማርች</string>
- <string name="month_long_standalone_april">ኤፕረል</string>
- <string name="month_long_standalone_may">ሜይ</string>
- <string name="month_long_standalone_june">ጁን</string>
- <string name="month_long_standalone_july">ጁላይ</string>
- <string name="month_long_standalone_august">ኦገስት</string>
- <string name="month_long_standalone_september">ሴፕቴምበር</string>
- <string name="month_long_standalone_october">ኦክተውበር</string>
- <string name="month_long_standalone_november">ኖቬምበር</string>
- <string name="month_long_standalone_december">ዲሴምበር</string>
-
- <string name="month_long_january">ጃንዩወሪ</string>
- <string name="month_long_february">ፌብሩወሪ</string>
- <string name="month_long_march">ማርች</string>
- <string name="month_long_april">ኤፕረል</string>
- <string name="month_long_may">ሜይ</string>
- <string name="month_long_june">ጁን</string>
- <string name="month_long_july">ጁላይ</string>
- <string name="month_long_august">ኦገስት</string>
- <string name="month_long_september">ሴፕቴምበር</string>
- <string name="month_long_october">ኦክተውበር</string>
- <string name="month_long_november">ኖቬምበር</string>
- <string name="month_long_december">ዲሴምበር</string>
-
- <string name="month_medium_january">ጃንዩ</string>
- <string name="month_medium_february">ፌብሩ</string>
- <string name="month_medium_march">ማርች</string>
- <string name="month_medium_april">ኤፕረ</string>
- <string name="month_medium_may">ሜይ</string>
- <string name="month_medium_june">ጁን</string>
- <string name="month_medium_july">ጁላይ</string>
- <string name="month_medium_august">ኦገስ</string>
- <string name="month_medium_september">ሴፕቴ</string>
- <string name="month_medium_october">ኦክተ</string>
- <string name="month_medium_november">ኖቬም</string>
- <string name="month_medium_december">ዲሴም</string>
-
- <string name="month_shortest_january">ጃ</string>
- <string name="month_shortest_february">ፌ</string>
- <string name="month_shortest_march">ማ</string>
- <string name="month_shortest_april">ኤ</string>
- <string name="month_shortest_may">ሜ</string>
- <string name="month_shortest_june">ጁ</string>
- <string name="month_shortest_july">ጁ</string>
- <string name="month_shortest_august">ኦ</string>
- <string name="month_shortest_september">ሴ</string>
- <string name="month_shortest_october">ኦ</string>
- <string name="month_shortest_november">ኖ</string>
- <string name="month_shortest_december">ዲ</string>
-
- <string name="day_of_week_long_sunday">እሑድ</string>
- <string name="day_of_week_long_monday">ሰኞ</string>
- <string name="day_of_week_long_tuesday">ማክሰኞ</string>
- <string name="day_of_week_long_wednesday">ረቡዕ</string>
- <string name="day_of_week_long_thursday">ሐሙስ</string>
- <string name="day_of_week_long_friday">ዓርብ</string>
- <string name="day_of_week_long_saturday">ቅዳሜ</string>
-
- <string name="day_of_week_medium_sunday">እሑድ</string>
- <string name="day_of_week_medium_monday">ሰኞ</string>
- <string name="day_of_week_medium_tuesday">ማክሰ</string>
- <string name="day_of_week_medium_wednesday">ረቡዕ</string>
- <string name="day_of_week_medium_thursday">ሐሙስ</string>
- <string name="day_of_week_medium_friday">ዓርብ</string>
- <string name="day_of_week_medium_saturday">ቅዳሜ</string>
-
- <string name="day_of_week_short_sunday">እሑድ</string>
- <string name="day_of_week_short_monday">ሰኞ</string>
- <string name="day_of_week_short_tuesday">ማክሰ</string>
- <string name="day_of_week_short_wednesday">ረቡዕ</string>
- <string name="day_of_week_short_thursday">ሐሙስ</string>
- <string name="day_of_week_short_friday">ዓርብ</string>
- <string name="day_of_week_short_saturday">ቅዳሜ</string>
-
- <string name="day_of_week_shortest_sunday">እ</string>
- <string name="day_of_week_shortest_monday">ሰ</string>
- <string name="day_of_week_shortest_tuesday">ማ</string>
- <string name="day_of_week_shortest_wednesday">ረ</string>
- <string name="day_of_week_shortest_thursday">ሐ</string>
- <string name="day_of_week_shortest_friday">ዓ</string>
- <string name="day_of_week_shortest_saturday">ቅ</string>
-
- <string name="am">ጡዋት</string>
- <string name="pm">ከሳዓት</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-ar-rEG/donottranslate-cldr.xml b/core/res/res/values-ar-rEG/donottranslate-cldr.xml
index 57011d7..155480d 100644
--- a/core/res/res/values-ar-rEG/donottranslate-cldr.xml
+++ b/core/res/res/values-ar-rEG/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">يناير</string>
- <string name="month_long_standalone_february">فبراير</string>
- <string name="month_long_standalone_march">مارس</string>
- <string name="month_long_standalone_april">أبريل</string>
- <string name="month_long_standalone_may">مايو</string>
- <string name="month_long_standalone_june">يونيو</string>
- <string name="month_long_standalone_july">يوليو</string>
- <string name="month_long_standalone_august">أغسطس</string>
- <string name="month_long_standalone_september">سبتمبر</string>
- <string name="month_long_standalone_october">أكتوبر</string>
- <string name="month_long_standalone_november">نوفمبر</string>
- <string name="month_long_standalone_december">ديسمبر</string>
-
- <string name="month_long_january">يناير</string>
- <string name="month_long_february">فبراير</string>
- <string name="month_long_march">مارس</string>
- <string name="month_long_april">أبريل</string>
- <string name="month_long_may">مايو</string>
- <string name="month_long_june">يونيو</string>
- <string name="month_long_july">يوليو</string>
- <string name="month_long_august">أغسطس</string>
- <string name="month_long_september">سبتمبر</string>
- <string name="month_long_october">أكتوبر</string>
- <string name="month_long_november">نوفمبر</string>
- <string name="month_long_december">ديسمبر</string>
-
- <string name="month_medium_january">يناير</string>
- <string name="month_medium_february">فبراير</string>
- <string name="month_medium_march">مارس</string>
- <string name="month_medium_april">أبريل</string>
- <string name="month_medium_may">مايو</string>
- <string name="month_medium_june">يونيو</string>
- <string name="month_medium_july">يوليو</string>
- <string name="month_medium_august">أغسطس</string>
- <string name="month_medium_september">سبتمبر</string>
- <string name="month_medium_october">أكتوبر</string>
- <string name="month_medium_november">نوفمبر</string>
- <string name="month_medium_december">ديسمبر</string>
-
- <string name="month_shortest_january">ي</string>
- <string name="month_shortest_february">ف</string>
- <string name="month_shortest_march">م</string>
- <string name="month_shortest_april">أ</string>
- <string name="month_shortest_may">و</string>
- <string name="month_shortest_june">ن</string>
- <string name="month_shortest_july">ل</string>
- <string name="month_shortest_august">غ</string>
- <string name="month_shortest_september">س</string>
- <string name="month_shortest_october">ك</string>
- <string name="month_shortest_november">ب</string>
- <string name="month_shortest_december">د</string>
-
- <string name="day_of_week_long_sunday">الأحد</string>
- <string name="day_of_week_long_monday">الإثنين</string>
- <string name="day_of_week_long_tuesday">الثلاثاء</string>
- <string name="day_of_week_long_wednesday">الأربعاء</string>
- <string name="day_of_week_long_thursday">الخميس</string>
- <string name="day_of_week_long_friday">الجمعة</string>
- <string name="day_of_week_long_saturday">السبت</string>
-
- <string name="day_of_week_medium_sunday">أحد</string>
- <string name="day_of_week_medium_monday">إثنين</string>
- <string name="day_of_week_medium_tuesday">ثلاثاء</string>
- <string name="day_of_week_medium_wednesday">أربعاء</string>
- <string name="day_of_week_medium_thursday">خميس</string>
- <string name="day_of_week_medium_friday">جمعة</string>
- <string name="day_of_week_medium_saturday">سبت</string>
-
- <string name="day_of_week_short_sunday">أحد</string>
- <string name="day_of_week_short_monday">إثنين</string>
- <string name="day_of_week_short_tuesday">ثلاثاء</string>
- <string name="day_of_week_short_wednesday">أربعاء</string>
- <string name="day_of_week_short_thursday">خميس</string>
- <string name="day_of_week_short_friday">جمعة</string>
- <string name="day_of_week_short_saturday">سبت</string>
-
- <string name="day_of_week_shortest_sunday">ح</string>
- <string name="day_of_week_shortest_monday">ن</string>
- <string name="day_of_week_shortest_tuesday">ث</string>
- <string name="day_of_week_shortest_wednesday">ر</string>
- <string name="day_of_week_shortest_thursday">خ</string>
- <string name="day_of_week_shortest_friday">ج</string>
- <string name="day_of_week_shortest_saturday">س</string>
-
- <string name="am">ص</string>
- <string name="pm">م</string>
- <string name="yesterday">أمس</string>
- <string name="today">اليوم</string>
- <string name="tomorrow">غدًا</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-ar/donottranslate-cldr.xml b/core/res/res/values-ar/donottranslate-cldr.xml
index 0b9da23..135963b 100644
--- a/core/res/res/values-ar/donottranslate-cldr.xml
+++ b/core/res/res/values-ar/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">يناير</string>
- <string name="month_long_standalone_february">فبراير</string>
- <string name="month_long_standalone_march">مارس</string>
- <string name="month_long_standalone_april">أبريل</string>
- <string name="month_long_standalone_may">مايو</string>
- <string name="month_long_standalone_june">يونيو</string>
- <string name="month_long_standalone_july">يوليو</string>
- <string name="month_long_standalone_august">أغسطس</string>
- <string name="month_long_standalone_september">سبتمبر</string>
- <string name="month_long_standalone_october">أكتوبر</string>
- <string name="month_long_standalone_november">نوفمبر</string>
- <string name="month_long_standalone_december">ديسمبر</string>
-
- <string name="month_long_january">يناير</string>
- <string name="month_long_february">فبراير</string>
- <string name="month_long_march">مارس</string>
- <string name="month_long_april">أبريل</string>
- <string name="month_long_may">مايو</string>
- <string name="month_long_june">يونيو</string>
- <string name="month_long_july">يوليو</string>
- <string name="month_long_august">أغسطس</string>
- <string name="month_long_september">سبتمبر</string>
- <string name="month_long_october">أكتوبر</string>
- <string name="month_long_november">نوفمبر</string>
- <string name="month_long_december">ديسمبر</string>
-
- <string name="month_medium_january">يناير</string>
- <string name="month_medium_february">فبراير</string>
- <string name="month_medium_march">مارس</string>
- <string name="month_medium_april">أبريل</string>
- <string name="month_medium_may">مايو</string>
- <string name="month_medium_june">يونيو</string>
- <string name="month_medium_july">يوليو</string>
- <string name="month_medium_august">أغسطس</string>
- <string name="month_medium_september">سبتمبر</string>
- <string name="month_medium_october">أكتوبر</string>
- <string name="month_medium_november">نوفمبر</string>
- <string name="month_medium_december">ديسمبر</string>
-
- <string name="month_shortest_january">ي</string>
- <string name="month_shortest_february">ف</string>
- <string name="month_shortest_march">م</string>
- <string name="month_shortest_april">أ</string>
- <string name="month_shortest_may">و</string>
- <string name="month_shortest_june">ن</string>
- <string name="month_shortest_july">ل</string>
- <string name="month_shortest_august">غ</string>
- <string name="month_shortest_september">س</string>
- <string name="month_shortest_october">ك</string>
- <string name="month_shortest_november">ب</string>
- <string name="month_shortest_december">د</string>
-
- <string name="day_of_week_long_sunday">الأحد</string>
- <string name="day_of_week_long_monday">الإثنين</string>
- <string name="day_of_week_long_tuesday">الثلاثاء</string>
- <string name="day_of_week_long_wednesday">الأربعاء</string>
- <string name="day_of_week_long_thursday">الخميس</string>
- <string name="day_of_week_long_friday">الجمعة</string>
- <string name="day_of_week_long_saturday">السبت</string>
-
- <string name="day_of_week_medium_sunday">أحد</string>
- <string name="day_of_week_medium_monday">إثنين</string>
- <string name="day_of_week_medium_tuesday">ثلاثاء</string>
- <string name="day_of_week_medium_wednesday">أربعاء</string>
- <string name="day_of_week_medium_thursday">خميس</string>
- <string name="day_of_week_medium_friday">جمعة</string>
- <string name="day_of_week_medium_saturday">سبت</string>
-
- <string name="day_of_week_short_sunday">أحد</string>
- <string name="day_of_week_short_monday">إثنين</string>
- <string name="day_of_week_short_tuesday">ثلاثاء</string>
- <string name="day_of_week_short_wednesday">أربعاء</string>
- <string name="day_of_week_short_thursday">خميس</string>
- <string name="day_of_week_short_friday">جمعة</string>
- <string name="day_of_week_short_saturday">سبت</string>
-
- <string name="day_of_week_shortest_sunday">ح</string>
- <string name="day_of_week_shortest_monday">ن</string>
- <string name="day_of_week_shortest_tuesday">ث</string>
- <string name="day_of_week_shortest_wednesday">ر</string>
- <string name="day_of_week_shortest_thursday">خ</string>
- <string name="day_of_week_shortest_friday">ج</string>
- <string name="day_of_week_shortest_saturday">س</string>
-
- <string name="am">ص</string>
- <string name="pm">م</string>
- <string name="yesterday">أمس</string>
- <string name="today">اليوم</string>
- <string name="tomorrow">غدًا</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-be/donottranslate-cldr.xml b/core/res/res/values-be/donottranslate-cldr.xml
index 365e60d..a346c83 100644
--- a/core/res/res/values-be/donottranslate-cldr.xml
+++ b/core/res/res/values-be/donottranslate-cldr.xml
@@ -1,85 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_may">травень</string>
-
- <string name="month_long_january">студзень</string>
- <string name="month_long_february">люты</string>
- <string name="month_long_march">сакавік</string>
- <string name="month_long_april">красавік</string>
- <string name="month_long_may">май</string>
- <string name="month_long_june">чэрвень</string>
- <string name="month_long_july">ліпень</string>
- <string name="month_long_august">жнівень</string>
- <string name="month_long_september">верасень</string>
- <string name="month_long_october">кастрычнік</string>
- <string name="month_long_november">лістапад</string>
- <string name="month_long_december">снежань</string>
-
- <string name="month_medium_january">сту</string>
- <string name="month_medium_february">лют</string>
- <string name="month_medium_march">сак</string>
- <string name="month_medium_april">кра</string>
- <string name="month_medium_may">май</string>
- <string name="month_medium_june">чэр</string>
- <string name="month_medium_july">ліп</string>
- <string name="month_medium_august">жні</string>
- <string name="month_medium_september">вер</string>
- <string name="month_medium_october">кас</string>
- <string name="month_medium_november">ліс</string>
- <string name="month_medium_december">сне</string>
-
- <string name="month_shortest_january">с</string>
- <string name="month_shortest_february">л</string>
- <string name="month_shortest_march">с</string>
- <string name="month_shortest_april">к</string>
- <string name="month_shortest_may">м</string>
- <string name="month_shortest_june">ч</string>
- <string name="month_shortest_july">л</string>
- <string name="month_shortest_august">ж</string>
- <string name="month_shortest_september">в</string>
- <string name="month_shortest_october">к</string>
- <string name="month_shortest_november">л</string>
- <string name="month_shortest_december">с</string>
-
- <string name="day_of_week_long_sunday">нядзеля</string>
- <string name="day_of_week_long_monday">панядзелак</string>
- <string name="day_of_week_long_tuesday">аўторак</string>
- <string name="day_of_week_long_wednesday">серада</string>
- <string name="day_of_week_long_thursday">чацвер</string>
- <string name="day_of_week_long_friday">пятніца</string>
- <string name="day_of_week_long_saturday">субота</string>
-
- <string name="day_of_week_medium_sunday">нд</string>
- <string name="day_of_week_medium_monday">пн</string>
- <string name="day_of_week_medium_tuesday">аў</string>
- <string name="day_of_week_medium_wednesday">ср</string>
- <string name="day_of_week_medium_thursday">чц</string>
- <string name="day_of_week_medium_friday">пт</string>
- <string name="day_of_week_medium_saturday">сб</string>
-
- <string name="day_of_week_short_sunday">нд</string>
- <string name="day_of_week_short_monday">пн</string>
- <string name="day_of_week_short_tuesday">аў</string>
- <string name="day_of_week_short_wednesday">ср</string>
- <string name="day_of_week_short_thursday">чц</string>
- <string name="day_of_week_short_friday">пт</string>
- <string name="day_of_week_short_saturday">сб</string>
-
- <string name="day_of_week_shortest_sunday">н</string>
- <string name="day_of_week_shortest_monday">п</string>
- <string name="day_of_week_shortest_tuesday">а</string>
- <string name="day_of_week_shortest_wednesday">с</string>
- <string name="day_of_week_shortest_thursday">ч</string>
- <string name="day_of_week_shortest_friday">п</string>
- <string name="day_of_week_shortest_saturday">с</string>
-
- <string name="am">да палудня</string>
- <string name="pm">пасля палудня</string>
- <string name="yesterday">учора</string>
- <string name="today">сёння</string>
- <string name="tomorrow">заўтра</string>
-
<string name="hour_minute_24">%-k.%M</string>
<string name="hour_minute_ampm">%-l.%M %p</string>
<string name="hour_minute_cap_ampm">%-l.%M %p</string>
diff --git a/core/res/res/values-bg/donottranslate-cldr.xml b/core/res/res/values-bg/donottranslate-cldr.xml
index 972d661..9c1ae2c 100644
--- a/core/res/res/values-bg/donottranslate-cldr.xml
+++ b/core/res/res/values-bg/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">януари</string>
- <string name="month_long_standalone_february">февруари</string>
- <string name="month_long_standalone_march">март</string>
- <string name="month_long_standalone_april">април</string>
- <string name="month_long_standalone_may">май</string>
- <string name="month_long_standalone_june">юни</string>
- <string name="month_long_standalone_july">юли</string>
- <string name="month_long_standalone_august">август</string>
- <string name="month_long_standalone_september">септември</string>
- <string name="month_long_standalone_october">октомври</string>
- <string name="month_long_standalone_november">ноември</string>
- <string name="month_long_standalone_december">декември</string>
-
- <string name="month_long_january">януари</string>
- <string name="month_long_february">февруари</string>
- <string name="month_long_march">март</string>
- <string name="month_long_april">април</string>
- <string name="month_long_may">май</string>
- <string name="month_long_june">юни</string>
- <string name="month_long_july">юли</string>
- <string name="month_long_august">август</string>
- <string name="month_long_september">септември</string>
- <string name="month_long_october">октомври</string>
- <string name="month_long_november">ноември</string>
- <string name="month_long_december">декември</string>
-
- <string name="month_medium_january">ян.</string>
- <string name="month_medium_february">февр.</string>
- <string name="month_medium_march">март</string>
- <string name="month_medium_april">апр.</string>
- <string name="month_medium_may">май</string>
- <string name="month_medium_june">юни</string>
- <string name="month_medium_july">юли</string>
- <string name="month_medium_august">авг.</string>
- <string name="month_medium_september">септ.</string>
- <string name="month_medium_october">окт.</string>
- <string name="month_medium_november">ноем.</string>
- <string name="month_medium_december">дек.</string>
-
- <string name="month_shortest_january">я</string>
- <string name="month_shortest_february">ф</string>
- <string name="month_shortest_march">м</string>
- <string name="month_shortest_april">а</string>
- <string name="month_shortest_may">м</string>
- <string name="month_shortest_june">ю</string>
- <string name="month_shortest_july">ю</string>
- <string name="month_shortest_august">а</string>
- <string name="month_shortest_september">с</string>
- <string name="month_shortest_october">о</string>
- <string name="month_shortest_november">н</string>
- <string name="month_shortest_december">д</string>
-
- <string name="day_of_week_long_sunday">неделя</string>
- <string name="day_of_week_long_monday">понеделник</string>
- <string name="day_of_week_long_tuesday">вторник</string>
- <string name="day_of_week_long_wednesday">сряда</string>
- <string name="day_of_week_long_thursday">четвъртък</string>
- <string name="day_of_week_long_friday">петък</string>
- <string name="day_of_week_long_saturday">събота</string>
-
- <string name="day_of_week_medium_sunday">нд</string>
- <string name="day_of_week_medium_monday">пн</string>
- <string name="day_of_week_medium_tuesday">вт</string>
- <string name="day_of_week_medium_wednesday">ср</string>
- <string name="day_of_week_medium_thursday">чт</string>
- <string name="day_of_week_medium_friday">пт</string>
- <string name="day_of_week_medium_saturday">сб</string>
-
- <string name="day_of_week_short_sunday">нд</string>
- <string name="day_of_week_short_monday">пн</string>
- <string name="day_of_week_short_tuesday">вт</string>
- <string name="day_of_week_short_wednesday">ср</string>
- <string name="day_of_week_short_thursday">чт</string>
- <string name="day_of_week_short_friday">пт</string>
- <string name="day_of_week_short_saturday">сб</string>
-
- <string name="day_of_week_shortest_sunday">н</string>
- <string name="day_of_week_shortest_monday">п</string>
- <string name="day_of_week_shortest_tuesday">в</string>
- <string name="day_of_week_shortest_wednesday">с</string>
- <string name="day_of_week_shortest_thursday">ч</string>
- <string name="day_of_week_shortest_friday">п</string>
- <string name="day_of_week_shortest_saturday">с</string>
-
- <string name="am">пр. об.</string>
- <string name="pm">сл. об.</string>
- <string name="yesterday">Вчера</string>
- <string name="today">Днес</string>
- <string name="tomorrow">Утре</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-ca-rES/donottranslate-cldr.xml b/core/res/res/values-ca-rES/donottranslate-cldr.xml
index 113133d..8feeeed 100644
--- a/core/res/res/values-ca-rES/donottranslate-cldr.xml
+++ b/core/res/res/values-ca-rES/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">gener</string>
- <string name="month_long_standalone_february">febrer</string>
- <string name="month_long_standalone_march">març</string>
- <string name="month_long_standalone_april">abril</string>
- <string name="month_long_standalone_may">maig</string>
- <string name="month_long_standalone_june">juny</string>
- <string name="month_long_standalone_july">juliol</string>
- <string name="month_long_standalone_august">agost</string>
- <string name="month_long_standalone_september">setembre</string>
- <string name="month_long_standalone_october">octubre</string>
- <string name="month_long_standalone_november">novembre</string>
- <string name="month_long_standalone_december">desembre</string>
-
- <string name="month_long_january">gener</string>
- <string name="month_long_february">febrer</string>
- <string name="month_long_march">març</string>
- <string name="month_long_april">abril</string>
- <string name="month_long_may">maig</string>
- <string name="month_long_june">juny</string>
- <string name="month_long_july">juliol</string>
- <string name="month_long_august">agost</string>
- <string name="month_long_september">setembre</string>
- <string name="month_long_october">octubre</string>
- <string name="month_long_november">novembre</string>
- <string name="month_long_december">desembre</string>
-
- <string name="month_medium_january">gen.</string>
- <string name="month_medium_february">febr.</string>
- <string name="month_medium_march">març</string>
- <string name="month_medium_april">abr.</string>
- <string name="month_medium_may">maig</string>
- <string name="month_medium_june">juny</string>
- <string name="month_medium_july">jul.</string>
- <string name="month_medium_august">ag.</string>
- <string name="month_medium_september">set.</string>
- <string name="month_medium_october">oct.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">des.</string>
-
- <string name="month_shortest_january">g</string>
- <string name="month_shortest_february">f</string>
- <string name="month_shortest_march">m</string>
- <string name="month_shortest_april">a</string>
- <string name="month_shortest_may">m</string>
- <string name="month_shortest_june">j</string>
- <string name="month_shortest_july">j</string>
- <string name="month_shortest_august">a</string>
- <string name="month_shortest_september">s</string>
- <string name="month_shortest_october">o</string>
- <string name="month_shortest_november">n</string>
- <string name="month_shortest_december">d</string>
-
- <string name="day_of_week_long_sunday">diumenge</string>
- <string name="day_of_week_long_monday">dilluns</string>
- <string name="day_of_week_long_tuesday">dimarts</string>
- <string name="day_of_week_long_wednesday">dimecres</string>
- <string name="day_of_week_long_thursday">dijous</string>
- <string name="day_of_week_long_friday">divendres</string>
- <string name="day_of_week_long_saturday">dissabte</string>
-
- <string name="day_of_week_medium_sunday">dg.</string>
- <string name="day_of_week_medium_monday">dl.</string>
- <string name="day_of_week_medium_tuesday">dt.</string>
- <string name="day_of_week_medium_wednesday">dc.</string>
- <string name="day_of_week_medium_thursday">dj.</string>
- <string name="day_of_week_medium_friday">dv.</string>
- <string name="day_of_week_medium_saturday">ds.</string>
-
- <string name="day_of_week_short_sunday">dg.</string>
- <string name="day_of_week_short_monday">dl.</string>
- <string name="day_of_week_short_tuesday">dt.</string>
- <string name="day_of_week_short_wednesday">dc.</string>
- <string name="day_of_week_short_thursday">dj.</string>
- <string name="day_of_week_short_friday">dv.</string>
- <string name="day_of_week_short_saturday">ds.</string>
-
- <string name="day_of_week_shortest_sunday">g</string>
- <string name="day_of_week_shortest_monday">l</string>
- <string name="day_of_week_shortest_tuesday">t</string>
- <string name="day_of_week_shortest_wednesday">c</string>
- <string name="day_of_week_shortest_thursday">j</string>
- <string name="day_of_week_shortest_friday">v</string>
- <string name="day_of_week_shortest_saturday">s</string>
-
- <string name="am">a.m.</string>
- <string name="pm">p.m.</string>
- <string name="yesterday">ahir</string>
- <string name="today">avui</string>
- <string name="tomorrow">demà</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-ca/donottranslate-cldr.xml b/core/res/res/values-ca/donottranslate-cldr.xml
index 03cf69d..3fda852 100644
--- a/core/res/res/values-ca/donottranslate-cldr.xml
+++ b/core/res/res/values-ca/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">gener</string>
- <string name="month_long_standalone_february">febrer</string>
- <string name="month_long_standalone_march">març</string>
- <string name="month_long_standalone_april">abril</string>
- <string name="month_long_standalone_may">maig</string>
- <string name="month_long_standalone_june">juny</string>
- <string name="month_long_standalone_july">juliol</string>
- <string name="month_long_standalone_august">agost</string>
- <string name="month_long_standalone_september">setembre</string>
- <string name="month_long_standalone_october">octubre</string>
- <string name="month_long_standalone_november">novembre</string>
- <string name="month_long_standalone_december">desembre</string>
-
- <string name="month_long_january">gener</string>
- <string name="month_long_february">febrer</string>
- <string name="month_long_march">març</string>
- <string name="month_long_april">abril</string>
- <string name="month_long_may">maig</string>
- <string name="month_long_june">juny</string>
- <string name="month_long_july">juliol</string>
- <string name="month_long_august">agost</string>
- <string name="month_long_september">setembre</string>
- <string name="month_long_october">octubre</string>
- <string name="month_long_november">novembre</string>
- <string name="month_long_december">desembre</string>
-
- <string name="month_medium_january">gen.</string>
- <string name="month_medium_february">febr.</string>
- <string name="month_medium_march">març</string>
- <string name="month_medium_april">abr.</string>
- <string name="month_medium_may">maig</string>
- <string name="month_medium_june">juny</string>
- <string name="month_medium_july">jul.</string>
- <string name="month_medium_august">ag.</string>
- <string name="month_medium_september">set.</string>
- <string name="month_medium_october">oct.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">des.</string>
-
- <string name="month_shortest_january">g</string>
- <string name="month_shortest_february">f</string>
- <string name="month_shortest_march">m</string>
- <string name="month_shortest_april">a</string>
- <string name="month_shortest_may">m</string>
- <string name="month_shortest_june">j</string>
- <string name="month_shortest_july">j</string>
- <string name="month_shortest_august">a</string>
- <string name="month_shortest_september">s</string>
- <string name="month_shortest_october">o</string>
- <string name="month_shortest_november">n</string>
- <string name="month_shortest_december">d</string>
-
- <string name="day_of_week_long_sunday">diumenge</string>
- <string name="day_of_week_long_monday">dilluns</string>
- <string name="day_of_week_long_tuesday">dimarts</string>
- <string name="day_of_week_long_wednesday">dimecres</string>
- <string name="day_of_week_long_thursday">dijous</string>
- <string name="day_of_week_long_friday">divendres</string>
- <string name="day_of_week_long_saturday">dissabte</string>
-
- <string name="day_of_week_medium_sunday">dg.</string>
- <string name="day_of_week_medium_monday">dl.</string>
- <string name="day_of_week_medium_tuesday">dt.</string>
- <string name="day_of_week_medium_wednesday">dc.</string>
- <string name="day_of_week_medium_thursday">dj.</string>
- <string name="day_of_week_medium_friday">dv.</string>
- <string name="day_of_week_medium_saturday">ds.</string>
-
- <string name="day_of_week_short_sunday">dg.</string>
- <string name="day_of_week_short_monday">dl.</string>
- <string name="day_of_week_short_tuesday">dt.</string>
- <string name="day_of_week_short_wednesday">dc.</string>
- <string name="day_of_week_short_thursday">dj.</string>
- <string name="day_of_week_short_friday">dv.</string>
- <string name="day_of_week_short_saturday">ds.</string>
-
- <string name="day_of_week_shortest_sunday">g</string>
- <string name="day_of_week_shortest_monday">l</string>
- <string name="day_of_week_shortest_tuesday">t</string>
- <string name="day_of_week_shortest_wednesday">c</string>
- <string name="day_of_week_shortest_thursday">j</string>
- <string name="day_of_week_shortest_friday">v</string>
- <string name="day_of_week_shortest_saturday">s</string>
-
- <string name="am">a.m.</string>
- <string name="pm">p.m.</string>
- <string name="yesterday">ahir</string>
- <string name="today">avui</string>
- <string name="tomorrow">demà</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-cs/donottranslate-cldr.xml b/core/res/res/values-cs/donottranslate-cldr.xml
index 59b82d3..ff7902d 100644
--- a/core/res/res/values-cs/donottranslate-cldr.xml
+++ b/core/res/res/values-cs/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">leden</string>
- <string name="month_long_standalone_february">únor</string>
- <string name="month_long_standalone_march">březen</string>
- <string name="month_long_standalone_april">duben</string>
- <string name="month_long_standalone_may">květen</string>
- <string name="month_long_standalone_june">červen</string>
- <string name="month_long_standalone_july">červenec</string>
- <string name="month_long_standalone_august">srpen</string>
- <string name="month_long_standalone_september">září</string>
- <string name="month_long_standalone_october">říjen</string>
- <string name="month_long_standalone_november">listopad</string>
- <string name="month_long_standalone_december">prosinec</string>
-
- <string name="month_long_january">ledna</string>
- <string name="month_long_february">února</string>
- <string name="month_long_march">března</string>
- <string name="month_long_april">dubna</string>
- <string name="month_long_may">května</string>
- <string name="month_long_june">června</string>
- <string name="month_long_july">července</string>
- <string name="month_long_august">srpna</string>
- <string name="month_long_september">září</string>
- <string name="month_long_october">října</string>
- <string name="month_long_november">listopadu</string>
- <string name="month_long_december">prosince</string>
-
- <string name="month_medium_january">1.</string>
- <string name="month_medium_february">2.</string>
- <string name="month_medium_march">3.</string>
- <string name="month_medium_april">4.</string>
- <string name="month_medium_may">5.</string>
- <string name="month_medium_june">6.</string>
- <string name="month_medium_july">7.</string>
- <string name="month_medium_august">8.</string>
- <string name="month_medium_september">9.</string>
- <string name="month_medium_october">10.</string>
- <string name="month_medium_november">11.</string>
- <string name="month_medium_december">12.</string>
-
- <string name="month_shortest_january">l</string>
- <string name="month_shortest_february">ú</string>
- <string name="month_shortest_march">b</string>
- <string name="month_shortest_april">d</string>
- <string name="month_shortest_may">k</string>
- <string name="month_shortest_june">č</string>
- <string name="month_shortest_july">č</string>
- <string name="month_shortest_august">s</string>
- <string name="month_shortest_september">z</string>
- <string name="month_shortest_october">ř</string>
- <string name="month_shortest_november">l</string>
- <string name="month_shortest_december">p</string>
-
- <string name="day_of_week_long_sunday">neděle</string>
- <string name="day_of_week_long_monday">pondělí</string>
- <string name="day_of_week_long_tuesday">úterý</string>
- <string name="day_of_week_long_wednesday">středa</string>
- <string name="day_of_week_long_thursday">čtvrtek</string>
- <string name="day_of_week_long_friday">pátek</string>
- <string name="day_of_week_long_saturday">sobota</string>
-
- <string name="day_of_week_medium_sunday">ne</string>
- <string name="day_of_week_medium_monday">po</string>
- <string name="day_of_week_medium_tuesday">út</string>
- <string name="day_of_week_medium_wednesday">st</string>
- <string name="day_of_week_medium_thursday">čt</string>
- <string name="day_of_week_medium_friday">pá</string>
- <string name="day_of_week_medium_saturday">so</string>
-
- <string name="day_of_week_short_sunday">ne</string>
- <string name="day_of_week_short_monday">po</string>
- <string name="day_of_week_short_tuesday">út</string>
- <string name="day_of_week_short_wednesday">st</string>
- <string name="day_of_week_short_thursday">čt</string>
- <string name="day_of_week_short_friday">pá</string>
- <string name="day_of_week_short_saturday">so</string>
-
- <string name="day_of_week_shortest_sunday">N</string>
- <string name="day_of_week_shortest_monday">P</string>
- <string name="day_of_week_shortest_tuesday">Ú</string>
- <string name="day_of_week_shortest_wednesday">S</string>
- <string name="day_of_week_shortest_thursday">Č</string>
- <string name="day_of_week_shortest_friday">P</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">dop.</string>
- <string name="pm">odp.</string>
- <string name="yesterday">Včera</string>
- <string name="today">Dnes</string>
- <string name="tomorrow">Zítra</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-da/donottranslate-cldr.xml b/core/res/res/values-da/donottranslate-cldr.xml
index 1dfc96c..d5b9878 100644
--- a/core/res/res/values-da/donottranslate-cldr.xml
+++ b/core/res/res/values-da/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">januar</string>
- <string name="month_long_standalone_february">februar</string>
- <string name="month_long_standalone_march">marts</string>
- <string name="month_long_standalone_april">april</string>
- <string name="month_long_standalone_may">maj</string>
- <string name="month_long_standalone_june">juni</string>
- <string name="month_long_standalone_july">juli</string>
- <string name="month_long_standalone_august">august</string>
- <string name="month_long_standalone_september">september</string>
- <string name="month_long_standalone_october">oktober</string>
- <string name="month_long_standalone_november">november</string>
- <string name="month_long_standalone_december">december</string>
-
- <string name="month_long_january">januar</string>
- <string name="month_long_february">februar</string>
- <string name="month_long_march">marts</string>
- <string name="month_long_april">april</string>
- <string name="month_long_may">maj</string>
- <string name="month_long_june">juni</string>
- <string name="month_long_july">juli</string>
- <string name="month_long_august">august</string>
- <string name="month_long_september">september</string>
- <string name="month_long_october">oktober</string>
- <string name="month_long_november">november</string>
- <string name="month_long_december">december</string>
-
- <string name="month_medium_january">jan.</string>
- <string name="month_medium_february">feb.</string>
- <string name="month_medium_march">mar.</string>
- <string name="month_medium_april">apr.</string>
- <string name="month_medium_may">maj</string>
- <string name="month_medium_june">jun.</string>
- <string name="month_medium_july">jul.</string>
- <string name="month_medium_august">aug.</string>
- <string name="month_medium_september">sep.</string>
- <string name="month_medium_october">okt.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">dec.</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">søndag</string>
- <string name="day_of_week_long_monday">mandag</string>
- <string name="day_of_week_long_tuesday">tirsdag</string>
- <string name="day_of_week_long_wednesday">onsdag</string>
- <string name="day_of_week_long_thursday">torsdag</string>
- <string name="day_of_week_long_friday">fredag</string>
- <string name="day_of_week_long_saturday">lørdag</string>
-
- <string name="day_of_week_medium_sunday">søn.</string>
- <string name="day_of_week_medium_monday">man.</string>
- <string name="day_of_week_medium_tuesday">tir.</string>
- <string name="day_of_week_medium_wednesday">ons.</string>
- <string name="day_of_week_medium_thursday">tor.</string>
- <string name="day_of_week_medium_friday">fre.</string>
- <string name="day_of_week_medium_saturday">lør.</string>
-
- <string name="day_of_week_short_sunday">søn.</string>
- <string name="day_of_week_short_monday">man.</string>
- <string name="day_of_week_short_tuesday">tir.</string>
- <string name="day_of_week_short_wednesday">ons.</string>
- <string name="day_of_week_short_thursday">tor.</string>
- <string name="day_of_week_short_friday">fre.</string>
- <string name="day_of_week_short_saturday">lør.</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">O</string>
- <string name="day_of_week_shortest_thursday">T</string>
- <string name="day_of_week_shortest_friday">F</string>
- <string name="day_of_week_shortest_saturday">L</string>
-
- <string name="am">f.m.</string>
- <string name="pm">e.m.</string>
- <string name="yesterday">i går</string>
- <string name="today">i dag</string>
- <string name="tomorrow">i morgen</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l.%M %p</string>
<string name="hour_minute_cap_ampm">%-l.%M %^p</string>
diff --git a/core/res/res/values-de/donottranslate-cldr.xml b/core/res/res/values-de/donottranslate-cldr.xml
index 8b834db..9bdd8a3 100644
--- a/core/res/res/values-de/donottranslate-cldr.xml
+++ b/core/res/res/values-de/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">Januar</string>
- <string name="month_long_standalone_february">Februar</string>
- <string name="month_long_standalone_march">März</string>
- <string name="month_long_standalone_april">April</string>
- <string name="month_long_standalone_may">Mai</string>
- <string name="month_long_standalone_june">Juni</string>
- <string name="month_long_standalone_july">Juli</string>
- <string name="month_long_standalone_august">August</string>
- <string name="month_long_standalone_september">September</string>
- <string name="month_long_standalone_october">Oktober</string>
- <string name="month_long_standalone_november">November</string>
- <string name="month_long_standalone_december">Dezember</string>
-
- <string name="month_long_january">Januar</string>
- <string name="month_long_february">Februar</string>
- <string name="month_long_march">März</string>
- <string name="month_long_april">April</string>
- <string name="month_long_may">Mai</string>
- <string name="month_long_june">Juni</string>
- <string name="month_long_july">Juli</string>
- <string name="month_long_august">August</string>
- <string name="month_long_september">September</string>
- <string name="month_long_october">Oktober</string>
- <string name="month_long_november">November</string>
- <string name="month_long_december">Dezember</string>
-
- <string name="month_medium_january">Jan.</string>
- <string name="month_medium_february">Feb.</string>
- <string name="month_medium_march">Mär.</string>
- <string name="month_medium_april">Apr.</string>
- <string name="month_medium_may">Mai</string>
- <string name="month_medium_june">Jun.</string>
- <string name="month_medium_july">Jul.</string>
- <string name="month_medium_august">Aug.</string>
- <string name="month_medium_september">Sep.</string>
- <string name="month_medium_october">Okt.</string>
- <string name="month_medium_november">Nov.</string>
- <string name="month_medium_december">Dez.</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">Sonntag</string>
- <string name="day_of_week_long_monday">Montag</string>
- <string name="day_of_week_long_tuesday">Dienstag</string>
- <string name="day_of_week_long_wednesday">Mittwoch</string>
- <string name="day_of_week_long_thursday">Donnerstag</string>
- <string name="day_of_week_long_friday">Freitag</string>
- <string name="day_of_week_long_saturday">Samstag</string>
-
- <string name="day_of_week_medium_sunday">So.</string>
- <string name="day_of_week_medium_monday">Mo.</string>
- <string name="day_of_week_medium_tuesday">Di.</string>
- <string name="day_of_week_medium_wednesday">Mi.</string>
- <string name="day_of_week_medium_thursday">Do.</string>
- <string name="day_of_week_medium_friday">Fr.</string>
- <string name="day_of_week_medium_saturday">Sa.</string>
-
- <string name="day_of_week_short_sunday">So.</string>
- <string name="day_of_week_short_monday">Mo.</string>
- <string name="day_of_week_short_tuesday">Di.</string>
- <string name="day_of_week_short_wednesday">Mi.</string>
- <string name="day_of_week_short_thursday">Do.</string>
- <string name="day_of_week_short_friday">Fr.</string>
- <string name="day_of_week_short_saturday">Sa.</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">D</string>
- <string name="day_of_week_shortest_wednesday">M</string>
- <string name="day_of_week_shortest_thursday">D</string>
- <string name="day_of_week_shortest_friday">F</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">vorm.</string>
- <string name="pm">nachm.</string>
- <string name="yesterday">Gestern</string>
- <string name="today">Heute</string>
- <string name="tomorrow">Morgen</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-el/donottranslate-cldr.xml b/core/res/res/values-el/donottranslate-cldr.xml
index 1e7caa4..a0c69b5 100644
--- a/core/res/res/values-el/donottranslate-cldr.xml
+++ b/core/res/res/values-el/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">Ιανουάριος</string>
- <string name="month_long_standalone_february">Φεβρουάριος</string>
- <string name="month_long_standalone_march">Μάρτιος</string>
- <string name="month_long_standalone_april">Απρίλιος</string>
- <string name="month_long_standalone_may">Μάιος</string>
- <string name="month_long_standalone_june">Ιούνιος</string>
- <string name="month_long_standalone_july">Ιούλιος</string>
- <string name="month_long_standalone_august">Αύγουστος</string>
- <string name="month_long_standalone_september">Σεπτέμβριος</string>
- <string name="month_long_standalone_october">Οκτώβριος</string>
- <string name="month_long_standalone_november">Νοέμβριος</string>
- <string name="month_long_standalone_december">Δεκέμβριος</string>
-
- <string name="month_long_january">Ιανουαρίου</string>
- <string name="month_long_february">Φεβρουαρίου</string>
- <string name="month_long_march">Μαρτίου</string>
- <string name="month_long_april">Απριλίου</string>
- <string name="month_long_may">Μαΐου</string>
- <string name="month_long_june">Ιουνίου</string>
- <string name="month_long_july">Ιουλίου</string>
- <string name="month_long_august">Αυγούστου</string>
- <string name="month_long_september">Σεπτεμβρίου</string>
- <string name="month_long_october">Οκτωβρίου</string>
- <string name="month_long_november">Νοεμβρίου</string>
- <string name="month_long_december">Δεκεμβρίου</string>
-
- <string name="month_medium_january">Ιαν</string>
- <string name="month_medium_february">Φεβ</string>
- <string name="month_medium_march">Μαρ</string>
- <string name="month_medium_april">Απρ</string>
- <string name="month_medium_may">Μαϊ</string>
- <string name="month_medium_june">Ιουν</string>
- <string name="month_medium_july">Ιουλ</string>
- <string name="month_medium_august">Αυγ</string>
- <string name="month_medium_september">Σεπ</string>
- <string name="month_medium_october">Οκτ</string>
- <string name="month_medium_november">Νοε</string>
- <string name="month_medium_december">Δεκ</string>
-
- <string name="month_shortest_january">Ι</string>
- <string name="month_shortest_february">Φ</string>
- <string name="month_shortest_march">Μ</string>
- <string name="month_shortest_april">Α</string>
- <string name="month_shortest_may">Μ</string>
- <string name="month_shortest_june">Ι</string>
- <string name="month_shortest_july">Ι</string>
- <string name="month_shortest_august">Α</string>
- <string name="month_shortest_september">Σ</string>
- <string name="month_shortest_october">Ο</string>
- <string name="month_shortest_november">Ν</string>
- <string name="month_shortest_december">Δ</string>
-
- <string name="day_of_week_long_sunday">Κυριακή</string>
- <string name="day_of_week_long_monday">Δευτέρα</string>
- <string name="day_of_week_long_tuesday">Τρίτη</string>
- <string name="day_of_week_long_wednesday">Τετάρτη</string>
- <string name="day_of_week_long_thursday">Πέμπτη</string>
- <string name="day_of_week_long_friday">Παρασκευή</string>
- <string name="day_of_week_long_saturday">Σάββατο</string>
-
- <string name="day_of_week_medium_sunday">Κυρ</string>
- <string name="day_of_week_medium_monday">Δευ</string>
- <string name="day_of_week_medium_tuesday">Τρι</string>
- <string name="day_of_week_medium_wednesday">Τετ</string>
- <string name="day_of_week_medium_thursday">Πεμ</string>
- <string name="day_of_week_medium_friday">Παρ</string>
- <string name="day_of_week_medium_saturday">Σαβ</string>
-
- <string name="day_of_week_short_sunday">Κυρ</string>
- <string name="day_of_week_short_monday">Δευ</string>
- <string name="day_of_week_short_tuesday">Τρι</string>
- <string name="day_of_week_short_wednesday">Τετ</string>
- <string name="day_of_week_short_thursday">Πεμ</string>
- <string name="day_of_week_short_friday">Παρ</string>
- <string name="day_of_week_short_saturday">Σαβ</string>
-
- <string name="day_of_week_shortest_sunday">Κ</string>
- <string name="day_of_week_shortest_monday">Δ</string>
- <string name="day_of_week_shortest_tuesday">Τ</string>
- <string name="day_of_week_shortest_wednesday">Τ</string>
- <string name="day_of_week_shortest_thursday">Π</string>
- <string name="day_of_week_shortest_friday">Π</string>
- <string name="day_of_week_shortest_saturday">Σ</string>
-
- <string name="am">π.μ.</string>
- <string name="pm">μ.μ.</string>
- <string name="yesterday">Χτες</string>
- <string name="today">Σήμερα</string>
- <string name="tomorrow">Αύριο</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-en-rAU/donottranslate-cldr.xml b/core/res/res/values-en-rAU/donottranslate-cldr.xml
index 557833e..947fe92 100644
--- a/core/res/res/values-en-rAU/donottranslate-cldr.xml
+++ b/core/res/res/values-en-rAU/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">January</string>
- <string name="month_long_standalone_february">February</string>
- <string name="month_long_standalone_march">March</string>
- <string name="month_long_standalone_april">April</string>
- <string name="month_long_standalone_may">May</string>
- <string name="month_long_standalone_june">June</string>
- <string name="month_long_standalone_july">July</string>
- <string name="month_long_standalone_august">August</string>
- <string name="month_long_standalone_september">September</string>
- <string name="month_long_standalone_october">October</string>
- <string name="month_long_standalone_november">November</string>
- <string name="month_long_standalone_december">December</string>
-
- <string name="month_long_january">January</string>
- <string name="month_long_february">February</string>
- <string name="month_long_march">March</string>
- <string name="month_long_april">April</string>
- <string name="month_long_may">May</string>
- <string name="month_long_june">June</string>
- <string name="month_long_july">July</string>
- <string name="month_long_august">August</string>
- <string name="month_long_september">September</string>
- <string name="month_long_october">October</string>
- <string name="month_long_november">November</string>
- <string name="month_long_december">December</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mar</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">May</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Aug</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Oct</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Dec</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">Sunday</string>
- <string name="day_of_week_long_monday">Monday</string>
- <string name="day_of_week_long_tuesday">Tuesday</string>
- <string name="day_of_week_long_wednesday">Wednesday</string>
- <string name="day_of_week_long_thursday">Thursday</string>
- <string name="day_of_week_long_friday">Friday</string>
- <string name="day_of_week_long_saturday">Saturday</string>
-
- <string name="day_of_week_medium_sunday">Sun</string>
- <string name="day_of_week_medium_monday">Mon</string>
- <string name="day_of_week_medium_tuesday">Tue</string>
- <string name="day_of_week_medium_wednesday">Wed</string>
- <string name="day_of_week_medium_thursday">Thu</string>
- <string name="day_of_week_medium_friday">Fri</string>
- <string name="day_of_week_medium_saturday">Sat</string>
-
- <string name="day_of_week_short_sunday">Su</string>
- <string name="day_of_week_short_monday">Mo</string>
- <string name="day_of_week_short_tuesday">Tu</string>
- <string name="day_of_week_short_wednesday">We</string>
- <string name="day_of_week_short_thursday">Th</string>
- <string name="day_of_week_short_friday">Fr</string>
- <string name="day_of_week_short_saturday">Sa</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">W</string>
- <string name="day_of_week_shortest_thursday">T</string>
- <string name="day_of_week_shortest_friday">F</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">am</string>
- <string name="pm">pm</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M%p</string>
<string name="hour_minute_cap_ampm">%-l:%M%^p</string>
diff --git a/core/res/res/values-en-rCA/donottranslate-cldr.xml b/core/res/res/values-en-rCA/donottranslate-cldr.xml
index 2aa7cbe..1845f28 100644
--- a/core/res/res/values-en-rCA/donottranslate-cldr.xml
+++ b/core/res/res/values-en-rCA/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">January</string>
- <string name="month_long_standalone_february">February</string>
- <string name="month_long_standalone_march">March</string>
- <string name="month_long_standalone_april">April</string>
- <string name="month_long_standalone_may">May</string>
- <string name="month_long_standalone_june">June</string>
- <string name="month_long_standalone_july">July</string>
- <string name="month_long_standalone_august">August</string>
- <string name="month_long_standalone_september">September</string>
- <string name="month_long_standalone_october">October</string>
- <string name="month_long_standalone_november">November</string>
- <string name="month_long_standalone_december">December</string>
-
- <string name="month_long_january">January</string>
- <string name="month_long_february">February</string>
- <string name="month_long_march">March</string>
- <string name="month_long_april">April</string>
- <string name="month_long_may">May</string>
- <string name="month_long_june">June</string>
- <string name="month_long_july">July</string>
- <string name="month_long_august">August</string>
- <string name="month_long_september">September</string>
- <string name="month_long_october">October</string>
- <string name="month_long_november">November</string>
- <string name="month_long_december">December</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mar</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">May</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Aug</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Oct</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Dec</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">Sunday</string>
- <string name="day_of_week_long_monday">Monday</string>
- <string name="day_of_week_long_tuesday">Tuesday</string>
- <string name="day_of_week_long_wednesday">Wednesday</string>
- <string name="day_of_week_long_thursday">Thursday</string>
- <string name="day_of_week_long_friday">Friday</string>
- <string name="day_of_week_long_saturday">Saturday</string>
-
- <string name="day_of_week_medium_sunday">Sun</string>
- <string name="day_of_week_medium_monday">Mon</string>
- <string name="day_of_week_medium_tuesday">Tue</string>
- <string name="day_of_week_medium_wednesday">Wed</string>
- <string name="day_of_week_medium_thursday">Thu</string>
- <string name="day_of_week_medium_friday">Fri</string>
- <string name="day_of_week_medium_saturday">Sat</string>
-
- <string name="day_of_week_short_sunday">Su</string>
- <string name="day_of_week_short_monday">Mo</string>
- <string name="day_of_week_short_tuesday">Tu</string>
- <string name="day_of_week_short_wednesday">We</string>
- <string name="day_of_week_short_thursday">Th</string>
- <string name="day_of_week_short_friday">Fr</string>
- <string name="day_of_week_short_saturday">Sa</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">W</string>
- <string name="day_of_week_shortest_thursday">T</string>
- <string name="day_of_week_shortest_friday">F</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">am</string>
- <string name="pm">pm</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M%p</string>
<string name="hour_minute_cap_ampm">%-l:%M%^p</string>
diff --git a/core/res/res/values-en-rGB/donottranslate-cldr.xml b/core/res/res/values-en-rGB/donottranslate-cldr.xml
index cce895e..a10dfa50 100644
--- a/core/res/res/values-en-rGB/donottranslate-cldr.xml
+++ b/core/res/res/values-en-rGB/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">January</string>
- <string name="month_long_standalone_february">February</string>
- <string name="month_long_standalone_march">March</string>
- <string name="month_long_standalone_april">April</string>
- <string name="month_long_standalone_may">May</string>
- <string name="month_long_standalone_june">June</string>
- <string name="month_long_standalone_july">July</string>
- <string name="month_long_standalone_august">August</string>
- <string name="month_long_standalone_september">September</string>
- <string name="month_long_standalone_october">October</string>
- <string name="month_long_standalone_november">November</string>
- <string name="month_long_standalone_december">December</string>
-
- <string name="month_long_january">January</string>
- <string name="month_long_february">February</string>
- <string name="month_long_march">March</string>
- <string name="month_long_april">April</string>
- <string name="month_long_may">May</string>
- <string name="month_long_june">June</string>
- <string name="month_long_july">July</string>
- <string name="month_long_august">August</string>
- <string name="month_long_september">September</string>
- <string name="month_long_october">October</string>
- <string name="month_long_november">November</string>
- <string name="month_long_december">December</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mar</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">May</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Aug</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Oct</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Dec</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">Sunday</string>
- <string name="day_of_week_long_monday">Monday</string>
- <string name="day_of_week_long_tuesday">Tuesday</string>
- <string name="day_of_week_long_wednesday">Wednesday</string>
- <string name="day_of_week_long_thursday">Thursday</string>
- <string name="day_of_week_long_friday">Friday</string>
- <string name="day_of_week_long_saturday">Saturday</string>
-
- <string name="day_of_week_medium_sunday">Sun</string>
- <string name="day_of_week_medium_monday">Mon</string>
- <string name="day_of_week_medium_tuesday">Tue</string>
- <string name="day_of_week_medium_wednesday">Wed</string>
- <string name="day_of_week_medium_thursday">Thu</string>
- <string name="day_of_week_medium_friday">Fri</string>
- <string name="day_of_week_medium_saturday">Sat</string>
-
- <string name="day_of_week_short_sunday">Su</string>
- <string name="day_of_week_short_monday">Mo</string>
- <string name="day_of_week_short_tuesday">Tu</string>
- <string name="day_of_week_short_wednesday">We</string>
- <string name="day_of_week_short_thursday">Th</string>
- <string name="day_of_week_short_friday">Fr</string>
- <string name="day_of_week_short_saturday">Sa</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">W</string>
- <string name="day_of_week_shortest_thursday">T</string>
- <string name="day_of_week_shortest_friday">F</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">am</string>
- <string name="pm">pm</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M%p</string>
<string name="hour_minute_cap_ampm">%-l:%M%^p</string>
diff --git a/core/res/res/values-en-rIE/donottranslate-cldr.xml b/core/res/res/values-en-rIE/donottranslate-cldr.xml
index 46b13ec..65cab99 100644
--- a/core/res/res/values-en-rIE/donottranslate-cldr.xml
+++ b/core/res/res/values-en-rIE/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">January</string>
- <string name="month_long_standalone_february">February</string>
- <string name="month_long_standalone_march">March</string>
- <string name="month_long_standalone_april">April</string>
- <string name="month_long_standalone_may">May</string>
- <string name="month_long_standalone_june">June</string>
- <string name="month_long_standalone_july">July</string>
- <string name="month_long_standalone_august">August</string>
- <string name="month_long_standalone_september">September</string>
- <string name="month_long_standalone_october">October</string>
- <string name="month_long_standalone_november">November</string>
- <string name="month_long_standalone_december">December</string>
-
- <string name="month_long_january">January</string>
- <string name="month_long_february">February</string>
- <string name="month_long_march">March</string>
- <string name="month_long_april">April</string>
- <string name="month_long_may">May</string>
- <string name="month_long_june">June</string>
- <string name="month_long_july">July</string>
- <string name="month_long_august">August</string>
- <string name="month_long_september">September</string>
- <string name="month_long_october">October</string>
- <string name="month_long_november">November</string>
- <string name="month_long_december">December</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mar</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">May</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Aug</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Oct</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Dec</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">Sunday</string>
- <string name="day_of_week_long_monday">Monday</string>
- <string name="day_of_week_long_tuesday">Tuesday</string>
- <string name="day_of_week_long_wednesday">Wednesday</string>
- <string name="day_of_week_long_thursday">Thursday</string>
- <string name="day_of_week_long_friday">Friday</string>
- <string name="day_of_week_long_saturday">Saturday</string>
-
- <string name="day_of_week_medium_sunday">Sun</string>
- <string name="day_of_week_medium_monday">Mon</string>
- <string name="day_of_week_medium_tuesday">Tue</string>
- <string name="day_of_week_medium_wednesday">Wed</string>
- <string name="day_of_week_medium_thursday">Thu</string>
- <string name="day_of_week_medium_friday">Fri</string>
- <string name="day_of_week_medium_saturday">Sat</string>
-
- <string name="day_of_week_short_sunday">Su</string>
- <string name="day_of_week_short_monday">Mo</string>
- <string name="day_of_week_short_tuesday">Tu</string>
- <string name="day_of_week_short_wednesday">We</string>
- <string name="day_of_week_short_thursday">Th</string>
- <string name="day_of_week_short_friday">Fr</string>
- <string name="day_of_week_short_saturday">Sa</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">W</string>
- <string name="day_of_week_shortest_thursday">T</string>
- <string name="day_of_week_shortest_friday">F</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">a.m.</string>
- <string name="pm">p.m.</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M%p</string>
<string name="hour_minute_cap_ampm">%-l:%M%^p</string>
diff --git a/core/res/res/values-en-rIN/donottranslate-cldr.xml b/core/res/res/values-en-rIN/donottranslate-cldr.xml
index 177bd7e..48942fe 100644
--- a/core/res/res/values-en-rIN/donottranslate-cldr.xml
+++ b/core/res/res/values-en-rIN/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">January</string>
- <string name="month_long_standalone_february">February</string>
- <string name="month_long_standalone_march">March</string>
- <string name="month_long_standalone_april">April</string>
- <string name="month_long_standalone_may">May</string>
- <string name="month_long_standalone_june">June</string>
- <string name="month_long_standalone_july">July</string>
- <string name="month_long_standalone_august">August</string>
- <string name="month_long_standalone_september">September</string>
- <string name="month_long_standalone_october">October</string>
- <string name="month_long_standalone_november">November</string>
- <string name="month_long_standalone_december">December</string>
-
- <string name="month_long_january">January</string>
- <string name="month_long_february">February</string>
- <string name="month_long_march">March</string>
- <string name="month_long_april">April</string>
- <string name="month_long_may">May</string>
- <string name="month_long_june">June</string>
- <string name="month_long_july">July</string>
- <string name="month_long_august">August</string>
- <string name="month_long_september">September</string>
- <string name="month_long_october">October</string>
- <string name="month_long_november">November</string>
- <string name="month_long_december">December</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mar</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">May</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Aug</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Oct</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Dec</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">Sunday</string>
- <string name="day_of_week_long_monday">Monday</string>
- <string name="day_of_week_long_tuesday">Tuesday</string>
- <string name="day_of_week_long_wednesday">Wednesday</string>
- <string name="day_of_week_long_thursday">Thursday</string>
- <string name="day_of_week_long_friday">Friday</string>
- <string name="day_of_week_long_saturday">Saturday</string>
-
- <string name="day_of_week_medium_sunday">Sun</string>
- <string name="day_of_week_medium_monday">Mon</string>
- <string name="day_of_week_medium_tuesday">Tue</string>
- <string name="day_of_week_medium_wednesday">Wed</string>
- <string name="day_of_week_medium_thursday">Thu</string>
- <string name="day_of_week_medium_friday">Fri</string>
- <string name="day_of_week_medium_saturday">Sat</string>
-
- <string name="day_of_week_short_sunday">Su</string>
- <string name="day_of_week_short_monday">Mo</string>
- <string name="day_of_week_short_tuesday">Tu</string>
- <string name="day_of_week_short_wednesday">We</string>
- <string name="day_of_week_short_thursday">Th</string>
- <string name="day_of_week_short_friday">Fr</string>
- <string name="day_of_week_short_saturday">Sa</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">W</string>
- <string name="day_of_week_shortest_thursday">T</string>
- <string name="day_of_week_shortest_friday">F</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">am</string>
- <string name="pm">pm</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M%p</string>
<string name="hour_minute_cap_ampm">%-l:%M%^p</string>
diff --git a/core/res/res/values-en-rNZ/donottranslate-cldr.xml b/core/res/res/values-en-rNZ/donottranslate-cldr.xml
index 41a00a5..117dda8 100644
--- a/core/res/res/values-en-rNZ/donottranslate-cldr.xml
+++ b/core/res/res/values-en-rNZ/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">January</string>
- <string name="month_long_standalone_february">February</string>
- <string name="month_long_standalone_march">March</string>
- <string name="month_long_standalone_april">April</string>
- <string name="month_long_standalone_may">May</string>
- <string name="month_long_standalone_june">June</string>
- <string name="month_long_standalone_july">July</string>
- <string name="month_long_standalone_august">August</string>
- <string name="month_long_standalone_september">September</string>
- <string name="month_long_standalone_october">October</string>
- <string name="month_long_standalone_november">November</string>
- <string name="month_long_standalone_december">December</string>
-
- <string name="month_long_january">January</string>
- <string name="month_long_february">February</string>
- <string name="month_long_march">March</string>
- <string name="month_long_april">April</string>
- <string name="month_long_may">May</string>
- <string name="month_long_june">June</string>
- <string name="month_long_july">July</string>
- <string name="month_long_august">August</string>
- <string name="month_long_september">September</string>
- <string name="month_long_october">October</string>
- <string name="month_long_november">November</string>
- <string name="month_long_december">December</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mar</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">May</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Aug</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Oct</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Dec</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">Sunday</string>
- <string name="day_of_week_long_monday">Monday</string>
- <string name="day_of_week_long_tuesday">Tuesday</string>
- <string name="day_of_week_long_wednesday">Wednesday</string>
- <string name="day_of_week_long_thursday">Thursday</string>
- <string name="day_of_week_long_friday">Friday</string>
- <string name="day_of_week_long_saturday">Saturday</string>
-
- <string name="day_of_week_medium_sunday">Sun</string>
- <string name="day_of_week_medium_monday">Mon</string>
- <string name="day_of_week_medium_tuesday">Tue</string>
- <string name="day_of_week_medium_wednesday">Wed</string>
- <string name="day_of_week_medium_thursday">Thu</string>
- <string name="day_of_week_medium_friday">Fri</string>
- <string name="day_of_week_medium_saturday">Sat</string>
-
- <string name="day_of_week_short_sunday">Su</string>
- <string name="day_of_week_short_monday">Mo</string>
- <string name="day_of_week_short_tuesday">Tu</string>
- <string name="day_of_week_short_wednesday">We</string>
- <string name="day_of_week_short_thursday">Th</string>
- <string name="day_of_week_short_friday">Fr</string>
- <string name="day_of_week_short_saturday">Sa</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">W</string>
- <string name="day_of_week_shortest_thursday">T</string>
- <string name="day_of_week_shortest_friday">F</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">am</string>
- <string name="pm">pm</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M%p</string>
<string name="hour_minute_cap_ampm">%-l:%M%^p</string>
diff --git a/core/res/res/values-en-rUS/donottranslate-cldr.xml b/core/res/res/values-en-rUS/donottranslate-cldr.xml
index 15fcd8b..0587c165 100644
--- a/core/res/res/values-en-rUS/donottranslate-cldr.xml
+++ b/core/res/res/values-en-rUS/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">January</string>
- <string name="month_long_standalone_february">February</string>
- <string name="month_long_standalone_march">March</string>
- <string name="month_long_standalone_april">April</string>
- <string name="month_long_standalone_may">May</string>
- <string name="month_long_standalone_june">June</string>
- <string name="month_long_standalone_july">July</string>
- <string name="month_long_standalone_august">August</string>
- <string name="month_long_standalone_september">September</string>
- <string name="month_long_standalone_october">October</string>
- <string name="month_long_standalone_november">November</string>
- <string name="month_long_standalone_december">December</string>
-
- <string name="month_long_january">January</string>
- <string name="month_long_february">February</string>
- <string name="month_long_march">March</string>
- <string name="month_long_april">April</string>
- <string name="month_long_may">May</string>
- <string name="month_long_june">June</string>
- <string name="month_long_july">July</string>
- <string name="month_long_august">August</string>
- <string name="month_long_september">September</string>
- <string name="month_long_october">October</string>
- <string name="month_long_november">November</string>
- <string name="month_long_december">December</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mar</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">May</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Aug</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Oct</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Dec</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">Sunday</string>
- <string name="day_of_week_long_monday">Monday</string>
- <string name="day_of_week_long_tuesday">Tuesday</string>
- <string name="day_of_week_long_wednesday">Wednesday</string>
- <string name="day_of_week_long_thursday">Thursday</string>
- <string name="day_of_week_long_friday">Friday</string>
- <string name="day_of_week_long_saturday">Saturday</string>
-
- <string name="day_of_week_medium_sunday">Sun</string>
- <string name="day_of_week_medium_monday">Mon</string>
- <string name="day_of_week_medium_tuesday">Tue</string>
- <string name="day_of_week_medium_wednesday">Wed</string>
- <string name="day_of_week_medium_thursday">Thu</string>
- <string name="day_of_week_medium_friday">Fri</string>
- <string name="day_of_week_medium_saturday">Sat</string>
-
- <string name="day_of_week_short_sunday">Su</string>
- <string name="day_of_week_short_monday">Mo</string>
- <string name="day_of_week_short_tuesday">Tu</string>
- <string name="day_of_week_short_wednesday">We</string>
- <string name="day_of_week_short_thursday">Th</string>
- <string name="day_of_week_short_friday">Fr</string>
- <string name="day_of_week_short_saturday">Sa</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">W</string>
- <string name="day_of_week_shortest_thursday">T</string>
- <string name="day_of_week_shortest_friday">F</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">am</string>
- <string name="pm">pm</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M%p</string>
<string name="hour_minute_cap_ampm">%-l:%M%^p</string>
diff --git a/core/res/res/values-en-rZA/donottranslate-cldr.xml b/core/res/res/values-en-rZA/donottranslate-cldr.xml
index 7a5bdbd..48ebc6e 100644
--- a/core/res/res/values-en-rZA/donottranslate-cldr.xml
+++ b/core/res/res/values-en-rZA/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">January</string>
- <string name="month_long_standalone_february">February</string>
- <string name="month_long_standalone_march">March</string>
- <string name="month_long_standalone_april">April</string>
- <string name="month_long_standalone_may">May</string>
- <string name="month_long_standalone_june">June</string>
- <string name="month_long_standalone_july">July</string>
- <string name="month_long_standalone_august">August</string>
- <string name="month_long_standalone_september">September</string>
- <string name="month_long_standalone_october">October</string>
- <string name="month_long_standalone_november">November</string>
- <string name="month_long_standalone_december">December</string>
-
- <string name="month_long_january">January</string>
- <string name="month_long_february">February</string>
- <string name="month_long_march">March</string>
- <string name="month_long_april">April</string>
- <string name="month_long_may">May</string>
- <string name="month_long_june">June</string>
- <string name="month_long_july">July</string>
- <string name="month_long_august">August</string>
- <string name="month_long_september">September</string>
- <string name="month_long_october">October</string>
- <string name="month_long_november">November</string>
- <string name="month_long_december">December</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mar</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">May</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Aug</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Oct</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Dec</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">Sunday</string>
- <string name="day_of_week_long_monday">Monday</string>
- <string name="day_of_week_long_tuesday">Tuesday</string>
- <string name="day_of_week_long_wednesday">Wednesday</string>
- <string name="day_of_week_long_thursday">Thursday</string>
- <string name="day_of_week_long_friday">Friday</string>
- <string name="day_of_week_long_saturday">Saturday</string>
-
- <string name="day_of_week_medium_sunday">Sun</string>
- <string name="day_of_week_medium_monday">Mon</string>
- <string name="day_of_week_medium_tuesday">Tue</string>
- <string name="day_of_week_medium_wednesday">Wed</string>
- <string name="day_of_week_medium_thursday">Thu</string>
- <string name="day_of_week_medium_friday">Fri</string>
- <string name="day_of_week_medium_saturday">Sat</string>
-
- <string name="day_of_week_short_sunday">Su</string>
- <string name="day_of_week_short_monday">Mo</string>
- <string name="day_of_week_short_tuesday">Tu</string>
- <string name="day_of_week_short_wednesday">We</string>
- <string name="day_of_week_short_thursday">Th</string>
- <string name="day_of_week_short_friday">Fr</string>
- <string name="day_of_week_short_saturday">Sa</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">W</string>
- <string name="day_of_week_shortest_thursday">T</string>
- <string name="day_of_week_shortest_friday">F</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">am</string>
- <string name="pm">pm</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M%p</string>
<string name="hour_minute_cap_ampm">%-l:%M%^p</string>
diff --git a/core/res/res/values-es-rUS/donottranslate-cldr.xml b/core/res/res/values-es-rUS/donottranslate-cldr.xml
index e2c3254..9224786 100644
--- a/core/res/res/values-es-rUS/donottranslate-cldr.xml
+++ b/core/res/res/values-es-rUS/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">enero</string>
- <string name="month_long_standalone_february">febrero</string>
- <string name="month_long_standalone_march">marzo</string>
- <string name="month_long_standalone_april">abril</string>
- <string name="month_long_standalone_may">mayo</string>
- <string name="month_long_standalone_june">junio</string>
- <string name="month_long_standalone_july">julio</string>
- <string name="month_long_standalone_august">agosto</string>
- <string name="month_long_standalone_september">septiembre</string>
- <string name="month_long_standalone_october">octubre</string>
- <string name="month_long_standalone_november">noviembre</string>
- <string name="month_long_standalone_december">diciembre</string>
-
- <string name="month_long_january">enero</string>
- <string name="month_long_february">febrero</string>
- <string name="month_long_march">marzo</string>
- <string name="month_long_april">abril</string>
- <string name="month_long_may">mayo</string>
- <string name="month_long_june">junio</string>
- <string name="month_long_july">julio</string>
- <string name="month_long_august">agosto</string>
- <string name="month_long_september">septiembre</string>
- <string name="month_long_october">octubre</string>
- <string name="month_long_november">noviembre</string>
- <string name="month_long_december">diciembre</string>
-
- <string name="month_medium_january">ene.</string>
- <string name="month_medium_february">feb.</string>
- <string name="month_medium_march">mar.</string>
- <string name="month_medium_april">abr.</string>
- <string name="month_medium_may">may.</string>
- <string name="month_medium_june">jun.</string>
- <string name="month_medium_july">jul.</string>
- <string name="month_medium_august">ago.</string>
- <string name="month_medium_september">sep.</string>
- <string name="month_medium_october">oct.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">dic.</string>
-
- <string name="month_shortest_january">E</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">domingo</string>
- <string name="day_of_week_long_monday">lunes</string>
- <string name="day_of_week_long_tuesday">martes</string>
- <string name="day_of_week_long_wednesday">miércoles</string>
- <string name="day_of_week_long_thursday">jueves</string>
- <string name="day_of_week_long_friday">viernes</string>
- <string name="day_of_week_long_saturday">sábado</string>
-
- <string name="day_of_week_medium_sunday">dom.</string>
- <string name="day_of_week_medium_monday">lun.</string>
- <string name="day_of_week_medium_tuesday">mar.</string>
- <string name="day_of_week_medium_wednesday">mié.</string>
- <string name="day_of_week_medium_thursday">jue.</string>
- <string name="day_of_week_medium_friday">vie.</string>
- <string name="day_of_week_medium_saturday">sáb.</string>
-
- <string name="day_of_week_short_sunday">dom.</string>
- <string name="day_of_week_short_monday">lun.</string>
- <string name="day_of_week_short_tuesday">mar.</string>
- <string name="day_of_week_short_wednesday">mié.</string>
- <string name="day_of_week_short_thursday">jue.</string>
- <string name="day_of_week_short_friday">vie.</string>
- <string name="day_of_week_short_saturday">sáb.</string>
-
- <string name="day_of_week_shortest_sunday">D</string>
- <string name="day_of_week_shortest_monday">L</string>
- <string name="day_of_week_shortest_tuesday">M</string>
- <string name="day_of_week_shortest_wednesday">M</string>
- <string name="day_of_week_shortest_thursday">J</string>
- <string name="day_of_week_shortest_friday">V</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">a. m.</string>
- <string name="pm">p. m.</string>
- <string name="yesterday">ayer</string>
- <string name="today">hoy</string>
- <string name="tomorrow">mañana</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-es/donottranslate-cldr.xml b/core/res/res/values-es/donottranslate-cldr.xml
index faf171a..0a680b6 100644
--- a/core/res/res/values-es/donottranslate-cldr.xml
+++ b/core/res/res/values-es/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">enero</string>
- <string name="month_long_standalone_february">febrero</string>
- <string name="month_long_standalone_march">marzo</string>
- <string name="month_long_standalone_april">abril</string>
- <string name="month_long_standalone_may">mayo</string>
- <string name="month_long_standalone_june">junio</string>
- <string name="month_long_standalone_july">julio</string>
- <string name="month_long_standalone_august">agosto</string>
- <string name="month_long_standalone_september">septiembre</string>
- <string name="month_long_standalone_october">octubre</string>
- <string name="month_long_standalone_november">noviembre</string>
- <string name="month_long_standalone_december">diciembre</string>
-
- <string name="month_long_january">enero</string>
- <string name="month_long_february">febrero</string>
- <string name="month_long_march">marzo</string>
- <string name="month_long_april">abril</string>
- <string name="month_long_may">mayo</string>
- <string name="month_long_june">junio</string>
- <string name="month_long_july">julio</string>
- <string name="month_long_august">agosto</string>
- <string name="month_long_september">septiembre</string>
- <string name="month_long_october">octubre</string>
- <string name="month_long_november">noviembre</string>
- <string name="month_long_december">diciembre</string>
-
- <string name="month_medium_january">ene.</string>
- <string name="month_medium_february">feb.</string>
- <string name="month_medium_march">mar.</string>
- <string name="month_medium_april">abr.</string>
- <string name="month_medium_may">may.</string>
- <string name="month_medium_june">jun.</string>
- <string name="month_medium_july">jul.</string>
- <string name="month_medium_august">ago.</string>
- <string name="month_medium_september">sep.</string>
- <string name="month_medium_october">oct.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">dic.</string>
-
- <string name="month_shortest_january">E</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">domingo</string>
- <string name="day_of_week_long_monday">lunes</string>
- <string name="day_of_week_long_tuesday">martes</string>
- <string name="day_of_week_long_wednesday">miércoles</string>
- <string name="day_of_week_long_thursday">jueves</string>
- <string name="day_of_week_long_friday">viernes</string>
- <string name="day_of_week_long_saturday">sábado</string>
-
- <string name="day_of_week_medium_sunday">dom.</string>
- <string name="day_of_week_medium_monday">lun.</string>
- <string name="day_of_week_medium_tuesday">mar.</string>
- <string name="day_of_week_medium_wednesday">mié.</string>
- <string name="day_of_week_medium_thursday">jue.</string>
- <string name="day_of_week_medium_friday">vie.</string>
- <string name="day_of_week_medium_saturday">sáb.</string>
-
- <string name="day_of_week_short_sunday">dom.</string>
- <string name="day_of_week_short_monday">lun.</string>
- <string name="day_of_week_short_tuesday">mar.</string>
- <string name="day_of_week_short_wednesday">mié.</string>
- <string name="day_of_week_short_thursday">jue.</string>
- <string name="day_of_week_short_friday">vie.</string>
- <string name="day_of_week_short_saturday">sáb.</string>
-
- <string name="day_of_week_shortest_sunday">D</string>
- <string name="day_of_week_shortest_monday">L</string>
- <string name="day_of_week_shortest_tuesday">M</string>
- <string name="day_of_week_shortest_wednesday">M</string>
- <string name="day_of_week_shortest_thursday">J</string>
- <string name="day_of_week_shortest_friday">V</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">a.m.</string>
- <string name="pm">p.m.</string>
- <string name="yesterday">ayer</string>
- <string name="today">hoy</string>
- <string name="tomorrow">mañana</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-et/donottranslate-cldr.xml b/core/res/res/values-et/donottranslate-cldr.xml
index d50d041..bf269dd 100644
--- a/core/res/res/values-et/donottranslate-cldr.xml
+++ b/core/res/res/values-et/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">jaanuar</string>
- <string name="month_long_standalone_february">veebruar</string>
- <string name="month_long_standalone_march">märts</string>
- <string name="month_long_standalone_april">aprill</string>
- <string name="month_long_standalone_may">mai</string>
- <string name="month_long_standalone_june">juuni</string>
- <string name="month_long_standalone_july">juuli</string>
- <string name="month_long_standalone_august">august</string>
- <string name="month_long_standalone_september">september</string>
- <string name="month_long_standalone_october">oktoober</string>
- <string name="month_long_standalone_november">november</string>
- <string name="month_long_standalone_december">detsember</string>
-
- <string name="month_long_january">jaanuar</string>
- <string name="month_long_february">veebruar</string>
- <string name="month_long_march">märts</string>
- <string name="month_long_april">aprill</string>
- <string name="month_long_may">mai</string>
- <string name="month_long_june">juuni</string>
- <string name="month_long_july">juuli</string>
- <string name="month_long_august">august</string>
- <string name="month_long_september">september</string>
- <string name="month_long_october">oktoober</string>
- <string name="month_long_november">november</string>
- <string name="month_long_december">detsember</string>
-
- <string name="month_medium_january">jaan</string>
- <string name="month_medium_february">veebr</string>
- <string name="month_medium_march">märts</string>
- <string name="month_medium_april">apr</string>
- <string name="month_medium_may">mai</string>
- <string name="month_medium_june">juuni</string>
- <string name="month_medium_july">juuli</string>
- <string name="month_medium_august">aug</string>
- <string name="month_medium_september">sept</string>
- <string name="month_medium_october">okt</string>
- <string name="month_medium_november">nov</string>
- <string name="month_medium_december">dets</string>
-
- <string name="month_shortest_january">1</string>
- <string name="month_shortest_february">2</string>
- <string name="month_shortest_march">3</string>
- <string name="month_shortest_april">4</string>
- <string name="month_shortest_may">5</string>
- <string name="month_shortest_june">6</string>
- <string name="month_shortest_july">7</string>
- <string name="month_shortest_august">8</string>
- <string name="month_shortest_september">9</string>
- <string name="month_shortest_october">10</string>
- <string name="month_shortest_november">11</string>
- <string name="month_shortest_december">12</string>
-
- <string name="day_of_week_long_sunday">pühapäev</string>
- <string name="day_of_week_long_monday">esmaspäev</string>
- <string name="day_of_week_long_tuesday">teisipäev</string>
- <string name="day_of_week_long_wednesday">kolmapäev</string>
- <string name="day_of_week_long_thursday">neljapäev</string>
- <string name="day_of_week_long_friday">reede</string>
- <string name="day_of_week_long_saturday">laupäev</string>
-
- <string name="day_of_week_medium_sunday">P</string>
- <string name="day_of_week_medium_monday">E</string>
- <string name="day_of_week_medium_tuesday">T</string>
- <string name="day_of_week_medium_wednesday">K</string>
- <string name="day_of_week_medium_thursday">N</string>
- <string name="day_of_week_medium_friday">R</string>
- <string name="day_of_week_medium_saturday">L</string>
-
- <string name="day_of_week_short_sunday">P</string>
- <string name="day_of_week_short_monday">E</string>
- <string name="day_of_week_short_tuesday">T</string>
- <string name="day_of_week_short_wednesday">K</string>
- <string name="day_of_week_short_thursday">N</string>
- <string name="day_of_week_short_friday">R</string>
- <string name="day_of_week_short_saturday">L</string>
-
- <string name="day_of_week_shortest_sunday">1</string>
- <string name="day_of_week_shortest_monday">2</string>
- <string name="day_of_week_shortest_tuesday">3</string>
- <string name="day_of_week_shortest_wednesday">4</string>
- <string name="day_of_week_shortest_thursday">5</string>
- <string name="day_of_week_shortest_friday">6</string>
- <string name="day_of_week_shortest_saturday">7</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-fa/donottranslate-cldr.xml b/core/res/res/values-fa/donottranslate-cldr.xml
index 11473fe..b05268e 100644
--- a/core/res/res/values-fa/donottranslate-cldr.xml
+++ b/core/res/res/values-fa/donottranslate-cldr.xml
@@ -1,82 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">ژانویه</string>
- <string name="month_long_standalone_february">فوریه</string>
- <string name="month_long_standalone_march">مارس</string>
- <string name="month_long_standalone_april">آوریل</string>
- <string name="month_long_standalone_may">مه</string>
- <string name="month_long_standalone_june">ژوئن</string>
- <string name="month_long_standalone_july">ژوئیه</string>
- <string name="month_long_standalone_august">اوت</string>
- <string name="month_long_standalone_september">سپتامبر</string>
- <string name="month_long_standalone_october">اکتبر</string>
- <string name="month_long_standalone_november">نوامبر</string>
- <string name="month_long_standalone_december">دسامبر</string>
-
- <string name="month_long_january">ژانویهٔ</string>
- <string name="month_long_february">فوریهٔ</string>
- <string name="month_long_march">مارس</string>
- <string name="month_long_april">آوریل</string>
- <string name="month_long_may">مهٔ</string>
- <string name="month_long_june">ژوئن</string>
- <string name="month_long_july">ژوئیهٔ</string>
- <string name="month_long_august">اوت</string>
- <string name="month_long_september">سپتامبر</string>
- <string name="month_long_october">اکتبر</string>
- <string name="month_long_november">نوامبر</string>
- <string name="month_long_december">دسامبر</string>
-
- <string name="month_medium_january">ژانویهٔ</string>
- <string name="month_medium_february">فوریهٔ</string>
- <string name="month_medium_march">مارس</string>
- <string name="month_medium_april">آوریل</string>
- <string name="month_medium_may">مهٔ</string>
- <string name="month_medium_june">ژوئن</string>
- <string name="month_medium_july">ژوئیهٔ</string>
- <string name="month_medium_august">اوت</string>
- <string name="month_medium_september">سپتامبر</string>
- <string name="month_medium_october">اکتبر</string>
- <string name="month_medium_november">نوامبر</string>
- <string name="month_medium_december">دسامبر</string>
-
- <string name="month_shortest_january">ژ</string>
- <string name="month_shortest_february">ف</string>
- <string name="month_shortest_march">م</string>
- <string name="month_shortest_april">آ</string>
- <string name="month_shortest_may">م</string>
- <string name="month_shortest_june">ژ</string>
- <string name="month_shortest_july">ژ</string>
- <string name="month_shortest_august">ا</string>
- <string name="month_shortest_september">س</string>
- <string name="month_shortest_october">ا</string>
- <string name="month_shortest_november">ن</string>
- <string name="month_shortest_december">د</string>
-
- <string name="day_of_week_long_sunday">یکشنبه</string>
- <string name="day_of_week_long_monday">دوشنبه</string>
- <string name="day_of_week_long_tuesday">سهشنبه</string>
- <string name="day_of_week_long_wednesday">چهارشنبه</string>
- <string name="day_of_week_long_thursday">پنجشنبه</string>
- <string name="day_of_week_long_friday">جمعه</string>
- <string name="day_of_week_long_saturday">شنبه</string>
-
-
-
- <string name="day_of_week_shortest_sunday">ی</string>
- <string name="day_of_week_shortest_monday">د</string>
- <string name="day_of_week_shortest_tuesday">س</string>
- <string name="day_of_week_shortest_wednesday">چ</string>
- <string name="day_of_week_shortest_thursday">پ</string>
- <string name="day_of_week_shortest_friday">ج</string>
- <string name="day_of_week_shortest_saturday">ش</string>
-
- <string name="am">قبل از ظهر</string>
- <string name="pm">بعد از ظهر</string>
- <string name="yesterday">دیروز</string>
- <string name="today">امروز</string>
- <string name="tomorrow">فردا</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-fi-rFI/donottranslate-cldr.xml b/core/res/res/values-fi-rFI/donottranslate-cldr.xml
index e9e1a25..04f0a77 100644
--- a/core/res/res/values-fi-rFI/donottranslate-cldr.xml
+++ b/core/res/res/values-fi-rFI/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">tammikuu</string>
- <string name="month_long_standalone_february">helmikuu</string>
- <string name="month_long_standalone_march">maaliskuu</string>
- <string name="month_long_standalone_april">huhtikuu</string>
- <string name="month_long_standalone_may">toukokuu</string>
- <string name="month_long_standalone_june">kesäkuu</string>
- <string name="month_long_standalone_july">heinäkuu</string>
- <string name="month_long_standalone_august">elokuu</string>
- <string name="month_long_standalone_september">syyskuu</string>
- <string name="month_long_standalone_october">lokakuu</string>
- <string name="month_long_standalone_november">marraskuu</string>
- <string name="month_long_standalone_december">joulukuu</string>
-
- <string name="month_long_january">tammikuuta</string>
- <string name="month_long_february">helmikuuta</string>
- <string name="month_long_march">maaliskuuta</string>
- <string name="month_long_april">huhtikuuta</string>
- <string name="month_long_may">toukokuuta</string>
- <string name="month_long_june">kesäkuuta</string>
- <string name="month_long_july">heinäkuuta</string>
- <string name="month_long_august">elokuuta</string>
- <string name="month_long_september">syyskuuta</string>
- <string name="month_long_october">lokakuuta</string>
- <string name="month_long_november">marraskuuta</string>
- <string name="month_long_december">joulukuuta</string>
-
- <string name="month_medium_january">tammikuuta</string>
- <string name="month_medium_february">helmikuuta</string>
- <string name="month_medium_march">maaliskuuta</string>
- <string name="month_medium_april">huhtikuuta</string>
- <string name="month_medium_may">toukokuuta</string>
- <string name="month_medium_june">kesäkuuta</string>
- <string name="month_medium_july">heinäkuuta</string>
- <string name="month_medium_august">elokuuta</string>
- <string name="month_medium_september">syyskuuta</string>
- <string name="month_medium_october">lokakuuta</string>
- <string name="month_medium_november">marraskuuta</string>
- <string name="month_medium_december">joulukuuta</string>
-
- <string name="month_shortest_january">T</string>
- <string name="month_shortest_february">H</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">H</string>
- <string name="month_shortest_may">T</string>
- <string name="month_shortest_june">K</string>
- <string name="month_shortest_july">H</string>
- <string name="month_shortest_august">E</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">L</string>
- <string name="month_shortest_november">M</string>
- <string name="month_shortest_december">J</string>
-
- <string name="day_of_week_long_sunday">sunnuntai</string>
- <string name="day_of_week_long_monday">maanantai</string>
- <string name="day_of_week_long_tuesday">tiistai</string>
- <string name="day_of_week_long_wednesday">keskiviikko</string>
- <string name="day_of_week_long_thursday">torstai</string>
- <string name="day_of_week_long_friday">perjantai</string>
- <string name="day_of_week_long_saturday">lauantai</string>
-
- <string name="day_of_week_medium_sunday">su</string>
- <string name="day_of_week_medium_monday">ma</string>
- <string name="day_of_week_medium_tuesday">ti</string>
- <string name="day_of_week_medium_wednesday">ke</string>
- <string name="day_of_week_medium_thursday">to</string>
- <string name="day_of_week_medium_friday">pe</string>
- <string name="day_of_week_medium_saturday">la</string>
-
- <string name="day_of_week_short_sunday">su</string>
- <string name="day_of_week_short_monday">ma</string>
- <string name="day_of_week_short_tuesday">ti</string>
- <string name="day_of_week_short_wednesday">ke</string>
- <string name="day_of_week_short_thursday">to</string>
- <string name="day_of_week_short_friday">pe</string>
- <string name="day_of_week_short_saturday">la</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">K</string>
- <string name="day_of_week_shortest_thursday">T</string>
- <string name="day_of_week_shortest_friday">P</string>
- <string name="day_of_week_shortest_saturday">L</string>
-
- <string name="am">ap.</string>
- <string name="pm">ip.</string>
- <string name="yesterday">eilen</string>
- <string name="today">tänään</string>
- <string name="tomorrow">huomenna</string>
-
<string name="hour_minute_24">%-k.%M</string>
<string name="hour_minute_ampm">%-l.%M %p</string>
<string name="hour_minute_cap_ampm">%-l.%M %^p</string>
diff --git a/core/res/res/values-fi/donottranslate-cldr.xml b/core/res/res/values-fi/donottranslate-cldr.xml
index 71cccf3..543595f 100644
--- a/core/res/res/values-fi/donottranslate-cldr.xml
+++ b/core/res/res/values-fi/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">tammikuu</string>
- <string name="month_long_standalone_february">helmikuu</string>
- <string name="month_long_standalone_march">maaliskuu</string>
- <string name="month_long_standalone_april">huhtikuu</string>
- <string name="month_long_standalone_may">toukokuu</string>
- <string name="month_long_standalone_june">kesäkuu</string>
- <string name="month_long_standalone_july">heinäkuu</string>
- <string name="month_long_standalone_august">elokuu</string>
- <string name="month_long_standalone_september">syyskuu</string>
- <string name="month_long_standalone_october">lokakuu</string>
- <string name="month_long_standalone_november">marraskuu</string>
- <string name="month_long_standalone_december">joulukuu</string>
-
- <string name="month_long_january">tammikuuta</string>
- <string name="month_long_february">helmikuuta</string>
- <string name="month_long_march">maaliskuuta</string>
- <string name="month_long_april">huhtikuuta</string>
- <string name="month_long_may">toukokuuta</string>
- <string name="month_long_june">kesäkuuta</string>
- <string name="month_long_july">heinäkuuta</string>
- <string name="month_long_august">elokuuta</string>
- <string name="month_long_september">syyskuuta</string>
- <string name="month_long_october">lokakuuta</string>
- <string name="month_long_november">marraskuuta</string>
- <string name="month_long_december">joulukuuta</string>
-
- <string name="month_medium_january">tammikuuta</string>
- <string name="month_medium_february">helmikuuta</string>
- <string name="month_medium_march">maaliskuuta</string>
- <string name="month_medium_april">huhtikuuta</string>
- <string name="month_medium_may">toukokuuta</string>
- <string name="month_medium_june">kesäkuuta</string>
- <string name="month_medium_july">heinäkuuta</string>
- <string name="month_medium_august">elokuuta</string>
- <string name="month_medium_september">syyskuuta</string>
- <string name="month_medium_october">lokakuuta</string>
- <string name="month_medium_november">marraskuuta</string>
- <string name="month_medium_december">joulukuuta</string>
-
- <string name="month_shortest_january">T</string>
- <string name="month_shortest_february">H</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">H</string>
- <string name="month_shortest_may">T</string>
- <string name="month_shortest_june">K</string>
- <string name="month_shortest_july">H</string>
- <string name="month_shortest_august">E</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">L</string>
- <string name="month_shortest_november">M</string>
- <string name="month_shortest_december">J</string>
-
- <string name="day_of_week_long_sunday">sunnuntaina</string>
- <string name="day_of_week_long_monday">maanantaina</string>
- <string name="day_of_week_long_tuesday">tiistaina</string>
- <string name="day_of_week_long_wednesday">keskiviikkona</string>
- <string name="day_of_week_long_thursday">torstaina</string>
- <string name="day_of_week_long_friday">perjantaina</string>
- <string name="day_of_week_long_saturday">lauantaina</string>
-
- <string name="day_of_week_medium_sunday">su</string>
- <string name="day_of_week_medium_monday">ma</string>
- <string name="day_of_week_medium_tuesday">ti</string>
- <string name="day_of_week_medium_wednesday">ke</string>
- <string name="day_of_week_medium_thursday">to</string>
- <string name="day_of_week_medium_friday">pe</string>
- <string name="day_of_week_medium_saturday">la</string>
-
- <string name="day_of_week_short_sunday">su</string>
- <string name="day_of_week_short_monday">ma</string>
- <string name="day_of_week_short_tuesday">ti</string>
- <string name="day_of_week_short_wednesday">ke</string>
- <string name="day_of_week_short_thursday">to</string>
- <string name="day_of_week_short_friday">pe</string>
- <string name="day_of_week_short_saturday">la</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">K</string>
- <string name="day_of_week_shortest_thursday">T</string>
- <string name="day_of_week_shortest_friday">P</string>
- <string name="day_of_week_shortest_saturday">L</string>
-
- <string name="am">ap.</string>
- <string name="pm">ip.</string>
- <string name="yesterday">eilen</string>
- <string name="today">tänään</string>
- <string name="tomorrow">huomenna</string>
-
<string name="hour_minute_24">%-k.%M</string>
<string name="hour_minute_ampm">%-l.%M %p</string>
<string name="hour_minute_cap_ampm">%-l.%M %^p</string>
diff --git a/core/res/res/values-fr/donottranslate-cldr.xml b/core/res/res/values-fr/donottranslate-cldr.xml
index 840f728..ff10aec 100644
--- a/core/res/res/values-fr/donottranslate-cldr.xml
+++ b/core/res/res/values-fr/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">janvier</string>
- <string name="month_long_standalone_february">février</string>
- <string name="month_long_standalone_march">mars</string>
- <string name="month_long_standalone_april">avril</string>
- <string name="month_long_standalone_may">mai</string>
- <string name="month_long_standalone_june">juin</string>
- <string name="month_long_standalone_july">juillet</string>
- <string name="month_long_standalone_august">août</string>
- <string name="month_long_standalone_september">septembre</string>
- <string name="month_long_standalone_october">octobre</string>
- <string name="month_long_standalone_november">novembre</string>
- <string name="month_long_standalone_december">décembre</string>
-
- <string name="month_long_january">janvier</string>
- <string name="month_long_february">février</string>
- <string name="month_long_march">mars</string>
- <string name="month_long_april">avril</string>
- <string name="month_long_may">mai</string>
- <string name="month_long_june">juin</string>
- <string name="month_long_july">juillet</string>
- <string name="month_long_august">août</string>
- <string name="month_long_september">septembre</string>
- <string name="month_long_october">octobre</string>
- <string name="month_long_november">novembre</string>
- <string name="month_long_december">décembre</string>
-
- <string name="month_medium_january">janv.</string>
- <string name="month_medium_february">févr.</string>
- <string name="month_medium_march">mars</string>
- <string name="month_medium_april">avr.</string>
- <string name="month_medium_may">mai</string>
- <string name="month_medium_june">juin</string>
- <string name="month_medium_july">juil.</string>
- <string name="month_medium_august">août</string>
- <string name="month_medium_september">sept.</string>
- <string name="month_medium_october">oct.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">déc.</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">dimanche</string>
- <string name="day_of_week_long_monday">lundi</string>
- <string name="day_of_week_long_tuesday">mardi</string>
- <string name="day_of_week_long_wednesday">mercredi</string>
- <string name="day_of_week_long_thursday">jeudi</string>
- <string name="day_of_week_long_friday">vendredi</string>
- <string name="day_of_week_long_saturday">samedi</string>
-
- <string name="day_of_week_medium_sunday">dim.</string>
- <string name="day_of_week_medium_monday">lun.</string>
- <string name="day_of_week_medium_tuesday">mar.</string>
- <string name="day_of_week_medium_wednesday">mer.</string>
- <string name="day_of_week_medium_thursday">jeu.</string>
- <string name="day_of_week_medium_friday">ven.</string>
- <string name="day_of_week_medium_saturday">sam.</string>
-
- <string name="day_of_week_short_sunday">dim.</string>
- <string name="day_of_week_short_monday">lun.</string>
- <string name="day_of_week_short_tuesday">mar.</string>
- <string name="day_of_week_short_wednesday">mer.</string>
- <string name="day_of_week_short_thursday">jeu.</string>
- <string name="day_of_week_short_friday">ven.</string>
- <string name="day_of_week_short_saturday">sam.</string>
-
- <string name="day_of_week_shortest_sunday">D</string>
- <string name="day_of_week_shortest_monday">L</string>
- <string name="day_of_week_shortest_tuesday">M</string>
- <string name="day_of_week_shortest_wednesday">M</string>
- <string name="day_of_week_shortest_thursday">J</string>
- <string name="day_of_week_shortest_friday">V</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">matin</string>
- <string name="pm">soir</string>
- <string name="yesterday">hier</string>
- <string name="today">aujourd’hui</string>
- <string name="tomorrow">demain</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-hi-rIN/donottranslate-cldr.xml b/core/res/res/values-hi-rIN/donottranslate-cldr.xml
index 6bfd3de..5371e15 100644
--- a/core/res/res/values-hi-rIN/donottranslate-cldr.xml
+++ b/core/res/res/values-hi-rIN/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">जनवरी</string>
- <string name="month_long_standalone_february">फरवरी</string>
- <string name="month_long_standalone_march">मार्च</string>
- <string name="month_long_standalone_april">अप्रैल</string>
- <string name="month_long_standalone_may">मई</string>
- <string name="month_long_standalone_june">जून</string>
- <string name="month_long_standalone_july">जुलाई</string>
- <string name="month_long_standalone_august">अगस्त</string>
- <string name="month_long_standalone_september">सितम्बर</string>
- <string name="month_long_standalone_october">अक्तूबर</string>
- <string name="month_long_standalone_november">नवम्बर</string>
- <string name="month_long_standalone_december">दिसम्बर</string>
-
- <string name="month_long_january">जनवरी</string>
- <string name="month_long_february">फरवरी</string>
- <string name="month_long_march">मार्च</string>
- <string name="month_long_april">अप्रैल</string>
- <string name="month_long_may">मई</string>
- <string name="month_long_june">जून</string>
- <string name="month_long_july">जुलाई</string>
- <string name="month_long_august">अगस्त</string>
- <string name="month_long_september">सितम्बर</string>
- <string name="month_long_october">अक्तूबर</string>
- <string name="month_long_november">नवम्बर</string>
- <string name="month_long_december">दिसम्बर</string>
-
- <string name="month_medium_january">जनवरी</string>
- <string name="month_medium_february">फरवरी</string>
- <string name="month_medium_march">मार्च</string>
- <string name="month_medium_april">अप्रैल</string>
- <string name="month_medium_may">मई</string>
- <string name="month_medium_june">जून</string>
- <string name="month_medium_july">जुलाई</string>
- <string name="month_medium_august">अगस्त</string>
- <string name="month_medium_september">सितम्बर</string>
- <string name="month_medium_october">अक्तूबर</string>
- <string name="month_medium_november">नवम्बर</string>
- <string name="month_medium_december">दिसम्बर</string>
-
- <string name="month_shortest_january">ज</string>
- <string name="month_shortest_february">फ़</string>
- <string name="month_shortest_march">मा</string>
- <string name="month_shortest_april">अ</string>
- <string name="month_shortest_may">म</string>
- <string name="month_shortest_june">जू</string>
- <string name="month_shortest_july">जु</string>
- <string name="month_shortest_august">अ</string>
- <string name="month_shortest_september">सि</string>
- <string name="month_shortest_october">अ</string>
- <string name="month_shortest_november">न</string>
- <string name="month_shortest_december">दि</string>
-
- <string name="day_of_week_long_sunday">रविवार</string>
- <string name="day_of_week_long_monday">सोमवार</string>
- <string name="day_of_week_long_tuesday">मंगलवार</string>
- <string name="day_of_week_long_wednesday">बुधवार</string>
- <string name="day_of_week_long_thursday">गुरुवार</string>
- <string name="day_of_week_long_friday">शुक्रवार</string>
- <string name="day_of_week_long_saturday">शनिवार</string>
-
- <string name="day_of_week_medium_sunday">रवि</string>
- <string name="day_of_week_medium_monday">सोम</string>
- <string name="day_of_week_medium_tuesday">मंगल</string>
- <string name="day_of_week_medium_wednesday">बुध</string>
- <string name="day_of_week_medium_thursday">गुरु</string>
- <string name="day_of_week_medium_friday">शुक्र</string>
- <string name="day_of_week_medium_saturday">शनि</string>
-
- <string name="day_of_week_short_sunday">रवि</string>
- <string name="day_of_week_short_monday">सोम</string>
- <string name="day_of_week_short_tuesday">मंगल</string>
- <string name="day_of_week_short_wednesday">बुध</string>
- <string name="day_of_week_short_thursday">गुरु</string>
- <string name="day_of_week_short_friday">शुक्र</string>
- <string name="day_of_week_short_saturday">शनि</string>
-
- <string name="day_of_week_shortest_sunday">र</string>
- <string name="day_of_week_shortest_monday">सो</string>
- <string name="day_of_week_shortest_tuesday">मं</string>
- <string name="day_of_week_shortest_wednesday">बु</string>
- <string name="day_of_week_shortest_thursday">गु</string>
- <string name="day_of_week_shortest_friday">शु</string>
- <string name="day_of_week_shortest_saturday">श</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-hi/donottranslate-cldr.xml b/core/res/res/values-hi/donottranslate-cldr.xml
index d9405d8..8043169 100644
--- a/core/res/res/values-hi/donottranslate-cldr.xml
+++ b/core/res/res/values-hi/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">जनवरी</string>
- <string name="month_long_standalone_february">फरवरी</string>
- <string name="month_long_standalone_march">मार्च</string>
- <string name="month_long_standalone_april">अप्रैल</string>
- <string name="month_long_standalone_may">मई</string>
- <string name="month_long_standalone_june">जून</string>
- <string name="month_long_standalone_july">जुलाई</string>
- <string name="month_long_standalone_august">अगस्त</string>
- <string name="month_long_standalone_september">सितम्बर</string>
- <string name="month_long_standalone_october">अक्तूबर</string>
- <string name="month_long_standalone_november">नवम्बर</string>
- <string name="month_long_standalone_december">दिसम्बर</string>
-
- <string name="month_long_january">जनवरी</string>
- <string name="month_long_february">फरवरी</string>
- <string name="month_long_march">मार्च</string>
- <string name="month_long_april">अप्रैल</string>
- <string name="month_long_may">मई</string>
- <string name="month_long_june">जून</string>
- <string name="month_long_july">जुलाई</string>
- <string name="month_long_august">अगस्त</string>
- <string name="month_long_september">सितम्बर</string>
- <string name="month_long_october">अक्तूबर</string>
- <string name="month_long_november">नवम्बर</string>
- <string name="month_long_december">दिसम्बर</string>
-
- <string name="month_medium_january">जनवरी</string>
- <string name="month_medium_february">फरवरी</string>
- <string name="month_medium_march">मार्च</string>
- <string name="month_medium_april">अप्रैल</string>
- <string name="month_medium_may">मई</string>
- <string name="month_medium_june">जून</string>
- <string name="month_medium_july">जुलाई</string>
- <string name="month_medium_august">अगस्त</string>
- <string name="month_medium_september">सितम्बर</string>
- <string name="month_medium_october">अक्तूबर</string>
- <string name="month_medium_november">नवम्बर</string>
- <string name="month_medium_december">दिसम्बर</string>
-
- <string name="month_shortest_january">ज</string>
- <string name="month_shortest_february">फ़</string>
- <string name="month_shortest_march">मा</string>
- <string name="month_shortest_april">अ</string>
- <string name="month_shortest_may">म</string>
- <string name="month_shortest_june">जू</string>
- <string name="month_shortest_july">जु</string>
- <string name="month_shortest_august">अ</string>
- <string name="month_shortest_september">सि</string>
- <string name="month_shortest_october">अ</string>
- <string name="month_shortest_november">न</string>
- <string name="month_shortest_december">दि</string>
-
- <string name="day_of_week_long_sunday">रविवार</string>
- <string name="day_of_week_long_monday">सोमवार</string>
- <string name="day_of_week_long_tuesday">मंगलवार</string>
- <string name="day_of_week_long_wednesday">बुधवार</string>
- <string name="day_of_week_long_thursday">गुरुवार</string>
- <string name="day_of_week_long_friday">शुक्रवार</string>
- <string name="day_of_week_long_saturday">शनिवार</string>
-
- <string name="day_of_week_medium_sunday">रवि</string>
- <string name="day_of_week_medium_monday">सोम</string>
- <string name="day_of_week_medium_tuesday">मंगल</string>
- <string name="day_of_week_medium_wednesday">बुध</string>
- <string name="day_of_week_medium_thursday">गुरु</string>
- <string name="day_of_week_medium_friday">शुक्र</string>
- <string name="day_of_week_medium_saturday">शनि</string>
-
- <string name="day_of_week_short_sunday">रवि</string>
- <string name="day_of_week_short_monday">सोम</string>
- <string name="day_of_week_short_tuesday">मंगल</string>
- <string name="day_of_week_short_wednesday">बुध</string>
- <string name="day_of_week_short_thursday">गुरु</string>
- <string name="day_of_week_short_friday">शुक्र</string>
- <string name="day_of_week_short_saturday">शनि</string>
-
- <string name="day_of_week_shortest_sunday">र</string>
- <string name="day_of_week_shortest_monday">सो</string>
- <string name="day_of_week_shortest_tuesday">मं</string>
- <string name="day_of_week_shortest_wednesday">बु</string>
- <string name="day_of_week_shortest_thursday">गु</string>
- <string name="day_of_week_shortest_friday">शु</string>
- <string name="day_of_week_shortest_saturday">श</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-hr-rHR/donottranslate-cldr.xml b/core/res/res/values-hr-rHR/donottranslate-cldr.xml
index a601d93..57e0572 100644
--- a/core/res/res/values-hr-rHR/donottranslate-cldr.xml
+++ b/core/res/res/values-hr-rHR/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">siječanj</string>
- <string name="month_long_standalone_february">veljača</string>
- <string name="month_long_standalone_march">ožujak</string>
- <string name="month_long_standalone_april">travanj</string>
- <string name="month_long_standalone_may">svibanj</string>
- <string name="month_long_standalone_june">lipanj</string>
- <string name="month_long_standalone_july">srpanj</string>
- <string name="month_long_standalone_august">kolovoz</string>
- <string name="month_long_standalone_september">rujan</string>
- <string name="month_long_standalone_october">listopad</string>
- <string name="month_long_standalone_november">studeni</string>
- <string name="month_long_standalone_december">prosinac</string>
-
- <string name="month_long_january">siječnja</string>
- <string name="month_long_february">veljače</string>
- <string name="month_long_march">ožujka</string>
- <string name="month_long_april">travnja</string>
- <string name="month_long_may">svibnja</string>
- <string name="month_long_june">lipnja</string>
- <string name="month_long_july">srpnja</string>
- <string name="month_long_august">kolovoza</string>
- <string name="month_long_september">rujna</string>
- <string name="month_long_october">listopada</string>
- <string name="month_long_november">studenoga</string>
- <string name="month_long_december">prosinca</string>
-
- <string name="month_medium_january">01.</string>
- <string name="month_medium_february">02.</string>
- <string name="month_medium_march">03.</string>
- <string name="month_medium_april">04.</string>
- <string name="month_medium_may">05.</string>
- <string name="month_medium_june">06.</string>
- <string name="month_medium_july">07.</string>
- <string name="month_medium_august">08.</string>
- <string name="month_medium_september">09.</string>
- <string name="month_medium_october">10.</string>
- <string name="month_medium_november">11.</string>
- <string name="month_medium_december">12.</string>
-
- <string name="month_shortest_january">1.</string>
- <string name="month_shortest_february">2.</string>
- <string name="month_shortest_march">3.</string>
- <string name="month_shortest_april">4.</string>
- <string name="month_shortest_may">5.</string>
- <string name="month_shortest_june">6.</string>
- <string name="month_shortest_july">7.</string>
- <string name="month_shortest_august">8.</string>
- <string name="month_shortest_september">9.</string>
- <string name="month_shortest_october">10.</string>
- <string name="month_shortest_november">11.</string>
- <string name="month_shortest_december">12.</string>
-
- <string name="day_of_week_long_sunday">nedjelja</string>
- <string name="day_of_week_long_monday">ponedjeljak</string>
- <string name="day_of_week_long_tuesday">utorak</string>
- <string name="day_of_week_long_wednesday">srijeda</string>
- <string name="day_of_week_long_thursday">četvrtak</string>
- <string name="day_of_week_long_friday">petak</string>
- <string name="day_of_week_long_saturday">subota</string>
-
- <string name="day_of_week_medium_sunday">ned</string>
- <string name="day_of_week_medium_monday">pon</string>
- <string name="day_of_week_medium_tuesday">uto</string>
- <string name="day_of_week_medium_wednesday">sri</string>
- <string name="day_of_week_medium_thursday">čet</string>
- <string name="day_of_week_medium_friday">pet</string>
- <string name="day_of_week_medium_saturday">sub</string>
-
- <string name="day_of_week_short_sunday">ned</string>
- <string name="day_of_week_short_monday">pon</string>
- <string name="day_of_week_short_tuesday">uto</string>
- <string name="day_of_week_short_wednesday">sri</string>
- <string name="day_of_week_short_thursday">čet</string>
- <string name="day_of_week_short_friday">pet</string>
- <string name="day_of_week_short_saturday">sub</string>
-
- <string name="day_of_week_shortest_sunday">n</string>
- <string name="day_of_week_shortest_monday">p</string>
- <string name="day_of_week_shortest_tuesday">u</string>
- <string name="day_of_week_shortest_wednesday">s</string>
- <string name="day_of_week_shortest_thursday">č</string>
- <string name="day_of_week_shortest_friday">p</string>
- <string name="day_of_week_shortest_saturday">s</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">jučer</string>
- <string name="today">danas</string>
- <string name="tomorrow">sutra</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-hr/donottranslate-cldr.xml b/core/res/res/values-hr/donottranslate-cldr.xml
index 9b51862..9e4b225 100644
--- a/core/res/res/values-hr/donottranslate-cldr.xml
+++ b/core/res/res/values-hr/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">siječanj</string>
- <string name="month_long_standalone_february">veljača</string>
- <string name="month_long_standalone_march">ožujak</string>
- <string name="month_long_standalone_april">travanj</string>
- <string name="month_long_standalone_may">svibanj</string>
- <string name="month_long_standalone_june">lipanj</string>
- <string name="month_long_standalone_july">srpanj</string>
- <string name="month_long_standalone_august">kolovoz</string>
- <string name="month_long_standalone_september">rujan</string>
- <string name="month_long_standalone_october">listopad</string>
- <string name="month_long_standalone_november">studeni</string>
- <string name="month_long_standalone_december">prosinac</string>
-
- <string name="month_long_january">siječnja</string>
- <string name="month_long_february">veljače</string>
- <string name="month_long_march">ožujka</string>
- <string name="month_long_april">travnja</string>
- <string name="month_long_may">svibnja</string>
- <string name="month_long_june">lipnja</string>
- <string name="month_long_july">srpnja</string>
- <string name="month_long_august">kolovoza</string>
- <string name="month_long_september">rujna</string>
- <string name="month_long_october">listopada</string>
- <string name="month_long_november">studenoga</string>
- <string name="month_long_december">prosinca</string>
-
- <string name="month_medium_january">01.</string>
- <string name="month_medium_february">02.</string>
- <string name="month_medium_march">03.</string>
- <string name="month_medium_april">04.</string>
- <string name="month_medium_may">05.</string>
- <string name="month_medium_june">06.</string>
- <string name="month_medium_july">07.</string>
- <string name="month_medium_august">08.</string>
- <string name="month_medium_september">09.</string>
- <string name="month_medium_october">10.</string>
- <string name="month_medium_november">11.</string>
- <string name="month_medium_december">12.</string>
-
- <string name="month_shortest_january">1.</string>
- <string name="month_shortest_february">2.</string>
- <string name="month_shortest_march">3.</string>
- <string name="month_shortest_april">4.</string>
- <string name="month_shortest_may">5.</string>
- <string name="month_shortest_june">6.</string>
- <string name="month_shortest_july">7.</string>
- <string name="month_shortest_august">8.</string>
- <string name="month_shortest_september">9.</string>
- <string name="month_shortest_october">10.</string>
- <string name="month_shortest_november">11.</string>
- <string name="month_shortest_december">12.</string>
-
- <string name="day_of_week_long_sunday">nedjelja</string>
- <string name="day_of_week_long_monday">ponedjeljak</string>
- <string name="day_of_week_long_tuesday">utorak</string>
- <string name="day_of_week_long_wednesday">srijeda</string>
- <string name="day_of_week_long_thursday">četvrtak</string>
- <string name="day_of_week_long_friday">petak</string>
- <string name="day_of_week_long_saturday">subota</string>
-
- <string name="day_of_week_medium_sunday">ned</string>
- <string name="day_of_week_medium_monday">pon</string>
- <string name="day_of_week_medium_tuesday">uto</string>
- <string name="day_of_week_medium_wednesday">sri</string>
- <string name="day_of_week_medium_thursday">čet</string>
- <string name="day_of_week_medium_friday">pet</string>
- <string name="day_of_week_medium_saturday">sub</string>
-
- <string name="day_of_week_short_sunday">ned</string>
- <string name="day_of_week_short_monday">pon</string>
- <string name="day_of_week_short_tuesday">uto</string>
- <string name="day_of_week_short_wednesday">sri</string>
- <string name="day_of_week_short_thursday">čet</string>
- <string name="day_of_week_short_friday">pet</string>
- <string name="day_of_week_short_saturday">sub</string>
-
- <string name="day_of_week_shortest_sunday">n</string>
- <string name="day_of_week_shortest_monday">p</string>
- <string name="day_of_week_shortest_tuesday">u</string>
- <string name="day_of_week_shortest_wednesday">s</string>
- <string name="day_of_week_shortest_thursday">č</string>
- <string name="day_of_week_shortest_friday">p</string>
- <string name="day_of_week_shortest_saturday">s</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">jučer</string>
- <string name="today">danas</string>
- <string name="tomorrow">sutra</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-hu-rHU/donottranslate-cldr.xml b/core/res/res/values-hu-rHU/donottranslate-cldr.xml
index afb7676..5f4b8aa 100644
--- a/core/res/res/values-hu-rHU/donottranslate-cldr.xml
+++ b/core/res/res/values-hu-rHU/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">január</string>
- <string name="month_long_standalone_february">február</string>
- <string name="month_long_standalone_march">március</string>
- <string name="month_long_standalone_april">április</string>
- <string name="month_long_standalone_may">május</string>
- <string name="month_long_standalone_june">június</string>
- <string name="month_long_standalone_july">július</string>
- <string name="month_long_standalone_august">augusztus</string>
- <string name="month_long_standalone_september">szeptember</string>
- <string name="month_long_standalone_october">október</string>
- <string name="month_long_standalone_november">november</string>
- <string name="month_long_standalone_december">december</string>
-
- <string name="month_long_january">január</string>
- <string name="month_long_february">február</string>
- <string name="month_long_march">március</string>
- <string name="month_long_april">április</string>
- <string name="month_long_may">május</string>
- <string name="month_long_june">június</string>
- <string name="month_long_july">július</string>
- <string name="month_long_august">augusztus</string>
- <string name="month_long_september">szeptember</string>
- <string name="month_long_october">október</string>
- <string name="month_long_november">november</string>
- <string name="month_long_december">december</string>
-
- <string name="month_medium_january">jan.</string>
- <string name="month_medium_february">febr.</string>
- <string name="month_medium_march">márc.</string>
- <string name="month_medium_april">ápr.</string>
- <string name="month_medium_may">máj.</string>
- <string name="month_medium_june">jún.</string>
- <string name="month_medium_july">júl.</string>
- <string name="month_medium_august">aug.</string>
- <string name="month_medium_september">szept.</string>
- <string name="month_medium_october">okt.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">dec.</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">Á</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">vasárnap</string>
- <string name="day_of_week_long_monday">hétfő</string>
- <string name="day_of_week_long_tuesday">kedd</string>
- <string name="day_of_week_long_wednesday">szerda</string>
- <string name="day_of_week_long_thursday">csütörtök</string>
- <string name="day_of_week_long_friday">péntek</string>
- <string name="day_of_week_long_saturday">szombat</string>
-
- <string name="day_of_week_medium_sunday">V</string>
- <string name="day_of_week_medium_monday">H</string>
- <string name="day_of_week_medium_tuesday">K</string>
- <string name="day_of_week_medium_wednesday">Sze</string>
- <string name="day_of_week_medium_thursday">Cs</string>
- <string name="day_of_week_medium_friday">P</string>
- <string name="day_of_week_medium_saturday">Szo</string>
-
- <string name="day_of_week_short_sunday">V</string>
- <string name="day_of_week_short_monday">H</string>
- <string name="day_of_week_short_tuesday">K</string>
- <string name="day_of_week_short_wednesday">Sze</string>
- <string name="day_of_week_short_thursday">Cs</string>
- <string name="day_of_week_short_friday">P</string>
- <string name="day_of_week_short_saturday">Szo</string>
-
- <string name="day_of_week_shortest_sunday">V</string>
- <string name="day_of_week_shortest_monday">H</string>
- <string name="day_of_week_shortest_tuesday">K</string>
- <string name="day_of_week_shortest_wednesday">S</string>
- <string name="day_of_week_shortest_thursday">C</string>
- <string name="day_of_week_shortest_friday">P</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">de.</string>
- <string name="pm">du.</string>
- <string name="yesterday">tegnap</string>
- <string name="today">ma</string>
- <string name="tomorrow">holnap</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%p %-l:%M</string>
<string name="hour_minute_cap_ampm">%^p %-l:%M</string>
diff --git a/core/res/res/values-hu/donottranslate-cldr.xml b/core/res/res/values-hu/donottranslate-cldr.xml
index 28b65bc..c925b82 100644
--- a/core/res/res/values-hu/donottranslate-cldr.xml
+++ b/core/res/res/values-hu/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">január</string>
- <string name="month_long_standalone_february">február</string>
- <string name="month_long_standalone_march">március</string>
- <string name="month_long_standalone_april">április</string>
- <string name="month_long_standalone_may">május</string>
- <string name="month_long_standalone_june">június</string>
- <string name="month_long_standalone_july">július</string>
- <string name="month_long_standalone_august">augusztus</string>
- <string name="month_long_standalone_september">szeptember</string>
- <string name="month_long_standalone_october">október</string>
- <string name="month_long_standalone_november">november</string>
- <string name="month_long_standalone_december">december</string>
-
- <string name="month_long_january">január</string>
- <string name="month_long_february">február</string>
- <string name="month_long_march">március</string>
- <string name="month_long_april">április</string>
- <string name="month_long_may">május</string>
- <string name="month_long_june">június</string>
- <string name="month_long_july">július</string>
- <string name="month_long_august">augusztus</string>
- <string name="month_long_september">szeptember</string>
- <string name="month_long_october">október</string>
- <string name="month_long_november">november</string>
- <string name="month_long_december">december</string>
-
- <string name="month_medium_january">jan.</string>
- <string name="month_medium_february">febr.</string>
- <string name="month_medium_march">márc.</string>
- <string name="month_medium_april">ápr.</string>
- <string name="month_medium_may">máj.</string>
- <string name="month_medium_june">jún.</string>
- <string name="month_medium_july">júl.</string>
- <string name="month_medium_august">aug.</string>
- <string name="month_medium_september">szept.</string>
- <string name="month_medium_october">okt.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">dec.</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">Á</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">vasárnap</string>
- <string name="day_of_week_long_monday">hétfő</string>
- <string name="day_of_week_long_tuesday">kedd</string>
- <string name="day_of_week_long_wednesday">szerda</string>
- <string name="day_of_week_long_thursday">csütörtök</string>
- <string name="day_of_week_long_friday">péntek</string>
- <string name="day_of_week_long_saturday">szombat</string>
-
- <string name="day_of_week_medium_sunday">V</string>
- <string name="day_of_week_medium_monday">H</string>
- <string name="day_of_week_medium_tuesday">K</string>
- <string name="day_of_week_medium_wednesday">Sze</string>
- <string name="day_of_week_medium_thursday">Cs</string>
- <string name="day_of_week_medium_friday">P</string>
- <string name="day_of_week_medium_saturday">Szo</string>
-
- <string name="day_of_week_short_sunday">V</string>
- <string name="day_of_week_short_monday">H</string>
- <string name="day_of_week_short_tuesday">K</string>
- <string name="day_of_week_short_wednesday">Sze</string>
- <string name="day_of_week_short_thursday">Cs</string>
- <string name="day_of_week_short_friday">P</string>
- <string name="day_of_week_short_saturday">Szo</string>
-
- <string name="day_of_week_shortest_sunday">V</string>
- <string name="day_of_week_shortest_monday">H</string>
- <string name="day_of_week_shortest_tuesday">K</string>
- <string name="day_of_week_shortest_wednesday">S</string>
- <string name="day_of_week_shortest_thursday">C</string>
- <string name="day_of_week_shortest_friday">P</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">de.</string>
- <string name="pm">du.</string>
- <string name="yesterday">tegnap</string>
- <string name="today">ma</string>
- <string name="tomorrow">holnap</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-in-rID/donottranslate-cldr.xml b/core/res/res/values-in-rID/donottranslate-cldr.xml
index b79fe00..8b13bcf 100644
--- a/core/res/res/values-in-rID/donottranslate-cldr.xml
+++ b/core/res/res/values-in-rID/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">Januari</string>
- <string name="month_long_standalone_february">Februari</string>
- <string name="month_long_standalone_march">Maret</string>
- <string name="month_long_standalone_april">April</string>
- <string name="month_long_standalone_may">Mei</string>
- <string name="month_long_standalone_june">Juni</string>
- <string name="month_long_standalone_july">Juli</string>
- <string name="month_long_standalone_august">Agustus</string>
- <string name="month_long_standalone_september">September</string>
- <string name="month_long_standalone_october">Oktober</string>
- <string name="month_long_standalone_november">November</string>
- <string name="month_long_standalone_december">Desember</string>
-
- <string name="month_long_january">Januari</string>
- <string name="month_long_february">Februari</string>
- <string name="month_long_march">Maret</string>
- <string name="month_long_april">April</string>
- <string name="month_long_may">Mei</string>
- <string name="month_long_june">Juni</string>
- <string name="month_long_july">Juli</string>
- <string name="month_long_august">Agustus</string>
- <string name="month_long_september">September</string>
- <string name="month_long_october">Oktober</string>
- <string name="month_long_november">November</string>
- <string name="month_long_december">Desember</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mar</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">Mei</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Agu</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Okt</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Des</string>
-
- <string name="month_shortest_january">1</string>
- <string name="month_shortest_february">2</string>
- <string name="month_shortest_march">3</string>
- <string name="month_shortest_april">4</string>
- <string name="month_shortest_may">5</string>
- <string name="month_shortest_june">6</string>
- <string name="month_shortest_july">7</string>
- <string name="month_shortest_august">8</string>
- <string name="month_shortest_september">9</string>
- <string name="month_shortest_october">10</string>
- <string name="month_shortest_november">11</string>
- <string name="month_shortest_december">12</string>
-
- <string name="day_of_week_long_sunday">Minggu</string>
- <string name="day_of_week_long_monday">Senin</string>
- <string name="day_of_week_long_tuesday">Selasa</string>
- <string name="day_of_week_long_wednesday">Rabu</string>
- <string name="day_of_week_long_thursday">Kamis</string>
- <string name="day_of_week_long_friday">Jumat</string>
- <string name="day_of_week_long_saturday">Sabtu</string>
-
- <string name="day_of_week_medium_sunday">Min</string>
- <string name="day_of_week_medium_monday">Sen</string>
- <string name="day_of_week_medium_tuesday">Sel</string>
- <string name="day_of_week_medium_wednesday">Rab</string>
- <string name="day_of_week_medium_thursday">Kam</string>
- <string name="day_of_week_medium_friday">Jum</string>
- <string name="day_of_week_medium_saturday">Sab</string>
-
- <string name="day_of_week_short_sunday">Min</string>
- <string name="day_of_week_short_monday">Sen</string>
- <string name="day_of_week_short_tuesday">Sel</string>
- <string name="day_of_week_short_wednesday">Rab</string>
- <string name="day_of_week_short_thursday">Kam</string>
- <string name="day_of_week_short_friday">Jum</string>
- <string name="day_of_week_short_saturday">Sab</string>
-
- <string name="day_of_week_shortest_sunday">1</string>
- <string name="day_of_week_shortest_monday">2</string>
- <string name="day_of_week_shortest_tuesday">3</string>
- <string name="day_of_week_shortest_wednesday">4</string>
- <string name="day_of_week_shortest_thursday">5</string>
- <string name="day_of_week_shortest_friday">6</string>
- <string name="day_of_week_shortest_saturday">7</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-in/donottranslate-cldr.xml b/core/res/res/values-in/donottranslate-cldr.xml
index 9a634cc..6e9bba4 100644
--- a/core/res/res/values-in/donottranslate-cldr.xml
+++ b/core/res/res/values-in/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">Januari</string>
- <string name="month_long_standalone_february">Februari</string>
- <string name="month_long_standalone_march">Maret</string>
- <string name="month_long_standalone_april">April</string>
- <string name="month_long_standalone_may">Mei</string>
- <string name="month_long_standalone_june">Juni</string>
- <string name="month_long_standalone_july">Juli</string>
- <string name="month_long_standalone_august">Agustus</string>
- <string name="month_long_standalone_september">September</string>
- <string name="month_long_standalone_october">Oktober</string>
- <string name="month_long_standalone_november">November</string>
- <string name="month_long_standalone_december">Desember</string>
-
- <string name="month_long_january">Januari</string>
- <string name="month_long_february">Februari</string>
- <string name="month_long_march">Maret</string>
- <string name="month_long_april">April</string>
- <string name="month_long_may">Mei</string>
- <string name="month_long_june">Juni</string>
- <string name="month_long_july">Juli</string>
- <string name="month_long_august">Agustus</string>
- <string name="month_long_september">September</string>
- <string name="month_long_october">Oktober</string>
- <string name="month_long_november">November</string>
- <string name="month_long_december">Desember</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mar</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">Mei</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Agu</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Okt</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Des</string>
-
- <string name="month_shortest_january">1</string>
- <string name="month_shortest_february">2</string>
- <string name="month_shortest_march">3</string>
- <string name="month_shortest_april">4</string>
- <string name="month_shortest_may">5</string>
- <string name="month_shortest_june">6</string>
- <string name="month_shortest_july">7</string>
- <string name="month_shortest_august">8</string>
- <string name="month_shortest_september">9</string>
- <string name="month_shortest_october">10</string>
- <string name="month_shortest_november">11</string>
- <string name="month_shortest_december">12</string>
-
- <string name="day_of_week_long_sunday">Minggu</string>
- <string name="day_of_week_long_monday">Senin</string>
- <string name="day_of_week_long_tuesday">Selasa</string>
- <string name="day_of_week_long_wednesday">Rabu</string>
- <string name="day_of_week_long_thursday">Kamis</string>
- <string name="day_of_week_long_friday">Jumat</string>
- <string name="day_of_week_long_saturday">Sabtu</string>
-
- <string name="day_of_week_medium_sunday">Min</string>
- <string name="day_of_week_medium_monday">Sen</string>
- <string name="day_of_week_medium_tuesday">Sel</string>
- <string name="day_of_week_medium_wednesday">Rab</string>
- <string name="day_of_week_medium_thursday">Kam</string>
- <string name="day_of_week_medium_friday">Jum</string>
- <string name="day_of_week_medium_saturday">Sab</string>
-
- <string name="day_of_week_short_sunday">Min</string>
- <string name="day_of_week_short_monday">Sen</string>
- <string name="day_of_week_short_tuesday">Sel</string>
- <string name="day_of_week_short_wednesday">Rab</string>
- <string name="day_of_week_short_thursday">Kam</string>
- <string name="day_of_week_short_friday">Jum</string>
- <string name="day_of_week_short_saturday">Sab</string>
-
- <string name="day_of_week_shortest_sunday">1</string>
- <string name="day_of_week_shortest_monday">2</string>
- <string name="day_of_week_shortest_tuesday">3</string>
- <string name="day_of_week_shortest_wednesday">4</string>
- <string name="day_of_week_shortest_thursday">5</string>
- <string name="day_of_week_shortest_friday">6</string>
- <string name="day_of_week_shortest_saturday">7</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-it/donottranslate-cldr.xml b/core/res/res/values-it/donottranslate-cldr.xml
index 8cee828..9ff27e8 100644
--- a/core/res/res/values-it/donottranslate-cldr.xml
+++ b/core/res/res/values-it/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">gennaio</string>
- <string name="month_long_standalone_february">febbraio</string>
- <string name="month_long_standalone_march">marzo</string>
- <string name="month_long_standalone_april">aprile</string>
- <string name="month_long_standalone_may">maggio</string>
- <string name="month_long_standalone_june">giugno</string>
- <string name="month_long_standalone_july">luglio</string>
- <string name="month_long_standalone_august">agosto</string>
- <string name="month_long_standalone_september">settembre</string>
- <string name="month_long_standalone_october">ottobre</string>
- <string name="month_long_standalone_november">novembre</string>
- <string name="month_long_standalone_december">dicembre</string>
-
- <string name="month_long_january">gennaio</string>
- <string name="month_long_february">febbraio</string>
- <string name="month_long_march">marzo</string>
- <string name="month_long_april">aprile</string>
- <string name="month_long_may">maggio</string>
- <string name="month_long_june">giugno</string>
- <string name="month_long_july">luglio</string>
- <string name="month_long_august">agosto</string>
- <string name="month_long_september">settembre</string>
- <string name="month_long_october">ottobre</string>
- <string name="month_long_november">novembre</string>
- <string name="month_long_december">dicembre</string>
-
- <string name="month_medium_january">gen</string>
- <string name="month_medium_february">feb</string>
- <string name="month_medium_march">mar</string>
- <string name="month_medium_april">apr</string>
- <string name="month_medium_may">mag</string>
- <string name="month_medium_june">giu</string>
- <string name="month_medium_july">lug</string>
- <string name="month_medium_august">ago</string>
- <string name="month_medium_september">set</string>
- <string name="month_medium_october">ott</string>
- <string name="month_medium_november">nov</string>
- <string name="month_medium_december">dic</string>
-
- <string name="month_shortest_january">G</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">G</string>
- <string name="month_shortest_july">L</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">domenica</string>
- <string name="day_of_week_long_monday">lunedì</string>
- <string name="day_of_week_long_tuesday">martedì</string>
- <string name="day_of_week_long_wednesday">mercoledì</string>
- <string name="day_of_week_long_thursday">giovedì</string>
- <string name="day_of_week_long_friday">venerdì</string>
- <string name="day_of_week_long_saturday">sabato</string>
-
- <string name="day_of_week_medium_sunday">dom</string>
- <string name="day_of_week_medium_monday">lun</string>
- <string name="day_of_week_medium_tuesday">mar</string>
- <string name="day_of_week_medium_wednesday">mer</string>
- <string name="day_of_week_medium_thursday">gio</string>
- <string name="day_of_week_medium_friday">ven</string>
- <string name="day_of_week_medium_saturday">sab</string>
-
- <string name="day_of_week_short_sunday">dom</string>
- <string name="day_of_week_short_monday">lun</string>
- <string name="day_of_week_short_tuesday">mar</string>
- <string name="day_of_week_short_wednesday">mer</string>
- <string name="day_of_week_short_thursday">gio</string>
- <string name="day_of_week_short_friday">ven</string>
- <string name="day_of_week_short_saturday">sab</string>
-
- <string name="day_of_week_shortest_sunday">D</string>
- <string name="day_of_week_shortest_monday">L</string>
- <string name="day_of_week_shortest_tuesday">M</string>
- <string name="day_of_week_shortest_wednesday">M</string>
- <string name="day_of_week_shortest_thursday">G</string>
- <string name="day_of_week_shortest_friday">V</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">m.</string>
- <string name="pm">p.</string>
- <string name="yesterday">ieri</string>
- <string name="today">oggi</string>
- <string name="tomorrow">domani</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-iw/donottranslate-cldr.xml b/core/res/res/values-iw/donottranslate-cldr.xml
index 02d1e9c..631c059 100644
--- a/core/res/res/values-iw/donottranslate-cldr.xml
+++ b/core/res/res/values-iw/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">ינואר</string>
- <string name="month_long_standalone_february">פברואר</string>
- <string name="month_long_standalone_march">מרס</string>
- <string name="month_long_standalone_april">אפריל</string>
- <string name="month_long_standalone_may">מאי</string>
- <string name="month_long_standalone_june">יוני</string>
- <string name="month_long_standalone_july">יולי</string>
- <string name="month_long_standalone_august">אוגוסט</string>
- <string name="month_long_standalone_september">ספטמבר</string>
- <string name="month_long_standalone_october">אוקטובר</string>
- <string name="month_long_standalone_november">נובמבר</string>
- <string name="month_long_standalone_december">דצמבר</string>
-
- <string name="month_long_january">ינואר</string>
- <string name="month_long_february">פברואר</string>
- <string name="month_long_march">מרס</string>
- <string name="month_long_april">אפריל</string>
- <string name="month_long_may">מאי</string>
- <string name="month_long_june">יוני</string>
- <string name="month_long_july">יולי</string>
- <string name="month_long_august">אוגוסט</string>
- <string name="month_long_september">ספטמבר</string>
- <string name="month_long_october">אוקטובר</string>
- <string name="month_long_november">נובמבר</string>
- <string name="month_long_december">דצמבר</string>
-
- <string name="month_medium_january">ינו</string>
- <string name="month_medium_february">פבר</string>
- <string name="month_medium_march">מרס</string>
- <string name="month_medium_april">אפר</string>
- <string name="month_medium_may">מאי</string>
- <string name="month_medium_june">יונ</string>
- <string name="month_medium_july">יול</string>
- <string name="month_medium_august">אוג</string>
- <string name="month_medium_september">ספט</string>
- <string name="month_medium_october">אוק</string>
- <string name="month_medium_november">נוב</string>
- <string name="month_medium_december">דצמ</string>
-
- <string name="month_shortest_january">1</string>
- <string name="month_shortest_february">2</string>
- <string name="month_shortest_march">3</string>
- <string name="month_shortest_april">4</string>
- <string name="month_shortest_may">5</string>
- <string name="month_shortest_june">6</string>
- <string name="month_shortest_july">7</string>
- <string name="month_shortest_august">8</string>
- <string name="month_shortest_september">9</string>
- <string name="month_shortest_october">10</string>
- <string name="month_shortest_november">11</string>
- <string name="month_shortest_december">12</string>
-
- <string name="day_of_week_long_sunday">יום ראשון</string>
- <string name="day_of_week_long_monday">יום שני</string>
- <string name="day_of_week_long_tuesday">יום שלישי</string>
- <string name="day_of_week_long_wednesday">יום רביעי</string>
- <string name="day_of_week_long_thursday">יום חמישי</string>
- <string name="day_of_week_long_friday">יום שישי</string>
- <string name="day_of_week_long_saturday">יום שבת</string>
-
- <string name="day_of_week_medium_sunday">יום א\'</string>
- <string name="day_of_week_medium_monday">יום ב\'</string>
- <string name="day_of_week_medium_tuesday">יום ג\'</string>
- <string name="day_of_week_medium_wednesday">יום ד\'</string>
- <string name="day_of_week_medium_thursday">יום ה\'</string>
- <string name="day_of_week_medium_friday">יום ו\'</string>
- <string name="day_of_week_medium_saturday">שבת</string>
-
- <string name="day_of_week_short_sunday">יום א\'</string>
- <string name="day_of_week_short_monday">יום ב\'</string>
- <string name="day_of_week_short_tuesday">יום ג\'</string>
- <string name="day_of_week_short_wednesday">יום ד\'</string>
- <string name="day_of_week_short_thursday">יום ה\'</string>
- <string name="day_of_week_short_friday">יום ו\'</string>
- <string name="day_of_week_short_saturday">שבת</string>
-
- <string name="day_of_week_shortest_sunday">א</string>
- <string name="day_of_week_shortest_monday">ב</string>
- <string name="day_of_week_shortest_tuesday">ג</string>
- <string name="day_of_week_shortest_wednesday">ד</string>
- <string name="day_of_week_shortest_thursday">ה</string>
- <string name="day_of_week_shortest_friday">ו</string>
- <string name="day_of_week_shortest_saturday">ש</string>
-
- <string name="am">לפנה"צ</string>
- <string name="pm">אחה"צ</string>
- <string name="yesterday">אתמול</string>
- <string name="today">היום</string>
- <string name="tomorrow">מחר</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-ja/donottranslate-cldr.xml b/core/res/res/values-ja/donottranslate-cldr.xml
index 450adc3..1c1d55f 100644
--- a/core/res/res/values-ja/donottranslate-cldr.xml
+++ b/core/res/res/values-ja/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">1月</string>
- <string name="month_long_standalone_february">2月</string>
- <string name="month_long_standalone_march">3月</string>
- <string name="month_long_standalone_april">4月</string>
- <string name="month_long_standalone_may">5月</string>
- <string name="month_long_standalone_june">6月</string>
- <string name="month_long_standalone_july">7月</string>
- <string name="month_long_standalone_august">8月</string>
- <string name="month_long_standalone_september">9月</string>
- <string name="month_long_standalone_october">10月</string>
- <string name="month_long_standalone_november">11月</string>
- <string name="month_long_standalone_december">12月</string>
-
- <string name="month_long_january">1月</string>
- <string name="month_long_february">2月</string>
- <string name="month_long_march">3月</string>
- <string name="month_long_april">4月</string>
- <string name="month_long_may">5月</string>
- <string name="month_long_june">6月</string>
- <string name="month_long_july">7月</string>
- <string name="month_long_august">8月</string>
- <string name="month_long_september">9月</string>
- <string name="month_long_october">10月</string>
- <string name="month_long_november">11月</string>
- <string name="month_long_december">12月</string>
-
- <string name="month_medium_january">1月</string>
- <string name="month_medium_february">2月</string>
- <string name="month_medium_march">3月</string>
- <string name="month_medium_april">4月</string>
- <string name="month_medium_may">5月</string>
- <string name="month_medium_june">6月</string>
- <string name="month_medium_july">7月</string>
- <string name="month_medium_august">8月</string>
- <string name="month_medium_september">9月</string>
- <string name="month_medium_october">10月</string>
- <string name="month_medium_november">11月</string>
- <string name="month_medium_december">12月</string>
-
- <string name="month_shortest_january">1</string>
- <string name="month_shortest_february">2</string>
- <string name="month_shortest_march">3</string>
- <string name="month_shortest_april">4</string>
- <string name="month_shortest_may">5</string>
- <string name="month_shortest_june">6</string>
- <string name="month_shortest_july">7</string>
- <string name="month_shortest_august">8</string>
- <string name="month_shortest_september">9</string>
- <string name="month_shortest_october">10</string>
- <string name="month_shortest_november">11</string>
- <string name="month_shortest_december">12</string>
-
- <string name="day_of_week_long_sunday">日</string>
- <string name="day_of_week_long_monday">月</string>
- <string name="day_of_week_long_tuesday">火</string>
- <string name="day_of_week_long_wednesday">水</string>
- <string name="day_of_week_long_thursday">木</string>
- <string name="day_of_week_long_friday">金</string>
- <string name="day_of_week_long_saturday">土</string>
-
- <string name="day_of_week_medium_sunday">日</string>
- <string name="day_of_week_medium_monday">月</string>
- <string name="day_of_week_medium_tuesday">火</string>
- <string name="day_of_week_medium_wednesday">水</string>
- <string name="day_of_week_medium_thursday">木</string>
- <string name="day_of_week_medium_friday">金</string>
- <string name="day_of_week_medium_saturday">土</string>
-
- <string name="day_of_week_short_sunday">日</string>
- <string name="day_of_week_short_monday">月</string>
- <string name="day_of_week_short_tuesday">火</string>
- <string name="day_of_week_short_wednesday">水</string>
- <string name="day_of_week_short_thursday">木</string>
- <string name="day_of_week_short_friday">金</string>
- <string name="day_of_week_short_saturday">土</string>
-
- <string name="day_of_week_shortest_sunday">日</string>
- <string name="day_of_week_shortest_monday">月</string>
- <string name="day_of_week_shortest_tuesday">火</string>
- <string name="day_of_week_shortest_wednesday">水</string>
- <string name="day_of_week_shortest_thursday">木</string>
- <string name="day_of_week_shortest_friday">金</string>
- <string name="day_of_week_shortest_saturday">土</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">昨日</string>
- <string name="today">今日</string>
- <string name="tomorrow">明日</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M%p</string>
<string name="hour_minute_cap_ampm">%-l:%M%^p</string>
diff --git a/core/res/res/values-ko/donottranslate-cldr.xml b/core/res/res/values-ko/donottranslate-cldr.xml
index 5382871..59b975f 100644
--- a/core/res/res/values-ko/donottranslate-cldr.xml
+++ b/core/res/res/values-ko/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">1월</string>
- <string name="month_long_standalone_february">2월</string>
- <string name="month_long_standalone_march">3월</string>
- <string name="month_long_standalone_april">4월</string>
- <string name="month_long_standalone_may">5월</string>
- <string name="month_long_standalone_june">6월</string>
- <string name="month_long_standalone_july">7월</string>
- <string name="month_long_standalone_august">8월</string>
- <string name="month_long_standalone_september">9월</string>
- <string name="month_long_standalone_october">10월</string>
- <string name="month_long_standalone_november">11월</string>
- <string name="month_long_standalone_december">12월</string>
-
- <string name="month_long_january">1월</string>
- <string name="month_long_february">2월</string>
- <string name="month_long_march">3월</string>
- <string name="month_long_april">4월</string>
- <string name="month_long_may">5월</string>
- <string name="month_long_june">6월</string>
- <string name="month_long_july">7월</string>
- <string name="month_long_august">8월</string>
- <string name="month_long_september">9월</string>
- <string name="month_long_october">10월</string>
- <string name="month_long_november">11월</string>
- <string name="month_long_december">12월</string>
-
- <string name="month_medium_january">1월</string>
- <string name="month_medium_february">2월</string>
- <string name="month_medium_march">3월</string>
- <string name="month_medium_april">4월</string>
- <string name="month_medium_may">5월</string>
- <string name="month_medium_june">6월</string>
- <string name="month_medium_july">7월</string>
- <string name="month_medium_august">8월</string>
- <string name="month_medium_september">9월</string>
- <string name="month_medium_october">10월</string>
- <string name="month_medium_november">11월</string>
- <string name="month_medium_december">12월</string>
-
- <string name="month_shortest_january">1월</string>
- <string name="month_shortest_february">2월</string>
- <string name="month_shortest_march">3월</string>
- <string name="month_shortest_april">4월</string>
- <string name="month_shortest_may">5월</string>
- <string name="month_shortest_june">6월</string>
- <string name="month_shortest_july">7월</string>
- <string name="month_shortest_august">8월</string>
- <string name="month_shortest_september">9월</string>
- <string name="month_shortest_october">10월</string>
- <string name="month_shortest_november">11월</string>
- <string name="month_shortest_december">12월</string>
-
- <string name="day_of_week_long_sunday">일요일</string>
- <string name="day_of_week_long_monday">월요일</string>
- <string name="day_of_week_long_tuesday">화요일</string>
- <string name="day_of_week_long_wednesday">수요일</string>
- <string name="day_of_week_long_thursday">목요일</string>
- <string name="day_of_week_long_friday">금요일</string>
- <string name="day_of_week_long_saturday">토요일</string>
-
- <string name="day_of_week_medium_sunday">일</string>
- <string name="day_of_week_medium_monday">월</string>
- <string name="day_of_week_medium_tuesday">화</string>
- <string name="day_of_week_medium_wednesday">수</string>
- <string name="day_of_week_medium_thursday">목</string>
- <string name="day_of_week_medium_friday">금</string>
- <string name="day_of_week_medium_saturday">토</string>
-
- <string name="day_of_week_short_sunday">일</string>
- <string name="day_of_week_short_monday">월</string>
- <string name="day_of_week_short_tuesday">화</string>
- <string name="day_of_week_short_wednesday">수</string>
- <string name="day_of_week_short_thursday">목</string>
- <string name="day_of_week_short_friday">금</string>
- <string name="day_of_week_short_saturday">토</string>
-
- <string name="day_of_week_shortest_sunday">일</string>
- <string name="day_of_week_shortest_monday">월</string>
- <string name="day_of_week_shortest_tuesday">화</string>
- <string name="day_of_week_shortest_wednesday">수</string>
- <string name="day_of_week_shortest_thursday">목</string>
- <string name="day_of_week_shortest_friday">금</string>
- <string name="day_of_week_shortest_saturday">토</string>
-
- <string name="am">오전</string>
- <string name="pm">오후</string>
- <string name="yesterday">어제</string>
- <string name="today">오늘</string>
- <string name="tomorrow">내일</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%p %-l:%M</string>
<string name="hour_minute_cap_ampm">%p %-l:%M</string>
diff --git a/core/res/res/values-lt-rLT/donottranslate-cldr.xml b/core/res/res/values-lt-rLT/donottranslate-cldr.xml
index 0c1d0aa..6cf6098 100644
--- a/core/res/res/values-lt-rLT/donottranslate-cldr.xml
+++ b/core/res/res/values-lt-rLT/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">Sausis</string>
- <string name="month_long_standalone_february">Vasaris</string>
- <string name="month_long_standalone_march">Kovas</string>
- <string name="month_long_standalone_april">Balandis</string>
- <string name="month_long_standalone_may">Gegužė</string>
- <string name="month_long_standalone_june">Birželis</string>
- <string name="month_long_standalone_july">Liepa</string>
- <string name="month_long_standalone_august">Rugpjūtis</string>
- <string name="month_long_standalone_september">Rugsėjis</string>
- <string name="month_long_standalone_october">Spalis</string>
- <string name="month_long_standalone_november">Lapkritis</string>
- <string name="month_long_standalone_december">Gruodis</string>
-
- <string name="month_long_january">sausio</string>
- <string name="month_long_february">vasario</string>
- <string name="month_long_march">kovo</string>
- <string name="month_long_april">balandžio</string>
- <string name="month_long_may">gegužės</string>
- <string name="month_long_june">birželio</string>
- <string name="month_long_july">liepos</string>
- <string name="month_long_august">rugpjūčio</string>
- <string name="month_long_september">rugsėjo</string>
- <string name="month_long_october">spalio</string>
- <string name="month_long_november">lapkričio</string>
- <string name="month_long_december">gruodžio</string>
-
- <string name="month_medium_january">sau.</string>
- <string name="month_medium_february">vas.</string>
- <string name="month_medium_march">kov.</string>
- <string name="month_medium_april">bal.</string>
- <string name="month_medium_may">geg.</string>
- <string name="month_medium_june">bir.</string>
- <string name="month_medium_july">lie.</string>
- <string name="month_medium_august">rgp.</string>
- <string name="month_medium_september">rgs.</string>
- <string name="month_medium_october">spl.</string>
- <string name="month_medium_november">lap.</string>
- <string name="month_medium_december">grd.</string>
-
- <string name="month_shortest_january">S</string>
- <string name="month_shortest_february">V</string>
- <string name="month_shortest_march">K</string>
- <string name="month_shortest_april">B</string>
- <string name="month_shortest_may">G</string>
- <string name="month_shortest_june">B</string>
- <string name="month_shortest_july">L</string>
- <string name="month_shortest_august">R</string>
- <string name="month_shortest_september">R</string>
- <string name="month_shortest_october">S</string>
- <string name="month_shortest_november">L</string>
- <string name="month_shortest_december">G</string>
-
- <string name="day_of_week_long_sunday">sekmadienis</string>
- <string name="day_of_week_long_monday">pirmadienis</string>
- <string name="day_of_week_long_tuesday">antradienis</string>
- <string name="day_of_week_long_wednesday">trečiadienis</string>
- <string name="day_of_week_long_thursday">ketvirtadienis</string>
- <string name="day_of_week_long_friday">penktadienis</string>
- <string name="day_of_week_long_saturday">šeštadienis</string>
-
- <string name="day_of_week_medium_sunday">Sk</string>
- <string name="day_of_week_medium_monday">Pr</string>
- <string name="day_of_week_medium_tuesday">An</string>
- <string name="day_of_week_medium_wednesday">Tr</string>
- <string name="day_of_week_medium_thursday">Kt</string>
- <string name="day_of_week_medium_friday">Pn</string>
- <string name="day_of_week_medium_saturday">Št</string>
-
- <string name="day_of_week_short_sunday">Sk</string>
- <string name="day_of_week_short_monday">Pr</string>
- <string name="day_of_week_short_tuesday">An</string>
- <string name="day_of_week_short_wednesday">Tr</string>
- <string name="day_of_week_short_thursday">Kt</string>
- <string name="day_of_week_short_friday">Pn</string>
- <string name="day_of_week_short_saturday">Št</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">P</string>
- <string name="day_of_week_shortest_tuesday">A</string>
- <string name="day_of_week_shortest_wednesday">T</string>
- <string name="day_of_week_shortest_thursday">K</string>
- <string name="day_of_week_shortest_friday">P</string>
- <string name="day_of_week_shortest_saturday">Š</string>
-
- <string name="am">priešpiet</string>
- <string name="pm">popiet</string>
- <string name="yesterday">vakar</string>
- <string name="today">šiandien</string>
- <string name="tomorrow">rytoj</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-lt/donottranslate-cldr.xml b/core/res/res/values-lt/donottranslate-cldr.xml
index 8a2c0f4..b1a94f3 100644
--- a/core/res/res/values-lt/donottranslate-cldr.xml
+++ b/core/res/res/values-lt/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">Sausis</string>
- <string name="month_long_standalone_february">Vasaris</string>
- <string name="month_long_standalone_march">Kovas</string>
- <string name="month_long_standalone_april">Balandis</string>
- <string name="month_long_standalone_may">Gegužė</string>
- <string name="month_long_standalone_june">Birželis</string>
- <string name="month_long_standalone_july">Liepa</string>
- <string name="month_long_standalone_august">Rugpjūtis</string>
- <string name="month_long_standalone_september">Rugsėjis</string>
- <string name="month_long_standalone_october">Spalis</string>
- <string name="month_long_standalone_november">Lapkritis</string>
- <string name="month_long_standalone_december">Gruodis</string>
-
- <string name="month_long_january">sausio</string>
- <string name="month_long_february">vasario</string>
- <string name="month_long_march">kovo</string>
- <string name="month_long_april">balandžio</string>
- <string name="month_long_may">gegužės</string>
- <string name="month_long_june">birželio</string>
- <string name="month_long_july">liepos</string>
- <string name="month_long_august">rugpjūčio</string>
- <string name="month_long_september">rugsėjo</string>
- <string name="month_long_october">spalio</string>
- <string name="month_long_november">lapkričio</string>
- <string name="month_long_december">gruodžio</string>
-
- <string name="month_medium_january">Sau</string>
- <string name="month_medium_february">Vas</string>
- <string name="month_medium_march">Kov</string>
- <string name="month_medium_april">Bal</string>
- <string name="month_medium_may">Geg</string>
- <string name="month_medium_june">Bir</string>
- <string name="month_medium_july">Lie</string>
- <string name="month_medium_august">Rgp</string>
- <string name="month_medium_september">Rgs</string>
- <string name="month_medium_october">Spl</string>
- <string name="month_medium_november">Lap</string>
- <string name="month_medium_december">Grd</string>
-
- <string name="month_shortest_january">S</string>
- <string name="month_shortest_february">V</string>
- <string name="month_shortest_march">K</string>
- <string name="month_shortest_april">B</string>
- <string name="month_shortest_may">G</string>
- <string name="month_shortest_june">B</string>
- <string name="month_shortest_july">L</string>
- <string name="month_shortest_august">R</string>
- <string name="month_shortest_september">R</string>
- <string name="month_shortest_october">S</string>
- <string name="month_shortest_november">L</string>
- <string name="month_shortest_december">G</string>
-
- <string name="day_of_week_long_sunday">sekmadienis</string>
- <string name="day_of_week_long_monday">pirmadienis</string>
- <string name="day_of_week_long_tuesday">antradienis</string>
- <string name="day_of_week_long_wednesday">trečiadienis</string>
- <string name="day_of_week_long_thursday">ketvirtadienis</string>
- <string name="day_of_week_long_friday">penktadienis</string>
- <string name="day_of_week_long_saturday">šeštadienis</string>
-
- <string name="day_of_week_medium_sunday">Sk</string>
- <string name="day_of_week_medium_monday">Pr</string>
- <string name="day_of_week_medium_tuesday">An</string>
- <string name="day_of_week_medium_wednesday">Tr</string>
- <string name="day_of_week_medium_thursday">Kt</string>
- <string name="day_of_week_medium_friday">Pn</string>
- <string name="day_of_week_medium_saturday">Št</string>
-
- <string name="day_of_week_short_sunday">Sk</string>
- <string name="day_of_week_short_monday">Pr</string>
- <string name="day_of_week_short_tuesday">An</string>
- <string name="day_of_week_short_wednesday">Tr</string>
- <string name="day_of_week_short_thursday">Kt</string>
- <string name="day_of_week_short_friday">Pn</string>
- <string name="day_of_week_short_saturday">Št</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">P</string>
- <string name="day_of_week_shortest_tuesday">A</string>
- <string name="day_of_week_shortest_wednesday">T</string>
- <string name="day_of_week_shortest_thursday">K</string>
- <string name="day_of_week_shortest_friday">P</string>
- <string name="day_of_week_shortest_saturday">Š</string>
-
- <string name="am">priešpiet</string>
- <string name="pm">popiet</string>
- <string name="yesterday">vakar</string>
- <string name="today">šiandien</string>
- <string name="tomorrow">rytoj</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-lv-rLV/donottranslate-cldr.xml b/core/res/res/values-lv-rLV/donottranslate-cldr.xml
index 9dbc5e05..3922f6b 100644
--- a/core/res/res/values-lv-rLV/donottranslate-cldr.xml
+++ b/core/res/res/values-lv-rLV/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">janvāris</string>
- <string name="month_long_standalone_february">februāris</string>
- <string name="month_long_standalone_march">marts</string>
- <string name="month_long_standalone_april">aprīlis</string>
- <string name="month_long_standalone_may">maijs</string>
- <string name="month_long_standalone_june">jūnijs</string>
- <string name="month_long_standalone_july">jūlijs</string>
- <string name="month_long_standalone_august">augusts</string>
- <string name="month_long_standalone_september">septembris</string>
- <string name="month_long_standalone_october">oktobris</string>
- <string name="month_long_standalone_november">novembris</string>
- <string name="month_long_standalone_december">decembris</string>
-
- <string name="month_long_january">janvāris</string>
- <string name="month_long_february">februāris</string>
- <string name="month_long_march">marts</string>
- <string name="month_long_april">aprīlis</string>
- <string name="month_long_may">maijs</string>
- <string name="month_long_june">jūnijs</string>
- <string name="month_long_july">jūlijs</string>
- <string name="month_long_august">augusts</string>
- <string name="month_long_september">septembris</string>
- <string name="month_long_october">oktobris</string>
- <string name="month_long_november">novembris</string>
- <string name="month_long_december">decembris</string>
-
- <string name="month_medium_january">janv.</string>
- <string name="month_medium_february">febr.</string>
- <string name="month_medium_march">marts</string>
- <string name="month_medium_april">apr.</string>
- <string name="month_medium_may">maijs</string>
- <string name="month_medium_june">jūn.</string>
- <string name="month_medium_july">jūl.</string>
- <string name="month_medium_august">aug.</string>
- <string name="month_medium_september">sept.</string>
- <string name="month_medium_october">okt.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">dec.</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">svētdiena</string>
- <string name="day_of_week_long_monday">pirmdiena</string>
- <string name="day_of_week_long_tuesday">otrdiena</string>
- <string name="day_of_week_long_wednesday">trešdiena</string>
- <string name="day_of_week_long_thursday">ceturtdiena</string>
- <string name="day_of_week_long_friday">piektdiena</string>
- <string name="day_of_week_long_saturday">sestdiena</string>
-
- <string name="day_of_week_medium_sunday">Sv</string>
- <string name="day_of_week_medium_monday">Pr</string>
- <string name="day_of_week_medium_tuesday">Ot</string>
- <string name="day_of_week_medium_wednesday">Tr</string>
- <string name="day_of_week_medium_thursday">Ce</string>
- <string name="day_of_week_medium_friday">Pk</string>
- <string name="day_of_week_medium_saturday">Se</string>
-
- <string name="day_of_week_short_sunday">Sv</string>
- <string name="day_of_week_short_monday">Pr</string>
- <string name="day_of_week_short_tuesday">Ot</string>
- <string name="day_of_week_short_wednesday">Tr</string>
- <string name="day_of_week_short_thursday">Ce</string>
- <string name="day_of_week_short_friday">Pk</string>
- <string name="day_of_week_short_saturday">Se</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">P</string>
- <string name="day_of_week_shortest_tuesday">O</string>
- <string name="day_of_week_shortest_wednesday">T</string>
- <string name="day_of_week_shortest_thursday">C</string>
- <string name="day_of_week_shortest_friday">P</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">vakar</string>
- <string name="today">šodien</string>
- <string name="tomorrow">rīt</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-lv/donottranslate-cldr.xml b/core/res/res/values-lv/donottranslate-cldr.xml
index 10dcd35..ec768bc 100644
--- a/core/res/res/values-lv/donottranslate-cldr.xml
+++ b/core/res/res/values-lv/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">janvāris</string>
- <string name="month_long_standalone_february">februāris</string>
- <string name="month_long_standalone_march">marts</string>
- <string name="month_long_standalone_april">aprīlis</string>
- <string name="month_long_standalone_may">maijs</string>
- <string name="month_long_standalone_june">jūnijs</string>
- <string name="month_long_standalone_july">jūlijs</string>
- <string name="month_long_standalone_august">augusts</string>
- <string name="month_long_standalone_september">septembris</string>
- <string name="month_long_standalone_october">oktobris</string>
- <string name="month_long_standalone_november">novembris</string>
- <string name="month_long_standalone_december">decembris</string>
-
- <string name="month_long_january">janvāris</string>
- <string name="month_long_february">februāris</string>
- <string name="month_long_march">marts</string>
- <string name="month_long_april">aprīlis</string>
- <string name="month_long_may">maijs</string>
- <string name="month_long_june">jūnijs</string>
- <string name="month_long_july">jūlijs</string>
- <string name="month_long_august">augusts</string>
- <string name="month_long_september">septembris</string>
- <string name="month_long_october">oktobris</string>
- <string name="month_long_november">novembris</string>
- <string name="month_long_december">decembris</string>
-
- <string name="month_medium_january">janv.</string>
- <string name="month_medium_february">febr.</string>
- <string name="month_medium_march">marts</string>
- <string name="month_medium_april">apr.</string>
- <string name="month_medium_may">maijs</string>
- <string name="month_medium_june">jūn.</string>
- <string name="month_medium_july">jūl.</string>
- <string name="month_medium_august">aug.</string>
- <string name="month_medium_september">sept.</string>
- <string name="month_medium_october">okt.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">dec.</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">svētdiena</string>
- <string name="day_of_week_long_monday">pirmdiena</string>
- <string name="day_of_week_long_tuesday">otrdiena</string>
- <string name="day_of_week_long_wednesday">trešdiena</string>
- <string name="day_of_week_long_thursday">ceturtdiena</string>
- <string name="day_of_week_long_friday">piektdiena</string>
- <string name="day_of_week_long_saturday">sestdiena</string>
-
- <string name="day_of_week_medium_sunday">Sv</string>
- <string name="day_of_week_medium_monday">Pr</string>
- <string name="day_of_week_medium_tuesday">Ot</string>
- <string name="day_of_week_medium_wednesday">Tr</string>
- <string name="day_of_week_medium_thursday">Ce</string>
- <string name="day_of_week_medium_friday">Pk</string>
- <string name="day_of_week_medium_saturday">Se</string>
-
- <string name="day_of_week_short_sunday">Sv</string>
- <string name="day_of_week_short_monday">Pr</string>
- <string name="day_of_week_short_tuesday">Ot</string>
- <string name="day_of_week_short_wednesday">Tr</string>
- <string name="day_of_week_short_thursday">Ce</string>
- <string name="day_of_week_short_friday">Pk</string>
- <string name="day_of_week_short_saturday">Se</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">P</string>
- <string name="day_of_week_shortest_tuesday">O</string>
- <string name="day_of_week_shortest_wednesday">T</string>
- <string name="day_of_week_shortest_thursday">C</string>
- <string name="day_of_week_shortest_friday">P</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">vakar</string>
- <string name="today">šodien</string>
- <string name="tomorrow">rīt</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-ms/donottranslate-cldr.xml b/core/res/res/values-ms/donottranslate-cldr.xml
index 09d461c..a5843ff 100644
--- a/core/res/res/values-ms/donottranslate-cldr.xml
+++ b/core/res/res/values-ms/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">Januari</string>
- <string name="month_long_standalone_february">Februari</string>
- <string name="month_long_standalone_march">Mac</string>
- <string name="month_long_standalone_april">April</string>
- <string name="month_long_standalone_may">Mei</string>
- <string name="month_long_standalone_june">Jun</string>
- <string name="month_long_standalone_july">Julai</string>
- <string name="month_long_standalone_august">Ogos</string>
- <string name="month_long_standalone_september">September</string>
- <string name="month_long_standalone_october">Oktober</string>
- <string name="month_long_standalone_november">November</string>
- <string name="month_long_standalone_december">Disember</string>
-
- <string name="month_long_january">Januari</string>
- <string name="month_long_february">Februari</string>
- <string name="month_long_march">Mac</string>
- <string name="month_long_april">April</string>
- <string name="month_long_may">Mei</string>
- <string name="month_long_june">Jun</string>
- <string name="month_long_july">Julai</string>
- <string name="month_long_august">Ogos</string>
- <string name="month_long_september">September</string>
- <string name="month_long_october">Oktober</string>
- <string name="month_long_november">November</string>
- <string name="month_long_december">Disember</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mac</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">Mei</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Ogos</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Okt</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Dis</string>
-
- <string name="month_shortest_january">1</string>
- <string name="month_shortest_february">2</string>
- <string name="month_shortest_march">3</string>
- <string name="month_shortest_april">4</string>
- <string name="month_shortest_may">5</string>
- <string name="month_shortest_june">6</string>
- <string name="month_shortest_july">7</string>
- <string name="month_shortest_august">8</string>
- <string name="month_shortest_september">9</string>
- <string name="month_shortest_october">10</string>
- <string name="month_shortest_november">11</string>
- <string name="month_shortest_december">12</string>
-
- <string name="day_of_week_long_sunday">Ahad</string>
- <string name="day_of_week_long_monday">Isnin</string>
- <string name="day_of_week_long_tuesday">Selasa</string>
- <string name="day_of_week_long_wednesday">Rabu</string>
- <string name="day_of_week_long_thursday">Khamis</string>
- <string name="day_of_week_long_friday">Jumaat</string>
- <string name="day_of_week_long_saturday">Sabtu</string>
-
- <string name="day_of_week_medium_sunday">Ahd</string>
- <string name="day_of_week_medium_monday">Isn</string>
- <string name="day_of_week_medium_tuesday">Sel</string>
- <string name="day_of_week_medium_wednesday">Rab</string>
- <string name="day_of_week_medium_thursday">Kha</string>
- <string name="day_of_week_medium_friday">Jum</string>
- <string name="day_of_week_medium_saturday">Sab</string>
-
- <string name="day_of_week_short_sunday">Ahd</string>
- <string name="day_of_week_short_monday">Isn</string>
- <string name="day_of_week_short_tuesday">Sel</string>
- <string name="day_of_week_short_wednesday">Rab</string>
- <string name="day_of_week_short_thursday">Kha</string>
- <string name="day_of_week_short_friday">Jum</string>
- <string name="day_of_week_short_saturday">Sab</string>
-
- <string name="day_of_week_shortest_sunday">1</string>
- <string name="day_of_week_shortest_monday">2</string>
- <string name="day_of_week_shortest_tuesday">3</string>
- <string name="day_of_week_shortest_wednesday">4</string>
- <string name="day_of_week_shortest_thursday">5</string>
- <string name="day_of_week_shortest_friday">6</string>
- <string name="day_of_week_shortest_saturday">7</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-nb/donottranslate-cldr.xml b/core/res/res/values-nb/donottranslate-cldr.xml
index 637dd5e..8eb1ff6 100644
--- a/core/res/res/values-nb/donottranslate-cldr.xml
+++ b/core/res/res/values-nb/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">januar</string>
- <string name="month_long_standalone_february">februar</string>
- <string name="month_long_standalone_march">mars</string>
- <string name="month_long_standalone_april">april</string>
- <string name="month_long_standalone_may">mai</string>
- <string name="month_long_standalone_june">juni</string>
- <string name="month_long_standalone_july">juli</string>
- <string name="month_long_standalone_august">august</string>
- <string name="month_long_standalone_september">september</string>
- <string name="month_long_standalone_october">oktober</string>
- <string name="month_long_standalone_november">november</string>
- <string name="month_long_standalone_december">desember</string>
-
- <string name="month_long_january">januar</string>
- <string name="month_long_february">februar</string>
- <string name="month_long_march">mars</string>
- <string name="month_long_april">april</string>
- <string name="month_long_may">mai</string>
- <string name="month_long_june">juni</string>
- <string name="month_long_july">juli</string>
- <string name="month_long_august">august</string>
- <string name="month_long_september">september</string>
- <string name="month_long_october">oktober</string>
- <string name="month_long_november">november</string>
- <string name="month_long_december">desember</string>
-
- <string name="month_medium_january">jan.</string>
- <string name="month_medium_february">feb.</string>
- <string name="month_medium_march">mars</string>
- <string name="month_medium_april">apr.</string>
- <string name="month_medium_may">mai</string>
- <string name="month_medium_june">juni</string>
- <string name="month_medium_july">juli</string>
- <string name="month_medium_august">aug.</string>
- <string name="month_medium_september">sep.</string>
- <string name="month_medium_october">okt.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">des.</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">søndag</string>
- <string name="day_of_week_long_monday">mandag</string>
- <string name="day_of_week_long_tuesday">tirsdag</string>
- <string name="day_of_week_long_wednesday">onsdag</string>
- <string name="day_of_week_long_thursday">torsdag</string>
- <string name="day_of_week_long_friday">fredag</string>
- <string name="day_of_week_long_saturday">lørdag</string>
-
- <string name="day_of_week_medium_sunday">søn.</string>
- <string name="day_of_week_medium_monday">man.</string>
- <string name="day_of_week_medium_tuesday">tir.</string>
- <string name="day_of_week_medium_wednesday">ons.</string>
- <string name="day_of_week_medium_thursday">tor.</string>
- <string name="day_of_week_medium_friday">fre.</string>
- <string name="day_of_week_medium_saturday">lør.</string>
-
- <string name="day_of_week_short_sunday">søn.</string>
- <string name="day_of_week_short_monday">man.</string>
- <string name="day_of_week_short_tuesday">tir.</string>
- <string name="day_of_week_short_wednesday">ons.</string>
- <string name="day_of_week_short_thursday">tor.</string>
- <string name="day_of_week_short_friday">fre.</string>
- <string name="day_of_week_short_saturday">lør.</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">O</string>
- <string name="day_of_week_shortest_thursday">T</string>
- <string name="day_of_week_shortest_friday">F</string>
- <string name="day_of_week_shortest_saturday">L</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">i går</string>
- <string name="today">i dag</string>
- <string name="tomorrow">i morgen</string>
-
<string name="hour_minute_24">%H.%M</string>
<string name="hour_minute_ampm">%-l.%M %p</string>
<string name="hour_minute_cap_ampm">%-l.%M %^p</string>
diff --git a/core/res/res/values-nl/donottranslate-cldr.xml b/core/res/res/values-nl/donottranslate-cldr.xml
index ca3813f..1495a48 100644
--- a/core/res/res/values-nl/donottranslate-cldr.xml
+++ b/core/res/res/values-nl/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">januari</string>
- <string name="month_long_standalone_february">februari</string>
- <string name="month_long_standalone_march">maart</string>
- <string name="month_long_standalone_april">april</string>
- <string name="month_long_standalone_may">mei</string>
- <string name="month_long_standalone_june">juni</string>
- <string name="month_long_standalone_july">juli</string>
- <string name="month_long_standalone_august">augustus</string>
- <string name="month_long_standalone_september">september</string>
- <string name="month_long_standalone_october">oktober</string>
- <string name="month_long_standalone_november">november</string>
- <string name="month_long_standalone_december">december</string>
-
- <string name="month_long_january">januari</string>
- <string name="month_long_february">februari</string>
- <string name="month_long_march">maart</string>
- <string name="month_long_april">april</string>
- <string name="month_long_may">mei</string>
- <string name="month_long_june">juni</string>
- <string name="month_long_july">juli</string>
- <string name="month_long_august">augustus</string>
- <string name="month_long_september">september</string>
- <string name="month_long_october">oktober</string>
- <string name="month_long_november">november</string>
- <string name="month_long_december">december</string>
-
- <string name="month_medium_january">jan.</string>
- <string name="month_medium_february">feb.</string>
- <string name="month_medium_march">mrt.</string>
- <string name="month_medium_april">apr.</string>
- <string name="month_medium_may">mei</string>
- <string name="month_medium_june">jun.</string>
- <string name="month_medium_july">jul.</string>
- <string name="month_medium_august">aug.</string>
- <string name="month_medium_september">sep.</string>
- <string name="month_medium_october">okt.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">dec.</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">zondag</string>
- <string name="day_of_week_long_monday">maandag</string>
- <string name="day_of_week_long_tuesday">dinsdag</string>
- <string name="day_of_week_long_wednesday">woensdag</string>
- <string name="day_of_week_long_thursday">donderdag</string>
- <string name="day_of_week_long_friday">vrijdag</string>
- <string name="day_of_week_long_saturday">zaterdag</string>
-
- <string name="day_of_week_medium_sunday">zo</string>
- <string name="day_of_week_medium_monday">ma</string>
- <string name="day_of_week_medium_tuesday">di</string>
- <string name="day_of_week_medium_wednesday">wo</string>
- <string name="day_of_week_medium_thursday">do</string>
- <string name="day_of_week_medium_friday">vr</string>
- <string name="day_of_week_medium_saturday">za</string>
-
- <string name="day_of_week_short_sunday">zo</string>
- <string name="day_of_week_short_monday">ma</string>
- <string name="day_of_week_short_tuesday">di</string>
- <string name="day_of_week_short_wednesday">wo</string>
- <string name="day_of_week_short_thursday">do</string>
- <string name="day_of_week_short_friday">vr</string>
- <string name="day_of_week_short_saturday">za</string>
-
- <string name="day_of_week_shortest_sunday">Z</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">D</string>
- <string name="day_of_week_shortest_wednesday">W</string>
- <string name="day_of_week_shortest_thursday">D</string>
- <string name="day_of_week_shortest_friday">V</string>
- <string name="day_of_week_shortest_saturday">Z</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">Gisteren</string>
- <string name="today">Vandaag</string>
- <string name="tomorrow">Morgen</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-pl/donottranslate-cldr.xml b/core/res/res/values-pl/donottranslate-cldr.xml
index 2950e60..53f0c36 100644
--- a/core/res/res/values-pl/donottranslate-cldr.xml
+++ b/core/res/res/values-pl/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">styczeń</string>
- <string name="month_long_standalone_february">luty</string>
- <string name="month_long_standalone_march">marzec</string>
- <string name="month_long_standalone_april">kwiecień</string>
- <string name="month_long_standalone_may">maj</string>
- <string name="month_long_standalone_june">czerwiec</string>
- <string name="month_long_standalone_july">lipiec</string>
- <string name="month_long_standalone_august">sierpień</string>
- <string name="month_long_standalone_september">wrzesień</string>
- <string name="month_long_standalone_october">październik</string>
- <string name="month_long_standalone_november">listopad</string>
- <string name="month_long_standalone_december">grudzień</string>
-
- <string name="month_long_january">stycznia</string>
- <string name="month_long_february">lutego</string>
- <string name="month_long_march">marca</string>
- <string name="month_long_april">kwietnia</string>
- <string name="month_long_may">maja</string>
- <string name="month_long_june">czerwca</string>
- <string name="month_long_july">lipca</string>
- <string name="month_long_august">sierpnia</string>
- <string name="month_long_september">września</string>
- <string name="month_long_october">października</string>
- <string name="month_long_november">listopada</string>
- <string name="month_long_december">grudnia</string>
-
- <string name="month_medium_january">sty</string>
- <string name="month_medium_february">lut</string>
- <string name="month_medium_march">mar</string>
- <string name="month_medium_april">kwi</string>
- <string name="month_medium_may">maj</string>
- <string name="month_medium_june">cze</string>
- <string name="month_medium_july">lip</string>
- <string name="month_medium_august">sie</string>
- <string name="month_medium_september">wrz</string>
- <string name="month_medium_october">paź</string>
- <string name="month_medium_november">lis</string>
- <string name="month_medium_december">gru</string>
-
- <string name="month_shortest_january">s</string>
- <string name="month_shortest_february">l</string>
- <string name="month_shortest_march">m</string>
- <string name="month_shortest_april">k</string>
- <string name="month_shortest_may">m</string>
- <string name="month_shortest_june">c</string>
- <string name="month_shortest_july">l</string>
- <string name="month_shortest_august">s</string>
- <string name="month_shortest_september">w</string>
- <string name="month_shortest_october">p</string>
- <string name="month_shortest_november">l</string>
- <string name="month_shortest_december">g</string>
-
- <string name="day_of_week_long_sunday">niedziela</string>
- <string name="day_of_week_long_monday">poniedziałek</string>
- <string name="day_of_week_long_tuesday">wtorek</string>
- <string name="day_of_week_long_wednesday">środa</string>
- <string name="day_of_week_long_thursday">czwartek</string>
- <string name="day_of_week_long_friday">piątek</string>
- <string name="day_of_week_long_saturday">sobota</string>
-
- <string name="day_of_week_medium_sunday">niedz.</string>
- <string name="day_of_week_medium_monday">pon.</string>
- <string name="day_of_week_medium_tuesday">wt.</string>
- <string name="day_of_week_medium_wednesday">śr.</string>
- <string name="day_of_week_medium_thursday">czw.</string>
- <string name="day_of_week_medium_friday">pt.</string>
- <string name="day_of_week_medium_saturday">sob.</string>
-
- <string name="day_of_week_short_sunday">niedz.</string>
- <string name="day_of_week_short_monday">pon.</string>
- <string name="day_of_week_short_tuesday">wt.</string>
- <string name="day_of_week_short_wednesday">śr.</string>
- <string name="day_of_week_short_thursday">czw.</string>
- <string name="day_of_week_short_friday">pt.</string>
- <string name="day_of_week_short_saturday">sob.</string>
-
- <string name="day_of_week_shortest_sunday">N</string>
- <string name="day_of_week_shortest_monday">P</string>
- <string name="day_of_week_shortest_tuesday">W</string>
- <string name="day_of_week_shortest_wednesday">Ś</string>
- <string name="day_of_week_shortest_thursday">C</string>
- <string name="day_of_week_shortest_friday">P</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">Wczoraj</string>
- <string name="today">Dzisiaj</string>
- <string name="tomorrow">Jutro</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-pt-rPT/donottranslate-cldr.xml b/core/res/res/values-pt-rPT/donottranslate-cldr.xml
index 54417a4..26d8371 100644
--- a/core/res/res/values-pt-rPT/donottranslate-cldr.xml
+++ b/core/res/res/values-pt-rPT/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">Janeiro</string>
- <string name="month_long_standalone_february">Fevereiro</string>
- <string name="month_long_standalone_march">Março</string>
- <string name="month_long_standalone_april">Abril</string>
- <string name="month_long_standalone_may">Maio</string>
- <string name="month_long_standalone_june">Junho</string>
- <string name="month_long_standalone_july">Julho</string>
- <string name="month_long_standalone_august">Agosto</string>
- <string name="month_long_standalone_september">Setembro</string>
- <string name="month_long_standalone_october">Outubro</string>
- <string name="month_long_standalone_november">Novembro</string>
- <string name="month_long_standalone_december">Dezembro</string>
-
- <string name="month_long_january">Janeiro</string>
- <string name="month_long_february">Fevereiro</string>
- <string name="month_long_march">Março</string>
- <string name="month_long_april">Abril</string>
- <string name="month_long_may">Maio</string>
- <string name="month_long_june">Junho</string>
- <string name="month_long_july">Julho</string>
- <string name="month_long_august">Agosto</string>
- <string name="month_long_september">Setembro</string>
- <string name="month_long_october">Outubro</string>
- <string name="month_long_november">Novembro</string>
- <string name="month_long_december">Dezembro</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Fev</string>
- <string name="month_medium_march">Mar</string>
- <string name="month_medium_april">Abr</string>
- <string name="month_medium_may">Mai</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Ago</string>
- <string name="month_medium_september">Set</string>
- <string name="month_medium_october">Out</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Dez</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">domingo</string>
- <string name="day_of_week_long_monday">segunda-feira</string>
- <string name="day_of_week_long_tuesday">terça-feira</string>
- <string name="day_of_week_long_wednesday">quarta-feira</string>
- <string name="day_of_week_long_thursday">quinta-feira</string>
- <string name="day_of_week_long_friday">sexta-feira</string>
- <string name="day_of_week_long_saturday">sábado</string>
-
- <string name="day_of_week_medium_sunday">dom</string>
- <string name="day_of_week_medium_monday">seg</string>
- <string name="day_of_week_medium_tuesday">ter</string>
- <string name="day_of_week_medium_wednesday">qua</string>
- <string name="day_of_week_medium_thursday">qui</string>
- <string name="day_of_week_medium_friday">sex</string>
- <string name="day_of_week_medium_saturday">sáb</string>
-
- <string name="day_of_week_short_sunday">dom</string>
- <string name="day_of_week_short_monday">seg</string>
- <string name="day_of_week_short_tuesday">ter</string>
- <string name="day_of_week_short_wednesday">qua</string>
- <string name="day_of_week_short_thursday">qui</string>
- <string name="day_of_week_short_friday">sex</string>
- <string name="day_of_week_short_saturday">sáb</string>
-
- <string name="day_of_week_shortest_sunday">D</string>
- <string name="day_of_week_shortest_monday">S</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">Q</string>
- <string name="day_of_week_shortest_thursday">Q</string>
- <string name="day_of_week_shortest_friday">S</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">Antes do meio-dia</string>
- <string name="pm">Depois do meio-dia</string>
- <string name="yesterday">Ontem</string>
- <string name="today">Hoje</string>
- <string name="tomorrow">Amanhã</string>
-
<string name="hour_minute_24">%-kh%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-pt/donottranslate-cldr.xml b/core/res/res/values-pt/donottranslate-cldr.xml
index d999c06..c3e6c29 100644
--- a/core/res/res/values-pt/donottranslate-cldr.xml
+++ b/core/res/res/values-pt/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">janeiro</string>
- <string name="month_long_standalone_february">fevereiro</string>
- <string name="month_long_standalone_march">março</string>
- <string name="month_long_standalone_april">abril</string>
- <string name="month_long_standalone_may">maio</string>
- <string name="month_long_standalone_june">junho</string>
- <string name="month_long_standalone_july">julho</string>
- <string name="month_long_standalone_august">agosto</string>
- <string name="month_long_standalone_september">setembro</string>
- <string name="month_long_standalone_october">outubro</string>
- <string name="month_long_standalone_november">novembro</string>
- <string name="month_long_standalone_december">dezembro</string>
-
- <string name="month_long_january">janeiro</string>
- <string name="month_long_february">fevereiro</string>
- <string name="month_long_march">março</string>
- <string name="month_long_april">abril</string>
- <string name="month_long_may">maio</string>
- <string name="month_long_june">junho</string>
- <string name="month_long_july">julho</string>
- <string name="month_long_august">agosto</string>
- <string name="month_long_september">setembro</string>
- <string name="month_long_october">outubro</string>
- <string name="month_long_november">novembro</string>
- <string name="month_long_december">dezembro</string>
-
- <string name="month_medium_january">jan</string>
- <string name="month_medium_february">fev</string>
- <string name="month_medium_march">mar</string>
- <string name="month_medium_april">abr</string>
- <string name="month_medium_may">mai</string>
- <string name="month_medium_june">jun</string>
- <string name="month_medium_july">jul</string>
- <string name="month_medium_august">ago</string>
- <string name="month_medium_september">set</string>
- <string name="month_medium_october">out</string>
- <string name="month_medium_november">nov</string>
- <string name="month_medium_december">dez</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">domingo</string>
- <string name="day_of_week_long_monday">segunda-feira</string>
- <string name="day_of_week_long_tuesday">terça-feira</string>
- <string name="day_of_week_long_wednesday">quarta-feira</string>
- <string name="day_of_week_long_thursday">quinta-feira</string>
- <string name="day_of_week_long_friday">sexta-feira</string>
- <string name="day_of_week_long_saturday">sábado</string>
-
- <string name="day_of_week_medium_sunday">dom</string>
- <string name="day_of_week_medium_monday">seg</string>
- <string name="day_of_week_medium_tuesday">ter</string>
- <string name="day_of_week_medium_wednesday">qua</string>
- <string name="day_of_week_medium_thursday">qui</string>
- <string name="day_of_week_medium_friday">sex</string>
- <string name="day_of_week_medium_saturday">sáb</string>
-
- <string name="day_of_week_short_sunday">dom</string>
- <string name="day_of_week_short_monday">seg</string>
- <string name="day_of_week_short_tuesday">ter</string>
- <string name="day_of_week_short_wednesday">qua</string>
- <string name="day_of_week_short_thursday">qui</string>
- <string name="day_of_week_short_friday">sex</string>
- <string name="day_of_week_short_saturday">sáb</string>
-
- <string name="day_of_week_shortest_sunday">D</string>
- <string name="day_of_week_shortest_monday">S</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">Q</string>
- <string name="day_of_week_shortest_thursday">Q</string>
- <string name="day_of_week_shortest_friday">S</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">Ontem</string>
- <string name="today">Hoje</string>
- <string name="tomorrow">Amanhã</string>
-
<string name="hour_minute_24">%-kh%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-rm/donottranslate-cldr.xml b/core/res/res/values-rm/donottranslate-cldr.xml
index ccdb17c..e6f0df2 100644
--- a/core/res/res/values-rm/donottranslate-cldr.xml
+++ b/core/res/res/values-rm/donottranslate-cldr.xml
@@ -1,94 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">schaner</string>
- <string name="month_long_standalone_february">favrer</string>
- <string name="month_long_standalone_march">mars</string>
- <string name="month_long_standalone_april">avrigl</string>
- <string name="month_long_standalone_may">matg</string>
- <string name="month_long_standalone_june">zercladur</string>
- <string name="month_long_standalone_july">fanadur</string>
- <string name="month_long_standalone_august">avust</string>
- <string name="month_long_standalone_september">settember</string>
- <string name="month_long_standalone_october">october</string>
- <string name="month_long_standalone_november">november</string>
- <string name="month_long_standalone_december">december</string>
-
- <string name="month_long_january">schaner</string>
- <string name="month_long_february">favrer</string>
- <string name="month_long_march">mars</string>
- <string name="month_long_april">avrigl</string>
- <string name="month_long_may">matg</string>
- <string name="month_long_june">zercladur</string>
- <string name="month_long_july">fanadur</string>
- <string name="month_long_august">avust</string>
- <string name="month_long_september">settember</string>
- <string name="month_long_october">october</string>
- <string name="month_long_november">november</string>
- <string name="month_long_december">december</string>
-
- <string name="month_medium_january">schan.</string>
- <string name="month_medium_february">favr.</string>
- <string name="month_medium_march">mars</string>
- <string name="month_medium_april">avr.</string>
- <string name="month_medium_may">matg</string>
- <string name="month_medium_june">zercl.</string>
- <string name="month_medium_july">fan.</string>
- <string name="month_medium_august">avust</string>
- <string name="month_medium_september">sett.</string>
- <string name="month_medium_october">oct.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">dec.</string>
-
- <string name="month_shortest_january">S</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">Z</string>
- <string name="month_shortest_july">F</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">dumengia</string>
- <string name="day_of_week_long_monday">glindesdi</string>
- <string name="day_of_week_long_tuesday">mardi</string>
- <string name="day_of_week_long_wednesday">mesemna</string>
- <string name="day_of_week_long_thursday">gievgia</string>
- <string name="day_of_week_long_friday">venderdi</string>
- <string name="day_of_week_long_saturday">sonda</string>
-
- <string name="day_of_week_medium_sunday">du</string>
- <string name="day_of_week_medium_monday">gli</string>
- <string name="day_of_week_medium_tuesday">ma</string>
- <string name="day_of_week_medium_wednesday">me</string>
- <string name="day_of_week_medium_thursday">gie</string>
- <string name="day_of_week_medium_friday">ve</string>
- <string name="day_of_week_medium_saturday">so</string>
-
- <string name="day_of_week_short_sunday">du</string>
- <string name="day_of_week_short_monday">gli</string>
- <string name="day_of_week_short_tuesday">ma</string>
- <string name="day_of_week_short_wednesday">me</string>
- <string name="day_of_week_short_thursday">gie</string>
- <string name="day_of_week_short_friday">ve</string>
- <string name="day_of_week_short_saturday">so</string>
-
- <string name="day_of_week_shortest_sunday">D</string>
- <string name="day_of_week_shortest_monday">G</string>
- <string name="day_of_week_shortest_tuesday">M</string>
- <string name="day_of_week_shortest_wednesday">M</string>
- <string name="day_of_week_shortest_thursday">G</string>
- <string name="day_of_week_shortest_friday">V</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="yesterday">ier</string>
- <string name="today">oz</string>
- <string name="tomorrow">damaun</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-ro-rRO/donottranslate-cldr.xml b/core/res/res/values-ro-rRO/donottranslate-cldr.xml
index 732ae24..7056803 100644
--- a/core/res/res/values-ro-rRO/donottranslate-cldr.xml
+++ b/core/res/res/values-ro-rRO/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">ianuarie</string>
- <string name="month_long_standalone_february">februarie</string>
- <string name="month_long_standalone_march">martie</string>
- <string name="month_long_standalone_april">aprilie</string>
- <string name="month_long_standalone_may">mai</string>
- <string name="month_long_standalone_june">iunie</string>
- <string name="month_long_standalone_july">iulie</string>
- <string name="month_long_standalone_august">august</string>
- <string name="month_long_standalone_september">septembrie</string>
- <string name="month_long_standalone_october">octombrie</string>
- <string name="month_long_standalone_november">noiembrie</string>
- <string name="month_long_standalone_december">decembrie</string>
-
- <string name="month_long_january">ianuarie</string>
- <string name="month_long_february">februarie</string>
- <string name="month_long_march">martie</string>
- <string name="month_long_april">aprilie</string>
- <string name="month_long_may">mai</string>
- <string name="month_long_june">iunie</string>
- <string name="month_long_july">iulie</string>
- <string name="month_long_august">august</string>
- <string name="month_long_september">septembrie</string>
- <string name="month_long_october">octombrie</string>
- <string name="month_long_november">noiembrie</string>
- <string name="month_long_december">decembrie</string>
-
- <string name="month_medium_january">ian.</string>
- <string name="month_medium_february">feb.</string>
- <string name="month_medium_march">mar.</string>
- <string name="month_medium_april">apr.</string>
- <string name="month_medium_may">mai</string>
- <string name="month_medium_june">iun.</string>
- <string name="month_medium_july">iul.</string>
- <string name="month_medium_august">aug.</string>
- <string name="month_medium_september">sept.</string>
- <string name="month_medium_october">oct.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">dec.</string>
-
- <string name="month_shortest_january">I</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">I</string>
- <string name="month_shortest_july">I</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">duminică</string>
- <string name="day_of_week_long_monday">luni</string>
- <string name="day_of_week_long_tuesday">marți</string>
- <string name="day_of_week_long_wednesday">miercuri</string>
- <string name="day_of_week_long_thursday">joi</string>
- <string name="day_of_week_long_friday">vineri</string>
- <string name="day_of_week_long_saturday">sâmbătă</string>
-
- <string name="day_of_week_medium_sunday">Du</string>
- <string name="day_of_week_medium_monday">Lu</string>
- <string name="day_of_week_medium_tuesday">Ma</string>
- <string name="day_of_week_medium_wednesday">Mi</string>
- <string name="day_of_week_medium_thursday">Jo</string>
- <string name="day_of_week_medium_friday">Vi</string>
- <string name="day_of_week_medium_saturday">Sâ</string>
-
- <string name="day_of_week_short_sunday">Du</string>
- <string name="day_of_week_short_monday">Lu</string>
- <string name="day_of_week_short_tuesday">Ma</string>
- <string name="day_of_week_short_wednesday">Mi</string>
- <string name="day_of_week_short_thursday">Jo</string>
- <string name="day_of_week_short_friday">Vi</string>
- <string name="day_of_week_short_saturday">Sâ</string>
-
- <string name="day_of_week_shortest_sunday">D</string>
- <string name="day_of_week_shortest_monday">L</string>
- <string name="day_of_week_shortest_tuesday">M</string>
- <string name="day_of_week_shortest_wednesday">M</string>
- <string name="day_of_week_shortest_thursday">J</string>
- <string name="day_of_week_shortest_friday">V</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">ieri</string>
- <string name="today">azi</string>
- <string name="tomorrow">mâine</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-ro/donottranslate-cldr.xml b/core/res/res/values-ro/donottranslate-cldr.xml
index e9a70dc..935c6af 100644
--- a/core/res/res/values-ro/donottranslate-cldr.xml
+++ b/core/res/res/values-ro/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">ianuarie</string>
- <string name="month_long_standalone_february">februarie</string>
- <string name="month_long_standalone_march">martie</string>
- <string name="month_long_standalone_april">aprilie</string>
- <string name="month_long_standalone_may">mai</string>
- <string name="month_long_standalone_june">iunie</string>
- <string name="month_long_standalone_july">iulie</string>
- <string name="month_long_standalone_august">august</string>
- <string name="month_long_standalone_september">septembrie</string>
- <string name="month_long_standalone_october">octombrie</string>
- <string name="month_long_standalone_november">noiembrie</string>
- <string name="month_long_standalone_december">decembrie</string>
-
- <string name="month_long_january">ianuarie</string>
- <string name="month_long_february">februarie</string>
- <string name="month_long_march">martie</string>
- <string name="month_long_april">aprilie</string>
- <string name="month_long_may">mai</string>
- <string name="month_long_june">iunie</string>
- <string name="month_long_july">iulie</string>
- <string name="month_long_august">august</string>
- <string name="month_long_september">septembrie</string>
- <string name="month_long_october">octombrie</string>
- <string name="month_long_november">noiembrie</string>
- <string name="month_long_december">decembrie</string>
-
- <string name="month_medium_january">ian.</string>
- <string name="month_medium_february">feb.</string>
- <string name="month_medium_march">mar.</string>
- <string name="month_medium_april">apr.</string>
- <string name="month_medium_may">mai</string>
- <string name="month_medium_june">iun.</string>
- <string name="month_medium_july">iul.</string>
- <string name="month_medium_august">aug.</string>
- <string name="month_medium_september">sept.</string>
- <string name="month_medium_october">oct.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">dec.</string>
-
- <string name="month_shortest_january">I</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">I</string>
- <string name="month_shortest_july">I</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">duminică</string>
- <string name="day_of_week_long_monday">luni</string>
- <string name="day_of_week_long_tuesday">marți</string>
- <string name="day_of_week_long_wednesday">miercuri</string>
- <string name="day_of_week_long_thursday">joi</string>
- <string name="day_of_week_long_friday">vineri</string>
- <string name="day_of_week_long_saturday">sâmbătă</string>
-
- <string name="day_of_week_medium_sunday">Du</string>
- <string name="day_of_week_medium_monday">Lu</string>
- <string name="day_of_week_medium_tuesday">Ma</string>
- <string name="day_of_week_medium_wednesday">Mi</string>
- <string name="day_of_week_medium_thursday">Jo</string>
- <string name="day_of_week_medium_friday">Vi</string>
- <string name="day_of_week_medium_saturday">Sâ</string>
-
- <string name="day_of_week_short_sunday">Du</string>
- <string name="day_of_week_short_monday">Lu</string>
- <string name="day_of_week_short_tuesday">Ma</string>
- <string name="day_of_week_short_wednesday">Mi</string>
- <string name="day_of_week_short_thursday">Jo</string>
- <string name="day_of_week_short_friday">Vi</string>
- <string name="day_of_week_short_saturday">Sâ</string>
-
- <string name="day_of_week_shortest_sunday">D</string>
- <string name="day_of_week_shortest_monday">L</string>
- <string name="day_of_week_shortest_tuesday">M</string>
- <string name="day_of_week_shortest_wednesday">M</string>
- <string name="day_of_week_shortest_thursday">J</string>
- <string name="day_of_week_shortest_friday">V</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">ieri</string>
- <string name="today">azi</string>
- <string name="tomorrow">mâine</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-ru/donottranslate-cldr.xml b/core/res/res/values-ru/donottranslate-cldr.xml
index 2fbcd43..03c64ab 100644
--- a/core/res/res/values-ru/donottranslate-cldr.xml
+++ b/core/res/res/values-ru/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">январь</string>
- <string name="month_long_standalone_february">февраль</string>
- <string name="month_long_standalone_march">март</string>
- <string name="month_long_standalone_april">апрель</string>
- <string name="month_long_standalone_may">май</string>
- <string name="month_long_standalone_june">июнь</string>
- <string name="month_long_standalone_july">июль</string>
- <string name="month_long_standalone_august">август</string>
- <string name="month_long_standalone_september">сентябрь</string>
- <string name="month_long_standalone_october">октябрь</string>
- <string name="month_long_standalone_november">ноябрь</string>
- <string name="month_long_standalone_december">декабрь</string>
-
- <string name="month_long_january">января</string>
- <string name="month_long_february">февраля</string>
- <string name="month_long_march">марта</string>
- <string name="month_long_april">апреля</string>
- <string name="month_long_may">мая</string>
- <string name="month_long_june">июня</string>
- <string name="month_long_july">июля</string>
- <string name="month_long_august">августа</string>
- <string name="month_long_september">сентября</string>
- <string name="month_long_october">октября</string>
- <string name="month_long_november">ноября</string>
- <string name="month_long_december">декабря</string>
-
- <string name="month_medium_january">янв</string>
- <string name="month_medium_february">фев</string>
- <string name="month_medium_march">мар</string>
- <string name="month_medium_april">апр</string>
- <string name="month_medium_may">май</string>
- <string name="month_medium_june">июн</string>
- <string name="month_medium_july">июл</string>
- <string name="month_medium_august">авг</string>
- <string name="month_medium_september">сен</string>
- <string name="month_medium_october">окт</string>
- <string name="month_medium_november">ноя</string>
- <string name="month_medium_december">дек</string>
-
- <string name="month_shortest_january">Я</string>
- <string name="month_shortest_february">Ф</string>
- <string name="month_shortest_march">М</string>
- <string name="month_shortest_april">А</string>
- <string name="month_shortest_may">М</string>
- <string name="month_shortest_june">И</string>
- <string name="month_shortest_july">И</string>
- <string name="month_shortest_august">А</string>
- <string name="month_shortest_september">С</string>
- <string name="month_shortest_october">О</string>
- <string name="month_shortest_november">Н</string>
- <string name="month_shortest_december">Д</string>
-
- <string name="day_of_week_long_sunday">воскресенье</string>
- <string name="day_of_week_long_monday">понедельник</string>
- <string name="day_of_week_long_tuesday">вторник</string>
- <string name="day_of_week_long_wednesday">среда</string>
- <string name="day_of_week_long_thursday">четверг</string>
- <string name="day_of_week_long_friday">пятница</string>
- <string name="day_of_week_long_saturday">суббота</string>
-
- <string name="day_of_week_medium_sunday">вс</string>
- <string name="day_of_week_medium_monday">пн</string>
- <string name="day_of_week_medium_tuesday">вт</string>
- <string name="day_of_week_medium_wednesday">ср</string>
- <string name="day_of_week_medium_thursday">чт</string>
- <string name="day_of_week_medium_friday">пт</string>
- <string name="day_of_week_medium_saturday">сб</string>
-
- <string name="day_of_week_short_sunday">вс</string>
- <string name="day_of_week_short_monday">пн</string>
- <string name="day_of_week_short_tuesday">вт</string>
- <string name="day_of_week_short_wednesday">ср</string>
- <string name="day_of_week_short_thursday">чт</string>
- <string name="day_of_week_short_friday">пт</string>
- <string name="day_of_week_short_saturday">сб</string>
-
- <string name="day_of_week_shortest_sunday">В</string>
- <string name="day_of_week_shortest_monday">П</string>
- <string name="day_of_week_shortest_tuesday">В</string>
- <string name="day_of_week_shortest_wednesday">С</string>
- <string name="day_of_week_shortest_thursday">Ч</string>
- <string name="day_of_week_shortest_friday">П</string>
- <string name="day_of_week_shortest_saturday">С</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">Вчера</string>
- <string name="today">Сегодня</string>
- <string name="tomorrow">Завтра</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-sk-rSK/donottranslate-cldr.xml b/core/res/res/values-sk-rSK/donottranslate-cldr.xml
index 2843ae3..651c58c 100644
--- a/core/res/res/values-sk-rSK/donottranslate-cldr.xml
+++ b/core/res/res/values-sk-rSK/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">január</string>
- <string name="month_long_standalone_february">február</string>
- <string name="month_long_standalone_march">marec</string>
- <string name="month_long_standalone_april">apríl</string>
- <string name="month_long_standalone_may">máj</string>
- <string name="month_long_standalone_june">jún</string>
- <string name="month_long_standalone_july">júl</string>
- <string name="month_long_standalone_august">august</string>
- <string name="month_long_standalone_september">september</string>
- <string name="month_long_standalone_october">október</string>
- <string name="month_long_standalone_november">november</string>
- <string name="month_long_standalone_december">december</string>
-
- <string name="month_long_january">januára</string>
- <string name="month_long_february">februára</string>
- <string name="month_long_march">marca</string>
- <string name="month_long_april">apríla</string>
- <string name="month_long_may">mája</string>
- <string name="month_long_june">júna</string>
- <string name="month_long_july">júla</string>
- <string name="month_long_august">augusta</string>
- <string name="month_long_september">septembra</string>
- <string name="month_long_october">októbra</string>
- <string name="month_long_november">novembra</string>
- <string name="month_long_december">decembra</string>
-
- <string name="month_medium_january">jan</string>
- <string name="month_medium_february">feb</string>
- <string name="month_medium_march">mar</string>
- <string name="month_medium_april">apr</string>
- <string name="month_medium_may">máj</string>
- <string name="month_medium_june">jún</string>
- <string name="month_medium_july">júl</string>
- <string name="month_medium_august">aug</string>
- <string name="month_medium_september">sep</string>
- <string name="month_medium_october">okt</string>
- <string name="month_medium_november">nov</string>
- <string name="month_medium_december">dec</string>
-
- <string name="month_shortest_january">j</string>
- <string name="month_shortest_february">f</string>
- <string name="month_shortest_march">m</string>
- <string name="month_shortest_april">a</string>
- <string name="month_shortest_may">m</string>
- <string name="month_shortest_june">j</string>
- <string name="month_shortest_july">j</string>
- <string name="month_shortest_august">a</string>
- <string name="month_shortest_september">s</string>
- <string name="month_shortest_october">o</string>
- <string name="month_shortest_november">n</string>
- <string name="month_shortest_december">d</string>
-
- <string name="day_of_week_long_sunday">nedeľa</string>
- <string name="day_of_week_long_monday">pondelok</string>
- <string name="day_of_week_long_tuesday">utorok</string>
- <string name="day_of_week_long_wednesday">streda</string>
- <string name="day_of_week_long_thursday">štvrtok</string>
- <string name="day_of_week_long_friday">piatok</string>
- <string name="day_of_week_long_saturday">sobota</string>
-
- <string name="day_of_week_medium_sunday">ne</string>
- <string name="day_of_week_medium_monday">po</string>
- <string name="day_of_week_medium_tuesday">ut</string>
- <string name="day_of_week_medium_wednesday">st</string>
- <string name="day_of_week_medium_thursday">št</string>
- <string name="day_of_week_medium_friday">pi</string>
- <string name="day_of_week_medium_saturday">so</string>
-
- <string name="day_of_week_short_sunday">ne</string>
- <string name="day_of_week_short_monday">po</string>
- <string name="day_of_week_short_tuesday">ut</string>
- <string name="day_of_week_short_wednesday">st</string>
- <string name="day_of_week_short_thursday">št</string>
- <string name="day_of_week_short_friday">pi</string>
- <string name="day_of_week_short_saturday">so</string>
-
- <string name="day_of_week_shortest_sunday">N</string>
- <string name="day_of_week_shortest_monday">P</string>
- <string name="day_of_week_shortest_tuesday">U</string>
- <string name="day_of_week_shortest_wednesday">S</string>
- <string name="day_of_week_shortest_thursday">Š</string>
- <string name="day_of_week_shortest_friday">P</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">dopoludnia</string>
- <string name="pm">popoludní</string>
- <string name="yesterday">Včera</string>
- <string name="today">Dnes</string>
- <string name="tomorrow">Zajtra</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-sk/donottranslate-cldr.xml b/core/res/res/values-sk/donottranslate-cldr.xml
index dcdaad1..48c644a 100644
--- a/core/res/res/values-sk/donottranslate-cldr.xml
+++ b/core/res/res/values-sk/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">január</string>
- <string name="month_long_standalone_february">február</string>
- <string name="month_long_standalone_march">marec</string>
- <string name="month_long_standalone_april">apríl</string>
- <string name="month_long_standalone_may">máj</string>
- <string name="month_long_standalone_june">jún</string>
- <string name="month_long_standalone_july">júl</string>
- <string name="month_long_standalone_august">august</string>
- <string name="month_long_standalone_september">september</string>
- <string name="month_long_standalone_october">október</string>
- <string name="month_long_standalone_november">november</string>
- <string name="month_long_standalone_december">december</string>
-
- <string name="month_long_january">januára</string>
- <string name="month_long_february">februára</string>
- <string name="month_long_march">marca</string>
- <string name="month_long_april">apríla</string>
- <string name="month_long_may">mája</string>
- <string name="month_long_june">júna</string>
- <string name="month_long_july">júla</string>
- <string name="month_long_august">augusta</string>
- <string name="month_long_september">septembra</string>
- <string name="month_long_october">októbra</string>
- <string name="month_long_november">novembra</string>
- <string name="month_long_december">decembra</string>
-
- <string name="month_medium_january">jan</string>
- <string name="month_medium_february">feb</string>
- <string name="month_medium_march">mar</string>
- <string name="month_medium_april">apr</string>
- <string name="month_medium_may">máj</string>
- <string name="month_medium_june">jún</string>
- <string name="month_medium_july">júl</string>
- <string name="month_medium_august">aug</string>
- <string name="month_medium_september">sep</string>
- <string name="month_medium_october">okt</string>
- <string name="month_medium_november">nov</string>
- <string name="month_medium_december">dec</string>
-
- <string name="month_shortest_january">j</string>
- <string name="month_shortest_february">f</string>
- <string name="month_shortest_march">m</string>
- <string name="month_shortest_april">a</string>
- <string name="month_shortest_may">m</string>
- <string name="month_shortest_june">j</string>
- <string name="month_shortest_july">j</string>
- <string name="month_shortest_august">a</string>
- <string name="month_shortest_september">s</string>
- <string name="month_shortest_october">o</string>
- <string name="month_shortest_november">n</string>
- <string name="month_shortest_december">d</string>
-
- <string name="day_of_week_long_sunday">nedeľa</string>
- <string name="day_of_week_long_monday">pondelok</string>
- <string name="day_of_week_long_tuesday">utorok</string>
- <string name="day_of_week_long_wednesday">streda</string>
- <string name="day_of_week_long_thursday">štvrtok</string>
- <string name="day_of_week_long_friday">piatok</string>
- <string name="day_of_week_long_saturday">sobota</string>
-
- <string name="day_of_week_medium_sunday">ne</string>
- <string name="day_of_week_medium_monday">po</string>
- <string name="day_of_week_medium_tuesday">ut</string>
- <string name="day_of_week_medium_wednesday">st</string>
- <string name="day_of_week_medium_thursday">št</string>
- <string name="day_of_week_medium_friday">pi</string>
- <string name="day_of_week_medium_saturday">so</string>
-
- <string name="day_of_week_short_sunday">ne</string>
- <string name="day_of_week_short_monday">po</string>
- <string name="day_of_week_short_tuesday">ut</string>
- <string name="day_of_week_short_wednesday">st</string>
- <string name="day_of_week_short_thursday">št</string>
- <string name="day_of_week_short_friday">pi</string>
- <string name="day_of_week_short_saturday">so</string>
-
- <string name="day_of_week_shortest_sunday">N</string>
- <string name="day_of_week_shortest_monday">P</string>
- <string name="day_of_week_shortest_tuesday">U</string>
- <string name="day_of_week_shortest_wednesday">S</string>
- <string name="day_of_week_shortest_thursday">Š</string>
- <string name="day_of_week_shortest_friday">P</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">dopoludnia</string>
- <string name="pm">popoludní</string>
- <string name="yesterday">Včera</string>
- <string name="today">Dnes</string>
- <string name="tomorrow">Zajtra</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-sl-rSI/donottranslate-cldr.xml b/core/res/res/values-sl-rSI/donottranslate-cldr.xml
index cbabccd..84fffbd 100644
--- a/core/res/res/values-sl-rSI/donottranslate-cldr.xml
+++ b/core/res/res/values-sl-rSI/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">januar</string>
- <string name="month_long_standalone_february">februar</string>
- <string name="month_long_standalone_march">marec</string>
- <string name="month_long_standalone_april">april</string>
- <string name="month_long_standalone_may">maj</string>
- <string name="month_long_standalone_june">junij</string>
- <string name="month_long_standalone_july">julij</string>
- <string name="month_long_standalone_august">avgust</string>
- <string name="month_long_standalone_september">september</string>
- <string name="month_long_standalone_october">oktober</string>
- <string name="month_long_standalone_november">november</string>
- <string name="month_long_standalone_december">december</string>
-
- <string name="month_long_january">januar</string>
- <string name="month_long_february">februar</string>
- <string name="month_long_march">marec</string>
- <string name="month_long_april">april</string>
- <string name="month_long_may">maj</string>
- <string name="month_long_june">junij</string>
- <string name="month_long_july">julij</string>
- <string name="month_long_august">avgust</string>
- <string name="month_long_september">september</string>
- <string name="month_long_october">oktober</string>
- <string name="month_long_november">november</string>
- <string name="month_long_december">december</string>
-
- <string name="month_medium_january">jan.</string>
- <string name="month_medium_february">feb.</string>
- <string name="month_medium_march">mar.</string>
- <string name="month_medium_april">apr.</string>
- <string name="month_medium_may">maj.</string>
- <string name="month_medium_june">jun.</string>
- <string name="month_medium_july">jul.</string>
- <string name="month_medium_august">avg.</string>
- <string name="month_medium_september">sep.</string>
- <string name="month_medium_october">okt.</string>
- <string name="month_medium_november">nov.</string>
- <string name="month_medium_december">dec.</string>
-
- <string name="month_shortest_january">j</string>
- <string name="month_shortest_february">f</string>
- <string name="month_shortest_march">m</string>
- <string name="month_shortest_april">a</string>
- <string name="month_shortest_may">m</string>
- <string name="month_shortest_june">j</string>
- <string name="month_shortest_july">j</string>
- <string name="month_shortest_august">a</string>
- <string name="month_shortest_september">s</string>
- <string name="month_shortest_october">o</string>
- <string name="month_shortest_november">n</string>
- <string name="month_shortest_december">d</string>
-
- <string name="day_of_week_long_sunday">nedelja</string>
- <string name="day_of_week_long_monday">ponedeljek</string>
- <string name="day_of_week_long_tuesday">torek</string>
- <string name="day_of_week_long_wednesday">sreda</string>
- <string name="day_of_week_long_thursday">četrtek</string>
- <string name="day_of_week_long_friday">petek</string>
- <string name="day_of_week_long_saturday">sobota</string>
-
- <string name="day_of_week_medium_sunday">ned.</string>
- <string name="day_of_week_medium_monday">pon.</string>
- <string name="day_of_week_medium_tuesday">tor.</string>
- <string name="day_of_week_medium_wednesday">sre.</string>
- <string name="day_of_week_medium_thursday">čet.</string>
- <string name="day_of_week_medium_friday">pet.</string>
- <string name="day_of_week_medium_saturday">sob.</string>
-
- <string name="day_of_week_short_sunday">ned.</string>
- <string name="day_of_week_short_monday">pon.</string>
- <string name="day_of_week_short_tuesday">tor.</string>
- <string name="day_of_week_short_wednesday">sre.</string>
- <string name="day_of_week_short_thursday">čet.</string>
- <string name="day_of_week_short_friday">pet.</string>
- <string name="day_of_week_short_saturday">sob.</string>
-
- <string name="day_of_week_shortest_sunday">n</string>
- <string name="day_of_week_shortest_monday">p</string>
- <string name="day_of_week_shortest_tuesday">t</string>
- <string name="day_of_week_shortest_wednesday">s</string>
- <string name="day_of_week_shortest_thursday">č</string>
- <string name="day_of_week_shortest_friday">p</string>
- <string name="day_of_week_shortest_saturday">s</string>
-
- <string name="am">dop.</string>
- <string name="pm">pop.</string>
- <string name="yesterday">Včeraj</string>
- <string name="today">Danes</string>
- <string name="tomorrow">Jutri</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-sl/donottranslate-cldr.xml b/core/res/res/values-sl/donottranslate-cldr.xml
index b804b3f..137ed3f 100644
--- a/core/res/res/values-sl/donottranslate-cldr.xml
+++ b/core/res/res/values-sl/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">januar</string>
- <string name="month_long_standalone_february">februar</string>
- <string name="month_long_standalone_march">marec</string>
- <string name="month_long_standalone_april">april</string>
- <string name="month_long_standalone_may">maj</string>
- <string name="month_long_standalone_june">junij</string>
- <string name="month_long_standalone_july">julij</string>
- <string name="month_long_standalone_august">avgust</string>
- <string name="month_long_standalone_september">september</string>
- <string name="month_long_standalone_october">oktober</string>
- <string name="month_long_standalone_november">november</string>
- <string name="month_long_standalone_december">december</string>
-
- <string name="month_long_january">januar</string>
- <string name="month_long_february">februar</string>
- <string name="month_long_march">marec</string>
- <string name="month_long_april">april</string>
- <string name="month_long_may">maj</string>
- <string name="month_long_june">junij</string>
- <string name="month_long_july">julij</string>
- <string name="month_long_august">avgust</string>
- <string name="month_long_september">september</string>
- <string name="month_long_october">oktober</string>
- <string name="month_long_november">november</string>
- <string name="month_long_december">december</string>
-
- <string name="month_medium_january">jan</string>
- <string name="month_medium_february">feb</string>
- <string name="month_medium_march">mar</string>
- <string name="month_medium_april">apr</string>
- <string name="month_medium_may">maj</string>
- <string name="month_medium_june">jun</string>
- <string name="month_medium_july">jul</string>
- <string name="month_medium_august">avg</string>
- <string name="month_medium_september">sep</string>
- <string name="month_medium_october">okt</string>
- <string name="month_medium_november">nov</string>
- <string name="month_medium_december">dec</string>
-
- <string name="month_shortest_january">j</string>
- <string name="month_shortest_february">f</string>
- <string name="month_shortest_march">m</string>
- <string name="month_shortest_april">a</string>
- <string name="month_shortest_may">m</string>
- <string name="month_shortest_june">j</string>
- <string name="month_shortest_july">j</string>
- <string name="month_shortest_august">a</string>
- <string name="month_shortest_september">s</string>
- <string name="month_shortest_october">o</string>
- <string name="month_shortest_november">n</string>
- <string name="month_shortest_december">d</string>
-
- <string name="day_of_week_long_sunday">nedelja</string>
- <string name="day_of_week_long_monday">ponedeljek</string>
- <string name="day_of_week_long_tuesday">torek</string>
- <string name="day_of_week_long_wednesday">sreda</string>
- <string name="day_of_week_long_thursday">četrtek</string>
- <string name="day_of_week_long_friday">petek</string>
- <string name="day_of_week_long_saturday">sobota</string>
-
- <string name="day_of_week_medium_sunday">ned</string>
- <string name="day_of_week_medium_monday">pon</string>
- <string name="day_of_week_medium_tuesday">tor</string>
- <string name="day_of_week_medium_wednesday">sre</string>
- <string name="day_of_week_medium_thursday">čet</string>
- <string name="day_of_week_medium_friday">pet</string>
- <string name="day_of_week_medium_saturday">sob</string>
-
- <string name="day_of_week_short_sunday">ned</string>
- <string name="day_of_week_short_monday">pon</string>
- <string name="day_of_week_short_tuesday">tor</string>
- <string name="day_of_week_short_wednesday">sre</string>
- <string name="day_of_week_short_thursday">čet</string>
- <string name="day_of_week_short_friday">pet</string>
- <string name="day_of_week_short_saturday">sob</string>
-
- <string name="day_of_week_shortest_sunday">n</string>
- <string name="day_of_week_shortest_monday">p</string>
- <string name="day_of_week_shortest_tuesday">t</string>
- <string name="day_of_week_shortest_wednesday">s</string>
- <string name="day_of_week_shortest_thursday">č</string>
- <string name="day_of_week_shortest_friday">p</string>
- <string name="day_of_week_shortest_saturday">s</string>
-
- <string name="am">dop.</string>
- <string name="pm">pop.</string>
- <string name="yesterday">Včeraj</string>
- <string name="today">Danes</string>
- <string name="tomorrow">Jutri</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-sr-rRS/donottranslate-cldr.xml b/core/res/res/values-sr-rRS/donottranslate-cldr.xml
index 7168bcc..996c75e 100644
--- a/core/res/res/values-sr-rRS/donottranslate-cldr.xml
+++ b/core/res/res/values-sr-rRS/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">јануар</string>
- <string name="month_long_standalone_february">фебруар</string>
- <string name="month_long_standalone_march">март</string>
- <string name="month_long_standalone_april">април</string>
- <string name="month_long_standalone_may">мај</string>
- <string name="month_long_standalone_june">јун</string>
- <string name="month_long_standalone_july">јул</string>
- <string name="month_long_standalone_august">август</string>
- <string name="month_long_standalone_september">септембар</string>
- <string name="month_long_standalone_october">октобар</string>
- <string name="month_long_standalone_november">новембар</string>
- <string name="month_long_standalone_december">децембар</string>
-
- <string name="month_long_january">јануар</string>
- <string name="month_long_february">фебруар</string>
- <string name="month_long_march">март</string>
- <string name="month_long_april">април</string>
- <string name="month_long_may">мај</string>
- <string name="month_long_june">јун</string>
- <string name="month_long_july">јул</string>
- <string name="month_long_august">август</string>
- <string name="month_long_september">септембар</string>
- <string name="month_long_october">октобар</string>
- <string name="month_long_november">новембар</string>
- <string name="month_long_december">децембар</string>
-
- <string name="month_medium_january">јан</string>
- <string name="month_medium_february">феб</string>
- <string name="month_medium_march">мар</string>
- <string name="month_medium_april">апр</string>
- <string name="month_medium_may">мај</string>
- <string name="month_medium_june">јун</string>
- <string name="month_medium_july">јул</string>
- <string name="month_medium_august">авг</string>
- <string name="month_medium_september">сеп</string>
- <string name="month_medium_october">окт</string>
- <string name="month_medium_november">нов</string>
- <string name="month_medium_december">дец</string>
-
- <string name="month_shortest_january">ј</string>
- <string name="month_shortest_february">ф</string>
- <string name="month_shortest_march">м</string>
- <string name="month_shortest_april">а</string>
- <string name="month_shortest_may">м</string>
- <string name="month_shortest_june">ј</string>
- <string name="month_shortest_july">ј</string>
- <string name="month_shortest_august">а</string>
- <string name="month_shortest_september">с</string>
- <string name="month_shortest_october">о</string>
- <string name="month_shortest_november">н</string>
- <string name="month_shortest_december">д</string>
-
- <string name="day_of_week_long_sunday">недеља</string>
- <string name="day_of_week_long_monday">понедељак</string>
- <string name="day_of_week_long_tuesday">уторак</string>
- <string name="day_of_week_long_wednesday">среда</string>
- <string name="day_of_week_long_thursday">четвртак</string>
- <string name="day_of_week_long_friday">петак</string>
- <string name="day_of_week_long_saturday">субота</string>
-
- <string name="day_of_week_medium_sunday">нед</string>
- <string name="day_of_week_medium_monday">пон</string>
- <string name="day_of_week_medium_tuesday">уто</string>
- <string name="day_of_week_medium_wednesday">сре</string>
- <string name="day_of_week_medium_thursday">чет</string>
- <string name="day_of_week_medium_friday">пет</string>
- <string name="day_of_week_medium_saturday">суб</string>
-
- <string name="day_of_week_short_sunday">нед</string>
- <string name="day_of_week_short_monday">пон</string>
- <string name="day_of_week_short_tuesday">уто</string>
- <string name="day_of_week_short_wednesday">сре</string>
- <string name="day_of_week_short_thursday">чет</string>
- <string name="day_of_week_short_friday">пет</string>
- <string name="day_of_week_short_saturday">суб</string>
-
- <string name="day_of_week_shortest_sunday">н</string>
- <string name="day_of_week_shortest_monday">п</string>
- <string name="day_of_week_shortest_tuesday">у</string>
- <string name="day_of_week_shortest_wednesday">с</string>
- <string name="day_of_week_shortest_thursday">ч</string>
- <string name="day_of_week_shortest_friday">п</string>
- <string name="day_of_week_shortest_saturday">с</string>
-
- <string name="am">пре подне</string>
- <string name="pm">поподне</string>
- <string name="yesterday">јуче</string>
- <string name="today">данас</string>
- <string name="tomorrow">сутра</string>
-
<string name="hour_minute_24">%H.%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-sr/donottranslate-cldr.xml b/core/res/res/values-sr/donottranslate-cldr.xml
index 7426bdc..7fca1a2 100644
--- a/core/res/res/values-sr/donottranslate-cldr.xml
+++ b/core/res/res/values-sr/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">јануар</string>
- <string name="month_long_standalone_february">фебруар</string>
- <string name="month_long_standalone_march">март</string>
- <string name="month_long_standalone_april">април</string>
- <string name="month_long_standalone_may">мај</string>
- <string name="month_long_standalone_june">јун</string>
- <string name="month_long_standalone_july">јул</string>
- <string name="month_long_standalone_august">август</string>
- <string name="month_long_standalone_september">септембар</string>
- <string name="month_long_standalone_october">октобар</string>
- <string name="month_long_standalone_november">новембар</string>
- <string name="month_long_standalone_december">децембар</string>
-
- <string name="month_long_january">јануар</string>
- <string name="month_long_february">фебруар</string>
- <string name="month_long_march">март</string>
- <string name="month_long_april">април</string>
- <string name="month_long_may">мај</string>
- <string name="month_long_june">јун</string>
- <string name="month_long_july">јул</string>
- <string name="month_long_august">август</string>
- <string name="month_long_september">септембар</string>
- <string name="month_long_october">октобар</string>
- <string name="month_long_november">новембар</string>
- <string name="month_long_december">децембар</string>
-
- <string name="month_medium_january">јан</string>
- <string name="month_medium_february">феб</string>
- <string name="month_medium_march">мар</string>
- <string name="month_medium_april">апр</string>
- <string name="month_medium_may">мај</string>
- <string name="month_medium_june">јун</string>
- <string name="month_medium_july">јул</string>
- <string name="month_medium_august">авг</string>
- <string name="month_medium_september">сеп</string>
- <string name="month_medium_october">окт</string>
- <string name="month_medium_november">нов</string>
- <string name="month_medium_december">дец</string>
-
- <string name="month_shortest_january">ј</string>
- <string name="month_shortest_february">ф</string>
- <string name="month_shortest_march">м</string>
- <string name="month_shortest_april">а</string>
- <string name="month_shortest_may">м</string>
- <string name="month_shortest_june">ј</string>
- <string name="month_shortest_july">ј</string>
- <string name="month_shortest_august">а</string>
- <string name="month_shortest_september">с</string>
- <string name="month_shortest_october">о</string>
- <string name="month_shortest_november">н</string>
- <string name="month_shortest_december">д</string>
-
- <string name="day_of_week_long_sunday">недеља</string>
- <string name="day_of_week_long_monday">понедељак</string>
- <string name="day_of_week_long_tuesday">уторак</string>
- <string name="day_of_week_long_wednesday">среда</string>
- <string name="day_of_week_long_thursday">четвртак</string>
- <string name="day_of_week_long_friday">петак</string>
- <string name="day_of_week_long_saturday">субота</string>
-
- <string name="day_of_week_medium_sunday">нед</string>
- <string name="day_of_week_medium_monday">пон</string>
- <string name="day_of_week_medium_tuesday">уто</string>
- <string name="day_of_week_medium_wednesday">сре</string>
- <string name="day_of_week_medium_thursday">чет</string>
- <string name="day_of_week_medium_friday">пет</string>
- <string name="day_of_week_medium_saturday">суб</string>
-
- <string name="day_of_week_short_sunday">нед</string>
- <string name="day_of_week_short_monday">пон</string>
- <string name="day_of_week_short_tuesday">уто</string>
- <string name="day_of_week_short_wednesday">сре</string>
- <string name="day_of_week_short_thursday">чет</string>
- <string name="day_of_week_short_friday">пет</string>
- <string name="day_of_week_short_saturday">суб</string>
-
- <string name="day_of_week_shortest_sunday">н</string>
- <string name="day_of_week_shortest_monday">п</string>
- <string name="day_of_week_shortest_tuesday">у</string>
- <string name="day_of_week_shortest_wednesday">с</string>
- <string name="day_of_week_shortest_thursday">ч</string>
- <string name="day_of_week_shortest_friday">п</string>
- <string name="day_of_week_shortest_saturday">с</string>
-
- <string name="am">пре подне</string>
- <string name="pm">поподне</string>
- <string name="yesterday">јуче</string>
- <string name="today">данас</string>
- <string name="tomorrow">сутра</string>
-
<string name="hour_minute_24">%H.%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-sv/donottranslate-cldr.xml b/core/res/res/values-sv/donottranslate-cldr.xml
index 8b7833f..64c83f2 100644
--- a/core/res/res/values-sv/donottranslate-cldr.xml
+++ b/core/res/res/values-sv/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">januari</string>
- <string name="month_long_standalone_february">februari</string>
- <string name="month_long_standalone_march">mars</string>
- <string name="month_long_standalone_april">april</string>
- <string name="month_long_standalone_may">maj</string>
- <string name="month_long_standalone_june">juni</string>
- <string name="month_long_standalone_july">juli</string>
- <string name="month_long_standalone_august">augusti</string>
- <string name="month_long_standalone_september">september</string>
- <string name="month_long_standalone_october">oktober</string>
- <string name="month_long_standalone_november">november</string>
- <string name="month_long_standalone_december">december</string>
-
- <string name="month_long_january">januari</string>
- <string name="month_long_february">februari</string>
- <string name="month_long_march">mars</string>
- <string name="month_long_april">april</string>
- <string name="month_long_may">maj</string>
- <string name="month_long_june">juni</string>
- <string name="month_long_july">juli</string>
- <string name="month_long_august">augusti</string>
- <string name="month_long_september">september</string>
- <string name="month_long_october">oktober</string>
- <string name="month_long_november">november</string>
- <string name="month_long_december">december</string>
-
- <string name="month_medium_january">jan</string>
- <string name="month_medium_february">feb</string>
- <string name="month_medium_march">mar</string>
- <string name="month_medium_april">apr</string>
- <string name="month_medium_may">maj</string>
- <string name="month_medium_june">jun</string>
- <string name="month_medium_july">jul</string>
- <string name="month_medium_august">aug</string>
- <string name="month_medium_september">sep</string>
- <string name="month_medium_october">okt</string>
- <string name="month_medium_november">nov</string>
- <string name="month_medium_december">dec</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">söndag</string>
- <string name="day_of_week_long_monday">måndag</string>
- <string name="day_of_week_long_tuesday">tisdag</string>
- <string name="day_of_week_long_wednesday">onsdag</string>
- <string name="day_of_week_long_thursday">torsdag</string>
- <string name="day_of_week_long_friday">fredag</string>
- <string name="day_of_week_long_saturday">lördag</string>
-
- <string name="day_of_week_medium_sunday">sön</string>
- <string name="day_of_week_medium_monday">mån</string>
- <string name="day_of_week_medium_tuesday">tis</string>
- <string name="day_of_week_medium_wednesday">ons</string>
- <string name="day_of_week_medium_thursday">tors</string>
- <string name="day_of_week_medium_friday">fre</string>
- <string name="day_of_week_medium_saturday">lör</string>
-
- <string name="day_of_week_short_sunday">sön</string>
- <string name="day_of_week_short_monday">mån</string>
- <string name="day_of_week_short_tuesday">tis</string>
- <string name="day_of_week_short_wednesday">ons</string>
- <string name="day_of_week_short_thursday">tors</string>
- <string name="day_of_week_short_friday">fre</string>
- <string name="day_of_week_short_saturday">lör</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">O</string>
- <string name="day_of_week_shortest_thursday">T</string>
- <string name="day_of_week_shortest_friday">F</string>
- <string name="day_of_week_shortest_saturday">L</string>
-
- <string name="am">f.m.</string>
- <string name="pm">e.m.</string>
- <string name="yesterday">igår</string>
- <string name="today">idag</string>
- <string name="tomorrow">imorgon</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-sw/donottranslate-cldr.xml b/core/res/res/values-sw/donottranslate-cldr.xml
index 2bc07c1..a7a5150 100644
--- a/core/res/res/values-sw/donottranslate-cldr.xml
+++ b/core/res/res/values-sw/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">Januari</string>
- <string name="month_long_standalone_february">Februari</string>
- <string name="month_long_standalone_march">Machi</string>
- <string name="month_long_standalone_april">Aprili</string>
- <string name="month_long_standalone_may">Mei</string>
- <string name="month_long_standalone_june">Juni</string>
- <string name="month_long_standalone_july">Julai</string>
- <string name="month_long_standalone_august">Agosti</string>
- <string name="month_long_standalone_september">Septemba</string>
- <string name="month_long_standalone_october">Oktoba</string>
- <string name="month_long_standalone_november">Novemba</string>
- <string name="month_long_standalone_december">Desemba</string>
-
- <string name="month_long_january">Januari</string>
- <string name="month_long_february">Februari</string>
- <string name="month_long_march">Machi</string>
- <string name="month_long_april">Aprili</string>
- <string name="month_long_may">Mei</string>
- <string name="month_long_june">Juni</string>
- <string name="month_long_july">Julai</string>
- <string name="month_long_august">Agosti</string>
- <string name="month_long_september">Septemba</string>
- <string name="month_long_october">Oktoba</string>
- <string name="month_long_november">Novemba</string>
- <string name="month_long_december">Desemba</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mac</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">Mei</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Ago</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Okt</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Des</string>
-
- <string name="month_shortest_january">1</string>
- <string name="month_shortest_february">2</string>
- <string name="month_shortest_march">3</string>
- <string name="month_shortest_april">4</string>
- <string name="month_shortest_may">5</string>
- <string name="month_shortest_june">6</string>
- <string name="month_shortest_july">7</string>
- <string name="month_shortest_august">8</string>
- <string name="month_shortest_september">9</string>
- <string name="month_shortest_october">10</string>
- <string name="month_shortest_november">11</string>
- <string name="month_shortest_december">12</string>
-
- <string name="day_of_week_long_sunday">Jumapili</string>
- <string name="day_of_week_long_monday">Jumatatu</string>
- <string name="day_of_week_long_tuesday">Jumanne</string>
- <string name="day_of_week_long_wednesday">Jumatano</string>
- <string name="day_of_week_long_thursday">Alhamisi</string>
- <string name="day_of_week_long_friday">Ijumaa</string>
- <string name="day_of_week_long_saturday">Jumamosi</string>
-
- <string name="day_of_week_medium_sunday">Jpi</string>
- <string name="day_of_week_medium_monday">Jtt</string>
- <string name="day_of_week_medium_tuesday">Jnn</string>
- <string name="day_of_week_medium_wednesday">Jtn</string>
- <string name="day_of_week_medium_thursday">Alh</string>
- <string name="day_of_week_medium_friday">Iju</string>
- <string name="day_of_week_medium_saturday">Jmo</string>
-
- <string name="day_of_week_short_sunday">Jpi</string>
- <string name="day_of_week_short_monday">Jtt</string>
- <string name="day_of_week_short_tuesday">Jnn</string>
- <string name="day_of_week_short_wednesday">Jtn</string>
- <string name="day_of_week_short_thursday">Alh</string>
- <string name="day_of_week_short_friday">Iju</string>
- <string name="day_of_week_short_saturday">Jmo</string>
-
- <string name="day_of_week_shortest_sunday">1</string>
- <string name="day_of_week_shortest_monday">2</string>
- <string name="day_of_week_shortest_tuesday">3</string>
- <string name="day_of_week_shortest_wednesday">4</string>
- <string name="day_of_week_shortest_thursday">5</string>
- <string name="day_of_week_shortest_friday">6</string>
- <string name="day_of_week_shortest_saturday">7</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-th-rTH/donottranslate-cldr.xml b/core/res/res/values-th-rTH/donottranslate-cldr.xml
index 7049c52..2517143 100644
--- a/core/res/res/values-th-rTH/donottranslate-cldr.xml
+++ b/core/res/res/values-th-rTH/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">มกราคม</string>
- <string name="month_long_standalone_february">กุมภาพันธ์</string>
- <string name="month_long_standalone_march">มีนาคม</string>
- <string name="month_long_standalone_april">เมษายน</string>
- <string name="month_long_standalone_may">พฤษภาคม</string>
- <string name="month_long_standalone_june">มิถุนายน</string>
- <string name="month_long_standalone_july">กรกฎาคม</string>
- <string name="month_long_standalone_august">สิงหาคม</string>
- <string name="month_long_standalone_september">กันยายน</string>
- <string name="month_long_standalone_october">ตุลาคม</string>
- <string name="month_long_standalone_november">พฤศจิกายน</string>
- <string name="month_long_standalone_december">ธันวาคม</string>
-
- <string name="month_long_january">มกราคม</string>
- <string name="month_long_february">กุมภาพันธ์</string>
- <string name="month_long_march">มีนาคม</string>
- <string name="month_long_april">เมษายน</string>
- <string name="month_long_may">พฤษภาคม</string>
- <string name="month_long_june">มิถุนายน</string>
- <string name="month_long_july">กรกฎาคม</string>
- <string name="month_long_august">สิงหาคม</string>
- <string name="month_long_september">กันยายน</string>
- <string name="month_long_october">ตุลาคม</string>
- <string name="month_long_november">พฤศจิกายน</string>
- <string name="month_long_december">ธันวาคม</string>
-
- <string name="month_medium_january">ม.ค.</string>
- <string name="month_medium_february">ก.พ.</string>
- <string name="month_medium_march">มี.ค.</string>
- <string name="month_medium_april">เม.ย.</string>
- <string name="month_medium_may">พ.ค.</string>
- <string name="month_medium_june">มิ.ย.</string>
- <string name="month_medium_july">ก.ค.</string>
- <string name="month_medium_august">ส.ค.</string>
- <string name="month_medium_september">ก.ย.</string>
- <string name="month_medium_october">ต.ค.</string>
- <string name="month_medium_november">พ.ย.</string>
- <string name="month_medium_december">ธ.ค.</string>
-
- <string name="month_shortest_january">ม.ค.</string>
- <string name="month_shortest_february">ก.พ.</string>
- <string name="month_shortest_march">มี.ค.</string>
- <string name="month_shortest_april">เม.ย.</string>
- <string name="month_shortest_may">พ.ค.</string>
- <string name="month_shortest_june">มิ.ย.</string>
- <string name="month_shortest_july">ก.ค.</string>
- <string name="month_shortest_august">ส.ค.</string>
- <string name="month_shortest_september">ก.ย.</string>
- <string name="month_shortest_october">ต.ค.</string>
- <string name="month_shortest_november">พ.ย.</string>
- <string name="month_shortest_december">ธ.ค.</string>
-
- <string name="day_of_week_long_sunday">วันอาทิตย์</string>
- <string name="day_of_week_long_monday">วันจันทร์</string>
- <string name="day_of_week_long_tuesday">วันอังคาร</string>
- <string name="day_of_week_long_wednesday">วันพุธ</string>
- <string name="day_of_week_long_thursday">วันพฤหัสบดี</string>
- <string name="day_of_week_long_friday">วันศุกร์</string>
- <string name="day_of_week_long_saturday">วันเสาร์</string>
-
- <string name="day_of_week_medium_sunday">อา.</string>
- <string name="day_of_week_medium_monday">จ.</string>
- <string name="day_of_week_medium_tuesday">อ.</string>
- <string name="day_of_week_medium_wednesday">พ.</string>
- <string name="day_of_week_medium_thursday">พฤ.</string>
- <string name="day_of_week_medium_friday">ศ.</string>
- <string name="day_of_week_medium_saturday">ส.</string>
-
- <string name="day_of_week_short_sunday">อา.</string>
- <string name="day_of_week_short_monday">จ.</string>
- <string name="day_of_week_short_tuesday">อ.</string>
- <string name="day_of_week_short_wednesday">พ.</string>
- <string name="day_of_week_short_thursday">พฤ.</string>
- <string name="day_of_week_short_friday">ศ.</string>
- <string name="day_of_week_short_saturday">ส.</string>
-
- <string name="day_of_week_shortest_sunday">อ</string>
- <string name="day_of_week_shortest_monday">จ</string>
- <string name="day_of_week_shortest_tuesday">อ</string>
- <string name="day_of_week_shortest_wednesday">พ</string>
- <string name="day_of_week_shortest_thursday">พ</string>
- <string name="day_of_week_shortest_friday">ศ</string>
- <string name="day_of_week_shortest_saturday">ส</string>
-
- <string name="am">ก่อนเที่ยง</string>
- <string name="pm">หลังเที่ยง</string>
- <string name="yesterday">เมื่อวาน</string>
- <string name="today">วันนี้</string>
- <string name="tomorrow">พรุ่งนี้</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-th/donottranslate-cldr.xml b/core/res/res/values-th/donottranslate-cldr.xml
index f3196d1..7ab4191 100644
--- a/core/res/res/values-th/donottranslate-cldr.xml
+++ b/core/res/res/values-th/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">มกราคม</string>
- <string name="month_long_standalone_february">กุมภาพันธ์</string>
- <string name="month_long_standalone_march">มีนาคม</string>
- <string name="month_long_standalone_april">เมษายน</string>
- <string name="month_long_standalone_may">พฤษภาคม</string>
- <string name="month_long_standalone_june">มิถุนายน</string>
- <string name="month_long_standalone_july">กรกฎาคม</string>
- <string name="month_long_standalone_august">สิงหาคม</string>
- <string name="month_long_standalone_september">กันยายน</string>
- <string name="month_long_standalone_october">ตุลาคม</string>
- <string name="month_long_standalone_november">พฤศจิกายน</string>
- <string name="month_long_standalone_december">ธันวาคม</string>
-
- <string name="month_long_january">มกราคม</string>
- <string name="month_long_february">กุมภาพันธ์</string>
- <string name="month_long_march">มีนาคม</string>
- <string name="month_long_april">เมษายน</string>
- <string name="month_long_may">พฤษภาคม</string>
- <string name="month_long_june">มิถุนายน</string>
- <string name="month_long_july">กรกฎาคม</string>
- <string name="month_long_august">สิงหาคม</string>
- <string name="month_long_september">กันยายน</string>
- <string name="month_long_october">ตุลาคม</string>
- <string name="month_long_november">พฤศจิกายน</string>
- <string name="month_long_december">ธันวาคม</string>
-
- <string name="month_medium_january">ม.ค.</string>
- <string name="month_medium_february">ก.พ.</string>
- <string name="month_medium_march">มี.ค.</string>
- <string name="month_medium_april">เม.ย.</string>
- <string name="month_medium_may">พ.ค.</string>
- <string name="month_medium_june">มิ.ย.</string>
- <string name="month_medium_july">ก.ค.</string>
- <string name="month_medium_august">ส.ค.</string>
- <string name="month_medium_september">ก.ย.</string>
- <string name="month_medium_october">ต.ค.</string>
- <string name="month_medium_november">พ.ย.</string>
- <string name="month_medium_december">ธ.ค.</string>
-
- <string name="month_shortest_january">ม.ค.</string>
- <string name="month_shortest_february">ก.พ.</string>
- <string name="month_shortest_march">มี.ค.</string>
- <string name="month_shortest_april">เม.ย.</string>
- <string name="month_shortest_may">พ.ค.</string>
- <string name="month_shortest_june">มิ.ย.</string>
- <string name="month_shortest_july">ก.ค.</string>
- <string name="month_shortest_august">ส.ค.</string>
- <string name="month_shortest_september">ก.ย.</string>
- <string name="month_shortest_october">ต.ค.</string>
- <string name="month_shortest_november">พ.ย.</string>
- <string name="month_shortest_december">ธ.ค.</string>
-
- <string name="day_of_week_long_sunday">วันอาทิตย์</string>
- <string name="day_of_week_long_monday">วันจันทร์</string>
- <string name="day_of_week_long_tuesday">วันอังคาร</string>
- <string name="day_of_week_long_wednesday">วันพุธ</string>
- <string name="day_of_week_long_thursday">วันพฤหัสบดี</string>
- <string name="day_of_week_long_friday">วันศุกร์</string>
- <string name="day_of_week_long_saturday">วันเสาร์</string>
-
- <string name="day_of_week_medium_sunday">อา.</string>
- <string name="day_of_week_medium_monday">จ.</string>
- <string name="day_of_week_medium_tuesday">อ.</string>
- <string name="day_of_week_medium_wednesday">พ.</string>
- <string name="day_of_week_medium_thursday">พฤ.</string>
- <string name="day_of_week_medium_friday">ศ.</string>
- <string name="day_of_week_medium_saturday">ส.</string>
-
- <string name="day_of_week_short_sunday">อา.</string>
- <string name="day_of_week_short_monday">จ.</string>
- <string name="day_of_week_short_tuesday">อ.</string>
- <string name="day_of_week_short_wednesday">พ.</string>
- <string name="day_of_week_short_thursday">พฤ.</string>
- <string name="day_of_week_short_friday">ศ.</string>
- <string name="day_of_week_short_saturday">ส.</string>
-
- <string name="day_of_week_shortest_sunday">อ</string>
- <string name="day_of_week_shortest_monday">จ</string>
- <string name="day_of_week_shortest_tuesday">อ</string>
- <string name="day_of_week_shortest_wednesday">พ</string>
- <string name="day_of_week_shortest_thursday">พ</string>
- <string name="day_of_week_shortest_friday">ศ</string>
- <string name="day_of_week_shortest_saturday">ส</string>
-
- <string name="am">ก่อนเที่ยง</string>
- <string name="pm">หลังเที่ยง</string>
- <string name="yesterday">เมื่อวาน</string>
- <string name="today">วันนี้</string>
- <string name="tomorrow">พรุ่งนี้</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-tl/donottranslate-cldr.xml b/core/res/res/values-tl/donottranslate-cldr.xml
index 6ff92e3..4545fb5 100644
--- a/core/res/res/values-tl/donottranslate-cldr.xml
+++ b/core/res/res/values-tl/donottranslate-cldr.xml
@@ -1,70 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">1</string>
- <string name="month_long_standalone_february">2</string>
- <string name="month_long_standalone_march">3</string>
- <string name="month_long_standalone_april">4</string>
- <string name="month_long_standalone_may">5</string>
- <string name="month_long_standalone_june">6</string>
- <string name="month_long_standalone_july">7</string>
- <string name="month_long_standalone_august">8</string>
- <string name="month_long_standalone_september">9</string>
- <string name="month_long_standalone_october">10</string>
- <string name="month_long_standalone_november">11</string>
- <string name="month_long_standalone_december">12</string>
-
- <string name="month_long_january">1</string>
- <string name="month_long_february">2</string>
- <string name="month_long_march">3</string>
- <string name="month_long_april">4</string>
- <string name="month_long_may">5</string>
- <string name="month_long_june">6</string>
- <string name="month_long_july">7</string>
- <string name="month_long_august">8</string>
- <string name="month_long_september">9</string>
- <string name="month_long_october">10</string>
- <string name="month_long_november">11</string>
- <string name="month_long_december">12</string>
-
-
- <string name="month_shortest_january">1</string>
- <string name="month_shortest_february">2</string>
- <string name="month_shortest_march">3</string>
- <string name="month_shortest_april">4</string>
- <string name="month_shortest_may">5</string>
- <string name="month_shortest_june">6</string>
- <string name="month_shortest_july">7</string>
- <string name="month_shortest_august">8</string>
- <string name="month_shortest_september">9</string>
- <string name="month_shortest_october">10</string>
- <string name="month_shortest_november">11</string>
- <string name="month_shortest_december">12</string>
-
- <string name="day_of_week_long_sunday">1</string>
- <string name="day_of_week_long_monday">2</string>
- <string name="day_of_week_long_tuesday">3</string>
- <string name="day_of_week_long_wednesday">4</string>
- <string name="day_of_week_long_thursday">5</string>
- <string name="day_of_week_long_friday">6</string>
- <string name="day_of_week_long_saturday">7</string>
-
-
-
- <string name="day_of_week_shortest_sunday">1</string>
- <string name="day_of_week_shortest_monday">2</string>
- <string name="day_of_week_shortest_tuesday">3</string>
- <string name="day_of_week_shortest_wednesday">4</string>
- <string name="day_of_week_shortest_thursday">5</string>
- <string name="day_of_week_shortest_friday">6</string>
- <string name="day_of_week_shortest_saturday">7</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-tr/donottranslate-cldr.xml b/core/res/res/values-tr/donottranslate-cldr.xml
index 92b0c72..1ab4ff7 100644
--- a/core/res/res/values-tr/donottranslate-cldr.xml
+++ b/core/res/res/values-tr/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">Ocak</string>
- <string name="month_long_standalone_february">Şubat</string>
- <string name="month_long_standalone_march">Mart</string>
- <string name="month_long_standalone_april">Nisan</string>
- <string name="month_long_standalone_may">Mayıs</string>
- <string name="month_long_standalone_june">Haziran</string>
- <string name="month_long_standalone_july">Temmuz</string>
- <string name="month_long_standalone_august">Ağustos</string>
- <string name="month_long_standalone_september">Eylül</string>
- <string name="month_long_standalone_october">Ekim</string>
- <string name="month_long_standalone_november">Kasım</string>
- <string name="month_long_standalone_december">Aralık</string>
-
- <string name="month_long_january">Ocak</string>
- <string name="month_long_february">Şubat</string>
- <string name="month_long_march">Mart</string>
- <string name="month_long_april">Nisan</string>
- <string name="month_long_may">Mayıs</string>
- <string name="month_long_june">Haziran</string>
- <string name="month_long_july">Temmuz</string>
- <string name="month_long_august">Ağustos</string>
- <string name="month_long_september">Eylül</string>
- <string name="month_long_october">Ekim</string>
- <string name="month_long_november">Kasım</string>
- <string name="month_long_december">Aralık</string>
-
- <string name="month_medium_january">Oca</string>
- <string name="month_medium_february">Şub</string>
- <string name="month_medium_march">Mar</string>
- <string name="month_medium_april">Nis</string>
- <string name="month_medium_may">May</string>
- <string name="month_medium_june">Haz</string>
- <string name="month_medium_july">Tem</string>
- <string name="month_medium_august">Ağu</string>
- <string name="month_medium_september">Eyl</string>
- <string name="month_medium_october">Eki</string>
- <string name="month_medium_november">Kas</string>
- <string name="month_medium_december">Ara</string>
-
- <string name="month_shortest_january">O</string>
- <string name="month_shortest_february">Ş</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">N</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">H</string>
- <string name="month_shortest_july">T</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">E</string>
- <string name="month_shortest_october">E</string>
- <string name="month_shortest_november">K</string>
- <string name="month_shortest_december">A</string>
-
- <string name="day_of_week_long_sunday">Pazar</string>
- <string name="day_of_week_long_monday">Pazartesi</string>
- <string name="day_of_week_long_tuesday">Salı</string>
- <string name="day_of_week_long_wednesday">Çarşamba</string>
- <string name="day_of_week_long_thursday">Perşembe</string>
- <string name="day_of_week_long_friday">Cuma</string>
- <string name="day_of_week_long_saturday">Cumartesi</string>
-
- <string name="day_of_week_medium_sunday">Paz</string>
- <string name="day_of_week_medium_monday">Pzt</string>
- <string name="day_of_week_medium_tuesday">Sal</string>
- <string name="day_of_week_medium_wednesday">Çar</string>
- <string name="day_of_week_medium_thursday">Per</string>
- <string name="day_of_week_medium_friday">Cum</string>
- <string name="day_of_week_medium_saturday">Cmt</string>
-
- <string name="day_of_week_short_sunday">Paz</string>
- <string name="day_of_week_short_monday">Pzt</string>
- <string name="day_of_week_short_tuesday">Sal</string>
- <string name="day_of_week_short_wednesday">Çar</string>
- <string name="day_of_week_short_thursday">Per</string>
- <string name="day_of_week_short_friday">Cum</string>
- <string name="day_of_week_short_saturday">Cmt</string>
-
- <string name="day_of_week_shortest_sunday">P</string>
- <string name="day_of_week_shortest_monday">P</string>
- <string name="day_of_week_shortest_tuesday">S</string>
- <string name="day_of_week_shortest_wednesday">Ç</string>
- <string name="day_of_week_shortest_thursday">P</string>
- <string name="day_of_week_shortest_friday">C</string>
- <string name="day_of_week_shortest_saturday">C</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">Dün</string>
- <string name="today">Bugün</string>
- <string name="tomorrow">Yarın</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-uk-rUA/donottranslate-cldr.xml b/core/res/res/values-uk-rUA/donottranslate-cldr.xml
index caf46a3..f7ca458 100644
--- a/core/res/res/values-uk-rUA/donottranslate-cldr.xml
+++ b/core/res/res/values-uk-rUA/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">січень</string>
- <string name="month_long_standalone_february">лютий</string>
- <string name="month_long_standalone_march">березень</string>
- <string name="month_long_standalone_april">квітень</string>
- <string name="month_long_standalone_may">травень</string>
- <string name="month_long_standalone_june">червень</string>
- <string name="month_long_standalone_july">липень</string>
- <string name="month_long_standalone_august">серпень</string>
- <string name="month_long_standalone_september">вересень</string>
- <string name="month_long_standalone_october">жовтень</string>
- <string name="month_long_standalone_november">листопад</string>
- <string name="month_long_standalone_december">грудень</string>
-
- <string name="month_long_january">січня</string>
- <string name="month_long_february">лютого</string>
- <string name="month_long_march">березня</string>
- <string name="month_long_april">квітня</string>
- <string name="month_long_may">травня</string>
- <string name="month_long_june">червня</string>
- <string name="month_long_july">липня</string>
- <string name="month_long_august">серпня</string>
- <string name="month_long_september">вересня</string>
- <string name="month_long_october">жовтня</string>
- <string name="month_long_november">листопада</string>
- <string name="month_long_december">грудня</string>
-
- <string name="month_medium_january">січ.</string>
- <string name="month_medium_february">лют.</string>
- <string name="month_medium_march">бер.</string>
- <string name="month_medium_april">квіт.</string>
- <string name="month_medium_may">трав.</string>
- <string name="month_medium_june">черв.</string>
- <string name="month_medium_july">лип.</string>
- <string name="month_medium_august">серп.</string>
- <string name="month_medium_september">вер.</string>
- <string name="month_medium_october">жовт.</string>
- <string name="month_medium_november">лист.</string>
- <string name="month_medium_december">груд.</string>
-
- <string name="month_shortest_january">С</string>
- <string name="month_shortest_february">Л</string>
- <string name="month_shortest_march">Б</string>
- <string name="month_shortest_april">К</string>
- <string name="month_shortest_may">Т</string>
- <string name="month_shortest_june">Ч</string>
- <string name="month_shortest_july">Л</string>
- <string name="month_shortest_august">С</string>
- <string name="month_shortest_september">В</string>
- <string name="month_shortest_october">Ж</string>
- <string name="month_shortest_november">Л</string>
- <string name="month_shortest_december">Г</string>
-
- <string name="day_of_week_long_sunday">неділя</string>
- <string name="day_of_week_long_monday">понеділок</string>
- <string name="day_of_week_long_tuesday">вівторок</string>
- <string name="day_of_week_long_wednesday">середа</string>
- <string name="day_of_week_long_thursday">четвер</string>
- <string name="day_of_week_long_friday">пʼятниця</string>
- <string name="day_of_week_long_saturday">субота</string>
-
- <string name="day_of_week_medium_sunday">нд.</string>
- <string name="day_of_week_medium_monday">пн.</string>
- <string name="day_of_week_medium_tuesday">вт.</string>
- <string name="day_of_week_medium_wednesday">ср.</string>
- <string name="day_of_week_medium_thursday">чт.</string>
- <string name="day_of_week_medium_friday">пт.</string>
- <string name="day_of_week_medium_saturday">сб.</string>
-
- <string name="day_of_week_short_sunday">нд.</string>
- <string name="day_of_week_short_monday">пн.</string>
- <string name="day_of_week_short_tuesday">вт.</string>
- <string name="day_of_week_short_wednesday">ср.</string>
- <string name="day_of_week_short_thursday">чт.</string>
- <string name="day_of_week_short_friday">пт.</string>
- <string name="day_of_week_short_saturday">сб.</string>
-
- <string name="day_of_week_shortest_sunday">Н</string>
- <string name="day_of_week_shortest_monday">П</string>
- <string name="day_of_week_shortest_tuesday">В</string>
- <string name="day_of_week_shortest_wednesday">С</string>
- <string name="day_of_week_shortest_thursday">Ч</string>
- <string name="day_of_week_shortest_friday">П</string>
- <string name="day_of_week_shortest_saturday">С</string>
-
- <string name="am">дп</string>
- <string name="pm">пп</string>
- <string name="yesterday">Вчора</string>
- <string name="today">Сьогодні</string>
- <string name="tomorrow">Завтра</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-uk/donottranslate-cldr.xml b/core/res/res/values-uk/donottranslate-cldr.xml
index 46211ac..51c2cb5 100644
--- a/core/res/res/values-uk/donottranslate-cldr.xml
+++ b/core/res/res/values-uk/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">Січень</string>
- <string name="month_long_standalone_february">Лютий</string>
- <string name="month_long_standalone_march">Березень</string>
- <string name="month_long_standalone_april">Квітень</string>
- <string name="month_long_standalone_may">Травень</string>
- <string name="month_long_standalone_june">Червень</string>
- <string name="month_long_standalone_july">Липень</string>
- <string name="month_long_standalone_august">Серпень</string>
- <string name="month_long_standalone_september">Вересень</string>
- <string name="month_long_standalone_october">Жовтень</string>
- <string name="month_long_standalone_november">Листопад</string>
- <string name="month_long_standalone_december">Грудень</string>
-
- <string name="month_long_january">січня</string>
- <string name="month_long_february">лютого</string>
- <string name="month_long_march">березня</string>
- <string name="month_long_april">квітня</string>
- <string name="month_long_may">травня</string>
- <string name="month_long_june">червня</string>
- <string name="month_long_july">липня</string>
- <string name="month_long_august">серпня</string>
- <string name="month_long_september">вересня</string>
- <string name="month_long_october">жовтня</string>
- <string name="month_long_november">листопада</string>
- <string name="month_long_december">грудня</string>
-
- <string name="month_medium_january">січ.</string>
- <string name="month_medium_february">лют.</string>
- <string name="month_medium_march">бер.</string>
- <string name="month_medium_april">квіт.</string>
- <string name="month_medium_may">трав.</string>
- <string name="month_medium_june">черв.</string>
- <string name="month_medium_july">лип.</string>
- <string name="month_medium_august">серп.</string>
- <string name="month_medium_september">вер.</string>
- <string name="month_medium_october">жовт.</string>
- <string name="month_medium_november">лист.</string>
- <string name="month_medium_december">груд.</string>
-
- <string name="month_shortest_january">С</string>
- <string name="month_shortest_february">Л</string>
- <string name="month_shortest_march">Б</string>
- <string name="month_shortest_april">К</string>
- <string name="month_shortest_may">Т</string>
- <string name="month_shortest_june">Ч</string>
- <string name="month_shortest_july">Л</string>
- <string name="month_shortest_august">С</string>
- <string name="month_shortest_september">В</string>
- <string name="month_shortest_october">Ж</string>
- <string name="month_shortest_november">Л</string>
- <string name="month_shortest_december">Г</string>
-
- <string name="day_of_week_long_sunday">Неділя</string>
- <string name="day_of_week_long_monday">Понеділок</string>
- <string name="day_of_week_long_tuesday">Вівторок</string>
- <string name="day_of_week_long_wednesday">Середа</string>
- <string name="day_of_week_long_thursday">Четвер</string>
- <string name="day_of_week_long_friday">Пʼятниця</string>
- <string name="day_of_week_long_saturday">Субота</string>
-
- <string name="day_of_week_medium_sunday">Нд</string>
- <string name="day_of_week_medium_monday">Пн</string>
- <string name="day_of_week_medium_tuesday">Вт</string>
- <string name="day_of_week_medium_wednesday">Ср</string>
- <string name="day_of_week_medium_thursday">Чт</string>
- <string name="day_of_week_medium_friday">Пт</string>
- <string name="day_of_week_medium_saturday">Сб</string>
-
- <string name="day_of_week_short_sunday">Нд</string>
- <string name="day_of_week_short_monday">Пн</string>
- <string name="day_of_week_short_tuesday">Вт</string>
- <string name="day_of_week_short_wednesday">Ср</string>
- <string name="day_of_week_short_thursday">Чт</string>
- <string name="day_of_week_short_friday">Пт</string>
- <string name="day_of_week_short_saturday">Сб</string>
-
- <string name="day_of_week_shortest_sunday">Н</string>
- <string name="day_of_week_shortest_monday">П</string>
- <string name="day_of_week_shortest_tuesday">В</string>
- <string name="day_of_week_shortest_wednesday">С</string>
- <string name="day_of_week_shortest_thursday">Ч</string>
- <string name="day_of_week_shortest_friday">П</string>
- <string name="day_of_week_shortest_saturday">С</string>
-
- <string name="am">дп</string>
- <string name="pm">пп</string>
- <string name="yesterday">Вчора</string>
- <string name="today">Сьогодні</string>
- <string name="tomorrow">Завтра</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %p</string>
diff --git a/core/res/res/values-vi-rVN/donottranslate-cldr.xml b/core/res/res/values-vi-rVN/donottranslate-cldr.xml
index 5d049a1..a385015 100644
--- a/core/res/res/values-vi-rVN/donottranslate-cldr.xml
+++ b/core/res/res/values-vi-rVN/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">tháng một</string>
- <string name="month_long_standalone_february">tháng hai</string>
- <string name="month_long_standalone_march">tháng ba</string>
- <string name="month_long_standalone_april">tháng tư</string>
- <string name="month_long_standalone_may">tháng năm</string>
- <string name="month_long_standalone_june">tháng sáu</string>
- <string name="month_long_standalone_july">tháng bảy</string>
- <string name="month_long_standalone_august">tháng tám</string>
- <string name="month_long_standalone_september">tháng chín</string>
- <string name="month_long_standalone_october">tháng mười</string>
- <string name="month_long_standalone_november">tháng mười một</string>
- <string name="month_long_standalone_december">tháng mười hai</string>
-
- <string name="month_long_january">tháng một</string>
- <string name="month_long_february">tháng hai</string>
- <string name="month_long_march">tháng ba</string>
- <string name="month_long_april">tháng tư</string>
- <string name="month_long_may">tháng năm</string>
- <string name="month_long_june">tháng sáu</string>
- <string name="month_long_july">tháng bảy</string>
- <string name="month_long_august">tháng tám</string>
- <string name="month_long_september">tháng chín</string>
- <string name="month_long_october">tháng mười</string>
- <string name="month_long_november">tháng mười một</string>
- <string name="month_long_december">tháng mười hai</string>
-
- <string name="month_medium_january">thg 1</string>
- <string name="month_medium_february">thg 2</string>
- <string name="month_medium_march">thg 3</string>
- <string name="month_medium_april">thg 4</string>
- <string name="month_medium_may">thg 5</string>
- <string name="month_medium_june">thg 6</string>
- <string name="month_medium_july">thg 7</string>
- <string name="month_medium_august">thg 8</string>
- <string name="month_medium_september">thg 9</string>
- <string name="month_medium_october">thg 10</string>
- <string name="month_medium_november">thg 11</string>
- <string name="month_medium_december">thg 12</string>
-
- <string name="month_shortest_january">1</string>
- <string name="month_shortest_february">2</string>
- <string name="month_shortest_march">3</string>
- <string name="month_shortest_april">4</string>
- <string name="month_shortest_may">5</string>
- <string name="month_shortest_june">6</string>
- <string name="month_shortest_july">7</string>
- <string name="month_shortest_august">8</string>
- <string name="month_shortest_september">9</string>
- <string name="month_shortest_october">10</string>
- <string name="month_shortest_november">11</string>
- <string name="month_shortest_december">12</string>
-
- <string name="day_of_week_long_sunday">Chủ nhật</string>
- <string name="day_of_week_long_monday">Thứ hai</string>
- <string name="day_of_week_long_tuesday">Thứ ba</string>
- <string name="day_of_week_long_wednesday">Thứ tư</string>
- <string name="day_of_week_long_thursday">Thứ năm</string>
- <string name="day_of_week_long_friday">Thứ sáu</string>
- <string name="day_of_week_long_saturday">Thứ bảy</string>
-
- <string name="day_of_week_medium_sunday">CN</string>
- <string name="day_of_week_medium_monday">Th 2</string>
- <string name="day_of_week_medium_tuesday">Th 3</string>
- <string name="day_of_week_medium_wednesday">Th 4</string>
- <string name="day_of_week_medium_thursday">Th 5</string>
- <string name="day_of_week_medium_friday">Th 6</string>
- <string name="day_of_week_medium_saturday">Th 7</string>
-
- <string name="day_of_week_short_sunday">CN</string>
- <string name="day_of_week_short_monday">Th 2</string>
- <string name="day_of_week_short_tuesday">Th 3</string>
- <string name="day_of_week_short_wednesday">Th 4</string>
- <string name="day_of_week_short_thursday">Th 5</string>
- <string name="day_of_week_short_friday">Th 6</string>
- <string name="day_of_week_short_saturday">Th 7</string>
-
- <string name="day_of_week_shortest_sunday">1</string>
- <string name="day_of_week_shortest_monday">2</string>
- <string name="day_of_week_shortest_tuesday">3</string>
- <string name="day_of_week_shortest_wednesday">4</string>
- <string name="day_of_week_shortest_thursday">5</string>
- <string name="day_of_week_shortest_friday">6</string>
- <string name="day_of_week_shortest_saturday">7</string>
-
- <string name="am">SA</string>
- <string name="pm">CH</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-vi/donottranslate-cldr.xml b/core/res/res/values-vi/donottranslate-cldr.xml
index 9a757cd..977e021 100644
--- a/core/res/res/values-vi/donottranslate-cldr.xml
+++ b/core/res/res/values-vi/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">tháng một</string>
- <string name="month_long_standalone_february">tháng hai</string>
- <string name="month_long_standalone_march">tháng ba</string>
- <string name="month_long_standalone_april">tháng tư</string>
- <string name="month_long_standalone_may">tháng năm</string>
- <string name="month_long_standalone_june">tháng sáu</string>
- <string name="month_long_standalone_july">tháng bảy</string>
- <string name="month_long_standalone_august">tháng tám</string>
- <string name="month_long_standalone_september">tháng chín</string>
- <string name="month_long_standalone_october">tháng mười</string>
- <string name="month_long_standalone_november">tháng mười một</string>
- <string name="month_long_standalone_december">tháng mười hai</string>
-
- <string name="month_long_january">tháng một</string>
- <string name="month_long_february">tháng hai</string>
- <string name="month_long_march">tháng ba</string>
- <string name="month_long_april">tháng tư</string>
- <string name="month_long_may">tháng năm</string>
- <string name="month_long_june">tháng sáu</string>
- <string name="month_long_july">tháng bảy</string>
- <string name="month_long_august">tháng tám</string>
- <string name="month_long_september">tháng chín</string>
- <string name="month_long_october">tháng mười</string>
- <string name="month_long_november">tháng mười một</string>
- <string name="month_long_december">tháng mười hai</string>
-
- <string name="month_medium_january">thg 1</string>
- <string name="month_medium_february">thg 2</string>
- <string name="month_medium_march">thg 3</string>
- <string name="month_medium_april">thg 4</string>
- <string name="month_medium_may">thg 5</string>
- <string name="month_medium_june">thg 6</string>
- <string name="month_medium_july">thg 7</string>
- <string name="month_medium_august">thg 8</string>
- <string name="month_medium_september">thg 9</string>
- <string name="month_medium_october">thg 10</string>
- <string name="month_medium_november">thg 11</string>
- <string name="month_medium_december">thg 12</string>
-
- <string name="month_shortest_january">1</string>
- <string name="month_shortest_february">2</string>
- <string name="month_shortest_march">3</string>
- <string name="month_shortest_april">4</string>
- <string name="month_shortest_may">5</string>
- <string name="month_shortest_june">6</string>
- <string name="month_shortest_july">7</string>
- <string name="month_shortest_august">8</string>
- <string name="month_shortest_september">9</string>
- <string name="month_shortest_october">10</string>
- <string name="month_shortest_november">11</string>
- <string name="month_shortest_december">12</string>
-
- <string name="day_of_week_long_sunday">Chủ nhật</string>
- <string name="day_of_week_long_monday">Thứ hai</string>
- <string name="day_of_week_long_tuesday">Thứ ba</string>
- <string name="day_of_week_long_wednesday">Thứ tư</string>
- <string name="day_of_week_long_thursday">Thứ năm</string>
- <string name="day_of_week_long_friday">Thứ sáu</string>
- <string name="day_of_week_long_saturday">Thứ bảy</string>
-
- <string name="day_of_week_medium_sunday">CN</string>
- <string name="day_of_week_medium_monday">Th 2</string>
- <string name="day_of_week_medium_tuesday">Th 3</string>
- <string name="day_of_week_medium_wednesday">Th 4</string>
- <string name="day_of_week_medium_thursday">Th 5</string>
- <string name="day_of_week_medium_friday">Th 6</string>
- <string name="day_of_week_medium_saturday">Th 7</string>
-
- <string name="day_of_week_short_sunday">CN</string>
- <string name="day_of_week_short_monday">Th 2</string>
- <string name="day_of_week_short_tuesday">Th 3</string>
- <string name="day_of_week_short_wednesday">Th 4</string>
- <string name="day_of_week_short_thursday">Th 5</string>
- <string name="day_of_week_short_friday">Th 6</string>
- <string name="day_of_week_short_saturday">Th 7</string>
-
- <string name="day_of_week_shortest_sunday">1</string>
- <string name="day_of_week_shortest_monday">2</string>
- <string name="day_of_week_shortest_tuesday">3</string>
- <string name="day_of_week_shortest_wednesday">4</string>
- <string name="day_of_week_shortest_thursday">5</string>
- <string name="day_of_week_shortest_friday">6</string>
- <string name="day_of_week_shortest_saturday">7</string>
-
- <string name="am">SA</string>
- <string name="pm">CH</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values-zh-rCN/donottranslate-cldr.xml b/core/res/res/values-zh-rCN/donottranslate-cldr.xml
index 9e6ef1c..b34b8b3 100644
--- a/core/res/res/values-zh-rCN/donottranslate-cldr.xml
+++ b/core/res/res/values-zh-rCN/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">1 月</string>
- <string name="month_long_standalone_february">2 月</string>
- <string name="month_long_standalone_march">3 月</string>
- <string name="month_long_standalone_april">4 月</string>
- <string name="month_long_standalone_may">5 月</string>
- <string name="month_long_standalone_june">6 月</string>
- <string name="month_long_standalone_july">7 月</string>
- <string name="month_long_standalone_august">8 月</string>
- <string name="month_long_standalone_september">9 月</string>
- <string name="month_long_standalone_october">10 月</string>
- <string name="month_long_standalone_november">11 月</string>
- <string name="month_long_standalone_december">12 月</string>
-
- <string name="month_long_january">1 月</string>
- <string name="month_long_february">2 月</string>
- <string name="month_long_march">3 月</string>
- <string name="month_long_april">4 月</string>
- <string name="month_long_may">5 月</string>
- <string name="month_long_june">6 月</string>
- <string name="month_long_july">7 月</string>
- <string name="month_long_august">8 月</string>
- <string name="month_long_september">9 月</string>
- <string name="month_long_october">10 月</string>
- <string name="month_long_november">11 月</string>
- <string name="month_long_december">12 月</string>
-
- <string name="month_medium_january">1 月</string>
- <string name="month_medium_february">2 月</string>
- <string name="month_medium_march">3 月</string>
- <string name="month_medium_april">4 月</string>
- <string name="month_medium_may">5 月</string>
- <string name="month_medium_june">6 月</string>
- <string name="month_medium_july">7 月</string>
- <string name="month_medium_august">8 月</string>
- <string name="month_medium_september">9 月</string>
- <string name="month_medium_october">10 月</string>
- <string name="month_medium_november">11 月</string>
- <string name="month_medium_december">12 月</string>
-
- <string name="month_shortest_january">1 月</string>
- <string name="month_shortest_february">2 月</string>
- <string name="month_shortest_march">3 月</string>
- <string name="month_shortest_april">4 月</string>
- <string name="month_shortest_may">5 月</string>
- <string name="month_shortest_june">6 月</string>
- <string name="month_shortest_july">7 月</string>
- <string name="month_shortest_august">8 月</string>
- <string name="month_shortest_september">9 月</string>
- <string name="month_shortest_october">10 月</string>
- <string name="month_shortest_november">11 月</string>
- <string name="month_shortest_december">12 月</string>
-
- <string name="day_of_week_long_sunday">星期日</string>
- <string name="day_of_week_long_monday">星期一</string>
- <string name="day_of_week_long_tuesday">星期二</string>
- <string name="day_of_week_long_wednesday">星期三</string>
- <string name="day_of_week_long_thursday">星期四</string>
- <string name="day_of_week_long_friday">星期五</string>
- <string name="day_of_week_long_saturday">星期六</string>
-
- <string name="day_of_week_medium_sunday">周日</string>
- <string name="day_of_week_medium_monday">周一</string>
- <string name="day_of_week_medium_tuesday">周二</string>
- <string name="day_of_week_medium_wednesday">周三</string>
- <string name="day_of_week_medium_thursday">周四</string>
- <string name="day_of_week_medium_friday">周五</string>
- <string name="day_of_week_medium_saturday">周六</string>
-
- <string name="day_of_week_short_sunday">周日</string>
- <string name="day_of_week_short_monday">周一</string>
- <string name="day_of_week_short_tuesday">周二</string>
- <string name="day_of_week_short_wednesday">周三</string>
- <string name="day_of_week_short_thursday">周四</string>
- <string name="day_of_week_short_friday">周五</string>
- <string name="day_of_week_short_saturday">周六</string>
-
- <string name="day_of_week_shortest_sunday">日</string>
- <string name="day_of_week_shortest_monday">一</string>
- <string name="day_of_week_shortest_tuesday">二</string>
- <string name="day_of_week_shortest_wednesday">三</string>
- <string name="day_of_week_shortest_thursday">四</string>
- <string name="day_of_week_shortest_friday">五</string>
- <string name="day_of_week_shortest_saturday">六</string>
-
- <string name="am">上午</string>
- <string name="pm">下午</string>
- <string name="yesterday">昨天</string>
- <string name="today">今天</string>
- <string name="tomorrow">明天</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%p %-l:%M</string>
<string name="hour_minute_cap_ampm">%p %-l:%M</string>
diff --git a/core/res/res/values-zh-rTW/donottranslate-cldr.xml b/core/res/res/values-zh-rTW/donottranslate-cldr.xml
index 907d82e..869705e 100644
--- a/core/res/res/values-zh-rTW/donottranslate-cldr.xml
+++ b/core/res/res/values-zh-rTW/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">1 月</string>
- <string name="month_long_standalone_february">2 月</string>
- <string name="month_long_standalone_march">3 月</string>
- <string name="month_long_standalone_april">4 月</string>
- <string name="month_long_standalone_may">5 月</string>
- <string name="month_long_standalone_june">6 月</string>
- <string name="month_long_standalone_july">7 月</string>
- <string name="month_long_standalone_august">8 月</string>
- <string name="month_long_standalone_september">9 月</string>
- <string name="month_long_standalone_october">10 月</string>
- <string name="month_long_standalone_november">11 月</string>
- <string name="month_long_standalone_december">12 月</string>
-
- <string name="month_long_january">1 月</string>
- <string name="month_long_february">2 月</string>
- <string name="month_long_march">3 月</string>
- <string name="month_long_april">4 月</string>
- <string name="month_long_may">5 月</string>
- <string name="month_long_june">6 月</string>
- <string name="month_long_july">7 月</string>
- <string name="month_long_august">8 月</string>
- <string name="month_long_september">9 月</string>
- <string name="month_long_october">10 月</string>
- <string name="month_long_november">11 月</string>
- <string name="month_long_december">12 月</string>
-
- <string name="month_medium_january">1 月</string>
- <string name="month_medium_february">2 月</string>
- <string name="month_medium_march">3 月</string>
- <string name="month_medium_april">4 月</string>
- <string name="month_medium_may">5 月</string>
- <string name="month_medium_june">6 月</string>
- <string name="month_medium_july">7 月</string>
- <string name="month_medium_august">8 月</string>
- <string name="month_medium_september">9 月</string>
- <string name="month_medium_october">10 月</string>
- <string name="month_medium_november">11 月</string>
- <string name="month_medium_december">12 月</string>
-
- <string name="month_shortest_january">1 月</string>
- <string name="month_shortest_february">2 月</string>
- <string name="month_shortest_march">3 月</string>
- <string name="month_shortest_april">4 月</string>
- <string name="month_shortest_may">5 月</string>
- <string name="month_shortest_june">6 月</string>
- <string name="month_shortest_july">7 月</string>
- <string name="month_shortest_august">8 月</string>
- <string name="month_shortest_september">9 月</string>
- <string name="month_shortest_october">10 月</string>
- <string name="month_shortest_november">11 月</string>
- <string name="month_shortest_december">12 月</string>
-
- <string name="day_of_week_long_sunday">星期日</string>
- <string name="day_of_week_long_monday">星期一</string>
- <string name="day_of_week_long_tuesday">星期二</string>
- <string name="day_of_week_long_wednesday">星期三</string>
- <string name="day_of_week_long_thursday">星期四</string>
- <string name="day_of_week_long_friday">星期五</string>
- <string name="day_of_week_long_saturday">星期六</string>
-
- <string name="day_of_week_medium_sunday">週日</string>
- <string name="day_of_week_medium_monday">週一</string>
- <string name="day_of_week_medium_tuesday">週二</string>
- <string name="day_of_week_medium_wednesday">週三</string>
- <string name="day_of_week_medium_thursday">週四</string>
- <string name="day_of_week_medium_friday">週五</string>
- <string name="day_of_week_medium_saturday">週六</string>
-
- <string name="day_of_week_short_sunday">週日</string>
- <string name="day_of_week_short_monday">週一</string>
- <string name="day_of_week_short_tuesday">週二</string>
- <string name="day_of_week_short_wednesday">週三</string>
- <string name="day_of_week_short_thursday">週四</string>
- <string name="day_of_week_short_friday">週五</string>
- <string name="day_of_week_short_saturday">週六</string>
-
- <string name="day_of_week_shortest_sunday">日</string>
- <string name="day_of_week_shortest_monday">一</string>
- <string name="day_of_week_shortest_tuesday">二</string>
- <string name="day_of_week_shortest_wednesday">三</string>
- <string name="day_of_week_shortest_thursday">四</string>
- <string name="day_of_week_shortest_friday">五</string>
- <string name="day_of_week_shortest_saturday">六</string>
-
- <string name="am">上午</string>
- <string name="pm">下午</string>
- <string name="yesterday">昨天</string>
- <string name="today">今天</string>
- <string name="tomorrow">明天</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%p %-l:%M</string>
<string name="hour_minute_cap_ampm">%p %-l:%M</string>
diff --git a/core/res/res/values-zu/donottranslate-cldr.xml b/core/res/res/values-zu/donottranslate-cldr.xml
index df578ed..97b179b1 100644
--- a/core/res/res/values-zu/donottranslate-cldr.xml
+++ b/core/res/res/values-zu/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">uJanuwari</string>
- <string name="month_long_standalone_february">uFebruwari</string>
- <string name="month_long_standalone_march">uMashi</string>
- <string name="month_long_standalone_april">u-Apreli</string>
- <string name="month_long_standalone_may">uMeyi</string>
- <string name="month_long_standalone_june">uJuni</string>
- <string name="month_long_standalone_july">uJulayi</string>
- <string name="month_long_standalone_august">uAgasti</string>
- <string name="month_long_standalone_september">uSepthemba</string>
- <string name="month_long_standalone_october">u-Okthoba</string>
- <string name="month_long_standalone_november">uNovemba</string>
- <string name="month_long_standalone_december">uDisemba</string>
-
- <string name="month_long_january">Januwari</string>
- <string name="month_long_february">Februwari</string>
- <string name="month_long_march">Mashi</string>
- <string name="month_long_april">Apreli</string>
- <string name="month_long_may">Meyi</string>
- <string name="month_long_june">Juni</string>
- <string name="month_long_july">Julayi</string>
- <string name="month_long_august">Agasti</string>
- <string name="month_long_september">Septhemba</string>
- <string name="month_long_october">Okthoba</string>
- <string name="month_long_november">Novemba</string>
- <string name="month_long_december">Disemba</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mas</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">Mey</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Aga</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Okt</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Dis</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">Sonto</string>
- <string name="day_of_week_long_monday">Msombuluko</string>
- <string name="day_of_week_long_tuesday">Lwesibili</string>
- <string name="day_of_week_long_wednesday">Lwesithathu</string>
- <string name="day_of_week_long_thursday">uLwesine</string>
- <string name="day_of_week_long_friday">Lwesihlanu</string>
- <string name="day_of_week_long_saturday">Mgqibelo</string>
-
- <string name="day_of_week_medium_sunday">Son</string>
- <string name="day_of_week_medium_monday">Mso</string>
- <string name="day_of_week_medium_tuesday">Bil</string>
- <string name="day_of_week_medium_wednesday">Tha</string>
- <string name="day_of_week_medium_thursday">Sin</string>
- <string name="day_of_week_medium_friday">Hla</string>
- <string name="day_of_week_medium_saturday">Mgq</string>
-
- <string name="day_of_week_short_sunday">Son</string>
- <string name="day_of_week_short_monday">Mso</string>
- <string name="day_of_week_short_tuesday">Bil</string>
- <string name="day_of_week_short_wednesday">Tha</string>
- <string name="day_of_week_short_thursday">Sin</string>
- <string name="day_of_week_short_friday">Hla</string>
- <string name="day_of_week_short_saturday">Mgq</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">B</string>
- <string name="day_of_week_shortest_wednesday">T</string>
- <string name="day_of_week_shortest_thursday">S</string>
- <string name="day_of_week_shortest_friday">H</string>
- <string name="day_of_week_shortest_saturday">M</string>
-
- <string name="am">AM</string>
- <string name="pm">PM</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%-k:%M</string>
<string name="hour_minute_ampm">%-l:%M %p</string>
<string name="hour_minute_cap_ampm">%-l:%M %^p</string>
diff --git a/core/res/res/values/donottranslate-cldr.xml b/core/res/res/values/donottranslate-cldr.xml
index 15fcd8b..0587c165 100644
--- a/core/res/res/values/donottranslate-cldr.xml
+++ b/core/res/res/values/donottranslate-cldr.xml
@@ -1,96 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="month_long_standalone_january">January</string>
- <string name="month_long_standalone_february">February</string>
- <string name="month_long_standalone_march">March</string>
- <string name="month_long_standalone_april">April</string>
- <string name="month_long_standalone_may">May</string>
- <string name="month_long_standalone_june">June</string>
- <string name="month_long_standalone_july">July</string>
- <string name="month_long_standalone_august">August</string>
- <string name="month_long_standalone_september">September</string>
- <string name="month_long_standalone_october">October</string>
- <string name="month_long_standalone_november">November</string>
- <string name="month_long_standalone_december">December</string>
-
- <string name="month_long_january">January</string>
- <string name="month_long_february">February</string>
- <string name="month_long_march">March</string>
- <string name="month_long_april">April</string>
- <string name="month_long_may">May</string>
- <string name="month_long_june">June</string>
- <string name="month_long_july">July</string>
- <string name="month_long_august">August</string>
- <string name="month_long_september">September</string>
- <string name="month_long_october">October</string>
- <string name="month_long_november">November</string>
- <string name="month_long_december">December</string>
-
- <string name="month_medium_january">Jan</string>
- <string name="month_medium_february">Feb</string>
- <string name="month_medium_march">Mar</string>
- <string name="month_medium_april">Apr</string>
- <string name="month_medium_may">May</string>
- <string name="month_medium_june">Jun</string>
- <string name="month_medium_july">Jul</string>
- <string name="month_medium_august">Aug</string>
- <string name="month_medium_september">Sep</string>
- <string name="month_medium_october">Oct</string>
- <string name="month_medium_november">Nov</string>
- <string name="month_medium_december">Dec</string>
-
- <string name="month_shortest_january">J</string>
- <string name="month_shortest_february">F</string>
- <string name="month_shortest_march">M</string>
- <string name="month_shortest_april">A</string>
- <string name="month_shortest_may">M</string>
- <string name="month_shortest_june">J</string>
- <string name="month_shortest_july">J</string>
- <string name="month_shortest_august">A</string>
- <string name="month_shortest_september">S</string>
- <string name="month_shortest_october">O</string>
- <string name="month_shortest_november">N</string>
- <string name="month_shortest_december">D</string>
-
- <string name="day_of_week_long_sunday">Sunday</string>
- <string name="day_of_week_long_monday">Monday</string>
- <string name="day_of_week_long_tuesday">Tuesday</string>
- <string name="day_of_week_long_wednesday">Wednesday</string>
- <string name="day_of_week_long_thursday">Thursday</string>
- <string name="day_of_week_long_friday">Friday</string>
- <string name="day_of_week_long_saturday">Saturday</string>
-
- <string name="day_of_week_medium_sunday">Sun</string>
- <string name="day_of_week_medium_monday">Mon</string>
- <string name="day_of_week_medium_tuesday">Tue</string>
- <string name="day_of_week_medium_wednesday">Wed</string>
- <string name="day_of_week_medium_thursday">Thu</string>
- <string name="day_of_week_medium_friday">Fri</string>
- <string name="day_of_week_medium_saturday">Sat</string>
-
- <string name="day_of_week_short_sunday">Su</string>
- <string name="day_of_week_short_monday">Mo</string>
- <string name="day_of_week_short_tuesday">Tu</string>
- <string name="day_of_week_short_wednesday">We</string>
- <string name="day_of_week_short_thursday">Th</string>
- <string name="day_of_week_short_friday">Fr</string>
- <string name="day_of_week_short_saturday">Sa</string>
-
- <string name="day_of_week_shortest_sunday">S</string>
- <string name="day_of_week_shortest_monday">M</string>
- <string name="day_of_week_shortest_tuesday">T</string>
- <string name="day_of_week_shortest_wednesday">W</string>
- <string name="day_of_week_shortest_thursday">T</string>
- <string name="day_of_week_shortest_friday">F</string>
- <string name="day_of_week_shortest_saturday">S</string>
-
- <string name="am">am</string>
- <string name="pm">pm</string>
- <string name="yesterday">Yesterday</string>
- <string name="today">Today</string>
- <string name="tomorrow">Tomorrow</string>
-
<string name="hour_minute_24">%H:%M</string>
<string name="hour_minute_ampm">%-l:%M%p</string>
<string name="hour_minute_cap_ampm">%-l:%M%^p</string>
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index 505f3a4..adeced7 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -353,7 +353,6 @@
<java-symbol type="string" name="activitychooserview_choose_application" />
<java-symbol type="string" name="alternate_eri_file" />
<java-symbol type="string" name="alwaysUse" />
- <java-symbol type="string" name="am" />
<java-symbol type="string" name="autofill_address_line_1_label_re" />
<java-symbol type="string" name="autofill_address_line_1_re" />
<java-symbol type="string" name="autofill_address_line_2_re" />
@@ -443,34 +442,6 @@
<java-symbol type="string" name="date_time" />
<java-symbol type="string" name="date_time_set" />
<java-symbol type="string" name="date_time_done" />
- <java-symbol type="string" name="day_of_week_long_friday" />
- <java-symbol type="string" name="day_of_week_long_monday" />
- <java-symbol type="string" name="day_of_week_long_saturday" />
- <java-symbol type="string" name="day_of_week_long_sunday" />
- <java-symbol type="string" name="day_of_week_long_thursday" />
- <java-symbol type="string" name="day_of_week_long_tuesday" />
- <java-symbol type="string" name="day_of_week_long_wednesday" />
- <java-symbol type="string" name="day_of_week_medium_friday" />
- <java-symbol type="string" name="day_of_week_medium_monday" />
- <java-symbol type="string" name="day_of_week_medium_saturday" />
- <java-symbol type="string" name="day_of_week_medium_sunday" />
- <java-symbol type="string" name="day_of_week_medium_thursday" />
- <java-symbol type="string" name="day_of_week_medium_tuesday" />
- <java-symbol type="string" name="day_of_week_medium_wednesday" />
- <java-symbol type="string" name="day_of_week_short_friday" />
- <java-symbol type="string" name="day_of_week_short_monday" />
- <java-symbol type="string" name="day_of_week_short_saturday" />
- <java-symbol type="string" name="day_of_week_short_sunday" />
- <java-symbol type="string" name="day_of_week_short_thursday" />
- <java-symbol type="string" name="day_of_week_short_tuesday" />
- <java-symbol type="string" name="day_of_week_short_wednesday" />
- <java-symbol type="string" name="day_of_week_shortest_friday" />
- <java-symbol type="string" name="day_of_week_shortest_monday" />
- <java-symbol type="string" name="day_of_week_shortest_saturday" />
- <java-symbol type="string" name="day_of_week_shortest_sunday" />
- <java-symbol type="string" name="day_of_week_shortest_thursday" />
- <java-symbol type="string" name="day_of_week_shortest_tuesday" />
- <java-symbol type="string" name="day_of_week_shortest_wednesday" />
<java-symbol type="string" name="db_default_journal_mode" />
<java-symbol type="string" name="db_default_sync_mode" />
<java-symbol type="string" name="db_wal_sync_mode" />
@@ -589,54 +560,6 @@
<java-symbol type="string" name="month" />
<java-symbol type="string" name="month_day" />
<java-symbol type="string" name="month_day_year" />
- <java-symbol type="string" name="month_long_april" />
- <java-symbol type="string" name="month_long_august" />
- <java-symbol type="string" name="month_long_december" />
- <java-symbol type="string" name="month_long_february" />
- <java-symbol type="string" name="month_long_january" />
- <java-symbol type="string" name="month_long_july" />
- <java-symbol type="string" name="month_long_june" />
- <java-symbol type="string" name="month_long_march" />
- <java-symbol type="string" name="month_long_may" />
- <java-symbol type="string" name="month_long_november" />
- <java-symbol type="string" name="month_long_october" />
- <java-symbol type="string" name="month_long_september" />
- <java-symbol type="string" name="month_long_standalone_april" />
- <java-symbol type="string" name="month_long_standalone_august" />
- <java-symbol type="string" name="month_long_standalone_december" />
- <java-symbol type="string" name="month_long_standalone_february" />
- <java-symbol type="string" name="month_long_standalone_january" />
- <java-symbol type="string" name="month_long_standalone_july" />
- <java-symbol type="string" name="month_long_standalone_june" />
- <java-symbol type="string" name="month_long_standalone_march" />
- <java-symbol type="string" name="month_long_standalone_may" />
- <java-symbol type="string" name="month_long_standalone_november" />
- <java-symbol type="string" name="month_long_standalone_october" />
- <java-symbol type="string" name="month_long_standalone_september" />
- <java-symbol type="string" name="month_medium_april" />
- <java-symbol type="string" name="month_medium_august" />
- <java-symbol type="string" name="month_medium_december" />
- <java-symbol type="string" name="month_medium_february" />
- <java-symbol type="string" name="month_medium_january" />
- <java-symbol type="string" name="month_medium_july" />
- <java-symbol type="string" name="month_medium_june" />
- <java-symbol type="string" name="month_medium_march" />
- <java-symbol type="string" name="month_medium_may" />
- <java-symbol type="string" name="month_medium_november" />
- <java-symbol type="string" name="month_medium_october" />
- <java-symbol type="string" name="month_medium_september" />
- <java-symbol type="string" name="month_shortest_april" />
- <java-symbol type="string" name="month_shortest_august" />
- <java-symbol type="string" name="month_shortest_december" />
- <java-symbol type="string" name="month_shortest_february" />
- <java-symbol type="string" name="month_shortest_january" />
- <java-symbol type="string" name="month_shortest_july" />
- <java-symbol type="string" name="month_shortest_june" />
- <java-symbol type="string" name="month_shortest_march" />
- <java-symbol type="string" name="month_shortest_may" />
- <java-symbol type="string" name="month_shortest_november" />
- <java-symbol type="string" name="month_shortest_october" />
- <java-symbol type="string" name="month_shortest_september" />
<java-symbol type="string" name="month_year" />
<java-symbol type="string" name="more_item_label" />
<java-symbol type="string" name="needPuk" />
@@ -692,7 +615,6 @@
<java-symbol type="string" name="phoneTypeWork" />
<java-symbol type="string" name="phoneTypeWorkMobile" />
<java-symbol type="string" name="phoneTypeWorkPager" />
- <java-symbol type="string" name="pm" />
<java-symbol type="string" name="policydesc_disableCamera" />
<java-symbol type="string" name="policydesc_encryptedStorage" />
<java-symbol type="string" name="policydesc_expirePassword" />
@@ -845,8 +767,6 @@
<java-symbol type="string" name="time_picker_separator" />
<java-symbol type="string" name="time_wday" />
<java-symbol type="string" name="time_wday_date" />
- <java-symbol type="string" name="today" />
- <java-symbol type="string" name="tomorrow" />
<java-symbol type="string" name="twelve_hour_time_format" />
<java-symbol type="string" name="twenty_four_hour_time_format" />
<java-symbol type="string" name="upload_file" />
@@ -879,7 +799,6 @@
<java-symbol type="string" name="wifi_tether_configure_ssid_default" />
<java-symbol type="string" name="wifi_watchdog_network_disabled" />
<java-symbol type="string" name="wifi_watchdog_network_disabled_detailed" />
- <java-symbol type="string" name="yesterday" />
<java-symbol type="string" name="imei" />
<java-symbol type="string" name="meid" />
<java-symbol type="string" name="granularity_label_character" />
diff --git a/core/tests/coretests/AndroidManifest.xml b/core/tests/coretests/AndroidManifest.xml
index dcd1bab..41f8536 100644
--- a/core/tests/coretests/AndroidManifest.xml
+++ b/core/tests/coretests/AndroidManifest.xml
@@ -69,6 +69,10 @@
<uses-permission android:name="com.google.android.googleapps.permission.GOOGLE_AUTH" />
<uses-permission android:name="com.google.android.googleapps.permission.GOOGLE_AUTH.ALL_SERVICES" />
+ <uses-permission android:name="android.permission.MANAGE_USERS" />
+ <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS" />
+ <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
+
<uses-permission android:name="android.permission.RECEIVE_SMS"/>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
diff --git a/core/tests/coretests/src/android/content/pm/VerificationParamsTest.java b/core/tests/coretests/src/android/content/pm/VerificationParamsTest.java
index b814e2d..105bcba 100644
--- a/core/tests/coretests/src/android/content/pm/VerificationParamsTest.java
+++ b/core/tests/coretests/src/android/content/pm/VerificationParamsTest.java
@@ -34,6 +34,7 @@
private final static String ORIGINATING_URI_STRING = "http://originating.uri/path";
private final static String REFERRER_STRING = "http://referrer.uri/path";
private final static byte[] DIGEST_BYTES = "fake digest".getBytes();
+ private final static int INSTALLER_UID = 42;
private final static Uri VERIFICATION_URI = Uri.parse(VERIFICATION_URI_STRING);
private final static Uri ORIGINATING_URI = Uri.parse(ORIGINATING_URI_STRING);
@@ -115,6 +116,18 @@
assertFalse(params1.equals(params2));
}
+ public void testEquals_InstallerUid_Failure() throws Exception {
+ VerificationParams params1 = new VerificationParams(VERIFICATION_URI, ORIGINATING_URI,
+ REFERRER, MANIFEST_DIGEST);
+
+ VerificationParams params2 = new VerificationParams(
+ Uri.parse(VERIFICATION_URI_STRING), Uri.parse(ORIGINATING_URI_STRING),
+ Uri.parse(REFERRER_STRING), new ManifestDigest(DIGEST_BYTES));
+ params2.setInstallerUid(INSTALLER_UID);
+
+ assertFalse(params1.equals(params2));
+ }
+
public void testHashCode_Success() throws Exception {
VerificationParams params1 = new VerificationParams(VERIFICATION_URI, ORIGINATING_URI,
REFERRER, MANIFEST_DIGEST);
@@ -168,4 +181,16 @@
assertFalse(params1.hashCode() == params2.hashCode());
}
+
+ public void testHashCode_InstallerUid_Failure() throws Exception {
+ VerificationParams params1 = new VerificationParams(VERIFICATION_URI, ORIGINATING_URI,
+ REFERRER, MANIFEST_DIGEST);
+
+ VerificationParams params2 = new VerificationParams(
+ Uri.parse(VERIFICATION_URI_STRING), Uri.parse(ORIGINATING_URI_STRING),
+ Uri.parse(REFERRER_STRING), new ManifestDigest("a different digest".getBytes()));
+ params2.setInstallerUid(INSTALLER_UID);
+
+ assertFalse(params1.hashCode() == params2.hashCode());
+ }
}
diff --git a/core/tests/coretests/src/android/provider/SettingsProviderTest.java b/core/tests/coretests/src/android/provider/SettingsProviderTest.java
index 3e96dc4..6edd2dc 100644
--- a/core/tests/coretests/src/android/provider/SettingsProviderTest.java
+++ b/core/tests/coretests/src/android/provider/SettingsProviderTest.java
@@ -19,11 +19,15 @@
import android.content.ContentResolver;
import android.content.ContentUris;
import android.content.ContentValues;
+import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
+import android.content.pm.UserInfo;
import android.database.Cursor;
import android.net.Uri;
+import android.os.UserHandle;
+import android.os.UserManager;
import android.provider.Settings;
import android.test.AndroidTestCase;
import android.test.suitebuilder.annotation.MediumTest;
@@ -197,6 +201,53 @@
Settings.Secure.getString(r, Settings.Secure.LOCATION_PROVIDERS_ALLOWED));
}
+ private boolean findUser(UserManager um, int userHandle) {
+ for (UserInfo user : um.getUsers()) {
+ if (user.id == userHandle) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ @MediumTest
+ public void testPerUserSettings() {
+ UserManager um = (UserManager) getContext().getSystemService(Context.USER_SERVICE);
+ ContentResolver r = getContext().getContentResolver();
+
+ // Make sure there's an owner
+ assertTrue(findUser(um, UserHandle.USER_OWNER));
+
+ // create a new user to use for testing
+ UserInfo user = um.createUser("TestUser1", UserInfo.FLAG_GUEST);
+ assertTrue(user != null);
+
+ try {
+ // Write some settings for that user as well as the current user
+ final String TEST_KEY = "test_setting";
+ final int SELF_VALUE = 40;
+ final int OTHER_VALUE = 27;
+
+ Settings.System.putInt(r, TEST_KEY, SELF_VALUE);
+ Settings.System.putIntForUser(r, TEST_KEY, OTHER_VALUE, user.id);
+
+ // Verify that they read back as intended
+ int myValue = Settings.System.getInt(r, TEST_KEY, 0);
+ int otherValue = Settings.System.getIntForUser(r, TEST_KEY, 0, user.id);
+ assertTrue("Running as user " + UserHandle.myUserId()
+ + " and reading/writing as user " + user.id
+ + ", expected to read " + SELF_VALUE + " but got " + myValue,
+ myValue == SELF_VALUE);
+ assertTrue("Running as user " + UserHandle.myUserId()
+ + " and reading/writing as user " + user.id
+ + ", expected to read " + OTHER_VALUE + " but got " + otherValue,
+ otherValue == OTHER_VALUE);
+ } finally {
+ // Tidy up
+ um.removeUser(user.id);
+ }
+ }
+
@SmallTest
public void testSettings() {
assertCanBeHandled(new Intent(Settings.ACTION_ACCESSIBILITY_SETTINGS));
diff --git a/keystore/java/android/security/AndroidKeyPairGeneratorSpec.java b/keystore/java/android/security/AndroidKeyPairGeneratorSpec.java
index 311359c..79a7630 100644
--- a/keystore/java/android/security/AndroidKeyPairGeneratorSpec.java
+++ b/keystore/java/android/security/AndroidKeyPairGeneratorSpec.java
@@ -32,6 +32,7 @@
* generator that works with
* <a href="{@docRoot}guide/topics/security/keystore.html">Android KeyStore
* facility</a>.
+ * @hide
*/
public class AndroidKeyPairGeneratorSpec implements AlgorithmParameterSpec {
private final String mKeystoreAlias;
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
index 4ddebac..8a847e1 100644
--- a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
+++ b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
@@ -1803,17 +1803,9 @@
stmt = db.compileStatement("INSERT OR IGNORE INTO secure(name,value)"
+ " VALUES(?,?);");
- loadBooleanSetting(stmt, Settings.Secure.PACKAGE_VERIFIER_ENABLE,
- R.bool.def_package_verifier_enable);
-
loadStringSetting(stmt, Settings.Secure.LOCATION_PROVIDERS_ALLOWED,
R.string.def_location_providers_allowed);
- loadBooleanSetting(stmt, Settings.Secure.WIFI_ON,
- R.bool.def_wifi_on);
- loadBooleanSetting(stmt, Settings.Secure.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON,
- R.bool.def_networks_available_notification_on);
-
String wifiWatchList = SystemProperties.get("ro.com.android.wifi-watchlist");
if (!TextUtils.isEmpty(wifiWatchList)) {
loadSetting(stmt, Settings.Secure.WIFI_WATCHDOG_WATCH_LIST, wifiWatchList);
@@ -1943,6 +1935,15 @@
R.integer.def_wifi_sleep_policy);
// --- Previously in 'secure'
+ loadBooleanSetting(stmt, Settings.Global.PACKAGE_VERIFIER_ENABLE,
+ R.bool.def_package_verifier_enable);
+
+ loadBooleanSetting(stmt, Settings.Global.WIFI_ON,
+ R.bool.def_wifi_on);
+
+ loadBooleanSetting(stmt, Settings.Global.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON,
+ R.bool.def_networks_available_notification_on);
+
loadBooleanSetting(stmt, Settings.Global.BLUETOOTH_ON,
R.bool.def_bluetooth_on);
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
index e1a5b52..7cc5dec 100644
--- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
+++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
@@ -87,6 +87,9 @@
private static final SparseArray<AtomicInteger> sKnownMutationsInFlight
= new SparseArray<AtomicInteger>();
+ // Each defined user has their own settings
+ protected final SparseArray<DatabaseHelper> mOpenHelpers = new SparseArray<DatabaseHelper>();
+
// Over this size we don't reject loading or saving settings but
// we do consider them broken/malicious and don't keep them in
// memory at least:
@@ -98,9 +101,6 @@
// want to cache the existence of a key, but not store its value.
private static final Bundle TOO_LARGE_TO_CACHE_MARKER = Bundle.forPair("_dummy", null);
- // Each defined user has their own settings
- protected final SparseArray<DatabaseHelper> mOpenHelpers = new SparseArray<DatabaseHelper>();
- //protected DatabaseHelper mOpenHelper;
private UserManager mUserManager;
private BackupManager mBackupManager;
@@ -411,32 +411,29 @@
mBackupManager = new BackupManager(getContext());
mUserManager = (UserManager) getContext().getSystemService(Context.USER_SERVICE);
- synchronized (this) {
- establishDbTrackingLocked(UserHandle.USER_OWNER);
+ establishDbTracking(UserHandle.USER_OWNER);
- IntentFilter userFilter = new IntentFilter();
- userFilter.addAction(Intent.ACTION_USER_REMOVED);
- getContext().registerReceiver(new BroadcastReceiver() {
- @Override
- public void onReceive(Context context, Intent intent) {
- if (intent.getAction().equals(Intent.ACTION_USER_REMOVED)) {
- final int userHandle = intent.getIntExtra(Intent.EXTRA_USER_HANDLE,
- UserHandle.USER_OWNER);
- if (userHandle != UserHandle.USER_OWNER) {
- onUserRemoved(userHandle);
- }
+ IntentFilter userFilter = new IntentFilter();
+ userFilter.addAction(Intent.ACTION_USER_REMOVED);
+ getContext().registerReceiver(new BroadcastReceiver() {
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ if (intent.getAction().equals(Intent.ACTION_USER_REMOVED)) {
+ final int userHandle = intent.getIntExtra(Intent.EXTRA_USER_HANDLE,
+ UserHandle.USER_OWNER);
+ if (userHandle != UserHandle.USER_OWNER) {
+ onUserRemoved(userHandle);
}
}
- }, userFilter);
- }
+ }
+ }, userFilter);
return true;
}
void onUserRemoved(int userHandle) {
- // the db file itself will be deleted automatically, but we need to tear down
- // our caches and other internal bookkeeping. Creation/deletion of a user's
- // settings db infrastructure is synchronized on 'this'
synchronized (this) {
+ // the db file itself will be deleted automatically, but we need to tear down
+ // our caches and other internal bookkeeping.
FileObserver observer = sObserverInstances.get(userHandle);
if (observer != null) {
observer.stopWatching();
@@ -455,25 +452,43 @@
}
}
- private void establishDbTrackingLocked(int userHandle) {
+ private void establishDbTracking(int userHandle) {
if (LOCAL_LOGV) {
Slog.i(TAG, "Installing settings db helper and caches for user " + userHandle);
}
- DatabaseHelper dbhelper = new DatabaseHelper(getContext(), userHandle);
- mOpenHelpers.append(userHandle, dbhelper);
+ DatabaseHelper dbhelper;
- // Watch for external modifications to the database files,
- // keeping our caches in sync.
- sSystemCaches.append(userHandle, new SettingsCache(TABLE_SYSTEM));
- sSecureCaches.append(userHandle, new SettingsCache(TABLE_SECURE));
- sKnownMutationsInFlight.append(userHandle, new AtomicInteger(0));
+ synchronized (this) {
+ dbhelper = mOpenHelpers.get(userHandle);
+ if (dbhelper == null) {
+ dbhelper = new DatabaseHelper(getContext(), userHandle);
+ mOpenHelpers.append(userHandle, dbhelper);
+
+ sSystemCaches.append(userHandle, new SettingsCache(TABLE_SYSTEM));
+ sSecureCaches.append(userHandle, new SettingsCache(TABLE_SECURE));
+ sKnownMutationsInFlight.append(userHandle, new AtomicInteger(0));
+ }
+ }
+
+ // Initialization of the db *outside* the locks. It's possible that racing
+ // threads might wind up here, the second having read the cache entries
+ // written by the first, but that's benign: the SQLite helper implementation
+ // manages concurrency itself, and it's important that we not run the db
+ // initialization with any of our own locks held, so we're fine.
SQLiteDatabase db = dbhelper.getWritableDatabase();
- // Now we can start observing it for changes
- SettingsFileObserver observer = new SettingsFileObserver(userHandle, db.getPath());
- sObserverInstances.append(userHandle, observer);
- observer.startWatching();
+ // Watch for external modifications to the database files,
+ // keeping our caches in sync. We synchronize the observer set
+ // separately, and of course it has to run after the db file
+ // itself was set up by the DatabaseHelper.
+ synchronized (sObserverInstances) {
+ if (sObserverInstances.get(userHandle) == null) {
+ SettingsFileObserver observer = new SettingsFileObserver(userHandle, db.getPath());
+ sObserverInstances.append(userHandle, observer);
+ observer.startWatching();
+ }
+ }
ensureAndroidIdIsSet(userHandle);
@@ -571,19 +586,17 @@
// Lazy-initialize the settings caches for non-primary users
private SettingsCache getOrConstructCache(int callingUser, SparseArray<SettingsCache> which) {
- synchronized (this) {
- getOrEstablishDatabaseLocked(callingUser); // ignore return value; we don't need it
- return which.get(callingUser);
- }
+ getOrEstablishDatabase(callingUser); // ignore return value; we don't need it
+ return which.get(callingUser);
}
// Lazy initialize the database helper and caches for this user, if necessary
- private DatabaseHelper getOrEstablishDatabaseLocked(int callingUser) {
+ private DatabaseHelper getOrEstablishDatabase(int callingUser) {
long oldId = Binder.clearCallingIdentity();
try {
DatabaseHelper dbHelper = mOpenHelpers.get(callingUser);
if (null == dbHelper) {
- establishDbTrackingLocked(callingUser);
+ establishDbTracking(callingUser);
dbHelper = mOpenHelpers.get(callingUser);
}
return dbHelper;
@@ -646,25 +659,21 @@
// Get methods
if (Settings.CALL_METHOD_GET_SYSTEM.equals(method)) {
if (LOCAL_LOGV) Slog.v(TAG, "call(system:" + request + ") for " + callingUser);
- synchronized (this) {
- dbHelper = getOrEstablishDatabaseLocked(callingUser);
- cache = sSystemCaches.get(callingUser);
- }
+ dbHelper = getOrEstablishDatabase(callingUser);
+ cache = sSystemCaches.get(callingUser);
return lookupValue(dbHelper, TABLE_SYSTEM, cache, request);
}
if (Settings.CALL_METHOD_GET_SECURE.equals(method)) {
if (LOCAL_LOGV) Slog.v(TAG, "call(secure:" + request + ") for " + callingUser);
- synchronized (this) {
- dbHelper = getOrEstablishDatabaseLocked(callingUser);
- cache = sSecureCaches.get(callingUser);
- }
+ dbHelper = getOrEstablishDatabase(callingUser);
+ cache = sSecureCaches.get(callingUser);
return lookupValue(dbHelper, TABLE_SECURE, cache, request);
}
if (Settings.CALL_METHOD_GET_GLOBAL.equals(method)) {
if (LOCAL_LOGV) Slog.v(TAG, "call(global:" + request + ") for " + callingUser);
// fast path: owner db & cache are immutable after onCreate() so we need not
// guard on the attempt to look them up
- return lookupValue(getOrEstablishDatabaseLocked(UserHandle.USER_OWNER), TABLE_GLOBAL,
+ return lookupValue(getOrEstablishDatabase(UserHandle.USER_OWNER), TABLE_GLOBAL,
sGlobalCache, request);
}
@@ -678,13 +687,13 @@
values.put(Settings.NameValueTable.VALUE, newValue);
if (Settings.CALL_METHOD_PUT_SYSTEM.equals(method)) {
if (LOCAL_LOGV) Slog.v(TAG, "call_put(system:" + request + "=" + newValue + ") for " + callingUser);
- insert(Settings.System.CONTENT_URI, values);
+ insertForUser(Settings.System.CONTENT_URI, values, callingUser);
} else if (Settings.CALL_METHOD_PUT_SECURE.equals(method)) {
if (LOCAL_LOGV) Slog.v(TAG, "call_put(secure:" + request + "=" + newValue + ") for " + callingUser);
- insert(Settings.Secure.CONTENT_URI, values);
+ insertForUser(Settings.Secure.CONTENT_URI, values, callingUser);
} else if (Settings.CALL_METHOD_PUT_GLOBAL.equals(method)) {
if (LOCAL_LOGV) Slog.v(TAG, "call_put(global:" + request + "=" + newValue + ") for " + callingUser);
- insert(Settings.Global.CONTENT_URI, values);
+ insertForUser(Settings.Global.CONTENT_URI, values, callingUser);
} else {
Slog.w(TAG, "call() with invalid method: " + method);
}
@@ -747,10 +756,8 @@
if (LOCAL_LOGV) Slog.v(TAG, "query(" + url + ") for user " + forUser);
SqlArguments args = new SqlArguments(url, where, whereArgs);
DatabaseHelper dbH;
- synchronized (this) {
- dbH = getOrEstablishDatabaseLocked(
- TABLE_GLOBAL.equals(args.table) ? UserHandle.USER_OWNER : forUser);
- }
+ dbH = getOrEstablishDatabase(
+ TABLE_GLOBAL.equals(args.table) ? UserHandle.USER_OWNER : forUser);
SQLiteDatabase db = dbH.getReadableDatabase();
// The favorites table was moved from this provider to a provider inside Home
@@ -805,11 +812,8 @@
final AtomicInteger mutationCount = sKnownMutationsInFlight.get(callingUser);
mutationCount.incrementAndGet();
- DatabaseHelper dbH;
- synchronized (this) {
- dbH = getOrEstablishDatabaseLocked(
- TABLE_GLOBAL.equals(args.table) ? UserHandle.USER_OWNER : callingUser);
- }
+ DatabaseHelper dbH = getOrEstablishDatabase(
+ TABLE_GLOBAL.equals(args.table) ? UserHandle.USER_OWNER : callingUser);
SQLiteDatabase db = dbH.getWritableDatabase();
db.beginTransaction();
try {
@@ -945,10 +949,7 @@
final AtomicInteger mutationCount = sKnownMutationsInFlight.get(desiredUserHandle);
mutationCount.incrementAndGet();
- DatabaseHelper dbH;
- synchronized (this) {
- dbH = getOrEstablishDatabaseLocked(desiredUserHandle);
- }
+ DatabaseHelper dbH = getOrEstablishDatabase(desiredUserHandle);
SQLiteDatabase db = dbH.getWritableDatabase();
final long rowId = db.insert(args.table, null, initialValues);
mutationCount.decrementAndGet();
@@ -956,7 +957,8 @@
SettingsCache.populate(cache, initialValues); // before we notify
- if (LOCAL_LOGV) Log.v(TAG, args.table + " <- " + initialValues);
+ if (LOCAL_LOGV) Log.v(TAG, args.table + " <- " + initialValues
+ + " for user " + desiredUserHandle);
// Note that we use the original url here, not the potentially-rewritten table name
url = getUriFor(url, initialValues, rowId);
sendNotify(url, desiredUserHandle);
@@ -979,10 +981,7 @@
final AtomicInteger mutationCount = sKnownMutationsInFlight.get(callingUser);
mutationCount.incrementAndGet();
- DatabaseHelper dbH;
- synchronized (this) {
- dbH = getOrEstablishDatabaseLocked(callingUser);
- }
+ DatabaseHelper dbH = getOrEstablishDatabase(callingUser);
SQLiteDatabase db = dbH.getWritableDatabase();
int count = db.delete(args.table, args.where, args.args);
mutationCount.decrementAndGet();
@@ -1014,10 +1013,7 @@
final AtomicInteger mutationCount = sKnownMutationsInFlight.get(callingUser);
mutationCount.incrementAndGet();
- DatabaseHelper dbH;
- synchronized (this) {
- dbH = getOrEstablishDatabaseLocked(callingUser);
- }
+ DatabaseHelper dbH = getOrEstablishDatabase(callingUser);
SQLiteDatabase db = dbH.getWritableDatabase();
int count = db.update(args.table, initialValues, args.where, args.args);
mutationCount.decrementAndGet();
diff --git a/packages/SystemUI/res/layout/quick_settings_tile_rotation_lock.xml b/packages/SystemUI/res/layout/quick_settings_tile_rotation_lock.xml
new file mode 100644
index 0000000..4dbf6a0
--- /dev/null
+++ b/packages/SystemUI/res/layout/quick_settings_tile_rotation_lock.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2012 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.
+-->
+<TextView
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ style="@style/TextAppearance.QuickSettings.TileView"
+ android:id="@+id/rotation_lock_textview"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center"
+ android:gravity="center"
+ android:text="@string/quick_settings_rotation_unlocked_label"
+ />
\ No newline at end of file
diff --git a/packages/SystemUI/res/layout/quick_settings_tile_rssi.xml b/packages/SystemUI/res/layout/quick_settings_tile_rssi.xml
index 3cbefa5..febd8a8 100644
--- a/packages/SystemUI/res/layout/quick_settings_tile_rssi.xml
+++ b/packages/SystemUI/res/layout/quick_settings_tile_rssi.xml
@@ -13,13 +13,38 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<TextView
+<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
- style="@style/TextAppearance.QuickSettings.TileView"
- android:id="@+id/rssi_textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
- android:gravity="center"
- android:text="@string/quick_settings_rssi_label"
- />
\ No newline at end of file
+ android:orientation="vertical">
+ <FrameLayout
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center">
+ <ImageView
+ android:id="@+id/rssi_image"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center"
+ android:paddingBottom="10dp"
+ />
+ <ImageView
+ android:id="@+id/rssi_overlay_image"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center"
+ android:paddingBottom="10dp"
+ />
+ </FrameLayout>
+ <TextView
+ style="@style/TextAppearance.QuickSettings.TileView"
+ android:id="@+id/rssi_textview"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center"
+ android:gravity="center"
+ android:text="@string/quick_settings_rssi_label"
+ />
+</LinearLayout>
\ No newline at end of file
diff --git a/packages/SystemUI/res/values-sw600dp/config.xml b/packages/SystemUI/res/values-sw600dp/config.xml
index c52b6ca..209ad11 100644
--- a/packages/SystemUI/res/values-sw600dp/config.xml
+++ b/packages/SystemUI/res/values-sw600dp/config.xml
@@ -25,4 +25,7 @@
<!-- The number of columns that the top level tiles span in the QuickSettings -->
<integer name="quick_settings_user_time_settings_tile_span">1</integer>
+
+ <!-- Whether rotation lock shows up in quick settings or not -->
+ <bool name="quick_settings_show_rotation_lock">true</bool>
</resources>
diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml
index 734e68c..1edc3fc 100644
--- a/packages/SystemUI/res/values/config.xml
+++ b/packages/SystemUI/res/values/config.xml
@@ -87,5 +87,8 @@
<!-- The number of columns that the top level tiles span in the QuickSettings -->
<integer name="quick_settings_user_time_settings_tile_span">1</integer>
+
+ <!-- Whether rotation lock shows up in quick settings or not -->
+ <bool name="quick_settings_show_rotation_lock">false</bool>
</resources>
diff --git a/packages/SystemUI/res/values/strings.xml b/packages/SystemUI/res/values/strings.xml
index fd1c472..b65b013 100644
--- a/packages/SystemUI/res/values/strings.xml
+++ b/packages/SystemUI/res/values/strings.xml
@@ -411,6 +411,10 @@
<string name="quick_settings_bluetooth_label">Bluetooth</string>
<!-- QuickSettings: Brightness [CHAR LIMIT=NONE] -->
<string name="quick_settings_brightness_label">Brightness</string>
+ <!-- QuickSettings: Rotation Unlocked [CHAR LIMIT=NONE] -->
+ <string name="quick_settings_rotation_unlocked_label">Auto Rotate</string>
+ <!-- QuickSettings: Rotation Locked [CHAR LIMIT=NONE] -->
+ <string name="quick_settings_rotation_locked_label">Rotation Locked</string>
<!-- QuickSettings: IME [CHAR LIMIT=NONE] -->
<string name="quick_settings_ime_label">Input Method</string>
<!-- QuickSettings: Location [CHAR LIMIT=NONE] -->
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java
index 91f29a2..1c244d4 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelView.java
@@ -356,6 +356,14 @@
return mExpandedFraction;
}
+ public boolean isFullyExpanded() {
+ return mExpandedHeight == getFullHeight();
+ }
+
+ public boolean isFullyCollapsed() {
+ return mExpandedHeight == 0;
+ }
+
public void setBar(PanelBar panelBar) {
mBar = panelBar;
}
@@ -371,13 +379,13 @@
public void collapse() {
// TODO: abort animation or ongoing touch
- if (mExpandedHeight > 0) {
+ if (!isFullyCollapsed()) {
fling(-mSelfCollapseVelocityPx, /*always=*/ true);
}
}
public void expand() {
- if (mExpandedHeight < getFullHeight()) {
+ if (!isFullyExpanded()) {
fling (mSelfExpandVelocityPx, /*always=*/ true);
}
}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettings.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettings.java
index 38fd790..3a10155 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettings.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettings.java
@@ -29,6 +29,7 @@
import android.content.res.Resources;
import android.database.Cursor;
import android.graphics.drawable.Drawable;
+import android.graphics.drawable.LayerDrawable;
import android.graphics.drawable.LevelListDrawable;
import android.hardware.display.DisplayManager;
import android.hardware.display.WifiDisplay;
@@ -48,7 +49,9 @@
import android.widget.ListView;
import android.widget.TextView;
+import com.android.internal.view.RotationPolicy;
import com.android.systemui.R;
+import com.android.systemui.statusbar.phone.QuickSettingsModel.RSSIState;
import com.android.systemui.statusbar.phone.QuickSettingsModel.State;
import com.android.systemui.statusbar.phone.QuickSettingsModel.UserState;
import com.android.systemui.statusbar.policy.BatteryController;
@@ -89,6 +92,14 @@
private final ArrayList<QuickSettingsTileView> mDynamicSpannedTiles =
new ArrayList<QuickSettingsTileView>();
+ private final RotationPolicy.RotationPolicyListener mRotationPolicyListener =
+ new RotationPolicy.RotationPolicyListener() {
+ @Override
+ public void onChange() {
+ mModel.onRotationLockChanged();
+ }
+ };
+
public QuickSettings(Context context, QuickSettingsContainerView container) {
mDisplayManager = (DisplayManager) context.getSystemService(Context.DISPLAY_SERVICE);
mContext = context;
@@ -125,6 +136,7 @@
bluetoothController.addStateChangedCallback(mModel);
batteryController.addStateChangedCallback(mModel);
locationController.addStateChangedCallback(mModel);
+ RotationPolicy.registerRotationPolicyListener(mContext, mRotationPolicyListener);
}
private void queryForUserInformation() {
@@ -285,14 +297,45 @@
mModel.addRSSITile(rssiTile, new QuickSettingsModel.RefreshCallback() {
@Override
public void refreshView(QuickSettingsTileView view, State state) {
+ RSSIState rssiState = (RSSIState) state;
+ ImageView iv = (ImageView) view.findViewById(R.id.rssi_image);
+ ImageView iov = (ImageView) view.findViewById(R.id.rssi_overlay_image);
TextView tv = (TextView) view.findViewById(R.id.rssi_textview);
- tv.setCompoundDrawablesRelativeWithIntrinsicBounds(0, state.iconId, 0, 0);
+ iv.setImageResource(rssiState.signalIconId);
+ if (rssiState.dataTypeIconId > 0) {
+ iov.setImageResource(rssiState.dataTypeIconId);
+ } else {
+ iov.setImageDrawable(null);
+ }
tv.setText(state.label);
}
});
parent.addView(rssiTile);
}
+ // Rotation Lock
+ if (mContext.getResources().getBoolean(R.bool.quick_settings_show_rotation_lock)) {
+ QuickSettingsTileView rotationLockTile = (QuickSettingsTileView)
+ inflater.inflate(R.layout.quick_settings_tile, parent, false);
+ rotationLockTile.setContent(R.layout.quick_settings_tile_rotation_lock, inflater);
+ rotationLockTile.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ boolean locked = RotationPolicy.isRotationLocked(mContext);
+ RotationPolicy.setRotationLock(mContext, !locked);
+ }
+ });
+ mModel.addRotationLockTile(rotationLockTile, new QuickSettingsModel.RefreshCallback() {
+ @Override
+ public void refreshView(QuickSettingsTileView view, State state) {
+ TextView tv = (TextView) view.findViewById(R.id.rotation_lock_textview);
+ tv.setCompoundDrawablesRelativeWithIntrinsicBounds(0, state.iconId, 0, 0);
+ tv.setText(state.label);
+ }
+ });
+ parent.addView(rotationLockTile);
+ }
+
// Battery
QuickSettingsTileView batteryTile = (QuickSettingsTileView)
inflater.inflate(R.layout.quick_settings_tile, parent, false);
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettingsModel.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettingsModel.java
index a6117be..f239110 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettingsModel.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettingsModel.java
@@ -36,6 +36,7 @@
import android.view.inputmethod.InputMethodManager;
import android.view.inputmethod.InputMethodSubtype;
+import com.android.internal.view.RotationPolicy;
import com.android.systemui.R;
import com.android.systemui.statusbar.policy.BatteryController.BatteryStateChangeCallback;
import com.android.systemui.statusbar.policy.LocationController.LocationGpsStateChangeCallback;
@@ -59,6 +60,10 @@
int batteryLevel;
boolean pluggedIn;
}
+ static class RSSIState extends State {
+ int signalIconId;
+ int dataTypeIconId;
+ }
static class UserState extends State {
Drawable avatar;
}
@@ -123,7 +128,7 @@
private QuickSettingsTileView mRSSITile;
private RefreshCallback mRSSICallback;
- private State mRSSIState = new State();
+ private RSSIState mRSSIState = new RSSIState();
private QuickSettingsTileView mBluetoothTile;
private RefreshCallback mBluetoothCallback;
@@ -141,6 +146,10 @@
private RefreshCallback mImeCallback;
private State mImeState = new State();
+ private QuickSettingsTileView mRotationLockTile;
+ private RefreshCallback mRotationLockCallback;
+ private State mRotationLockState = new State();
+
public QuickSettingsModel(Context context) {
mContext = context;
mHandler = new Handler();
@@ -253,13 +262,16 @@
// NetworkSignalChanged callback
@Override
public void onMobileDataSignalChanged(boolean enabled, int mobileSignalIconId,
- String enabledDesc) {
+ int dataTypeIconId, String enabledDesc) {
if (deviceSupportsTelephony()) {
// TODO: If view is in awaiting state, disable
Resources r = mContext.getResources();
- mRSSIState.iconId = enabled && (mobileSignalIconId > 0)
+ mRSSIState.signalIconId = enabled && (mobileSignalIconId > 0)
? mobileSignalIconId
: R.drawable.ic_qs_signal_no_signal;
+ mRSSIState.dataTypeIconId = enabled && (dataTypeIconId > 0)
+ ? dataTypeIconId
+ : 0;
mRSSIState.label = enabled
? enabledDesc
: r.getString(R.string.quick_settings_rssi_emergency_only);
@@ -372,4 +384,26 @@
return null;
}
+ // Rotation lock
+ void addRotationLockTile(QuickSettingsTileView view, RefreshCallback cb) {
+ mRotationLockTile = view;
+ mRotationLockCallback = cb;
+ onRotationLockChanged();
+ }
+ void onRotationLockChanged() {
+ boolean locked = RotationPolicy.isRotationLocked(mContext);
+ mRotationLockState.enabled = locked;
+ mRotationLockState.iconId = locked
+ ? R.drawable.ic_qs_rotation_locked
+ : R.drawable.ic_qs_auto_rotate;
+ mRotationLockState.label = locked
+ ? mContext.getString(R.string.quick_settings_rotation_locked_label)
+ : mContext.getString(R.string.quick_settings_rotation_unlocked_label);
+
+ // may be called before addRotationLockTile due to RotationPolicyListener in QuickSettings
+ if (mRotationLockTile != null && mRotationLockCallback != null) {
+ mRotationLockCallback.refreshView(mRotationLockTile, mRotationLockState);
+ }
+ }
+
}
\ No newline at end of file
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowView.java
index 2d4c9ee..e0b7fe6 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowView.java
@@ -21,6 +21,7 @@
import android.util.Log;
import android.view.KeyEvent;
import android.view.MotionEvent;
+import android.view.View;
import android.widget.FrameLayout;
import android.widget.ScrollView;
import android.widget.TextSwitcher;
@@ -36,6 +37,7 @@
private ExpandHelper mExpandHelper;
private NotificationRowLayout latestItems;
+ private NotificationPanelView mNotificationPanel;
PhoneStatusBar mService;
@@ -49,6 +51,7 @@
super.onAttachedToWindow();
latestItems = (NotificationRowLayout) findViewById(R.id.latestItems);
ScrollView scroller = (ScrollView) findViewById(R.id.scroll);
+ mNotificationPanel = (NotificationPanelView) findViewById(R.id.notification_panel);
int minHeight = getResources().getDimensionPixelSize(R.dimen.notification_row_min_height);
int maxHeight = getResources().getDimensionPixelSize(R.dimen.notification_row_max_height);
mExpandHelper = new ExpandHelper(mContext, latestItems, minHeight, maxHeight);
@@ -71,8 +74,13 @@
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
- boolean intercept = mExpandHelper.onInterceptTouchEvent(ev) ||
- super.onInterceptTouchEvent(ev);
+ boolean intercept = false;
+ if (mNotificationPanel.isFullyExpanded()) {
+ intercept = mExpandHelper.onInterceptTouchEvent(ev);
+ }
+ if (!intercept) {
+ super.onInterceptTouchEvent(ev);
+ }
if (intercept) {
MotionEvent cancellation = MotionEvent.obtain(ev);
cancellation.setAction(MotionEvent.ACTION_CANCEL);
@@ -84,8 +92,13 @@
@Override
public boolean onTouchEvent(MotionEvent ev) {
- boolean handled = mExpandHelper.onTouchEvent(ev) ||
- super.onTouchEvent(ev);
+ boolean handled = false;
+ if (mNotificationPanel.isFullyExpanded()) {
+ handled = mExpandHelper.onTouchEvent(ev);
+ }
+ if (!handled) {
+ handled = super.onTouchEvent(ev);
+ }
return handled;
}
}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java
index 0bdc59b..556ae59 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java
@@ -16,11 +16,6 @@
package com.android.systemui.statusbar.policy;
-import java.io.FileDescriptor;
-import java.io.PrintWriter;
-import java.util.ArrayList;
-import java.util.List;
-
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
@@ -37,9 +32,7 @@
import android.os.Message;
import android.os.Messenger;
import android.os.RemoteException;
-import android.os.SystemProperties;
import android.provider.Settings;
-import android.provider.Telephony;
import android.telephony.PhoneStateListener;
import android.telephony.ServiceState;
import android.telephony.SignalStrength;
@@ -50,15 +43,18 @@
import android.widget.TextView;
import com.android.internal.app.IBatteryStats;
-import com.android.internal.telephony.IccCard;
import com.android.internal.telephony.IccCardConstants;
import com.android.internal.telephony.TelephonyIntents;
import com.android.internal.telephony.cdma.EriInfo;
-import com.android.server.am.BatteryStatsService;
import com.android.internal.util.AsyncChannel;
-
+import com.android.server.am.BatteryStatsService;
import com.android.systemui.R;
+import java.io.FileDescriptor;
+import java.io.PrintWriter;
+import java.util.ArrayList;
+import java.util.List;
+
public class NetworkController extends BroadcastReceiver {
// debug
static final String TAG = "StatusBar.NetworkController";
@@ -85,6 +81,7 @@
int mDataDirectionIconId; // data + data direction on phones
int mDataSignalIconId;
int mDataTypeIconId;
+ int mQSDataTypeIconId;
int mAirplaneIconId;
boolean mDataActive;
int mMobileActivityIconId; // overlay arrows for data direction
@@ -178,7 +175,8 @@
public interface NetworkSignalChangedCallback {
void onWifiSignalChanged(boolean enabled, int wifiSignalIconId, String description);
- void onMobileDataSignalChanged(boolean enabled, int mobileSignalIconId, String description);
+ void onMobileDataSignalChanged(boolean enabled, int mobileSignalIconId, int dataTypeIconId,
+ String description);
void onAirplaneModeChanged(boolean enabled);
}
@@ -352,15 +350,16 @@
cb.onWifiSignalChanged(wifiEnabled, mQSWifiIconId, wifiDesc);
if (isEmergencyOnly()) {
- cb.onMobileDataSignalChanged(false, mQSPhoneSignalIconId, null);
+ cb.onMobileDataSignalChanged(false, mQSPhoneSignalIconId, mQSDataTypeIconId, null);
} else {
if (mIsWimaxEnabled && mWimaxConnected) {
- // wimax is special
- cb.onMobileDataSignalChanged(true, mQSPhoneSignalIconId, mNetworkName);
- } else {
- // normal mobile data
- cb.onMobileDataSignalChanged(mHasMobileDataFeature, mQSPhoneSignalIconId,
+ // Wimax is special
+ cb.onMobileDataSignalChanged(true, mQSPhoneSignalIconId, mQSDataTypeIconId,
mNetworkName);
+ } else {
+ // Normal mobile data
+ cb.onMobileDataSignalChanged(mHasMobileDataFeature, mQSPhoneSignalIconId,
+ mQSDataTypeIconId, mNetworkName);
}
}
cb.onAirplaneModeChanged(mAirplaneMode);
@@ -570,6 +569,7 @@
// wimax is a special 4g network not handled by telephony
mDataIconList = TelephonyIcons.DATA_4G[mInetCondition];
mDataTypeIconId = R.drawable.stat_sys_data_connected_4g;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_4g;
mContentDescriptionDataType = mContext.getString(
R.string.accessibility_data_connection_4g);
} else {
@@ -578,6 +578,7 @@
if (!mShowAtLeastThreeGees) {
mDataIconList = TelephonyIcons.DATA_G[mInetCondition];
mDataTypeIconId = 0;
+ mQSDataTypeIconId = 0;
mContentDescriptionDataType = mContext.getString(
R.string.accessibility_data_connection_gprs);
break;
@@ -588,6 +589,7 @@
if (!mShowAtLeastThreeGees) {
mDataIconList = TelephonyIcons.DATA_E[mInetCondition];
mDataTypeIconId = R.drawable.stat_sys_data_connected_e;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_e;
mContentDescriptionDataType = mContext.getString(
R.string.accessibility_data_connection_edge);
break;
@@ -597,6 +599,7 @@
case TelephonyManager.NETWORK_TYPE_UMTS:
mDataIconList = TelephonyIcons.DATA_3G[mInetCondition];
mDataTypeIconId = R.drawable.stat_sys_data_connected_3g;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_3g;
mContentDescriptionDataType = mContext.getString(
R.string.accessibility_data_connection_3g);
break;
@@ -607,11 +610,13 @@
if (mHspaDataDistinguishable) {
mDataIconList = TelephonyIcons.DATA_H[mInetCondition];
mDataTypeIconId = R.drawable.stat_sys_data_connected_h;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_h;
mContentDescriptionDataType = mContext.getString(
R.string.accessibility_data_connection_3_5g);
} else {
mDataIconList = TelephonyIcons.DATA_3G[mInetCondition];
mDataTypeIconId = R.drawable.stat_sys_data_connected_3g;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_3g;
mContentDescriptionDataType = mContext.getString(
R.string.accessibility_data_connection_3g);
}
@@ -621,6 +626,7 @@
// display 1xRTT for IS95A/B
mDataIconList = TelephonyIcons.DATA_1X[mInetCondition];
mDataTypeIconId = R.drawable.stat_sys_data_connected_1x;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_1x;
mContentDescriptionDataType = mContext.getString(
R.string.accessibility_data_connection_cdma);
break;
@@ -631,6 +637,7 @@
if (!mShowAtLeastThreeGees) {
mDataIconList = TelephonyIcons.DATA_1X[mInetCondition];
mDataTypeIconId = R.drawable.stat_sys_data_connected_1x;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_1x;
mContentDescriptionDataType = mContext.getString(
R.string.accessibility_data_connection_cdma);
break;
@@ -643,12 +650,14 @@
case TelephonyManager.NETWORK_TYPE_EHRPD:
mDataIconList = TelephonyIcons.DATA_3G[mInetCondition];
mDataTypeIconId = R.drawable.stat_sys_data_connected_3g;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_3g;
mContentDescriptionDataType = mContext.getString(
R.string.accessibility_data_connection_3g);
break;
case TelephonyManager.NETWORK_TYPE_LTE:
mDataIconList = TelephonyIcons.DATA_4G[mInetCondition];
mDataTypeIconId = R.drawable.stat_sys_data_connected_4g;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_4g;
mContentDescriptionDataType = mContext.getString(
R.string.accessibility_data_connection_4g);
break;
@@ -656,11 +665,13 @@
if (!mShowAtLeastThreeGees) {
mDataIconList = TelephonyIcons.DATA_G[mInetCondition];
mDataTypeIconId = R.drawable.stat_sys_data_connected_g;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_g;
mContentDescriptionDataType = mContext.getString(
R.string.accessibility_data_connection_gprs);
} else {
mDataIconList = TelephonyIcons.DATA_3G[mInetCondition];
mDataTypeIconId = R.drawable.stat_sys_data_connected_3g;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_3g;
mContentDescriptionDataType = mContext.getString(
R.string.accessibility_data_connection_3g);
}
@@ -671,9 +682,11 @@
if (isCdma()) {
if (isCdmaEri()) {
mDataTypeIconId = R.drawable.stat_sys_data_connected_roam;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_r;
}
} else if (mPhone.isNetworkRoaming()) {
mDataTypeIconId = R.drawable.stat_sys_data_connected_roam;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_r;
}
}
@@ -1095,7 +1108,7 @@
mContentDescriptionPhoneSignal = mContext.getString(
R.string.accessibility_airplane_mode);
mAirplaneIconId = R.drawable.stat_sys_signal_flightmode;
- mPhoneSignalIconId = mDataSignalIconId = mDataTypeIconId = 0;
+ mPhoneSignalIconId = mDataSignalIconId = mDataTypeIconId = mQSDataTypeIconId = 0;
mQSPhoneSignalIconId = 0;
// combined values from connected wifi take precedence over airplane mode
@@ -1125,12 +1138,15 @@
? mContentDescriptionDataType : mContentDescriptionWifi;
mDataTypeIconId = 0;
+ mQSDataTypeIconId = 0;
if (isCdma()) {
if (isCdmaEri()) {
mDataTypeIconId = R.drawable.stat_sys_data_connected_roam;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_r;
}
} else if (mPhone.isNetworkRoaming()) {
mDataTypeIconId = R.drawable.stat_sys_data_connected_roam;
+ mQSDataTypeIconId = R.drawable.ic_qs_signal_r;
}
}
@@ -1155,6 +1171,7 @@
+ " mDataDirectionIconId=0x" + Integer.toHexString(mDataDirectionIconId)
+ " mDataSignalIconId=0x" + Integer.toHexString(mDataSignalIconId)
+ " mDataTypeIconId=0x" + Integer.toHexString(mDataTypeIconId)
+ + " mQSDataTypeIconId=0x" + Integer.toHexString(mQSDataTypeIconId)
+ " mWifiIconId=0x" + Integer.toHexString(mWifiIconId)
+ " mQSWifiIconId=0x" + Integer.toHexString(mQSWifiIconId)
+ " mBluetoothTetherIconId=0x" + Integer.toHexString(mBluetoothTetherIconId));
@@ -1386,6 +1403,10 @@
pw.print(Integer.toHexString(mDataTypeIconId));
pw.print("/");
pw.println(getResourceName(mDataTypeIconId));
+ pw.print(" mQSDataTypeIconId=");
+ pw.print(Integer.toHexString(mQSDataTypeIconId));
+ pw.print("/");
+ pw.println(getResourceName(mQSDataTypeIconId));
pw.println(" - wifi ------");
pw.print(" mWifiEnabled=");
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/FaceUnlock.java b/policy/src/com/android/internal/policy/impl/keyguard/FaceUnlock.java
index 5a0a228..a4159d0 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/FaceUnlock.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/FaceUnlock.java
@@ -153,7 +153,8 @@
// This must show before bind to guarantee that Face Unlock has a place to display
show(SERVICE_STARTUP_VIEW_TIMEOUT);
if (!mBoundToService) {
- Log.d(TAG, "Binding to Face Unlock service");
+ Log.d(TAG, "Binding to Face Unlock service for user="
+ + mLockPatternUtils.getCurrentUser());
mContext.bindService(new Intent(IFaceLockInterface.class.getName()),
mConnection,
Context.BIND_AUTO_CREATE,
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java
index 1405260..95f8500 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java
@@ -28,11 +28,11 @@
import android.content.Context;
import android.content.Intent;
import android.content.IntentSender;
-import android.content.SharedPreferences;
import android.content.pm.UserInfo;
import android.content.res.Resources;
import android.graphics.Canvas;
import android.graphics.Rect;
+import android.os.Looper;
import android.os.UserManager;
import android.util.AttributeSet;
import android.util.Log;
@@ -41,8 +41,6 @@
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
-import android.view.ViewGroup;
-import android.view.ViewGroup.LayoutParams;
import android.view.WindowManager;
import android.view.animation.AnimationUtils;
import android.widget.RemoteViews.OnClickHandler;
@@ -61,6 +59,7 @@
// Use this to debug all of keyguard
public static boolean DEBUG;
+ // also referenced in SecuritySettings.java
static final int APPWIDGET_HOST_ID = 0x4B455947;
private static final String KEYGUARD_WIDGET_PREFS = "keyguard_widget_prefs";
@@ -94,8 +93,9 @@
public KeyguardHostView(Context context, AttributeSet attrs) {
super(context, attrs);
mLockPatternUtils = new LockPatternUtils(context);
- mAppWidgetHost = new AppWidgetHost(mContext, APPWIDGET_HOST_ID, mOnClickHandler);
- mSecurityModel = new KeyguardSecurityModel(mContext);
+ mAppWidgetHost = new AppWidgetHost(
+ context, APPWIDGET_HOST_ID, mOnClickHandler, Looper.myLooper());
+ mSecurityModel = new KeyguardSecurityModel(context);
// The following enables the MENU key to work for testing automation
mEnableMenuKey = shouldEnableMenuKey();
@@ -212,7 +212,7 @@
mAppWidgetHost.stopListening();
}
- AppWidgetHost getAppWidgetHost() {
+ private AppWidgetHost getAppWidgetHost() {
return mAppWidgetHost;
}
@@ -674,15 +674,11 @@
return;
}
inflateAndAddUserSelectorWidgetIfNecessary();
- SharedPreferences prefs = mContext.getSharedPreferences(
- KEYGUARD_WIDGET_PREFS, Context.MODE_PRIVATE);
- for (String key : prefs.getAll().keySet()) {
- int appId = prefs.getInt(key, -1);
- if (appId != -1) {
- Log.w(TAG, "populate: adding " + key);
- addWidget(appId);
- } else {
- Log.w(TAG, "populate: can't find " + key);
+
+ final int[] widgets = mLockPatternUtils.getUserDefinedWidgets();
+ for (int i = 0; i < widgets.length; i++) {
+ if (widgets[i] != -1) {
+ addWidget(widgets[i]);
}
}
}
diff --git a/services/java/com/android/server/AppWidgetServiceImpl.java b/services/java/com/android/server/AppWidgetServiceImpl.java
index 95d7623..499c15e 100644
--- a/services/java/com/android/server/AppWidgetServiceImpl.java
+++ b/services/java/com/android/server/AppWidgetServiceImpl.java
@@ -42,6 +42,7 @@
import android.os.Bundle;
import android.os.Environment;
import android.os.IBinder;
+import android.os.Process;
import android.os.RemoteException;
import android.os.SystemClock;
import android.os.UserHandle;
@@ -409,7 +410,7 @@
}
public int allocateAppWidgetId(String packageName, int hostId) {
- int callingUid = enforceCallingUid(packageName);
+ int callingUid = enforceSystemOrCallingUid(packageName);
synchronized (mAppWidgetIds) {
ensureStateLoadedLocked();
int appWidgetId = mNextAppWidgetId++;
@@ -1358,10 +1359,10 @@
com.android.internal.R.styleable.AppWidgetProviderInfo_resizeMode,
AppWidgetProviderInfo.RESIZE_NONE);
info.widgetCategory = sa.getInt(
- com.android.internal.R.styleable.AppWidgetProviderInfo_resizeMode,
+ com.android.internal.R.styleable.AppWidgetProviderInfo_widgetCategory,
AppWidgetProviderInfo.WIDGET_CATEGORY_HOME_SCREEN);
info.widgetFeatures = sa.getInt(
- com.android.internal.R.styleable.AppWidgetProviderInfo_resizeMode,
+ com.android.internal.R.styleable.AppWidgetProviderInfo_widgetFeatures,
AppWidgetProviderInfo.WIDGET_FEATURES_NONE);
sa.recycle();
@@ -1391,6 +1392,15 @@
return pkgInfo.applicationInfo.uid;
}
+ int enforceSystemOrCallingUid(String packageName) throws IllegalArgumentException {
+ int callingUid = Binder.getCallingUid();
+ int uid = Process.myUid();
+ if (UserHandle.getAppId(uid) == Process.SYSTEM_UID || uid == 0) {
+ return callingUid;
+ }
+ return enforceCallingUid(packageName);
+ }
+
int enforceCallingUid(String packageName) throws IllegalArgumentException {
int callingUid = Binder.getCallingUid();
int packageUid;
diff --git a/services/java/com/android/server/ClipboardService.java b/services/java/com/android/server/ClipboardService.java
index 0bf7aad..74ec6e2 100644
--- a/services/java/com/android/server/ClipboardService.java
+++ b/services/java/com/android/server/ClipboardService.java
@@ -17,6 +17,7 @@
package com.android.server;
import android.app.ActivityManagerNative;
+import android.app.AppGlobals;
import android.app.IActivityManager;
import android.content.BroadcastReceiver;
import android.content.ClipData;
@@ -26,6 +27,7 @@
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
+import android.content.pm.IPackageManager;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
@@ -120,7 +122,6 @@
private PerUserClipboard getClipboard(int userId) {
synchronized (mClipboards) {
- Slog.i(TAG, "Got clipboard for user=" + userId);
PerUserClipboard puc = mClipboards.get(userId);
if (puc == null) {
puc = new PerUserClipboard(userId);
@@ -255,15 +256,22 @@
}
private final void addActiveOwnerLocked(int uid, String pkg) {
- PackageInfo pi;
+ final IPackageManager pm = AppGlobals.getPackageManager();
+ final int targetUserHandle = UserHandle.getCallingUserId();
+ final long oldIdentity = Binder.clearCallingIdentity();
try {
- pi = mPm.getPackageInfo(pkg, 0);
+ PackageInfo pi = pm.getPackageInfo(pkg, 0, targetUserHandle);
+ if (pi == null) {
+ throw new IllegalArgumentException("Unknown package " + pkg);
+ }
if (!UserHandle.isSameApp(pi.applicationInfo.uid, uid)) {
throw new SecurityException("Calling uid " + uid
+ " does not own package " + pkg);
}
- } catch (NameNotFoundException e) {
- throw new IllegalArgumentException("Unknown package " + pkg, e);
+ } catch (RemoteException e) {
+ // Can't happen; the package manager is in the same process
+ } finally {
+ Binder.restoreCallingIdentity(oldIdentity);
}
PerUserClipboard clipboard = getClipboard();
if (clipboard.primaryClip != null && !clipboard.activePermissionOwners.contains(pkg)) {
diff --git a/services/java/com/android/server/ConnectivityService.java b/services/java/com/android/server/ConnectivityService.java
index 3a338a9..5c7a3ed 100644
--- a/services/java/com/android/server/ConnectivityService.java
+++ b/services/java/com/android/server/ConnectivityService.java
@@ -96,6 +96,7 @@
import com.android.internal.net.VpnProfile;
import com.android.internal.telephony.Phone;
import com.android.internal.telephony.PhoneConstants;
+import com.android.internal.util.IndentingPrintWriter;
import com.android.server.am.BatteryStatsService;
import com.android.server.connectivity.Tethering;
import com.android.server.connectivity.Vpn;
@@ -2593,7 +2594,8 @@
}
@Override
- protected void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
+ protected void dump(FileDescriptor fd, PrintWriter writer, String[] args) {
+ final IndentingPrintWriter pw = new IndentingPrintWriter(writer, " ");
if (mContext.checkCallingOrSelfPermission(
android.Manifest.permission.DUMP)
!= PackageManager.PERMISSION_GRANTED) {
@@ -2602,20 +2604,28 @@
Binder.getCallingUid());
return;
}
+
+ // TODO: add locking to get atomic snapshot
pw.println();
- for (NetworkStateTracker nst : mNetTrackers) {
+ for (int i = 0; i < mNetTrackers.length; i++) {
+ final NetworkStateTracker nst = mNetTrackers[i];
if (nst != null) {
+ pw.println("NetworkStateTracker for " + getNetworkTypeName(i) + ":");
+ pw.increaseIndent();
if (nst.getNetworkInfo().isConnected()) {
pw.println("Active network: " + nst.getNetworkInfo().
getTypeName());
}
pw.println(nst.getNetworkInfo());
+ pw.println(nst.getLinkProperties());
pw.println(nst);
pw.println();
+ pw.decreaseIndent();
}
}
pw.println("Network Requester Pids:");
+ pw.increaseIndent();
for (int net : mPriorityList) {
String pidString = net + ": ";
for (Object pid : mNetRequestersPids[net]) {
@@ -2624,12 +2634,15 @@
pw.println(pidString);
}
pw.println();
+ pw.decreaseIndent();
pw.println("FeatureUsers:");
+ pw.increaseIndent();
for (Object requester : mFeatureUsers) {
pw.println(requester.toString());
}
pw.println();
+ pw.decreaseIndent();
synchronized (this) {
pw.println("NetworkTranstionWakeLock is currently " +
@@ -2643,9 +2656,11 @@
if (mInetLog != null) {
pw.println();
pw.println("Inet condition reports:");
+ pw.increaseIndent();
for(int i = 0; i < mInetLog.size(); i++) {
pw.println(mInetLog.get(i));
}
+ pw.decreaseIndent();
}
}
diff --git a/services/java/com/android/server/WifiService.java b/services/java/com/android/server/WifiService.java
index 7ed4f8a..5c3af79 100644
--- a/services/java/com/android/server/WifiService.java
+++ b/services/java/com/android/server/WifiService.java
@@ -133,8 +133,8 @@
private static final int POLL_TRAFFIC_STATS_INTERVAL_MSECS = 1000;
/**
- * See {@link Settings.Secure#WIFI_IDLE_MS}. This is the default value if a
- * Settings.Secure value is not present. This timeout value is chosen as
+ * See {@link Settings.Global#WIFI_IDLE_MS}. This is the default value if a
+ * Settings.Global value is not present. This timeout value is chosen as
* the approximate point at which the battery drain caused by Wi-Fi
* being enabled but not active exceeds the battery drain caused by
* re-establishing a connection to the mobile data network.
@@ -431,8 +431,8 @@
mWifiStateMachineHandler = new WifiStateMachineHandler(wifiThread.getLooper());
// Setting is in seconds
- NOTIFICATION_REPEAT_DELAY_MS = Settings.Secure.getInt(context.getContentResolver(),
- Settings.Secure.WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY, 900) * 1000l;
+ NOTIFICATION_REPEAT_DELAY_MS = Settings.Global.getInt(context.getContentResolver(),
+ Settings.Global.WIFI_NETWORKS_AVAILABLE_REPEAT_DELAY, 900) * 1000l;
mNotificationEnabledSettingObserver = new NotificationEnabledSettingObserver(new Handler());
mNotificationEnabledSettingObserver.register();
}
@@ -502,9 +502,9 @@
final ContentResolver cr = mContext.getContentResolver();
int wifiSavedState = 0;
try {
- wifiSavedState = Settings.Secure.getInt(cr, Settings.Secure.WIFI_SAVED_STATE);
+ wifiSavedState = Settings.Global.getInt(cr, Settings.Global.WIFI_SAVED_STATE);
if(wifiSavedState == 1)
- Settings.Secure.putInt(cr, Settings.Secure.WIFI_SAVED_STATE, 0);
+ Settings.Global.putInt(cr, Settings.Global.WIFI_SAVED_STATE, 0);
} catch (Settings.SettingNotFoundException e) {
;
}
@@ -514,9 +514,9 @@
private int getPersistedWifiState() {
final ContentResolver cr = mContext.getContentResolver();
try {
- return Settings.Secure.getInt(cr, Settings.Secure.WIFI_ON);
+ return Settings.Global.getInt(cr, Settings.Global.WIFI_ON);
} catch (Settings.SettingNotFoundException e) {
- Settings.Secure.putInt(cr, Settings.Secure.WIFI_ON, WIFI_DISABLED);
+ Settings.Global.putInt(cr, Settings.Global.WIFI_ON, WIFI_DISABLED);
return WIFI_DISABLED;
}
}
@@ -564,7 +564,7 @@
private void persistWifiState(int state) {
final ContentResolver cr = mContext.getContentResolver();
mPersistWifiState.set(state);
- Settings.Secure.putInt(cr, Settings.Secure.WIFI_ON, state);
+ Settings.Global.putInt(cr, Settings.Global.WIFI_ON, state);
}
/**
@@ -996,11 +996,11 @@
String action = intent.getAction();
long idleMillis =
- Settings.Secure.getLong(mContext.getContentResolver(),
- Settings.Secure.WIFI_IDLE_MS, DEFAULT_IDLE_MS);
+ Settings.Global.getLong(mContext.getContentResolver(),
+ Settings.Global.WIFI_IDLE_MS, DEFAULT_IDLE_MS);
int stayAwakeConditions =
- Settings.System.getInt(mContext.getContentResolver(),
- Settings.System.STAY_ON_WHILE_PLUGGED_IN, 0);
+ Settings.Global.getInt(mContext.getContentResolver(),
+ Settings.Global.STAY_ON_WHILE_PLUGGED_IN, 0);
if (action.equals(Intent.ACTION_SCREEN_ON)) {
if (DBG) {
Slog.d(TAG, "ACTION_SCREEN_ON");
@@ -1779,8 +1779,8 @@
public void register() {
ContentResolver cr = mContext.getContentResolver();
- cr.registerContentObserver(Settings.Secure.getUriFor(
- Settings.Secure.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON), true, this);
+ cr.registerContentObserver(Settings.Global.getUriFor(
+ Settings.Global.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON), true, this);
mNotificationEnabled = getValue();
}
@@ -1793,8 +1793,8 @@
}
private boolean getValue() {
- return Settings.Secure.getInt(mContext.getContentResolver(),
- Settings.Secure.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON, 1) == 1;
+ return Settings.Global.getInt(mContext.getContentResolver(),
+ Settings.Global.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON, 1) == 1;
}
}
diff --git a/services/java/com/android/server/accessibility/AccessibilityManagerService.java b/services/java/com/android/server/accessibility/AccessibilityManagerService.java
index 99ec1d2..e7f3599 100644
--- a/services/java/com/android/server/accessibility/AccessibilityManagerService.java
+++ b/services/java/com/android/server/accessibility/AccessibilityManagerService.java
@@ -173,10 +173,6 @@
private Service mQueryBridge;
- private boolean mTouchExplorationGestureEnded;
-
- private boolean mTouchExplorationGestureStarted;
-
private AlertDialog mEnableTouchExplorationDialog;
/**
@@ -400,18 +396,6 @@
}
public boolean sendAccessibilityEvent(AccessibilityEvent event) {
- final int eventType = event.getEventType();
-
- // The event for gesture start should be strictly before the
- // first hover enter event for the gesture.
- if (eventType == AccessibilityEvent.TYPE_VIEW_HOVER_ENTER
- && mTouchExplorationGestureStarted) {
- mTouchExplorationGestureStarted = false;
- AccessibilityEvent gestureStartEvent = AccessibilityEvent.obtain(
- AccessibilityEvent.TYPE_TOUCH_EXPLORATION_GESTURE_START);
- sendAccessibilityEvent(gestureStartEvent);
- }
-
synchronized (mLock) {
if (mSecurityPolicy.canDispatchAccessibilityEvent(event)) {
mSecurityPolicy.updateActiveWindowAndEventSourceLocked(event);
@@ -421,22 +405,10 @@
if (mHasInputFilter && mInputFilter != null) {
mMainHandler.obtainMessage(MSG_SEND_ACCESSIBILITY_EVENT_TO_INPUT_FILTER,
AccessibilityEvent.obtain(event)).sendToTarget();
-
}
event.recycle();
mHandledFeedbackTypes = 0;
}
-
- // The event for gesture end should be strictly after the
- // last hover exit event for the gesture.
- if (eventType == AccessibilityEvent.TYPE_VIEW_HOVER_EXIT
- && mTouchExplorationGestureEnded) {
- mTouchExplorationGestureEnded = false;
- AccessibilityEvent gestureEndEvent = AccessibilityEvent.obtain(
- AccessibilityEvent.TYPE_TOUCH_EXPLORATION_GESTURE_END);
- sendAccessibilityEvent(gestureEndEvent);
- }
-
return (OWN_PROCESS_ID != Binder.getCallingPid());
}
@@ -628,14 +600,6 @@
return mQueryBridge;
}
- public void touchExplorationGestureEnded() {
- mTouchExplorationGestureEnded = true;
- }
-
- public void touchExplorationGestureStarted() {
- mTouchExplorationGestureStarted = true;
- }
-
private boolean notifyGestureLocked(int gestureId, boolean isDefault) {
// TODO: Now we are giving the gestures to the last enabled
// service that can handle them which is the last one
diff --git a/services/java/com/android/server/accessibility/TouchExplorer.java b/services/java/com/android/server/accessibility/TouchExplorer.java
index 9e4f33e..cb6b31a 100644
--- a/services/java/com/android/server/accessibility/TouchExplorer.java
+++ b/services/java/com/android/server/accessibility/TouchExplorer.java
@@ -25,6 +25,7 @@
import android.gesture.GestureStroke;
import android.gesture.Prediction;
import android.graphics.Rect;
+import android.os.Build;
import android.os.Handler;
import android.os.SystemClock;
import android.util.Slog;
@@ -35,6 +36,7 @@
import android.view.ViewConfiguration;
import android.view.WindowManagerPolicy;
import android.view.accessibility.AccessibilityEvent;
+import android.view.accessibility.AccessibilityManager;
import com.android.internal.R;
@@ -168,6 +170,9 @@
// Temporary rectangle to avoid instantiation.
private final Rect mTempRect = new Rect();
+ // Context in which this explorer operates.
+ private final Context mContext;
+
// The X of the previous event.
private float mPreviousX;
@@ -198,6 +203,12 @@
// The id of the last touch explored window.
private int mLastTouchedWindowId;
+ // Whether touch exploration gesture has ended.
+ private boolean mTouchExplorationGestureEnded;
+
+ // Whether touch interaction has ended.
+ private boolean mTouchInteractionEnded;
+
/**
* Creates a new instance.
*
@@ -205,11 +216,12 @@
* @param context A context handle for accessing resources.
*/
public TouchExplorer(Context context, AccessibilityManagerService service) {
+ mContext = context;
mAms = service;
mReceivedPointerTracker = new ReceivedPointerTracker(context);
mInjectedPointerTracker = new InjectedPointerTracker();
mTapTimeout = ViewConfiguration.getTapTimeout();
- mDetermineUserIntentTimeout = (int) (mTapTimeout * 1.5f);
+ mDetermineUserIntentTimeout = ViewConfiguration.getDoubleTapTimeout();
mDoubleTapTimeout = ViewConfiguration.getDoubleTapTimeout();
mTouchSlop = ViewConfiguration.get(context).getScaledTouchSlop();
mDoubleTapSlop = ViewConfiguration.get(context).getScaledDoubleTapSlop();
@@ -317,9 +329,26 @@
}
public void onAccessibilityEvent(AccessibilityEvent event) {
+ final int eventType = event.getEventType();
+
+ // The event for gesture end should be strictly after the
+ // last hover exit event.
+ if (mTouchExplorationGestureEnded
+ && eventType == AccessibilityEvent.TYPE_VIEW_HOVER_EXIT) {
+ mTouchExplorationGestureEnded = false;
+ sendAccessibilityEvent(AccessibilityEvent.TYPE_TOUCH_EXPLORATION_GESTURE_END);
+ }
+
+ // The event for touch interaction end should be strictly after the
+ // last hover exit and the touch exploration gesture end events.
+ if (mTouchInteractionEnded
+ && eventType == AccessibilityEvent.TYPE_VIEW_HOVER_EXIT) {
+ mTouchInteractionEnded = false;
+ sendAccessibilityEvent(AccessibilityEvent.TYPE_TOUCH_INTERACTION_END);
+ }
+
// If a new window opens or the accessibility focus moves we no longer
// want to click/long press on the last touch explored location.
- final int eventType = event.getEventType();
switch (eventType) {
case AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED:
case AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUSED: {
@@ -358,6 +387,15 @@
switch (event.getActionMasked()) {
case MotionEvent.ACTION_DOWN:
+ // The delayed enter not delivered implies that we have delivered
+ // TYPE_TOUCH_INTERACTION_START and not TYPE_TOUCH_INTERACTION_END,
+ // therefore we need to deliver the interaction end event here.
+ if (mSendHoverEnterDelayed.isPending()) {
+ sendAccessibilityEvent(AccessibilityEvent.TYPE_TOUCH_INTERACTION_END);
+ }
+ // Announce the start of a new touch interaction.
+ sendAccessibilityEvent(
+ AccessibilityEvent.TYPE_TOUCH_INTERACTION_START);
// Pre-feed the motion events to the gesture detector since we
// have a distance slop before getting into gesture detection
// mode and not using the points within this slop significantly
@@ -396,7 +434,7 @@
// to detect what the user is trying to do.
final int pointerId = receivedTracker.getPrimaryActivePointerId();
final int pointerIdBits = (1 << pointerId);
- mSendHoverEnterDelayed.post(event, pointerIdBits, policyFlags);
+ mSendHoverEnterDelayed.post(event, true, pointerIdBits, policyFlags);
} break;
default: {
/* do nothing - let the code for ACTION_MOVE decide what to do */
@@ -443,6 +481,10 @@
mSendHoverExitDelayed.remove();
mPerformLongPressDelayed.remove();
mExitGestureDetectionModeDelayed.post();
+ // Send accessibility event to announce the start
+ // of gesture recognition.
+ sendAccessibilityEvent(
+ AccessibilityEvent.TYPE_GESTURE_DETECTION_START);
} else {
// We have just decided that the user is touch,
// exploring so start sending events.
@@ -551,7 +593,8 @@
// If we have not delivered the enter schedule exit.
if (mSendHoverEnterDelayed.isPending()) {
- mSendHoverExitDelayed.post(event, pointerIdBits, policyFlags);
+ mSendHoverEnterDelayed.mTouchExplorationInProgress = false;
+ mSendHoverExitDelayed.post(event, false, pointerIdBits, policyFlags);
} else {
// The user is touch exploring so we send events for end.
sendExitEventsIfNeeded(policyFlags);
@@ -656,6 +699,9 @@
}
} break;
case MotionEvent.ACTION_UP: {
+ // Announce the end of a new touch interaction.
+ sendAccessibilityEvent(
+ AccessibilityEvent.TYPE_TOUCH_INTERACTION_END);
mCurrentState = STATE_TOUCH_EXPLORING;
} break;
case MotionEvent.ACTION_CANCEL: {
@@ -687,6 +733,10 @@
}
} break;
case MotionEvent.ACTION_UP:
+ // Announce the end of a new touch interaction.
+ sendAccessibilityEvent(
+ AccessibilityEvent.TYPE_TOUCH_INTERACTION_END);
+ //$FALL-THROUGH$
case MotionEvent.ACTION_POINTER_UP: {
mLongPressingPointerId = -1;
mLongPressingPointerDeltaX = 0;
@@ -725,6 +775,13 @@
}
} break;
case MotionEvent.ACTION_UP: {
+ // Announce the end of gesture recognition.
+ sendAccessibilityEvent(
+ AccessibilityEvent.TYPE_GESTURE_DETECTION_END);
+ // Announce the end of a new touch interaction.
+ sendAccessibilityEvent(
+ AccessibilityEvent.TYPE_TOUCH_INTERACTION_END);
+
float x = event.getX();
float y = event.getY();
mStrokeBuffer.add(new GesturePoint(x, y, event.getEventTime()));
@@ -760,6 +817,19 @@
}
/**
+ * Sends an accessibility event of the given type.
+ *
+ * @param type The event type.
+ */
+ private void sendAccessibilityEvent(int type) {
+ AccessibilityManager accessibilityManager = AccessibilityManager.getInstance(mContext);
+ if (accessibilityManager.isEnabled()) {
+ AccessibilityEvent event = AccessibilityEvent.obtain(type);
+ accessibilityManager.sendAccessibilityEvent(event);
+ }
+ }
+
+ /**
* Sends down events to the view hierarchy for all active pointers which are
* not already being delivered i.e. pointers that are not yet injected.
*
@@ -807,7 +877,8 @@
MotionEvent event = mInjectedPointerTracker.getLastInjectedHoverEvent();
if (event != null && event.getActionMasked() != MotionEvent.ACTION_HOVER_EXIT) {
final int pointerIdBits = event.getPointerIdBits();
- mAms.touchExplorationGestureEnded();
+ mTouchExplorationGestureEnded = true;
+ mTouchInteractionEnded = true;
sendMotionEvent(event, MotionEvent.ACTION_HOVER_EXIT, pointerIdBits, policyFlags);
}
}
@@ -822,7 +893,6 @@
MotionEvent event = mInjectedPointerTracker.getLastInjectedHoverEvent();
if (event != null && event.getActionMasked() == MotionEvent.ACTION_HOVER_EXIT) {
final int pointerIdBits = event.getPointerIdBits();
- mAms.touchExplorationGestureStarted();
sendMotionEvent(event, MotionEvent.ACTION_HOVER_ENTER, pointerIdBits, policyFlags);
}
}
@@ -1080,16 +1150,24 @@
return;
}
+ if (Build.IS_DEBUGGABLE) {
+ if (mSendHoverEnterDelayed.isPending()) {
+ throw new IllegalStateException("mSendHoverEnterDelayed must not be pending.");
+ }
+ if (mSendHoverExitDelayed.isPending()) {
+ throw new IllegalStateException("mSendHoverExitDelayed must not be pending.");
+ }
+ if (!mPerformLongPressDelayed.isPending()) {
+ throw new IllegalStateException(
+ "mPerformLongPressDelayed must not be pending.");
+ }
+ }
+
// Remove pending event deliveries.
- mSendHoverEnterDelayed.remove();
- mSendHoverExitDelayed.remove();
mPerformLongPressDelayed.remove();
- // This is a tap so do not send hover events since
- // this events will result in firing the corresponding
- // accessibility events confusing the user about what
- // is actually clicked.
- sendExitEventsIfNeeded(policyFlags);
+ // The touch interaction has ended since we will send a click.
+ sendAccessibilityEvent(AccessibilityEvent.TYPE_TOUCH_INTERACTION_END);
int clickLocationX;
int clickLocationY;
@@ -1257,13 +1335,13 @@
}
public void remove() {
- if (isPenidng()) {
+ if (isPending()) {
mHandler.removeCallbacks(this);
clear();
}
}
- private boolean isPenidng() {
+ public boolean isPending() {
return (mEvent != null);
}
@@ -1326,7 +1404,7 @@
}
private void clear() {
- if (!isPenidng()) {
+ if (!isPending()) {
return;
}
mEvent.recycle();
@@ -1347,15 +1425,18 @@
private MotionEvent mPrototype;
private int mPointerIdBits;
private int mPolicyFlags;
+ private boolean mTouchExplorationInProgress;
public SendHoverDelayed(int hoverAction, boolean gestureStarted) {
mHoverAction = hoverAction;
mGestureStarted = gestureStarted;
}
- public void post(MotionEvent prototype, int pointerIdBits, int policyFlags) {
+ public void post(MotionEvent prototype, boolean touchExplorationInProgress,
+ int pointerIdBits, int policyFlags) {
remove();
mPrototype = MotionEvent.obtain(prototype);
+ mTouchExplorationInProgress = touchExplorationInProgress;
mPointerIdBits = pointerIdBits;
mPolicyFlags = policyFlags;
mHandler.postDelayed(this, mDetermineUserIntentTimeout);
@@ -1392,6 +1473,7 @@
mPrototype = null;
mPointerIdBits = -1;
mPolicyFlags = 0;
+ mTouchExplorationInProgress = false;
}
public void forceSendAndRemove() {
@@ -1408,10 +1490,17 @@
Slog.d(LOG_TAG_SEND_HOVER_DELAYED, mGestureStarted ?
"touchExplorationGestureStarted" : "touchExplorationGestureEnded");
}
- if (mGestureStarted) {
- mAms.touchExplorationGestureStarted();
+ if (mTouchExplorationInProgress) {
+ if (mGestureStarted) {
+ sendAccessibilityEvent(AccessibilityEvent.TYPE_TOUCH_EXPLORATION_GESTURE_START);
+ } else {
+ mTouchExplorationGestureEnded = true;
+ mTouchInteractionEnded = true;
+ }
} else {
- mAms.touchExplorationGestureEnded();
+ if (!mGestureStarted) {
+ mTouchInteractionEnded = true;
+ }
}
sendMotionEvent(mPrototype, mHoverAction, mPointerIdBits, mPolicyFlags);
clear();
diff --git a/services/java/com/android/server/net/NetworkPolicyManagerService.java b/services/java/com/android/server/net/NetworkPolicyManagerService.java
index 46bddc4..43ddf8d 100644
--- a/services/java/com/android/server/net/NetworkPolicyManagerService.java
+++ b/services/java/com/android/server/net/NetworkPolicyManagerService.java
@@ -24,6 +24,8 @@
import static android.Manifest.permission.READ_PHONE_STATE;
import static android.content.Intent.ACTION_PACKAGE_ADDED;
import static android.content.Intent.ACTION_UID_REMOVED;
+import static android.content.Intent.ACTION_USER_ADDED;
+import static android.content.Intent.ACTION_USER_REMOVED;
import static android.content.Intent.EXTRA_UID;
import static android.net.ConnectivityManager.CONNECTIVITY_ACTION_IMMEDIATE;
import static android.net.ConnectivityManager.TYPE_ETHERNET;
@@ -179,7 +181,8 @@
private static final int VERSION_ADDED_INFERRED = 7;
private static final int VERSION_SWITCH_APP_ID = 8;
private static final int VERSION_ADDED_NETWORK_ID = 9;
- private static final int VERSION_LATEST = VERSION_ADDED_NETWORK_ID;
+ private static final int VERSION_SWITCH_UID = 10;
+ private static final int VERSION_LATEST = VERSION_SWITCH_UID;
// @VisibleForTesting
public static final int TYPE_WARNING = 0x1;
@@ -250,8 +253,8 @@
/** Currently active network rules for ifaces. */
private HashMap<NetworkPolicy, String[]> mNetworkRules = Maps.newHashMap();
- /** Defined app policies. */
- private SparseIntArray mAppPolicy = new SparseIntArray();
+ /** Defined UID policies. */
+ private SparseIntArray mUidPolicy = new SparseIntArray();
/** Currently derived rules for each UID. */
private SparseIntArray mUidRules = new SparseIntArray();
@@ -357,12 +360,22 @@
final IntentFilter connFilter = new IntentFilter(CONNECTIVITY_ACTION_IMMEDIATE);
mContext.registerReceiver(mConnReceiver, connFilter, CONNECTIVITY_INTERNAL, mHandler);
- // listen for package/uid changes to update policy
+ // listen for package changes to update policy
final IntentFilter packageFilter = new IntentFilter();
packageFilter.addAction(ACTION_PACKAGE_ADDED);
- packageFilter.addAction(ACTION_UID_REMOVED);
+ packageFilter.addDataScheme("package");
mContext.registerReceiver(mPackageReceiver, packageFilter, null, mHandler);
+ // listen for UID changes to update policy
+ mContext.registerReceiver(
+ mUidRemovedReceiver, new IntentFilter(ACTION_UID_REMOVED), null, mHandler);
+
+ // listen for user changes to update policy
+ final IntentFilter userFilter = new IntentFilter();
+ userFilter.addAction(ACTION_USER_ADDED);
+ userFilter.addAction(ACTION_USER_REMOVED);
+ mContext.registerReceiver(mUserReceiver, userFilter, null, mHandler);
+
// listen for stats update events
final IntentFilter statsFilter = new IntentFilter(ACTION_NETWORK_STATS_UPDATED);
mContext.registerReceiver(
@@ -421,37 +434,62 @@
private BroadcastReceiver mPackageReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
- // on background handler thread, and PACKAGE_ADDED and UID_REMOVED
- // are protected broadcasts.
+ // on background handler thread, and PACKAGE_ADDED is protected
final String action = intent.getAction();
- final int uid = intent.getIntExtra(EXTRA_UID, 0);
- final int appId = UserHandle.getAppId(uid);
- synchronized (mRulesLock) {
- if (ACTION_PACKAGE_ADDED.equals(action)) {
- // NOTE: PACKAGE_ADDED is currently only sent once, and is
- // not broadcast when users are added.
+ final int uid = intent.getIntExtra(EXTRA_UID, -1);
+ if (uid == -1) return;
- // update rules for UID, since it might be subject to
- // global background data policy.
- if (LOGV) Slog.v(TAG, "ACTION_PACKAGE_ADDED for uid=" + uid);
- updateRulesForAppLocked(appId);
-
- } else if (ACTION_UID_REMOVED.equals(action)) {
- // NOTE: UID_REMOVED is currently only sent once, and is not
- // broadcast when users are removed.
-
- // remove any policy and update rules to clean up.
- if (LOGV) Slog.v(TAG, "ACTION_UID_REMOVED for uid=" + uid);
-
- mAppPolicy.delete(appId);
- updateRulesForAppLocked(appId);
- writePolicyLocked();
+ if (ACTION_PACKAGE_ADDED.equals(action)) {
+ // update rules for UID, since it might be subject to
+ // global background data policy
+ if (LOGV) Slog.v(TAG, "ACTION_PACKAGE_ADDED for uid=" + uid);
+ synchronized (mRulesLock) {
+ updateRulesForUidLocked(uid);
}
}
}
};
+ private BroadcastReceiver mUidRemovedReceiver = new BroadcastReceiver() {
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ // on background handler thread, and UID_REMOVED is protected
+
+ final int uid = intent.getIntExtra(EXTRA_UID, -1);
+ if (uid == -1) return;
+
+ // remove any policy and update rules to clean up
+ if (LOGV) Slog.v(TAG, "ACTION_UID_REMOVED for uid=" + uid);
+ synchronized (mRulesLock) {
+ mUidPolicy.delete(uid);
+ updateRulesForUidLocked(uid);
+ writePolicyLocked();
+ }
+ }
+ };
+
+ private BroadcastReceiver mUserReceiver = new BroadcastReceiver() {
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ // on background handler thread, and USER_ADDED and USER_REMOVED
+ // broadcasts are protected
+
+ final String action = intent.getAction();
+ final int userId = intent.getIntExtra(Intent.EXTRA_USER_HANDLE, -1);
+ if (userId == -1) return;
+
+ // Remove any policies for given user; both cleaning up after a
+ // USER_REMOVED, and one last sanity check during USER_ADDED
+ removePoliciesForUserLocked(userId);
+
+ // Update global restrict for new user
+ synchronized (mRulesLock) {
+ updateRulesForRestrictBackgroundLocked();
+ }
+ }
+ };
+
/**
* Receiver that watches for {@link INetworkStatsService} updates, which we
* use to check against {@link NetworkPolicy#warningBytes}.
@@ -1107,7 +1145,7 @@
// clear any existing policy and read from disk
mNetworkPolicy.clear();
- mAppPolicy.clear();
+ mUidPolicy.clear();
FileInputStream fis = null;
try {
@@ -1188,24 +1226,25 @@
cycleTimezone, warningBytes, limitBytes, lastWarningSnooze,
lastLimitSnooze, metered, inferred));
- } else if (TAG_UID_POLICY.equals(tag) && version < VERSION_SWITCH_APP_ID) {
+ } else if (TAG_UID_POLICY.equals(tag)) {
final int uid = readIntAttribute(in, ATTR_UID);
final int policy = readIntAttribute(in, ATTR_POLICY);
- final int appId = UserHandle.getAppId(uid);
- if (UserHandle.isApp(appId)) {
- setAppPolicyUnchecked(appId, policy, false);
+ if (UserHandle.isApp(uid)) {
+ setUidPolicyUnchecked(uid, policy, false);
} else {
Slog.w(TAG, "unable to apply policy to UID " + uid + "; ignoring");
}
- } else if (TAG_APP_POLICY.equals(tag) && version >= VERSION_SWITCH_APP_ID) {
+ } else if (TAG_APP_POLICY.equals(tag)) {
final int appId = readIntAttribute(in, ATTR_APP_ID);
final int policy = readIntAttribute(in, ATTR_POLICY);
- if (UserHandle.isApp(appId)) {
- setAppPolicyUnchecked(appId, policy, false);
+ // TODO: set for other users during upgrade
+ final int uid = UserHandle.getUid(UserHandle.USER_OWNER, appId);
+ if (UserHandle.isApp(uid)) {
+ setUidPolicyUnchecked(uid, policy, false);
} else {
- Slog.w(TAG, "unable to apply policy to appId " + appId + "; ignoring");
+ Slog.w(TAG, "unable to apply policy to UID " + uid + "; ignoring");
}
}
}
@@ -1280,17 +1319,17 @@
}
// write all known uid policies
- for (int i = 0; i < mAppPolicy.size(); i++) {
- final int appId = mAppPolicy.keyAt(i);
- final int policy = mAppPolicy.valueAt(i);
+ for (int i = 0; i < mUidPolicy.size(); i++) {
+ final int uid = mUidPolicy.keyAt(i);
+ final int policy = mUidPolicy.valueAt(i);
// skip writing empty policies
if (policy == POLICY_NONE) continue;
- out.startTag(null, TAG_APP_POLICY);
- writeIntAttribute(out, ATTR_APP_ID, appId);
+ out.startTag(null, TAG_UID_POLICY);
+ writeIntAttribute(out, ATTR_UID, uid);
writeIntAttribute(out, ATTR_POLICY, policy);
- out.endTag(null, TAG_APP_POLICY);
+ out.endTag(null, TAG_UID_POLICY);
}
out.endTag(null, TAG_POLICY_LIST);
@@ -1305,24 +1344,24 @@
}
@Override
- public void setAppPolicy(int appId, int policy) {
+ public void setUidPolicy(int uid, int policy) {
mContext.enforceCallingOrSelfPermission(MANAGE_NETWORK_POLICY, TAG);
- if (!UserHandle.isApp(appId)) {
- throw new IllegalArgumentException("cannot apply policy to appId " + appId);
+ if (!UserHandle.isApp(uid)) {
+ throw new IllegalArgumentException("cannot apply policy to UID " + uid);
}
- setAppPolicyUnchecked(appId, policy, true);
+ setUidPolicyUnchecked(uid, policy, true);
}
- private void setAppPolicyUnchecked(int appId, int policy, boolean persist) {
+ private void setUidPolicyUnchecked(int uid, int policy, boolean persist) {
final int oldPolicy;
synchronized (mRulesLock) {
- oldPolicy = getAppPolicy(appId);
- mAppPolicy.put(appId, policy);
+ oldPolicy = getUidPolicy(uid);
+ mUidPolicy.put(uid, policy);
// uid policy changed, recompute rules and persist policy.
- updateRulesForAppLocked(appId);
+ updateRulesForUidLocked(uid);
if (persist) {
writePolicyLocked();
}
@@ -1330,29 +1369,53 @@
}
@Override
- public int getAppPolicy(int appId) {
+ public int getUidPolicy(int uid) {
mContext.enforceCallingOrSelfPermission(MANAGE_NETWORK_POLICY, TAG);
synchronized (mRulesLock) {
- return mAppPolicy.get(appId, POLICY_NONE);
+ return mUidPolicy.get(uid, POLICY_NONE);
}
}
@Override
- public int[] getAppsWithPolicy(int policy) {
+ public int[] getUidsWithPolicy(int policy) {
mContext.enforceCallingOrSelfPermission(MANAGE_NETWORK_POLICY, TAG);
- int[] appIds = new int[0];
+ int[] uids = new int[0];
synchronized (mRulesLock) {
- for (int i = 0; i < mAppPolicy.size(); i++) {
- final int appId = mAppPolicy.keyAt(i);
- final int appPolicy = mAppPolicy.valueAt(i);
- if (appPolicy == policy) {
- appIds = appendInt(appIds, appId);
+ for (int i = 0; i < mUidPolicy.size(); i++) {
+ final int uid = mUidPolicy.keyAt(i);
+ final int uidPolicy = mUidPolicy.valueAt(i);
+ if (uidPolicy == policy) {
+ uids = appendInt(uids, uid);
}
}
}
- return appIds;
+ return uids;
+ }
+
+ /**
+ * Remove any policies associated with given {@link UserHandle}, persisting
+ * if any changes are made.
+ */
+ private void removePoliciesForUserLocked(int userId) {
+ if (LOGV) Slog.v(TAG, "removePoliciesForUserLocked()");
+
+ int[] uids = new int[0];
+ for (int i = 0; i < mUidPolicy.size(); i++) {
+ final int uid = mUidPolicy.keyAt(i);
+ if (UserHandle.getUserId(uid) == userId) {
+ uids = appendInt(uids, uid);
+ }
+ }
+
+ if (uids.length > 0) {
+ for (int uid : uids) {
+ mUidPolicy.delete(uid);
+ updateRulesForUidLocked(uid);
+ }
+ writePolicyLocked();
+ }
}
@Override
@@ -1586,14 +1649,14 @@
}
fout.decreaseIndent();
- fout.println("Policy for apps:");
+ fout.println("Policy for UIDs:");
fout.increaseIndent();
- int size = mAppPolicy.size();
+ int size = mUidPolicy.size();
for (int i = 0; i < size; i++) {
- final int appId = mAppPolicy.keyAt(i);
- final int policy = mAppPolicy.valueAt(i);
- fout.print("appId=");
- fout.print(appId);
+ final int uid = mUidPolicy.keyAt(i);
+ final int policy = mUidPolicy.valueAt(i);
+ fout.print("UID=");
+ fout.print(uid);
fout.print(" policy=");
dumpPolicy(fout, policy);
fout.println();
@@ -1698,12 +1761,19 @@
* Update rules that might be changed by {@link #mRestrictBackground} value.
*/
private void updateRulesForRestrictBackgroundLocked() {
- // update rules for all installed applications
final PackageManager pm = mContext.getPackageManager();
- final List<ApplicationInfo> apps = pm.getInstalledApplications(0);
- for (ApplicationInfo app : apps) {
- final int appId = UserHandle.getAppId(app.uid);
- updateRulesForAppLocked(appId);
+ final UserManager um = (UserManager) mContext.getSystemService(Context.USER_SERVICE);
+
+ // update rules for all installed applications
+ final List<UserInfo> users = um.getUsers();
+ final List<ApplicationInfo> apps = pm.getInstalledApplications(
+ PackageManager.GET_UNINSTALLED_PACKAGES | PackageManager.GET_DISABLED_COMPONENTS);
+
+ for (UserInfo user : users) {
+ for (ApplicationInfo app : apps) {
+ final int uid = UserHandle.getUid(user.id, app.uid);
+ updateRulesForUidLocked(uid);
+ }
}
// limit data usage for some internal system services
@@ -1711,14 +1781,6 @@
updateRulesForUidLocked(android.os.Process.DRM_UID);
}
- private void updateRulesForAppLocked(int appId) {
- UserManager um = (UserManager) mContext.getSystemService(Context.USER_SERVICE);
- for (UserInfo user : um.getUsers()) {
- final int uid = UserHandle.getUid(user.id, appId);
- updateRulesForUidLocked(uid);
- }
- }
-
private static boolean isUidValidForRules(int uid) {
// allow rules on specific system services, and any apps
if (uid == android.os.Process.MEDIA_UID || uid == android.os.Process.DRM_UID
@@ -1732,13 +1794,12 @@
private void updateRulesForUidLocked(int uid) {
if (!isUidValidForRules(uid)) return;
- final int appId = UserHandle.getAppId(uid);
- final int appPolicy = getAppPolicy(appId);
+ final int uidPolicy = getUidPolicy(uid);
final boolean uidForeground = isUidForeground(uid);
// derive active rules based on policy and active state
int uidRules = RULE_ALLOW_ALL;
- if (!uidForeground && (appPolicy & POLICY_REJECT_METERED_BACKGROUND) != 0) {
+ if (!uidForeground && (uidPolicy & POLICY_REJECT_METERED_BACKGROUND) != 0) {
// uid in background, and policy says to block metered data
uidRules = RULE_REJECT_METERED;
}
diff --git a/services/java/com/android/server/net/NetworkStatsService.java b/services/java/com/android/server/net/NetworkStatsService.java
index f2d2fb7..3a593e4 100644
--- a/services/java/com/android/server/net/NetworkStatsService.java
+++ b/services/java/com/android/server/net/NetworkStatsService.java
@@ -38,23 +38,23 @@
import static android.net.NetworkTemplate.buildTemplateWifiWildcard;
import static android.net.TrafficStats.KB_IN_BYTES;
import static android.net.TrafficStats.MB_IN_BYTES;
-import static android.provider.Settings.Secure.NETSTATS_DEV_BUCKET_DURATION;
-import static android.provider.Settings.Secure.NETSTATS_DEV_DELETE_AGE;
-import static android.provider.Settings.Secure.NETSTATS_DEV_PERSIST_BYTES;
-import static android.provider.Settings.Secure.NETSTATS_DEV_ROTATE_AGE;
-import static android.provider.Settings.Secure.NETSTATS_GLOBAL_ALERT_BYTES;
-import static android.provider.Settings.Secure.NETSTATS_POLL_INTERVAL;
-import static android.provider.Settings.Secure.NETSTATS_REPORT_XT_OVER_DEV;
-import static android.provider.Settings.Secure.NETSTATS_SAMPLE_ENABLED;
-import static android.provider.Settings.Secure.NETSTATS_TIME_CACHE_MAX_AGE;
-import static android.provider.Settings.Secure.NETSTATS_UID_BUCKET_DURATION;
-import static android.provider.Settings.Secure.NETSTATS_UID_DELETE_AGE;
-import static android.provider.Settings.Secure.NETSTATS_UID_PERSIST_BYTES;
-import static android.provider.Settings.Secure.NETSTATS_UID_ROTATE_AGE;
-import static android.provider.Settings.Secure.NETSTATS_UID_TAG_BUCKET_DURATION;
-import static android.provider.Settings.Secure.NETSTATS_UID_TAG_DELETE_AGE;
-import static android.provider.Settings.Secure.NETSTATS_UID_TAG_PERSIST_BYTES;
-import static android.provider.Settings.Secure.NETSTATS_UID_TAG_ROTATE_AGE;
+import static android.provider.Settings.Global.NETSTATS_DEV_BUCKET_DURATION;
+import static android.provider.Settings.Global.NETSTATS_DEV_DELETE_AGE;
+import static android.provider.Settings.Global.NETSTATS_DEV_PERSIST_BYTES;
+import static android.provider.Settings.Global.NETSTATS_DEV_ROTATE_AGE;
+import static android.provider.Settings.Global.NETSTATS_GLOBAL_ALERT_BYTES;
+import static android.provider.Settings.Global.NETSTATS_POLL_INTERVAL;
+import static android.provider.Settings.Global.NETSTATS_REPORT_XT_OVER_DEV;
+import static android.provider.Settings.Global.NETSTATS_SAMPLE_ENABLED;
+import static android.provider.Settings.Global.NETSTATS_TIME_CACHE_MAX_AGE;
+import static android.provider.Settings.Global.NETSTATS_UID_BUCKET_DURATION;
+import static android.provider.Settings.Global.NETSTATS_UID_DELETE_AGE;
+import static android.provider.Settings.Global.NETSTATS_UID_PERSIST_BYTES;
+import static android.provider.Settings.Global.NETSTATS_UID_ROTATE_AGE;
+import static android.provider.Settings.Global.NETSTATS_UID_TAG_BUCKET_DURATION;
+import static android.provider.Settings.Global.NETSTATS_UID_TAG_DELETE_AGE;
+import static android.provider.Settings.Global.NETSTATS_UID_TAG_PERSIST_BYTES;
+import static android.provider.Settings.Global.NETSTATS_UID_TAG_ROTATE_AGE;
import static android.telephony.PhoneStateListener.LISTEN_DATA_CONNECTION_STATE;
import static android.telephony.PhoneStateListener.LISTEN_NONE;
import static android.text.format.DateUtils.DAY_IN_MILLIS;
@@ -1218,39 +1218,39 @@
// TODO: adjust these timings for production builds
}
- private long getSecureLong(String name, long def) {
- return Settings.Secure.getLong(mResolver, name, def);
+ private long getGlobalLong(String name, long def) {
+ return Settings.Global.getLong(mResolver, name, def);
}
- private boolean getSecureBoolean(String name, boolean def) {
+ private boolean getGlobalBoolean(String name, boolean def) {
final int defInt = def ? 1 : 0;
- return Settings.Secure.getInt(mResolver, name, defInt) != 0;
+ return Settings.Global.getInt(mResolver, name, defInt) != 0;
}
@Override
public long getPollInterval() {
- return getSecureLong(NETSTATS_POLL_INTERVAL, 30 * MINUTE_IN_MILLIS);
+ return getGlobalLong(NETSTATS_POLL_INTERVAL, 30 * MINUTE_IN_MILLIS);
}
@Override
public long getTimeCacheMaxAge() {
- return getSecureLong(NETSTATS_TIME_CACHE_MAX_AGE, DAY_IN_MILLIS);
+ return getGlobalLong(NETSTATS_TIME_CACHE_MAX_AGE, DAY_IN_MILLIS);
}
@Override
public long getGlobalAlertBytes(long def) {
- return getSecureLong(NETSTATS_GLOBAL_ALERT_BYTES, def);
+ return getGlobalLong(NETSTATS_GLOBAL_ALERT_BYTES, def);
}
@Override
public boolean getSampleEnabled() {
- return getSecureBoolean(NETSTATS_SAMPLE_ENABLED, true);
+ return getGlobalBoolean(NETSTATS_SAMPLE_ENABLED, true);
}
@Override
public boolean getReportXtOverDev() {
- return getSecureBoolean(NETSTATS_REPORT_XT_OVER_DEV, true);
+ return getGlobalBoolean(NETSTATS_REPORT_XT_OVER_DEV, true);
}
@Override
public Config getDevConfig() {
- return new Config(getSecureLong(NETSTATS_DEV_BUCKET_DURATION, HOUR_IN_MILLIS),
- getSecureLong(NETSTATS_DEV_ROTATE_AGE, 15 * DAY_IN_MILLIS),
- getSecureLong(NETSTATS_DEV_DELETE_AGE, 90 * DAY_IN_MILLIS));
+ return new Config(getGlobalLong(NETSTATS_DEV_BUCKET_DURATION, HOUR_IN_MILLIS),
+ getGlobalLong(NETSTATS_DEV_ROTATE_AGE, 15 * DAY_IN_MILLIS),
+ getGlobalLong(NETSTATS_DEV_DELETE_AGE, 90 * DAY_IN_MILLIS));
}
@Override
public Config getXtConfig() {
@@ -1258,19 +1258,19 @@
}
@Override
public Config getUidConfig() {
- return new Config(getSecureLong(NETSTATS_UID_BUCKET_DURATION, 2 * HOUR_IN_MILLIS),
- getSecureLong(NETSTATS_UID_ROTATE_AGE, 15 * DAY_IN_MILLIS),
- getSecureLong(NETSTATS_UID_DELETE_AGE, 90 * DAY_IN_MILLIS));
+ return new Config(getGlobalLong(NETSTATS_UID_BUCKET_DURATION, 2 * HOUR_IN_MILLIS),
+ getGlobalLong(NETSTATS_UID_ROTATE_AGE, 15 * DAY_IN_MILLIS),
+ getGlobalLong(NETSTATS_UID_DELETE_AGE, 90 * DAY_IN_MILLIS));
}
@Override
public Config getUidTagConfig() {
- return new Config(getSecureLong(NETSTATS_UID_TAG_BUCKET_DURATION, 2 * HOUR_IN_MILLIS),
- getSecureLong(NETSTATS_UID_TAG_ROTATE_AGE, 5 * DAY_IN_MILLIS),
- getSecureLong(NETSTATS_UID_TAG_DELETE_AGE, 15 * DAY_IN_MILLIS));
+ return new Config(getGlobalLong(NETSTATS_UID_TAG_BUCKET_DURATION, 2 * HOUR_IN_MILLIS),
+ getGlobalLong(NETSTATS_UID_TAG_ROTATE_AGE, 5 * DAY_IN_MILLIS),
+ getGlobalLong(NETSTATS_UID_TAG_DELETE_AGE, 15 * DAY_IN_MILLIS));
}
@Override
public long getDevPersistBytes(long def) {
- return getSecureLong(NETSTATS_DEV_PERSIST_BYTES, def);
+ return getGlobalLong(NETSTATS_DEV_PERSIST_BYTES, def);
}
@Override
public long getXtPersistBytes(long def) {
@@ -1278,11 +1278,11 @@
}
@Override
public long getUidPersistBytes(long def) {
- return getSecureLong(NETSTATS_UID_PERSIST_BYTES, def);
+ return getGlobalLong(NETSTATS_UID_PERSIST_BYTES, def);
}
@Override
public long getUidTagPersistBytes(long def) {
- return getSecureLong(NETSTATS_UID_TAG_PERSIST_BYTES, def);
+ return getGlobalLong(NETSTATS_UID_TAG_PERSIST_BYTES, def);
}
}
}
diff --git a/services/java/com/android/server/pm/PackageManagerService.java b/services/java/com/android/server/pm/PackageManagerService.java
index fe5889d..2ef1f9e 100644
--- a/services/java/com/android/server/pm/PackageManagerService.java
+++ b/services/java/com/android/server/pm/PackageManagerService.java
@@ -5664,6 +5664,8 @@
filteredFlags = flags & ~PackageManager.INSTALL_FROM_ADB;
}
+ verificationParams.setInstallerUid(uid);
+
final Message msg = mHandler.obtainMessage(INIT_COPY);
msg.obj = new InstallParams(packageURI, observer, filteredFlags, installerPackageName,
verificationParams, encryptionParams, user);
@@ -5902,9 +5904,12 @@
* @return true if verification should be performed
*/
private boolean isVerificationEnabled() {
+ if (!DEFAULT_VERIFY_ENABLE) {
+ return false;
+ }
+
return android.provider.Settings.Global.getInt(mContext.getContentResolver(),
- android.provider.Settings.Global.PACKAGE_VERIFIER_ENABLE,
- DEFAULT_VERIFY_ENABLE ? 1 : 0) == 1 ? true : false;
+ android.provider.Settings.Global.PACKAGE_VERIFIER_ENABLE, 1) == 1;
}
/**
@@ -6334,7 +6339,8 @@
packageFile = mTempPackage;
FileUtils.setPermissions(packageFile.getAbsolutePath(),
- FileUtils.S_IRUSR | FileUtils.S_IWUSR | FileUtils.S_IROTH,
+ FileUtils.S_IRUSR | FileUtils.S_IWUSR | FileUtils.S_IRGRP
+ | FileUtils.S_IROTH,
-1, -1);
} else {
packageFile = null;
@@ -6424,6 +6430,12 @@
verification.putExtra(PackageManager.EXTRA_VERIFICATION_INSTALL_FLAGS, flags);
+ verification.putExtra(PackageManager.EXTRA_VERIFICATION_PACKAGE_NAME,
+ pkgLite.packageName);
+
+ verification.putExtra(PackageManager.EXTRA_VERIFICATION_VERSION_CODE,
+ pkgLite.versionCode);
+
if (verificationParams != null) {
if (verificationParams.getVerificationURI() != null) {
verification.putExtra(PackageManager.EXTRA_VERIFICATION_URI,
@@ -6437,6 +6449,10 @@
verification.putExtra(Intent.EXTRA_REFERRER,
verificationParams.getReferrer());
}
+ if (verificationParams.getInstallerUid() >= 0) {
+ verification.putExtra(PackageManager.EXTRA_VERIFICATION_INSTALLER_UID,
+ verificationParams.getInstallerUid());
+ }
}
final PackageVerificationState verificationState = new PackageVerificationState(
@@ -6515,12 +6531,12 @@
// will succeed.
if (mArgs != null) {
processPendingInstall(mArgs, mRet);
- }
- if (mTempPackage != null) {
- if (!mTempPackage.delete()) {
- Slog.w(TAG, "Couldn't delete temporary file: "
- + mTempPackage.getAbsolutePath());
+ if (mTempPackage != null) {
+ if (!mTempPackage.delete()) {
+ Slog.w(TAG, "Couldn't delete temporary file: " +
+ mTempPackage.getAbsolutePath());
+ }
}
}
}
@@ -7942,17 +7958,23 @@
}
private void deleteTempPackageFiles() {
- FilenameFilter filter = new FilenameFilter() {
+ final FilenameFilter filter = new FilenameFilter() {
public boolean accept(File dir, String name) {
return name.startsWith("vmdl") && name.endsWith(".tmp");
}
};
- String tmpFilesList[] = mAppInstallDir.list(filter);
- if(tmpFilesList == null) {
+ deleteTempPackageFilesInDirectory(mAppInstallDir, filter);
+ deleteTempPackageFilesInDirectory(mDrmAppPrivateInstallDir, filter);
+ }
+
+ private static final void deleteTempPackageFilesInDirectory(File directory,
+ FilenameFilter filter) {
+ final String[] tmpFilesList = directory.list(filter);
+ if (tmpFilesList == null) {
return;
}
- for(int i = 0; i < tmpFilesList.length; i++) {
- File tmpFile = new File(mAppInstallDir, tmpFilesList[i]);
+ for (int i = 0; i < tmpFilesList.length; i++) {
+ final File tmpFile = new File(directory, tmpFilesList[i]);
tmpFile.delete();
}
}
diff --git a/services/java/com/android/server/wm/DisplayContent.java b/services/java/com/android/server/wm/DisplayContent.java
index 4df692b..d1742ff 100644
--- a/services/java/com/android/server/wm/DisplayContent.java
+++ b/services/java/com/android/server/wm/DisplayContent.java
@@ -124,7 +124,9 @@
pw.print("-"); pw.print(mDisplayInfo.largestNominalAppWidth);
pw.print("x"); pw.println(mDisplayInfo.largestNominalAppHeight);
pw.print(" layoutNeeded="); pw.println(layoutNeeded);
- pw.print("magnificationSpec="); pw.println(mMagnificationSpec);
+ if (mMagnificationSpec != null) {
+ pw.print(" mMagnificationSpec="); pw.println(mMagnificationSpec);
+ }
pw.println();
}
}
diff --git a/services/tests/servicestests/src/com/android/server/NetworkPolicyManagerServiceTest.java b/services/tests/servicestests/src/com/android/server/NetworkPolicyManagerServiceTest.java
index a2104bb..167b6c2 100644
--- a/services/tests/servicestests/src/com/android/server/NetworkPolicyManagerServiceTest.java
+++ b/services/tests/servicestests/src/com/android/server/NetworkPolicyManagerServiceTest.java
@@ -54,7 +54,6 @@
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.Signature;
-import android.content.pm.UserInfo;
import android.net.ConnectivityManager;
import android.net.IConnectivityManager;
import android.net.INetworkManagementEventObserver;
@@ -87,9 +86,7 @@
import org.easymock.IAnswer;
import java.io.File;
-import java.util.ArrayList;
import java.util.LinkedHashSet;
-import java.util.List;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
@@ -133,15 +130,12 @@
private long mElapsedRealtime;
private static final int USER_ID = 0;
- private static final int USER_ID_GUEST = 1;
private static final int APP_ID_A = android.os.Process.FIRST_APPLICATION_UID + 800;
private static final int APP_ID_B = android.os.Process.FIRST_APPLICATION_UID + 801;
private static final int UID_A = UserHandle.getUid(USER_ID, APP_ID_A);
private static final int UID_B = UserHandle.getUid(USER_ID, APP_ID_B);
- private static final int UID_A_GUEST = UserHandle.getUid(USER_ID_GUEST, APP_ID_A);
- private static final int UID_B_GUEST = UserHandle.getUid(USER_ID_GUEST, APP_ID_B);
private static final int PID_1 = 400;
private static final int PID_2 = 401;
@@ -258,13 +252,13 @@
@Suppress
public void testPolicyChangeTriggersBroadcast() throws Exception {
- mService.setAppPolicy(APP_ID_A, POLICY_NONE);
+ mService.setUidPolicy(APP_ID_A, POLICY_NONE);
// change background policy and expect broadcast
final Future<Intent> backgroundChanged = mServiceContext.nextBroadcastIntent(
ConnectivityManager.ACTION_BACKGROUND_DATA_SETTING_CHANGED);
- mService.setAppPolicy(APP_ID_A, POLICY_REJECT_METERED_BACKGROUND);
+ mService.setUidPolicy(APP_ID_A, POLICY_REJECT_METERED_BACKGROUND);
backgroundChanged.get();
}
@@ -318,7 +312,6 @@
public void testScreenChangesRules() throws Exception {
Future<Void> future;
- Future<Void> futureGuest;
expectSetUidNetworkRules(UID_A, false);
expectSetUidForeground(UID_A, true);
@@ -331,14 +324,10 @@
// push strict policy for foreground uid, verify ALLOW rule
expectSetUidNetworkRules(UID_A, false);
expectSetUidForeground(UID_A, true);
- expectSetUidNetworkRules(UID_A_GUEST, true);
- expectSetUidForeground(UID_A_GUEST, false);
future = expectRulesChanged(UID_A, RULE_ALLOW_ALL);
- futureGuest = expectRulesChanged(UID_A_GUEST, RULE_REJECT_METERED);
replay();
- mService.setAppPolicy(APP_ID_A, POLICY_REJECT_METERED_BACKGROUND);
+ mService.setUidPolicy(APP_ID_A, POLICY_REJECT_METERED_BACKGROUND);
future.get();
- futureGuest.get();
verifyAndReset();
// now turn screen off and verify REJECT rule
@@ -364,7 +353,6 @@
public void testPolicyNone() throws Exception {
Future<Void> future;
- Future<Void> futureGuest;
expectSetUidNetworkRules(UID_A, false);
expectSetUidForeground(UID_A, true);
@@ -377,14 +365,10 @@
// POLICY_NONE should RULE_ALLOW in foreground
expectSetUidNetworkRules(UID_A, false);
expectSetUidForeground(UID_A, true);
- expectSetUidNetworkRules(UID_A_GUEST, false);
- expectSetUidForeground(UID_A_GUEST, false);
future = expectRulesChanged(UID_A, RULE_ALLOW_ALL);
- futureGuest = expectRulesChanged(UID_A_GUEST, RULE_ALLOW_ALL);
replay();
- mService.setAppPolicy(APP_ID_A, POLICY_NONE);
+ mService.setUidPolicy(APP_ID_A, POLICY_NONE);
future.get();
- futureGuest.get();
verifyAndReset();
// POLICY_NONE should RULE_ALLOW in background
@@ -399,19 +383,14 @@
public void testPolicyReject() throws Exception {
Future<Void> future;
- Future<Void> futureGuest;
// POLICY_REJECT should RULE_ALLOW in background
expectSetUidNetworkRules(UID_A, true);
expectSetUidForeground(UID_A, false);
- expectSetUidNetworkRules(UID_A_GUEST, true);
- expectSetUidForeground(UID_A_GUEST, false);
future = expectRulesChanged(UID_A, RULE_REJECT_METERED);
- futureGuest = expectRulesChanged(UID_A_GUEST, RULE_REJECT_METERED);
replay();
- mService.setAppPolicy(APP_ID_A, POLICY_REJECT_METERED_BACKGROUND);
+ mService.setUidPolicy(APP_ID_A, POLICY_REJECT_METERED_BACKGROUND);
future.get();
- futureGuest.get();
verifyAndReset();
// POLICY_REJECT should RULE_ALLOW in foreground
@@ -435,46 +414,33 @@
public void testPolicyRejectAddRemove() throws Exception {
Future<Void> future;
- Future<Void> futureGuest;
// POLICY_NONE should have RULE_ALLOW in background
expectSetUidNetworkRules(UID_A, false);
expectSetUidForeground(UID_A, false);
- expectSetUidNetworkRules(UID_A_GUEST, false);
- expectSetUidForeground(UID_A_GUEST, false);
future = expectRulesChanged(UID_A, RULE_ALLOW_ALL);
- futureGuest = expectRulesChanged(UID_A_GUEST, RULE_ALLOW_ALL);
replay();
mProcessObserver.onForegroundActivitiesChanged(PID_1, UID_A, false);
- mService.setAppPolicy(APP_ID_A, POLICY_NONE);
+ mService.setUidPolicy(APP_ID_A, POLICY_NONE);
future.get();
- futureGuest.get();
verifyAndReset();
// adding POLICY_REJECT should cause RULE_REJECT
expectSetUidNetworkRules(UID_A, true);
expectSetUidForeground(UID_A, false);
- expectSetUidNetworkRules(UID_A_GUEST, true);
- expectSetUidForeground(UID_A_GUEST, false);
future = expectRulesChanged(UID_A, RULE_REJECT_METERED);
- futureGuest = expectRulesChanged(UID_A_GUEST, RULE_REJECT_METERED);
replay();
- mService.setAppPolicy(APP_ID_A, POLICY_REJECT_METERED_BACKGROUND);
+ mService.setUidPolicy(APP_ID_A, POLICY_REJECT_METERED_BACKGROUND);
future.get();
- futureGuest.get();
verifyAndReset();
// removing POLICY_REJECT should return us to RULE_ALLOW
expectSetUidNetworkRules(UID_A, false);
expectSetUidForeground(UID_A, false);
- expectSetUidNetworkRules(UID_A_GUEST, false);
- expectSetUidForeground(UID_A_GUEST, false);
future = expectRulesChanged(UID_A, RULE_ALLOW_ALL);
- futureGuest = expectRulesChanged(UID_A_GUEST, RULE_ALLOW_ALL);
replay();
- mService.setAppPolicy(APP_ID_A, POLICY_NONE);
+ mService.setUidPolicy(APP_ID_A, POLICY_NONE);
future.get();
- futureGuest.get();
verifyAndReset();
}
@@ -645,34 +611,25 @@
public void testUidRemovedPolicyCleared() throws Exception {
Future<Void> future;
- Future<Void> futureGuest;
// POLICY_REJECT should RULE_REJECT in background
expectSetUidNetworkRules(UID_A, true);
expectSetUidForeground(UID_A, false);
- expectSetUidNetworkRules(UID_A_GUEST, true);
- expectSetUidForeground(UID_A_GUEST, false);
future = expectRulesChanged(UID_A, RULE_REJECT_METERED);
- futureGuest = expectRulesChanged(UID_A_GUEST, RULE_REJECT_METERED);
replay();
- mService.setAppPolicy(APP_ID_A, POLICY_REJECT_METERED_BACKGROUND);
+ mService.setUidPolicy(APP_ID_A, POLICY_REJECT_METERED_BACKGROUND);
future.get();
- futureGuest.get();
verifyAndReset();
// uninstall should clear RULE_REJECT
expectSetUidNetworkRules(UID_A, false);
expectSetUidForeground(UID_A, false);
- expectSetUidNetworkRules(UID_A_GUEST, false);
- expectSetUidForeground(UID_A_GUEST, false);
future = expectRulesChanged(UID_A, RULE_ALLOW_ALL);
- futureGuest = expectRulesChanged(UID_A_GUEST, RULE_ALLOW_ALL);
replay();
final Intent intent = new Intent(ACTION_UID_REMOVED);
intent.putExtra(EXTRA_UID, UID_A);
mServiceContext.sendBroadcast(intent);
future.get();
- futureGuest.get();
verifyAndReset();
}
@@ -880,8 +837,8 @@
private Future<Void> expectClearNotifications() throws Exception {
final FutureAnswer future = new FutureAnswer();
- mNotifManager.cancelNotificationWithTag(isA(String.class), isA(String.class), anyInt(),
- UserHandle.myUserId());
+ mNotifManager.cancelNotificationWithTag(
+ isA(String.class), isA(String.class), anyInt(), anyInt());
expectLastCall().andAnswer(future).anyTimes();
return future;
}
diff --git a/wifi/java/android/net/wifi/WifiNative.java b/wifi/java/android/net/wifi/WifiNative.java
index 805faa6..4c5fc5d 100644
--- a/wifi/java/android/net/wifi/WifiNative.java
+++ b/wifi/java/android/net/wifi/WifiNative.java
@@ -49,6 +49,7 @@
static final int BLUETOOTH_COEXISTENCE_MODE_SENSE = 2;
String mInterface = "";
+ private boolean mSuspendOptEnabled = false;
public native static boolean loadDriver();
@@ -349,6 +350,8 @@
}
public boolean setSuspendOptimizations(boolean enabled) {
+ if (mSuspendOptEnabled == enabled) return true;
+ mSuspendOptEnabled = enabled;
if (enabled) {
return doBooleanCommand("DRIVER SETSUSPENDMODE 1");
} else {
diff --git a/wifi/java/android/net/wifi/WifiStateMachine.java b/wifi/java/android/net/wifi/WifiStateMachine.java
index 4cbb824..c6bb069 100644
--- a/wifi/java/android/net/wifi/WifiStateMachine.java
+++ b/wifi/java/android/net/wifi/WifiStateMachine.java
@@ -141,8 +141,6 @@
private boolean mBluetoothConnectionActive = false;
- private BroadcastReceiver mScreenReceiver;
- private IntentFilter mScreenFilter;
private PowerManager.WakeLock mSuspendWakeLock;
/**
@@ -398,14 +396,14 @@
* Default framework scan interval in milliseconds. This is used in the scenario in which
* wifi chipset does not support background scanning to set up a
* periodic wake up scan so that the device can connect to a new access
- * point on the move. {@link Settings.Secure#WIFI_FRAMEWORK_SCAN_INTERVAL_MS} can
+ * point on the move. {@link Settings.Global#WIFI_FRAMEWORK_SCAN_INTERVAL_MS} can
* override this.
*/
private final int mDefaultFrameworkScanIntervalMs;
/**
* Supplicant scan interval in milliseconds.
- * Comes from {@link Settings.Secure#WIFI_SUPPLICANT_SCAN_INTERVAL_MS} or
+ * Comes from {@link Settings.Global#WIFI_SUPPLICANT_SCAN_INTERVAL_MS} or
* from the default config if the setting is not set
*/
private long mSupplicantScanIntervalMs;
@@ -628,15 +626,16 @@
},
new IntentFilter(ACTION_START_SCAN));
- mScreenFilter = new IntentFilter();
- mScreenFilter.addAction(Intent.ACTION_SCREEN_ON);
- mScreenFilter.addAction(Intent.ACTION_SCREEN_OFF);
- mScreenReceiver = new BroadcastReceiver() {
+ IntentFilter screenFilter = new IntentFilter();
+ screenFilter.addAction(Intent.ACTION_SCREEN_ON);
+ screenFilter.addAction(Intent.ACTION_SCREEN_OFF);
+ BroadcastReceiver screenReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals(Intent.ACTION_SCREEN_ON)) {
+ if (DBG) log("ACTION_SCREEN_ON");
enableRssiPolling(true);
if (mBackgroundScanSupported) {
enableBackgroundScanCommand(false);
@@ -647,6 +646,7 @@
sendMessage(obtainMessage(CMD_SET_SUSPEND_OPT_ENABLED, 0, 0));
}
} else if (action.equals(Intent.ACTION_SCREEN_OFF)) {
+ if (DBG) log("ACTION_SCREEN_OFF");
enableRssiPolling(false);
if (mBackgroundScanSupported) {
enableBackgroundScanCommand(true);
@@ -660,6 +660,7 @@
}
}
};
+ mContext.registerReceiver(screenReceiver, screenFilter);
mContext.registerReceiver(
new BroadcastReceiver() {
@@ -1335,12 +1336,10 @@
/* None of dhcp, screen or highperf need it disabled and user wants it enabled */
if (mSuspendOptNeedsDisabled == 0 && mUserWantsSuspendOpt.get()) {
mWifiNative.setSuspendOptimizations(true);
- if (DBG) log("Enabled, mSuspendOptNeedsDisabled " + mSuspendOptNeedsDisabled);
}
} else {
mSuspendOptNeedsDisabled |= reason;
mWifiNative.setSuspendOptimizations(false);
- if (DBG) log("Disabled, mSuspendOptNeedsDisabled " + mSuspendOptNeedsDisabled);
}
}
@@ -2403,8 +2402,8 @@
int defaultInterval = mContext.getResources().getInteger(
com.android.internal.R.integer.config_wifi_supplicant_scan_interval);
- mSupplicantScanIntervalMs = Settings.Secure.getLong(mContext.getContentResolver(),
- Settings.Secure.WIFI_SUPPLICANT_SCAN_INTERVAL_MS,
+ mSupplicantScanIntervalMs = Settings.Global.getLong(mContext.getContentResolver(),
+ Settings.Global.WIFI_SUPPLICANT_SCAN_INTERVAL_MS,
defaultInterval);
mWifiNative.setScanInterval((int)mSupplicantScanIntervalMs / 1000);
@@ -2723,8 +2722,6 @@
}
if (mP2pSupported) mWifiP2pChannel.sendMessage(WifiStateMachine.CMD_ENABLE_P2P);
-
- mContext.registerReceiver(mScreenReceiver, mScreenFilter);
}
@Override
public boolean processMessage(Message message) {
@@ -2861,7 +2858,6 @@
mScanResults = new ArrayList<ScanResult>();
if (mP2pSupported) mWifiP2pChannel.sendMessage(WifiStateMachine.CMD_DISABLE_P2P);
- mContext.unregisterReceiver(mScreenReceiver);
}
}
@@ -3445,8 +3441,8 @@
if (DBG) log(getName() + "\n");
EventLog.writeEvent(EVENTLOG_WIFI_STATE_CHANGED, getName());
- mFrameworkScanIntervalMs = Settings.Secure.getLong(mContext.getContentResolver(),
- Settings.Secure.WIFI_FRAMEWORK_SCAN_INTERVAL_MS,
+ mFrameworkScanIntervalMs = Settings.Global.getLong(mContext.getContentResolver(),
+ Settings.Global.WIFI_FRAMEWORK_SCAN_INTERVAL_MS,
mDefaultFrameworkScanIntervalMs);
/*
* We initiate background scanning if it is enabled, otherwise we
diff --git a/wifi/java/android/net/wifi/p2p/WifiP2pService.java b/wifi/java/android/net/wifi/p2p/WifiP2pService.java
index 3575d97..edd1dac 100644
--- a/wifi/java/android/net/wifi/p2p/WifiP2pService.java
+++ b/wifi/java/android/net/wifi/p2p/WifiP2pService.java
@@ -135,7 +135,7 @@
private static final int DISCOVER_TIMEOUT_S = 120;
/* Idle time after a peer is gone when the group is torn down */
- private static final int GROUP_IDLE_TIME_S = 2;
+ private static final int GROUP_IDLE_TIME_S = 5;
/**
* Delay between restarts upon failure to setup connection with supplicant