Merge "Import translations. DO NOT MERGE ANYWHERE" into tm-dev
diff --git a/apex/jobscheduler/framework/java/android/app/job/JobInfo.java b/apex/jobscheduler/framework/java/android/app/job/JobInfo.java
index 4710322..f49cdbf 100644
--- a/apex/jobscheduler/framework/java/android/app/job/JobInfo.java
+++ b/apex/jobscheduler/framework/java/android/app/job/JobInfo.java
@@ -1777,10 +1777,7 @@
* {@link Build.VERSION_CODES#S}, but starting from Android version
* {@link Build.VERSION_CODES#TIRAMISU}, expedited jobs for the foreground app are
* guaranteed to be started before {@link JobScheduler#schedule(JobInfo)} returns (assuming
- * all requested constraints are satisfied), similar to foreground services. However, this
- * start guarantee means there is a higher chance of overlapping executions, as noted in
- * {@link JobService}, so be sure to handle that properly if you intend to reschedule the
- * job while it's actively running.
+ * all requested constraints are satisfied), similar to foreground services.
*
* @see JobInfo#isExpedited()
*/
diff --git a/apex/jobscheduler/framework/java/android/app/job/JobScheduler.java b/apex/jobscheduler/framework/java/android/app/job/JobScheduler.java
index 388bbf1..632ecb2c 100644
--- a/apex/jobscheduler/framework/java/android/app/job/JobScheduler.java
+++ b/apex/jobscheduler/framework/java/android/app/job/JobScheduler.java
@@ -107,9 +107,7 @@
/**
* Schedule a job to be executed. Will replace any currently scheduled job with the same
* ID with the new information in the {@link JobInfo}. If a job with the given ID is currently
- * running, it will be stopped. Note that in some cases, the newly scheduled job may be started
- * before the previously running job has been fully stopped. See {@link JobService} for
- * additional details.
+ * running, it will be stopped.
*
* <p class="caution"><strong>Note:</strong> Scheduling a job can have a high cost, even if it's
* rescheduling the same job and the job didn't execute, especially on platform versions before
diff --git a/apex/jobscheduler/framework/java/android/app/job/JobService.java b/apex/jobscheduler/framework/java/android/app/job/JobService.java
index 7ed4b62..d184d44 100644
--- a/apex/jobscheduler/framework/java/android/app/job/JobService.java
+++ b/apex/jobscheduler/framework/java/android/app/job/JobService.java
@@ -32,16 +32,11 @@
* {@link #onStopJob(android.app.job.JobParameters)}, which is meant to inform you that the
* scheduling requirements are no longer being met.</p>
*
- * As a subclass of {@link Service}, there will only be one active instance of any JobService
+ * <p>As a subclass of {@link Service}, there will only be one active instance of any JobService
* subclasses, regardless of job ID. This means that if you schedule multiple jobs with different
* job IDs but using the same JobService class, that JobService may receive multiple calls to
* {@link #onStartJob(JobParameters)} and {@link #onStopJob(JobParameters)}, with each call being
- * for the separate jobs.
- *
- * <p class="note">Note that if you cancel and reschedule an already executing job,
- * there may be a small period of time where {@link #onStartJob(JobParameters)} has been called for
- * the newly scheduled job instance before {@link #onStopJob(JobParameters)} has been called or
- * fully processed for the old job.</p>
+ * for the separate jobs.</p>
*/
public abstract class JobService extends Service {
private static final String TAG = "JobService";
diff --git a/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java b/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java
index e9ce87f..2eb86c1 100644
--- a/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java
+++ b/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java
@@ -693,6 +693,7 @@
synchronized (DeviceIdleController.this) {
if (mStationaryListeners.size() > 0) {
startMonitoringMotionLocked();
+ scheduleMotionTimeoutAlarmLocked();
}
}
};
@@ -3859,7 +3860,7 @@
void handleMotionDetectedLocked(long timeout, String type) {
if (mStationaryListeners.size() > 0) {
postStationaryStatusUpdated();
- scheduleMotionTimeoutAlarmLocked();
+ cancelMotionTimeoutAlarmLocked();
// We need to re-register the motion listener, but we don't want the sensors to be
// constantly active or to churn the CPU by registering too early, register after some
// delay.
diff --git a/apex/jobscheduler/service/java/com/android/server/job/JobConcurrencyManager.java b/apex/jobscheduler/service/java/com/android/server/job/JobConcurrencyManager.java
index d5a7f28..28116a8 100644
--- a/apex/jobscheduler/service/java/com/android/server/job/JobConcurrencyManager.java
+++ b/apex/jobscheduler/service/java/com/android/server/job/JobConcurrencyManager.java
@@ -717,17 +717,9 @@
final boolean isTopEj = nextPending.shouldTreatAsExpeditedJob()
&& nextPending.lastEvaluatedBias == JobInfo.BIAS_TOP_APP;
- // Avoid overlapping job execution as much as possible.
- if (!isTopEj && isSimilarJobRunningLocked(nextPending)) {
- if (DEBUG) {
- Slog.w(TAG, "Delaying execution of job because of similarly running one: "
- + nextPending);
- }
- // It would be nice to let the JobService running the other similar job know about
- // this new job so that it doesn't unbind from the JobService and we can call
- // onStartJob as soon as the older job finishes.
- // TODO: optimize the job reschedule flow to reduce service binding churn
- continue;
+ if (DEBUG && isSimilarJobRunningLocked(nextPending)) {
+ Slog.w(TAG, "Already running similar " + (isTopEj ? "TOP-EJ" : "job")
+ + " to: " + nextPending);
}
// Find an available slot for nextPending. The context should be one of the following:
@@ -1206,13 +1198,8 @@
continue;
}
- // Avoid overlapping job execution as much as possible.
- if (isSimilarJobRunningLocked(nextPending)) {
- if (DEBUG) {
- Slog.w(TAG, "Avoiding execution of job because of similarly running one: "
- + nextPending);
- }
- continue;
+ if (DEBUG && isSimilarJobRunningLocked(nextPending)) {
+ Slog.w(TAG, "Already running similar job to: " + nextPending);
}
if (worker.getPreferredUid() != nextPending.getUid()) {
@@ -1298,13 +1285,8 @@
continue;
}
- // Avoid overlapping job execution as much as possible.
- if (isSimilarJobRunningLocked(nextPending)) {
- if (DEBUG) {
- Slog.w(TAG, "Avoiding execution of job because of similarly running one: "
- + nextPending);
- }
- continue;
+ if (DEBUG && isSimilarJobRunningLocked(nextPending)) {
+ Slog.w(TAG, "Already running similar job to: " + nextPending);
}
if (isPkgConcurrencyLimitedLocked(nextPending)) {
diff --git a/apex/jobscheduler/service/java/com/android/server/job/JobSchedulerService.java b/apex/jobscheduler/service/java/com/android/server/job/JobSchedulerService.java
index cd70e88..60afdc7 100644
--- a/apex/jobscheduler/service/java/com/android/server/job/JobSchedulerService.java
+++ b/apex/jobscheduler/service/java/com/android/server/job/JobSchedulerService.java
@@ -1208,22 +1208,12 @@
// This may throw a SecurityException.
jobStatus.prepareLocked();
- final boolean canExecuteImmediately;
if (toCancel != null) {
// Implicitly replaces the existing job record with the new instance
- final boolean wasJobExecuting = cancelJobImplLocked(toCancel, jobStatus,
- JobParameters.STOP_REASON_CANCELLED_BY_APP,
- JobParameters.INTERNAL_STOP_REASON_CANCELED,
- "job rescheduled by app");
- // Avoid overlapping job executions. Don't push for immediate execution if an old
- // job with the same ID was running, but let TOP EJs start immediately.
- canExecuteImmediately = !wasJobExecuting
- || (jobStatus.isRequestedExpeditedJob()
- && mUidBiasOverride.get(jobStatus.getSourceUid(), JobInfo.BIAS_DEFAULT)
- == JobInfo.BIAS_TOP_APP);
+ cancelJobImplLocked(toCancel, jobStatus, JobParameters.STOP_REASON_CANCELLED_BY_APP,
+ JobParameters.INTERNAL_STOP_REASON_CANCELED, "job rescheduled by app");
} else {
startTrackingJobLocked(jobStatus, null);
- canExecuteImmediately = true;
}
if (work != null) {
@@ -1266,12 +1256,7 @@
// list and try to run it.
mJobPackageTracker.notePending(jobStatus);
mPendingJobQueue.add(jobStatus);
- if (canExecuteImmediately) {
- // Don't ask the JobConcurrencyManager to try to run the job immediately. The
- // JobServiceContext will ask the JobConcurrencyManager for another job once
- // it finishes cleaning up the old job.
- maybeRunPendingJobsLocked();
- }
+ maybeRunPendingJobsLocked();
} else {
evaluateControllerStatesLocked(jobStatus);
}
@@ -1392,10 +1377,8 @@
* is null, the cancelled job is removed outright from the system. If
* {@code incomingJob} is non-null, it replaces {@code cancelled} in the store of
* currently scheduled jobs.
- *
- * @return true if the cancelled job was running
*/
- private boolean cancelJobImplLocked(JobStatus cancelled, JobStatus incomingJob,
+ private void cancelJobImplLocked(JobStatus cancelled, JobStatus incomingJob,
@JobParameters.StopReason int reason, int internalReasonCode, String debugReason) {
if (DEBUG) Slog.d(TAG, "CANCEL: " + cancelled.toShortString());
cancelled.unprepareLocked();
@@ -1406,7 +1389,7 @@
}
mChangedJobList.remove(cancelled);
// Cancel if running.
- boolean wasRunning = mConcurrencyManager.stopJobOnServiceContextLocked(
+ mConcurrencyManager.stopJobOnServiceContextLocked(
cancelled, reason, internalReasonCode, debugReason);
// If this is a replacement, bring in the new version of the job
if (incomingJob != null) {
@@ -1414,7 +1397,6 @@
startTrackingJobLocked(incomingJob, cancelled);
}
reportActiveLocked();
- return wasRunning;
}
void updateUidState(int uid, int procState) {
diff --git a/apex/jobscheduler/service/java/com/android/server/tare/InternalResourceService.java b/apex/jobscheduler/service/java/com/android/server/tare/InternalResourceService.java
index 9c7d702..2da00c7 100644
--- a/apex/jobscheduler/service/java/com/android/server/tare/InternalResourceService.java
+++ b/apex/jobscheduler/service/java/com/android/server/tare/InternalResourceService.java
@@ -382,7 +382,7 @@
if (increased) {
mAgent.distributeBasicIncomeLocked(newBatteryLevel);
} else if (newBatteryLevel == mCurrentBatteryLevel) {
- Slog.wtf(TAG, "Battery level stayed the same");
+ // The broadcast is also sent when the plug type changes...
return;
}
mCurrentBatteryLevel = newBatteryLevel;
diff --git a/apex/jobscheduler/service/java/com/android/server/usage/AppIdleHistory.java b/apex/jobscheduler/service/java/com/android/server/usage/AppIdleHistory.java
index c90291e..fb342b9 100644
--- a/apex/jobscheduler/service/java/com/android/server/usage/AppIdleHistory.java
+++ b/apex/jobscheduler/service/java/com/android/server/usage/AppIdleHistory.java
@@ -328,11 +328,13 @@
appUsageHistory.lastUsedScreenTime = getScreenOnTime(nowElapsedRealtimeMs);
}
- if (appUsageHistory.currentBucket > newBucket) {
- appUsageHistory.currentBucket = newBucket;
- logAppStandbyBucketChanged(packageName, userId, newBucket, bucketingReason);
+ if (appUsageHistory.currentBucket >= newBucket) {
+ if (appUsageHistory.currentBucket > newBucket) {
+ appUsageHistory.currentBucket = newBucket;
+ logAppStandbyBucketChanged(packageName, userId, newBucket, bucketingReason);
+ }
+ appUsageHistory.bucketingReason = bucketingReason;
}
- appUsageHistory.bucketingReason = bucketingReason;
return appUsageHistory;
}
diff --git a/apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java b/apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java
index 1c4ec85..c9afdad 100644
--- a/apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java
+++ b/apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java
@@ -225,6 +225,11 @@
| PackageManager.MATCH_DISABLED_COMPONENTS
| PackageManager.MATCH_SYSTEM_ONLY;
+ private static final int NOTIFICATION_SEEN_PROMOTED_BUCKET_FOR_PRE_T_APPS =
+ STANDBY_BUCKET_WORKING_SET;
+ private static final long NOTIFICATION_SEEN_HOLD_DURATION_FOR_PRE_T_APPS =
+ COMPRESS_TIME ? 12 * ONE_MINUTE : 12 * ONE_HOUR;
+
// To name the lock for stack traces
static class Lock {}
@@ -320,11 +325,17 @@
int mNotificationSeenPromotedBucket =
ConstantsObserver.DEFAULT_NOTIFICATION_SEEN_PROMOTED_BUCKET;
/**
- * If true, tell each {@link AppIdleStateChangeListener} to give quota bump for each
+ * If {@code true}, tell each {@link AppIdleStateChangeListener} to give quota bump for each
* notification seen event.
*/
private boolean mTriggerQuotaBumpOnNotificationSeen =
ConstantsObserver.DEFAULT_TRIGGER_QUOTA_BUMP_ON_NOTIFICATION_SEEN;
+ /**
+ * If {@code true}, we will retain the pre-T impact of notification signal on apps targeting
+ * pre-T sdk levels regardless of other flag changes.
+ */
+ boolean mRetainNotificationSeenImpactForPreTApps =
+ ConstantsObserver.DEFAULT_RETAIN_NOTIFICATION_SEEN_IMPACT_FOR_PRE_T_APPS;
/** Minimum time a system update event should keep the buckets elevated. */
long mSystemUpdateUsageTimeoutMillis = ConstantsObserver.DEFAULT_SYSTEM_UPDATE_TIMEOUT;
/** Maximum time to wait for a prediction before using simple timeouts to downgrade buckets. */
@@ -1098,17 +1109,29 @@
final int subReason = usageEventToSubReason(eventType);
final int reason = REASON_MAIN_USAGE | subReason;
if (eventType == UsageEvents.Event.NOTIFICATION_SEEN) {
- if (mTriggerQuotaBumpOnNotificationSeen) {
- mHandler.obtainMessage(MSG_TRIGGER_LISTENER_QUOTA_BUMP, userId, -1, pkg)
- .sendToTarget();
+ final int notificationSeenPromotedBucket;
+ final long notificationSeenTimeoutMillis;
+ if (mRetainNotificationSeenImpactForPreTApps
+ && getTargetSdkVersion(pkg) < Build.VERSION_CODES.TIRAMISU) {
+ notificationSeenPromotedBucket =
+ NOTIFICATION_SEEN_PROMOTED_BUCKET_FOR_PRE_T_APPS;
+ notificationSeenTimeoutMillis =
+ NOTIFICATION_SEEN_HOLD_DURATION_FOR_PRE_T_APPS;
+ } else {
+ if (mTriggerQuotaBumpOnNotificationSeen) {
+ mHandler.obtainMessage(MSG_TRIGGER_LISTENER_QUOTA_BUMP, userId, -1, pkg)
+ .sendToTarget();
+ }
+ notificationSeenPromotedBucket = mNotificationSeenPromotedBucket;
+ notificationSeenTimeoutMillis = mNotificationSeenTimeoutMillis;
}
// Notification-seen elevates to a higher bucket (depending on
// {@link ConstantsObserver#KEY_NOTIFICATION_SEEN_PROMOTED_BUCKET}) but doesn't
// change usage time.
mAppIdleHistory.reportUsage(appHistory, pkg, userId,
- mNotificationSeenPromotedBucket, subReason,
- 0, elapsedRealtime + mNotificationSeenTimeoutMillis);
- nextCheckDelay = mNotificationSeenTimeoutMillis;
+ notificationSeenPromotedBucket, subReason,
+ 0, elapsedRealtime + notificationSeenTimeoutMillis);
+ nextCheckDelay = notificationSeenTimeoutMillis;
} else if (eventType == UsageEvents.Event.SLICE_PINNED) {
// Mild usage elevates to WORKING_SET but doesn't change usage time.
mAppIdleHistory.reportUsage(appHistory, pkg, userId,
@@ -1149,6 +1172,10 @@
}
}
+ private int getTargetSdkVersion(String packageName) {
+ return mInjector.getPackageManagerInternal().getPackageTargetSdkVersion(packageName);
+ }
+
/**
* Returns the lowest standby bucket that is better than {@code targetBucket} and has an
* valid expiry time (i.e. the expiry time is not yet elapsed).
@@ -2226,6 +2253,9 @@
pw.print(" mTriggerQuotaBumpOnNotificationSeen=");
pw.print(mTriggerQuotaBumpOnNotificationSeen);
pw.println();
+ pw.print(" mRetainNotificationSeenImpactForPreTApps=");
+ pw.print(mRetainNotificationSeenImpactForPreTApps);
+ pw.println();
pw.print(" mSlicePinnedTimeoutMillis=");
TimeUtils.formatDuration(mSlicePinnedTimeoutMillis, pw);
pw.println();
@@ -2712,6 +2742,8 @@
"notification_seen_duration";
private static final String KEY_NOTIFICATION_SEEN_PROMOTED_BUCKET =
"notification_seen_promoted_bucket";
+ private static final String KEY_RETAIN_NOTIFICATION_SEEN_IMPACT_FOR_PRE_T_APPS =
+ "retain_notification_seen_impact_for_pre_t_apps";
private static final String KEY_TRIGGER_QUOTA_BUMP_ON_NOTIFICATION_SEEN =
"trigger_quota_bump_on_notification_seen";
private static final String KEY_SLICE_PINNED_HOLD_DURATION =
@@ -2773,6 +2805,7 @@
COMPRESS_TIME ? 12 * ONE_MINUTE : 12 * ONE_HOUR;
public static final int DEFAULT_NOTIFICATION_SEEN_PROMOTED_BUCKET =
STANDBY_BUCKET_WORKING_SET;
+ public static final boolean DEFAULT_RETAIN_NOTIFICATION_SEEN_IMPACT_FOR_PRE_T_APPS = false;
public static final boolean DEFAULT_TRIGGER_QUOTA_BUMP_ON_NOTIFICATION_SEEN = false;
public static final long DEFAULT_SYSTEM_UPDATE_TIMEOUT =
COMPRESS_TIME ? 2 * ONE_MINUTE : 2 * ONE_HOUR;
@@ -2874,6 +2907,11 @@
KEY_NOTIFICATION_SEEN_PROMOTED_BUCKET,
DEFAULT_NOTIFICATION_SEEN_PROMOTED_BUCKET);
break;
+ case KEY_RETAIN_NOTIFICATION_SEEN_IMPACT_FOR_PRE_T_APPS:
+ mRetainNotificationSeenImpactForPreTApps = properties.getBoolean(
+ KEY_RETAIN_NOTIFICATION_SEEN_IMPACT_FOR_PRE_T_APPS,
+ DEFAULT_RETAIN_NOTIFICATION_SEEN_IMPACT_FOR_PRE_T_APPS);
+ break;
case KEY_TRIGGER_QUOTA_BUMP_ON_NOTIFICATION_SEEN:
mTriggerQuotaBumpOnNotificationSeen = properties.getBoolean(
KEY_TRIGGER_QUOTA_BUMP_ON_NOTIFICATION_SEEN,
diff --git a/apex/jobscheduler/service/java/com/android/server/usage/TEST_MAPPING b/apex/jobscheduler/service/java/com/android/server/usage/TEST_MAPPING
index e407e31..a6a3aaf 100644
--- a/apex/jobscheduler/service/java/com/android/server/usage/TEST_MAPPING
+++ b/apex/jobscheduler/service/java/com/android/server/usage/TEST_MAPPING
@@ -19,6 +19,18 @@
]
}
],
+ "presubmit-large": [
+ {
+ "name": "CtsUsageStatsTestCases",
+ "options": [
+ {"include-filter": "android.app.usage.cts.BroadcastResponseStatsTest"},
+ {"exclude-annotation": "android.platform.test.annotations.FlakyTest"},
+ {"exclude-annotation": "androidx.test.filters.FlakyTest"},
+ {"exclude-annotation": "androidx.test.filters.MediumTest"},
+ {"exclude-annotation": "androidx.test.filters.LargeTest"}
+ ]
+ }
+ ],
"postsubmit": [
{
"name": "CtsUsageStatsTestCases"
diff --git a/core/api/test-current.txt b/core/api/test-current.txt
index fe99c71..48277fb 100644
--- a/core/api/test-current.txt
+++ b/core/api/test-current.txt
@@ -2923,7 +2923,7 @@
method public static int getHoverTooltipHideTimeout();
method public static int getHoverTooltipShowTimeout();
method public static int getLongPressTooltipHideTimeout();
- method public int getPreferKeepClearForFocusDelay();
+ method public boolean isPreferKeepClearForFocusEnabled();
}
public class ViewDebug {
diff --git a/core/java/android/app/IActivityTaskManager.aidl b/core/java/android/app/IActivityTaskManager.aidl
index 201473f..fe75dd3 100644
--- a/core/java/android/app/IActivityTaskManager.aidl
+++ b/core/java/android/app/IActivityTaskManager.aidl
@@ -348,6 +348,7 @@
/**
* Prepare the back navigation in the server. This setups the leashed for sysui to animate
* the back gesture and returns the data needed for the animation.
+ * @param requestAnimation true if the caller wishes to animate the back navigation
*/
- android.window.BackNavigationInfo startBackNavigation();
+ android.window.BackNavigationInfo startBackNavigation(in boolean requestAnimation);
}
diff --git a/core/java/android/app/LocaleConfig.java b/core/java/android/app/LocaleConfig.java
index 7c83d58..bbe3ce3 100644
--- a/core/java/android/app/LocaleConfig.java
+++ b/core/java/android/app/LocaleConfig.java
@@ -99,7 +99,7 @@
XmlResourceParser parser = res.getXml(resId);
parseLocaleConfig(parser, res);
} catch (Resources.NotFoundException e) {
- Slog.w(TAG, "The resource file pointed to by the given resource ID isn't found.", e);
+ Slog.w(TAG, "The resource file pointed to by the given resource ID isn't found.");
mStatus = STATUS_NOT_SPECIFIED;
} catch (XmlPullParserException | IOException e) {
Slog.w(TAG, "Failed to parse XML configuration from "
diff --git a/core/java/android/app/WindowConfiguration.java b/core/java/android/app/WindowConfiguration.java
index 5ef3fc0..e96a986 100644
--- a/core/java/android/app/WindowConfiguration.java
+++ b/core/java/android/app/WindowConfiguration.java
@@ -345,6 +345,14 @@
mAlwaysOnTop = alwaysOnTop ? ALWAYS_ON_TOP_ON : ALWAYS_ON_TOP_OFF;
}
+ /**
+ * Unsets always-on-top to undefined.
+ * @hide
+ */
+ public void unsetAlwaysOnTop() {
+ mAlwaysOnTop = ALWAYS_ON_TOP_UNDEFINED;
+ }
+
private void setAlwaysOnTop(@AlwaysOnTop int alwaysOnTop) {
mAlwaysOnTop = alwaysOnTop;
}
diff --git a/core/java/android/app/admin/DevicePolicyManager.java b/core/java/android/app/admin/DevicePolicyManager.java
index 93f91e5..b7f1136 100644
--- a/core/java/android/app/admin/DevicePolicyManager.java
+++ b/core/java/android/app/admin/DevicePolicyManager.java
@@ -2515,7 +2515,8 @@
* If another app already had delegated network logging access,
* it will lose the delegation when a new app is delegated.
*
- * <p> Can only be granted by Device Owner or Profile Owner of a managed profile.
+ * <p> Device Owner can grant this access since Android 10. Profile Owner of a managed profile
+ * can grant this access since Android 12.
*/
public static final String DELEGATION_NETWORK_LOGGING = "delegation-network-logging";
@@ -13255,9 +13256,11 @@
* Called by a device owner, profile owner of a managed profile or delegated app with
* {@link #DELEGATION_NETWORK_LOGGING} to control the network logging feature.
*
- * <p> Supported for a device owner from Android 8. Supported for a profile owner of a managed
- * profile from Android 12. When network logging is enabled by a profile owner, the network logs
- * will only include work profile network activity, not activity on the personal profile.
+ * <p> Supported for a device owner from Android 8 and a delegated app granted by a device
+ * owner from Android 10. Supported for a profile owner of a managed profile and a delegated
+ * app granted by a profile owner from Android 12. When network logging is enabled by a
+ * profile owner, the network logs will only include work profile network activity, not
+ * activity on the personal profile.
*
* <p> Network logs contain DNS lookup and connect() library call events. The following library
* functions are recorded while network logging is active:
diff --git a/core/java/android/app/admin/ProvisioningIntentHelper.java b/core/java/android/app/admin/ProvisioningIntentHelper.java
index 1c38559..894f706 100644
--- a/core/java/android/app/admin/ProvisioningIntentHelper.java
+++ b/core/java/android/app/admin/ProvisioningIntentHelper.java
@@ -18,10 +18,26 @@
import static android.app.admin.DevicePolicyManager.ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE;
import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_ALLOW_OFFLINE;
import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_DEVICE_ADMIN_MINIMUM_VERSION_CODE;
import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_NAME;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_KEEP_ACCOUNT_ON_MIGRATION;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_KEEP_SCREEN_ON;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_LOCAL_TIME;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_RETURN_BEFORE_POLICY_COMPLIANCE;
import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_ROLE_HOLDER_EXTRAS_BUNDLE;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_SENSORS_PERMISSION_GRANT_OPT_OUT;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_SHOULD_LAUNCH_RESULT_INTENT;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_SKIP_EDUCATION_SCREENS;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_SKIP_ENCRYPTION;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_SKIP_OWNERSHIP_DISCLAIMER;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_SUPPORTED_MODES;
import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_TRIGGER;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_USE_MOBILE_DATA;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_WIFI_HIDDEN;
+import static android.app.admin.DevicePolicyManager.EXTRA_PROVISIONING_WIFI_PROXY_PORT;
import static android.app.admin.DevicePolicyManager.MIME_TYPE_PROVISIONING_NFC;
import static android.app.admin.DevicePolicyManager.PROVISIONING_TRIGGER_NFC;
import static android.nfc.NfcAdapter.EXTRA_NDEF_MESSAGES;
@@ -44,6 +60,8 @@
import java.io.IOException;
import java.io.StringReader;
import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Map;
import java.util.Properties;
import java.util.Set;
@@ -52,6 +70,8 @@
*/
final class ProvisioningIntentHelper {
+ private static final Map<String, Class> EXTRAS_TO_CLASS_MAP = createExtrasToClassMap();
+
private static final String TAG = "ProvisioningIntentHelper";
/**
@@ -124,12 +144,11 @@
private static void addPropertyToBundle(
String propertyName, Properties properties, Bundle bundle) {
- if(EXTRA_PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME.equals(propertyName)) {
+ if (EXTRAS_TO_CLASS_MAP.get(propertyName) == ComponentName.class) {
ComponentName componentName = ComponentName.unflattenFromString(
properties.getProperty(propertyName));
bundle.putParcelable(propertyName, componentName);
- } else if (EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE.equals(propertyName)
- || EXTRA_PROVISIONING_ROLE_HOLDER_EXTRAS_BUNDLE.equals(propertyName)) {
+ } else if (EXTRAS_TO_CLASS_MAP.get(propertyName) == PersistableBundle.class) {
try {
bundle.putParcelable(propertyName,
deserializeExtrasBundle(properties, propertyName));
@@ -137,6 +156,13 @@
Log.e(TAG,
"Failed to parse " + propertyName + ".", e);
}
+ } else if (EXTRAS_TO_CLASS_MAP.get(propertyName) == Boolean.class) {
+ bundle.putBoolean(propertyName,
+ Boolean.parseBoolean(properties.getProperty(propertyName)));
+ } else if (EXTRAS_TO_CLASS_MAP.get(propertyName) == Long.class) {
+ bundle.putLong(propertyName, Long.parseLong(properties.getProperty(propertyName)));
+ } else if (EXTRAS_TO_CLASS_MAP.get(propertyName) == Integer.class) {
+ bundle.putInt(propertyName, Integer.parseInt(properties.getProperty(propertyName)));
}
else {
bundle.putString(propertyName, properties.getProperty(propertyName));
@@ -213,4 +239,61 @@
Log.i(TAG, "No compatible records found on nfcIntent");
return null;
}
+
+ private static Map<String, Class> createExtrasToClassMap() {
+ Map<String, Class> map = new HashMap<>();
+ for (String extra : getBooleanExtras()) {
+ map.put(extra, Boolean.class);
+ }
+ for (String extra : getLongExtras()) {
+ map.put(extra, Long.class);
+ }
+ for (String extra : getIntExtras()) {
+ map.put(extra, Integer.class);
+ }
+ for (String extra : getComponentNameExtras()) {
+ map.put(extra, ComponentName.class);
+ }
+ for (String extra : getPersistableBundleExtras()) {
+ map.put(extra, PersistableBundle.class);
+ }
+ return map;
+ }
+
+ private static Set<String> getPersistableBundleExtras() {
+ return Set.of(
+ EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE,
+ EXTRA_PROVISIONING_ROLE_HOLDER_EXTRAS_BUNDLE);
+ }
+
+ private static Set<String> getComponentNameExtras() {
+ return Set.of(EXTRA_PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME);
+ }
+
+ private static Set<String> getIntExtras() {
+ return Set.of(
+ EXTRA_PROVISIONING_WIFI_PROXY_PORT,
+ EXTRA_PROVISIONING_DEVICE_ADMIN_MINIMUM_VERSION_CODE,
+ EXTRA_PROVISIONING_SUPPORTED_MODES);
+ }
+
+ private static Set<String> getLongExtras() {
+ return Set.of(EXTRA_PROVISIONING_LOCAL_TIME);
+ }
+
+ private static Set<String> getBooleanExtras() {
+ return Set.of(
+ EXTRA_PROVISIONING_ALLOW_OFFLINE,
+ EXTRA_PROVISIONING_SHOULD_LAUNCH_RESULT_INTENT,
+ EXTRA_PROVISIONING_KEEP_ACCOUNT_ON_MIGRATION,
+ EXTRA_PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED,
+ EXTRA_PROVISIONING_WIFI_HIDDEN,
+ EXTRA_PROVISIONING_SENSORS_PERMISSION_GRANT_OPT_OUT,
+ EXTRA_PROVISIONING_SKIP_ENCRYPTION,
+ EXTRA_PROVISIONING_SKIP_EDUCATION_SCREENS,
+ EXTRA_PROVISIONING_USE_MOBILE_DATA,
+ EXTRA_PROVISIONING_SKIP_OWNERSHIP_DISCLAIMER,
+ EXTRA_PROVISIONING_RETURN_BEFORE_POLICY_COMPLIANCE,
+ EXTRA_PROVISIONING_KEEP_SCREEN_ON);
+ }
}
diff --git a/core/java/android/content/Intent.java b/core/java/android/content/Intent.java
index a50ff3841..7a88a057 100644
--- a/core/java/android/content/Intent.java
+++ b/core/java/android/content/Intent.java
@@ -3259,7 +3259,7 @@
/**
- * Broadcast Action: Sent when the current battery level changes.
+ * Broadcast Action: Sent when the current battery level or plug type changes.
*
* It has {@link android.os.BatteryManager#EXTRA_EVENTS} that carries a list of {@link Bundle}
* instances representing individual battery level changes with associated
diff --git a/core/java/android/service/appprediction/AppPredictionService.java b/core/java/android/service/appprediction/AppPredictionService.java
index 2d8aee5..4f37cd9 100644
--- a/core/java/android/service/appprediction/AppPredictionService.java
+++ b/core/java/android/service/appprediction/AppPredictionService.java
@@ -224,17 +224,16 @@
}
final CallbackWrapper wrapper = findCallbackWrapper(callbacks, callback);
- if (wrapper != null) {
- removeCallbackWrapper(callbacks, wrapper);
- }
+ removeCallbackWrapper(callbacks, wrapper);
}
- private void removeCallbackWrapper(
- ArrayList<CallbackWrapper> callbacks, CallbackWrapper wrapper) {
- if (callbacks == null) {
+ private void removeCallbackWrapper(@Nullable ArrayList<CallbackWrapper> callbacks,
+ @Nullable CallbackWrapper wrapper) {
+ if (callbacks == null || wrapper == null) {
return;
}
callbacks.remove(wrapper);
+ wrapper.destroy();
if (callbacks.isEmpty()) {
onStopPredictionUpdates();
}
@@ -264,7 +263,8 @@
public abstract void onRequestPredictionUpdate(@NonNull AppPredictionSessionId sessionId);
private void doDestroyPredictionSession(@NonNull AppPredictionSessionId sessionId) {
- mSessionCallbacks.remove(sessionId);
+ final ArrayList<CallbackWrapper> callbacks = mSessionCallbacks.remove(sessionId);
+ if (callbacks != null) callbacks.forEach(CallbackWrapper::destroy);
onDestroyPredictionSession(sessionId);
}
@@ -314,10 +314,12 @@
@Nullable Consumer<CallbackWrapper> onBinderDied) {
mCallback = callback;
mOnBinderDied = onBinderDied;
- try {
- mCallback.asBinder().linkToDeath(this, 0);
- } catch (RemoteException e) {
- Slog.e(TAG, "Failed to link to death: " + e);
+ if (mOnBinderDied != null) {
+ try {
+ mCallback.asBinder().linkToDeath(this, 0);
+ } catch (RemoteException e) {
+ Slog.e(TAG, "Failed to link to death: " + e);
+ }
}
}
@@ -329,6 +331,12 @@
return mCallback.equals(callback);
}
+ public void destroy() {
+ if (mCallback != null && mOnBinderDied != null) {
+ mCallback.asBinder().unlinkToDeath(this, 0);
+ }
+ }
+
@Override
public void accept(List<AppTarget> ts) {
try {
@@ -342,6 +350,7 @@
@Override
public void binderDied() {
+ destroy();
mCallback = null;
if (mOnBinderDied != null) {
mOnBinderDied.accept(this);
diff --git a/core/java/android/service/dreams/DreamActivity.java b/core/java/android/service/dreams/DreamActivity.java
index cf4e6a6..bf64d06 100644
--- a/core/java/android/service/dreams/DreamActivity.java
+++ b/core/java/android/service/dreams/DreamActivity.java
@@ -58,8 +58,9 @@
setTitle(title);
}
- DreamService.DreamServiceWrapper callback =
- (DreamService.DreamServiceWrapper) getIntent().getIBinderExtra(EXTRA_CALLBACK);
+ final Bundle extras = getIntent().getExtras();
+ final DreamService.DreamActivityCallback callback =
+ (DreamService.DreamActivityCallback) extras.getBinder(EXTRA_CALLBACK);
if (callback != null) {
callback.onActivityCreated(this);
diff --git a/core/java/android/service/dreams/DreamService.java b/core/java/android/service/dreams/DreamService.java
index 47fc120..5217b28 100644
--- a/core/java/android/service/dreams/DreamService.java
+++ b/core/java/android/service/dreams/DreamService.java
@@ -36,6 +36,7 @@
import android.content.res.TypedArray;
import android.content.res.XmlResourceParser;
import android.graphics.drawable.Drawable;
+import android.os.Binder;
import android.os.Build;
import android.os.Handler;
import android.os.IBinder;
@@ -1272,7 +1273,7 @@
Intent i = new Intent(this, DreamActivity.class);
i.setPackage(getApplicationContext().getPackageName());
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- i.putExtra(DreamActivity.EXTRA_CALLBACK, mDreamServiceWrapper);
+ i.putExtra(DreamActivity.EXTRA_CALLBACK, new DreamActivityCallback(mDreamToken));
final ServiceInfo serviceInfo = fetchServiceInfo(this,
new ComponentName(this, getClass()));
i.putExtra(DreamActivity.EXTRA_DREAM_TITLE, fetchDreamLabel(this, serviceInfo));
@@ -1452,11 +1453,36 @@
public void wakeUp() {
mHandler.post(() -> DreamService.this.wakeUp(true /*fromSystem*/));
}
+ }
- /** @hide */
- void onActivityCreated(DreamActivity a) {
- mActivity = a;
- onWindowCreated(a.getWindow());
+ /** @hide */
+ final class DreamActivityCallback extends Binder {
+ private final IBinder mActivityDreamToken;
+
+ DreamActivityCallback(IBinder token) {
+ mActivityDreamToken = token;
+ }
+
+ void onActivityCreated(DreamActivity activity) {
+ if (mActivityDreamToken != mDreamToken || mFinished) {
+ Slog.d(TAG, "DreamActivity was created after the dream was finished or "
+ + "a new dream started, finishing DreamActivity");
+ if (!activity.isFinishing()) {
+ activity.finishAndRemoveTask();
+ }
+ return;
+ }
+ if (mActivity != null) {
+ Slog.w(TAG, "A DreamActivity has already been started, "
+ + "finishing latest DreamActivity");
+ if (!activity.isFinishing()) {
+ activity.finishAndRemoveTask();
+ }
+ return;
+ }
+
+ mActivity = activity;
+ onWindowCreated(activity.getWindow());
}
}
diff --git a/core/java/android/service/smartspace/SmartspaceService.java b/core/java/android/service/smartspace/SmartspaceService.java
index b903fbe..3a148df 100644
--- a/core/java/android/service/smartspace/SmartspaceService.java
+++ b/core/java/android/service/smartspace/SmartspaceService.java
@@ -202,9 +202,7 @@
}
final CallbackWrapper wrapper = findCallbackWrapper(callbacks, callback);
- if (wrapper != null) {
- removeCallbackWrapper(callbacks, wrapper);
- }
+ removeCallbackWrapper(callbacks, wrapper);
}
private void doRequestPredictionUpdate(@NonNull SmartspaceSessionId sessionId) {
@@ -231,12 +229,13 @@
return null;
}
- private void removeCallbackWrapper(
- ArrayList<CallbackWrapper> callbacks, CallbackWrapper wrapper) {
- if (callbacks == null) {
+ private void removeCallbackWrapper(@Nullable ArrayList<CallbackWrapper> callbacks,
+ @Nullable CallbackWrapper wrapper) {
+ if (callbacks == null || wrapper == null) {
return;
}
callbacks.remove(wrapper);
+ wrapper.destroy();
}
/**
@@ -249,7 +248,9 @@
Log.d(TAG, "doDestroy mSessionCallbacks: " + mSessionCallbacks);
}
super.onDestroy();
- mSessionCallbacks.remove(sessionId);
+
+ final ArrayList<CallbackWrapper> callbacks = mSessionCallbacks.remove(sessionId);
+ if (callbacks != null) callbacks.forEach(CallbackWrapper::destroy);
onDestroySmartspaceSession(sessionId);
}
@@ -287,10 +288,12 @@
@Nullable Consumer<CallbackWrapper> onBinderDied) {
mCallback = callback;
mOnBinderDied = onBinderDied;
- try {
- mCallback.asBinder().linkToDeath(this, 0);
- } catch (RemoteException e) {
- Slog.e(TAG, "Failed to link to death: " + e);
+ if (mOnBinderDied != null) {
+ try {
+ mCallback.asBinder().linkToDeath(this, 0);
+ } catch (RemoteException e) {
+ Slog.e(TAG, "Failed to link to death: " + e);
+ }
}
}
@@ -317,9 +320,15 @@
}
}
+ public void destroy() {
+ if (mCallback != null && mOnBinderDied != null) {
+ mCallback.asBinder().unlinkToDeath(this, 0);
+ }
+ }
+
@Override
public void binderDied() {
- mCallback.asBinder().unlinkToDeath(this, 0);
+ destroy();
mCallback = null;
if (mOnBinderDied != null) {
mOnBinderDied.accept(this);
diff --git a/core/java/android/view/IWindowManager.aidl b/core/java/android/view/IWindowManager.aidl
index c83869c..fb562d8 100644
--- a/core/java/android/view/IWindowManager.aidl
+++ b/core/java/android/view/IWindowManager.aidl
@@ -32,7 +32,6 @@
import android.os.Bundle;
import android.os.IRemoteCallback;
import android.os.ParcelFileDescriptor;
-import android.view.ContentRecordingSession;
import android.view.DisplayCutout;
import android.view.DisplayInfo;
import android.view.IAppTransitionAnimationSpecsFuture;
@@ -874,17 +873,6 @@
void detachWindowContextFromWindowContainer(IBinder clientToken);
/**
- * Updates the content recording session. If a different session is already in progress, then
- * the pre-existing session is stopped, and the new incoming session takes over.
- *
- * The DisplayContent for the new session will begin recording when
- * {@link RootWindowContainer#onDisplayChanged} is invoked for the new {@link VirtualDisplay}.
- *
- * @param incomingSession the nullable incoming content recording session
- */
- void setContentRecordingSession(in ContentRecordingSession incomingSession);
-
- /**
* Registers a listener, which is to be called whenever cross-window blur is enabled/disabled.
*
* @param listener the listener to be registered
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java
index 38ca248..90497e7 100644
--- a/core/java/android/view/View.java
+++ b/core/java/android/view/View.java
@@ -4781,9 +4781,6 @@
@UnsupportedAppUsage
ListenerInfo mListenerInfo;
- private boolean mPreferKeepClearForFocus;
- private Runnable mMarkPreferKeepClearForFocus;
-
private static class TooltipInfo {
/**
* Text to be displayed in a tooltip popup.
@@ -11962,8 +11959,9 @@
@NonNull
List<Rect> collectPreferKeepClearRects() {
ListenerInfo info = mListenerInfo;
- boolean keepBoundsClear =
- (info != null && info.mPreferKeepClear) || mPreferKeepClearForFocus;
+ boolean keepClearForFocus = isFocused()
+ && ViewConfiguration.get(mContext).isPreferKeepClearForFocusEnabled();
+ boolean keepBoundsClear = (info != null && info.mPreferKeepClear) || keepClearForFocus;
boolean hasCustomKeepClearRects = info != null && info.mKeepClearRects != null;
if (!keepBoundsClear && !hasCustomKeepClearRects) {
@@ -11985,31 +11983,10 @@
}
private void updatePreferKeepClearForFocus() {
- if (mMarkPreferKeepClearForFocus != null) {
- removeCallbacks(mMarkPreferKeepClearForFocus);
- mMarkPreferKeepClearForFocus = null;
+ if (ViewConfiguration.get(mContext).isPreferKeepClearForFocusEnabled()) {
+ updatePositionUpdateListener();
+ post(this::updateKeepClearRects);
}
-
- final ViewConfiguration configuration = ViewConfiguration.get(mContext);
- final int delay = configuration.getPreferKeepClearForFocusDelay();
- if (delay >= 0) {
- mMarkPreferKeepClearForFocus = () -> {
- mPreferKeepClearForFocus = isFocused();
- mMarkPreferKeepClearForFocus = null;
-
- updatePositionUpdateListener();
- post(this::updateKeepClearRects);
- };
- postDelayed(mMarkPreferKeepClearForFocus, delay);
- }
- }
-
- private void cancelMarkPreferKeepClearForFocus() {
- if (mMarkPreferKeepClearForFocus != null) {
- removeCallbacks(mMarkPreferKeepClearForFocus);
- mMarkPreferKeepClearForFocus = null;
- }
- mPreferKeepClearForFocus = false;
}
/**
@@ -13754,7 +13731,6 @@
}
invalidate();
sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_ACCESSIBILITY_FOCUSED);
- updatePreferKeepClearForFocus();
return true;
}
return false;
@@ -21154,7 +21130,6 @@
removePerformClickCallback();
clearAccessibilityThrottles();
stopNestedScroll();
- cancelMarkPreferKeepClearForFocus();
// Anything that started animating right before detach should already
// be in its final state when re-attached.
diff --git a/core/java/android/view/ViewConfiguration.java b/core/java/android/view/ViewConfiguration.java
index ebc409e..638b8f9 100644
--- a/core/java/android/view/ViewConfiguration.java
+++ b/core/java/android/view/ViewConfiguration.java
@@ -347,7 +347,7 @@
private final long mScreenshotChordKeyTimeout;
private final int mSmartSelectionInitializedTimeout;
private final int mSmartSelectionInitializingTimeout;
- private final int mPreferKeepClearForFocusDelay;
+ private final boolean mPreferKeepClearForFocusEnabled;
@UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P, trackingBug = 123768915)
private boolean sHasPermanentMenuKey;
@@ -393,7 +393,7 @@
mMinScalingSpan = 0;
mSmartSelectionInitializedTimeout = SMART_SELECTION_INITIALIZED_TIMEOUT_IN_MILLISECOND;
mSmartSelectionInitializingTimeout = SMART_SELECTION_INITIALIZING_TIMEOUT_IN_MILLISECOND;
- mPreferKeepClearForFocusDelay = -1;
+ mPreferKeepClearForFocusEnabled = false;
}
/**
@@ -508,8 +508,8 @@
com.android.internal.R.integer.config_smartSelectionInitializedTimeoutMillis);
mSmartSelectionInitializingTimeout = res.getInteger(
com.android.internal.R.integer.config_smartSelectionInitializingTimeoutMillis);
- mPreferKeepClearForFocusDelay = res.getInteger(
- com.android.internal.R.integer.config_preferKeepClearForFocusDelayMillis);
+ mPreferKeepClearForFocusEnabled = res.getBoolean(
+ com.android.internal.R.bool.config_preferKeepClearForFocus);
}
/**
@@ -1100,13 +1100,13 @@
}
/**
- * @return The delay in milliseconds before focused Views set themselves as preferred to keep
- * clear, or -1 if Views should not set themselves as preferred to keep clear.
+ * @return {@code true} if Views should set themselves as preferred to keep clear when focused,
+ * {@code false} otherwise.
* @hide
*/
@TestApi
- public int getPreferKeepClearForFocusDelay() {
- return mPreferKeepClearForFocusDelay;
+ public boolean isPreferKeepClearForFocusEnabled() {
+ return mPreferKeepClearForFocusEnabled;
}
/**
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java
index eabc13a..127c7b7 100644
--- a/core/java/android/view/ViewRootImpl.java
+++ b/core/java/android/view/ViewRootImpl.java
@@ -222,7 +222,6 @@
import java.lang.ref.WeakReference;
import java.util.ArrayDeque;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Objects;
@@ -800,8 +799,7 @@
new ViewRootRectTracker(v -> v.collectPreferKeepClearRects());
private final ViewRootRectTracker mUnrestrictedKeepClearRectsTracker =
new ViewRootRectTracker(v -> v.collectUnrestrictedPreferKeepClearRects());
- private List<Rect> mPendingKeepClearAreas;
- private List<Rect> mPendingUnrestrictedKeepClearAreas;
+ private boolean mHasPendingKeepClearAreaChange;
private IAccessibilityEmbeddedConnection mAccessibilityEmbeddedConnection;
@@ -4819,45 +4817,31 @@
}
void keepClearRectsChanged() {
- List<Rect> restrictedKeepClearRects = mKeepClearRectsTracker.computeChangedRects();
- List<Rect> unrestrictedKeepClearRects =
- mUnrestrictedKeepClearRectsTracker.computeChangedRects();
- if ((restrictedKeepClearRects != null || unrestrictedKeepClearRects != null)
- && mView != null) {
- if (restrictedKeepClearRects == null) {
- restrictedKeepClearRects = Collections.emptyList();
- }
- if (unrestrictedKeepClearRects == null) {
- unrestrictedKeepClearRects = Collections.emptyList();
- }
+ boolean restrictedKeepClearRectsChanged = mKeepClearRectsTracker.computeChanges();
+ boolean unrestrictedKeepClearRectsChanged =
+ mUnrestrictedKeepClearRectsTracker.computeChanges();
- if (mHandler.hasMessages(MSG_REPORT_KEEP_CLEAR_RECTS)) {
- // Keep clear areas have been reported recently, wait before reporting new set
- // of keep clear areas
- mPendingKeepClearAreas = restrictedKeepClearRects;
- mPendingUnrestrictedKeepClearAreas = unrestrictedKeepClearRects;
- } else {
+ if ((restrictedKeepClearRectsChanged || unrestrictedKeepClearRectsChanged)
+ && mView != null) {
+ mHasPendingKeepClearAreaChange = true;
+ // Only report keep clear areas immediately if they have not been reported recently
+ if (!mHandler.hasMessages(MSG_REPORT_KEEP_CLEAR_RECTS)) {
mHandler.sendEmptyMessageDelayed(MSG_REPORT_KEEP_CLEAR_RECTS,
KEEP_CLEAR_AREA_REPORT_RATE_MILLIS);
- try {
- mWindowSession.reportKeepClearAreasChanged(mWindow, restrictedKeepClearRects,
- unrestrictedKeepClearRects);
- } catch (RemoteException e) {
- throw e.rethrowFromSystemServer();
- }
+ reportKeepClearAreasChanged();
}
}
}
void reportKeepClearAreasChanged() {
- final List<Rect> restrictedKeepClearRects = mPendingKeepClearAreas;
- final List<Rect> unrestrictedKeepClearRects = mPendingUnrestrictedKeepClearAreas;
- if (restrictedKeepClearRects == null && unrestrictedKeepClearRects == null) {
+ if (!mHasPendingKeepClearAreaChange) {
return;
}
+ mHasPendingKeepClearAreaChange = false;
- mPendingKeepClearAreas = null;
- mPendingUnrestrictedKeepClearAreas = null;
+ final List<Rect> restrictedKeepClearRects = mKeepClearRectsTracker.getLastComputedRects();
+ final List<Rect> unrestrictedKeepClearRects =
+ mUnrestrictedKeepClearRectsTracker.getLastComputedRects();
try {
mWindowSession.reportKeepClearAreasChanged(mWindow, restrictedKeepClearRects,
diff --git a/core/java/android/view/ViewRootRectTracker.java b/core/java/android/view/ViewRootRectTracker.java
index fd9cc19..152729b 100644
--- a/core/java/android/view/ViewRootRectTracker.java
+++ b/core/java/android/view/ViewRootRectTracker.java
@@ -73,10 +73,25 @@
}
/**
- * @return all visible rects from all views in the global (root) coordinate system
+ * @return all Rects from all visible Views in the global (root) coordinate system,
+ * or {@code null} if Rects are unchanged since the last call to this method.
*/
@Nullable
public List<Rect> computeChangedRects() {
+ if (computeChanges()) {
+ return mRects;
+ }
+ return null;
+ }
+
+ /**
+ * Computes changes to all Rects from all Views.
+ * After calling this method, the updated list of Rects can be retrieved
+ * with {@link #getLastComputedRects()}.
+ *
+ * @return {@code true} if there were changes, {@code false} otherwise.
+ */
+ public boolean computeChanges() {
boolean changed = mRootRectsChanged;
final Iterator<ViewInfo> i = mViewInfos.iterator();
final List<Rect> rects = new ArrayList<>(mRootRects);
@@ -100,10 +115,22 @@
mRootRectsChanged = false;
if (!mRects.equals(rects)) {
mRects = rects;
- return rects;
+ return true;
}
}
- return null;
+ return false;
+ }
+
+ /**
+ * Returns a List of all Rects from all visible Views in the global (root) coordinate system.
+ * This list is only updated when calling {@link #computeChanges()} or
+ * {@link #computeChangedRects()}.
+ *
+ * @return all Rects from all visible Views in the global (root) coordinate system
+ */
+ @NonNull
+ public List<Rect> getLastComputedRects() {
+ return mRects;
}
/**
diff --git a/core/java/com/android/internal/jank/InteractionJankMonitor.java b/core/java/com/android/internal/jank/InteractionJankMonitor.java
index 2dcc585..65e7abf 100644
--- a/core/java/com/android/internal/jank/InteractionJankMonitor.java
+++ b/core/java/com/android/internal/jank/InteractionJankMonitor.java
@@ -20,6 +20,7 @@
import static com.android.internal.jank.FrameTracker.REASON_CANCEL_TIMEOUT;
import static com.android.internal.jank.FrameTracker.REASON_END_NORMAL;
import static com.android.internal.jank.FrameTracker.REASON_END_UNKNOWN;
+import static com.android.internal.util.FrameworkStatsLog.UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__BIOMETRIC_PROMPT_TRANSITION;
import static com.android.internal.util.FrameworkStatsLog.UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__LAUNCHER_ALL_APPS_SCROLL;
import static com.android.internal.util.FrameworkStatsLog.UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__LAUNCHER_APP_CLOSE_TO_HOME;
import static com.android.internal.util.FrameworkStatsLog.UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__LAUNCHER_APP_CLOSE_TO_PIP;
@@ -46,6 +47,7 @@
import static com.android.internal.util.FrameworkStatsLog.UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__SCREEN_OFF_SHOW_AOD;
import static com.android.internal.util.FrameworkStatsLog.UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__SETTINGS_PAGE_SCROLL;
import static com.android.internal.util.FrameworkStatsLog.UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__SETTINGS_SLIDER;
+import static com.android.internal.util.FrameworkStatsLog.UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__SETTINGS_TOGGLE;
import static com.android.internal.util.FrameworkStatsLog.UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__SHADE_APP_LAUNCH;
import static com.android.internal.util.FrameworkStatsLog.UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__SHADE_APP_LAUNCH_FROM_HISTORY_BUTTON;
import static com.android.internal.util.FrameworkStatsLog.UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__SHADE_APP_LAUNCH_FROM_MEDIA_PLAYER;
@@ -198,6 +200,8 @@
public static final int CUJ_SETTINGS_SLIDER = 53;
public static final int CUJ_TAKE_SCREENSHOT = 54;
public static final int CUJ_VOLUME_CONTROL = 55;
+ public static final int CUJ_BIOMETRIC_PROMPT_TRANSITION = 56;
+ public static final int CUJ_SETTINGS_TOGGLE = 57;
private static final int NO_STATSD_LOGGING = -1;
@@ -262,6 +266,8 @@
UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__SETTINGS_SLIDER,
UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__TAKE_SCREENSHOT,
UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__VOLUME_CONTROL,
+ UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__BIOMETRIC_PROMPT_TRANSITION,
+ UIINTERACTION_FRAME_INFO_REPORTED__INTERACTION_TYPE__SETTINGS_TOGGLE,
};
private static volatile InteractionJankMonitor sInstance;
@@ -338,6 +344,8 @@
CUJ_SETTINGS_SLIDER,
CUJ_TAKE_SCREENSHOT,
CUJ_VOLUME_CONTROL,
+ CUJ_BIOMETRIC_PROMPT_TRANSITION,
+ CUJ_SETTINGS_TOGGLE,
})
@Retention(RetentionPolicy.SOURCE)
public @interface CujType {
@@ -768,6 +776,10 @@
return "TAKE_SCREENSHOT";
case CUJ_VOLUME_CONTROL:
return "VOLUME_CONTROL";
+ case CUJ_BIOMETRIC_PROMPT_TRANSITION:
+ return "BIOMETRIC_PROMPT_TRANSITION";
+ case CUJ_SETTINGS_TOGGLE:
+ return "SETTINGS_TOGGLE";
}
return "UNKNOWN";
}
diff --git a/core/java/com/android/internal/os/BatteryUsageStatsStore.java b/core/java/com/android/internal/os/BatteryUsageStatsStore.java
index 09c9cfc..04f72c7 100644
--- a/core/java/com/android/internal/os/BatteryUsageStatsStore.java
+++ b/core/java/com/android/internal/os/BatteryUsageStatsStore.java
@@ -320,4 +320,19 @@
mFileSizes.remove(file);
}
}
+
+ public void removeAllSnapshots() {
+ lockSnapshotDirectory();
+ try {
+ for (File file : mStoreDir.listFiles()) {
+ if (file.getName().endsWith(SNAPSHOT_FILE_EXTENSION)) {
+ if (!file.delete()) {
+ Slog.e(TAG, "Cannot delete battery usage stats " + file);
+ }
+ }
+ }
+ } finally {
+ unlockSnapshotDirectory();
+ }
+ }
}
diff --git a/core/jni/android_view_SurfaceControl.cpp b/core/jni/android_view_SurfaceControl.cpp
index 4044c57..f388fec 100644
--- a/core/jni/android_view_SurfaceControl.cpp
+++ b/core/jni/android_view_SurfaceControl.cpp
@@ -688,8 +688,11 @@
jobject bufferObject, jlong fencePtr, jobject releaseCallback) {
auto transaction = reinterpret_cast<SurfaceComposerClient::Transaction*>(transactionObj);
SurfaceControl* const ctrl = reinterpret_cast<SurfaceControl*>(nativeObject);
- sp<GraphicBuffer> graphicBuffer(GraphicBuffer::fromAHardwareBuffer(
- android_hardware_HardwareBuffer_getNativeHardwareBuffer(env, bufferObject)));
+ sp<GraphicBuffer> graphicBuffer;
+ if (bufferObject != nullptr) {
+ graphicBuffer = GraphicBuffer::fromAHardwareBuffer(
+ android_hardware_HardwareBuffer_getNativeHardwareBuffer(env, bufferObject));
+ }
std::optional<sp<Fence>> optFence = std::nullopt;
if (fencePtr != 0) {
optFence = sp<Fence>{reinterpret_cast<Fence*>(fencePtr)};
diff --git a/core/proto/android/server/jobscheduler.proto b/core/proto/android/server/jobscheduler.proto
index c4ff49c..00127c1 100644
--- a/core/proto/android/server/jobscheduler.proto
+++ b/core/proto/android/server/jobscheduler.proto
@@ -1073,6 +1073,7 @@
RARE = 3;
NEVER = 4;
RESTRICTED = 5;
+ EXEMPTED = 6;
}
optional Bucket standby_bucket = 17;
optional bool is_exempted_from_app_standby = 27;
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml
index 8db5f9a..e52da0f 100644
--- a/core/res/AndroidManifest.xml
+++ b/core/res/AndroidManifest.xml
@@ -4495,10 +4495,10 @@
android:protectionLevel="signature|privileged"/>
<!-- Allows applications to use exact alarm APIs.
- <p>Exact alarms should only be used for user-facing features.
- For more details, see <a
- href="{@docRoot}about/versions/12/behavior-changes-12#exact-alarm-permission">
- Exact alarm permission</a>.
+ <p>This is a special access permission that can be revoked by the system or the user.
+ It should only be used to enable <b>user-facing features</b> that require exact alarms.
+ For more details, please go through the associated
+ <a href="{@docRoot}training/scheduling/alarms#exact">developer docs</a>.
<p>Apps need to target API {@link android.os.Build.VERSION_CODES#S} or above to be able to
request this permission. Note that apps targeting lower API levels do not need this
permission to use exact alarm APIs.
@@ -4509,6 +4509,7 @@
{@link android.Manifest.permission#USE_EXACT_ALARM} once it targets API
{@link android.os.Build.VERSION_CODES#TIRAMISU}. All apps using exact alarms for secondary
features (which should still be user facing) should continue using this permission.
+ <p>Protection level: appop
-->
<permission android:name="android.permission.SCHEDULE_EXACT_ALARM"
android:protectionLevel="normal|appop"/>
diff --git a/core/res/res/color/hint_foreground_material_dark.xml b/core/res/res/color/hint_foreground_material_dark.xml
index 5cc9559..66fcb04 100644
--- a/core/res/res/color/hint_foreground_material_dark.xml
+++ b/core/res/res/color/hint_foreground_material_dark.xml
@@ -15,10 +15,6 @@
-->
<selector xmlns:android="http://schemas.android.com/apk/res/android">
- <item android:state_enabled="true"
- android:state_pressed="true"
- android:alpha="@dimen/hint_pressed_alpha_material_dark"
- android:color="@color/foreground_material_dark" />
- <item android:alpha="@dimen/hint_alpha_material_dark"
+ <item android:alpha="@dimen/secondary_content_alpha_material_dark"
android:color="@color/foreground_material_dark" />
</selector>
diff --git a/core/res/res/color/hint_foreground_material_light.xml b/core/res/res/color/hint_foreground_material_light.xml
index f7465e0..63dd3b013 100644
--- a/core/res/res/color/hint_foreground_material_light.xml
+++ b/core/res/res/color/hint_foreground_material_light.xml
@@ -15,10 +15,6 @@
-->
<selector xmlns:android="http://schemas.android.com/apk/res/android">
- <item android:state_enabled="true"
- android:state_pressed="true"
- android:alpha="@dimen/hint_pressed_alpha_material_light"
- android:color="@color/foreground_material_light" />
- <item android:alpha="@dimen/hint_alpha_material_light"
+ <item android:alpha="@dimen/secondary_content_alpha_material_light"
android:color="@color/foreground_material_light" />
</selector>
diff --git a/core/res/res/layout/autofill_fill_dialog.xml b/core/res/res/layout/autofill_fill_dialog.xml
index e638764..ba27d90 100644
--- a/core/res/res/layout/autofill_fill_dialog.xml
+++ b/core/res/res/layout/autofill_fill_dialog.xml
@@ -62,18 +62,24 @@
android:layout_marginEnd="24dp"
android:background="@drawable/autofill_dataset_picker_background"/>
- <ListView
- android:id="@+id/autofill_dialog_list"
- android:layout_weight="1"
+ <LinearLayout
android:layout_width="fill_parent"
- android:layout_height="0dp"
- android:drawSelectorOnTop="true"
- android:clickable="true"
- android:divider="?android:attr/listDivider"
+ android:layout_height="wrap_content"
android:layout_marginStart="24dp"
android:layout_marginEnd="24dp"
- android:background="@drawable/autofill_dataset_picker_background"
- android:visibility="gone"/>
+ android:theme="@style/Theme.DeviceDefault.AutofillHalfScreenDialogList"
+ android:orientation="vertical">
+ <ListView
+ android:id="@+id/autofill_dialog_list"
+ android:layout_weight="1"
+ android:layout_width="fill_parent"
+ android:layout_height="0dp"
+ android:drawSelectorOnTop="true"
+ android:clickable="true"
+ android:divider="@drawable/list_divider_material"
+ android:background="@drawable/autofill_dataset_picker_background"
+ android:visibility="gone"/>
+ </LinearLayout>
<com.android.internal.widget.ButtonBarLayout
android:layout_width="match_parent"
diff --git a/core/res/res/layout/autofill_save.xml b/core/res/res/layout/autofill_save.xml
index 8a1a9c7..49539cf 100644
--- a/core/res/res/layout/autofill_save.xml
+++ b/core/res/res/layout/autofill_save.xml
@@ -23,45 +23,38 @@
android:orientation="vertical">
<LinearLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/autofill_save"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/autofill_save_outer_top_margin"
- android:paddingTop="@dimen/autofill_save_outer_top_padding"
+ android:layout_marginStart="24dp"
+ android:layout_marginEnd="24dp"
android:elevation="@dimen/autofill_elevation"
android:background="?android:attr/colorSurface"
+ android:gravity="center_horizontal"
android:orientation="vertical">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
- android:paddingStart="@dimen/autofill_save_inner_padding"
- android:paddingEnd="@dimen/autofill_save_inner_padding"
android:orientation="vertical">
- <LinearLayout
+ <ImageView
+ android:id="@+id/autofill_save_icon"
+ android:scaleType="fitStart"
+ android:layout_gravity="center"
+ android:layout_width="@dimen/autofill_save_icon_size"
+ android:layout_height="@dimen/autofill_save_icon_size"/>
+
+ <TextView
+ android:id="@+id/autofill_save_title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
- android:orientation="horizontal">
-
- <ImageView
- android:id="@+id/autofill_save_icon"
- android:scaleType="fitStart"
- android:layout_width="@dimen/autofill_save_icon_size"
- android:layout_height="@dimen/autofill_save_icon_size"/>
-
- <TextView
- android:id="@+id/autofill_save_title"
- android:paddingStart="@dimen/autofill_save_title_start_padding"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="@string/autofill_save_title"
- android:textAppearance="@style/TextAppearance.DeviceDefault.Subhead"
- android:layout_weight="1">
- </TextView>
-
- </LinearLayout>
+ android:text="@string/autofill_save_title"
+ android:layout_marginTop="16dp"
+ android:gravity="center"
+ android:textAppearance="@style/AutofillSaveUiTitle">
+ </TextView>
<com.android.server.autofill.ui.CustomScrollView
android:id="@+id/autofill_save_custom_subtitle"
@@ -79,8 +72,6 @@
android:clipToPadding="false"
android:layout_marginTop="32dp"
android:layout_marginBottom="18dp"
- android:layout_marginStart="24dp"
- android:layout_marginEnd="24dp"
android:theme="@style/Theme.DeviceDefault.AutofillHalfScreenDialogButton"
android:orientation="horizontal">
diff --git a/core/res/res/layout/log_access_user_consent_dialog_permission.xml b/core/res/res/layout/log_access_user_consent_dialog_permission.xml
index c88bc92..1a395b9 100644
--- a/core/res/res/layout/log_access_user_consent_dialog_permission.xml
+++ b/core/res/res/layout/log_access_user_consent_dialog_permission.xml
@@ -26,8 +26,7 @@
android:paddingLeft="24dp"
android:paddingRight="24dp"
android:paddingTop="24dp"
- android:paddingBottom="24dp"
- android:background="?attr/colorSurface">
+ android:paddingBottom="24dp">
<ImageView
android:id="@+id/log_access_image_view"
@@ -37,8 +36,7 @@
android:src="@drawable/ic_doc_document"
tools:layout_editor_absoluteX="148dp"
tools:layout_editor_absoluteY="35dp"
- android:gravity="center"
- android:tint="?attr/colorAccentPrimaryVariant"/>
+ android:gravity="center" />
<TextView
android:id="@+id/log_access_dialog_title"
@@ -60,29 +58,35 @@
android:textColor="?android:attr/textColorPrimary"
android:gravity="center" />
- <Button
- android:id="@+id/log_access_dialog_allow_button"
+ <LinearLayout
+ android:orientation="vertical"
android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:text="@string/log_access_confirmation_allow"
- style="@style/PermissionGrantButtonTop"
- android:layout_marginBottom="5dp"
- android:layout_centerHorizontal="true"
- android:layout_alignParentTop="true"
- android:layout_alignParentBottom="true"
- android:clipToOutline="true"
- android:gravity="center" />
+ android:layout_height="wrap_content">
+ <Button
+ android:id="@+id/log_access_dialog_allow_button"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/log_access_confirmation_allow"
+ style="@style/PermissionGrantButtonTop"
+ android:textAppearance="@style/PermissionGrantButtonTextAppearance"
+ android:layout_marginBottom="5dp"
+ android:layout_centerHorizontal="true"
+ android:layout_alignParentTop="true"
+ android:layout_alignParentBottom="true"
+ android:clipToOutline="true"
+ android:gravity="center" />
- <Button
- android:id="@+id/log_access_dialog_deny_button"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:text="@string/log_access_confirmation_deny"
- style="@style/PermissionGrantButtonBottom"
- android:layout_centerHorizontal="true"
- android:layout_alignParentTop="true"
- android:layout_alignParentBottom="true"
- android:clipToOutline="true"
- android:gravity="center" />
-
+ <Button
+ android:id="@+id/log_access_dialog_deny_button"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:text="@string/log_access_confirmation_deny"
+ style="@style/PermissionGrantButtonBottom"
+ android:textAppearance="@style/PermissionGrantButtonTextAppearance"
+ android:layout_centerHorizontal="true"
+ android:layout_alignParentTop="true"
+ android:layout_alignParentBottom="true"
+ android:clipToOutline="true"
+ android:gravity="center" />
+ </LinearLayout>
</LinearLayout>
\ No newline at end of file
diff --git a/core/res/res/layout/search_view.xml b/core/res/res/layout/search_view.xml
index 0c462fd..39034dc 100644
--- a/core/res/res/layout/search_view.xml
+++ b/core/res/res/layout/search_view.xml
@@ -96,8 +96,8 @@
android:id="@+id/search_close_btn"
android:layout_width="wrap_content"
android:layout_height="match_parent"
- android:paddingStart="8dip"
- android:paddingEnd="8dip"
+ android:paddingStart="12dip"
+ android:paddingEnd="12dip"
android:layout_gravity="center_vertical"
android:background="?attr/selectableItemBackgroundBorderless"
android:focusable="true"
diff --git a/core/res/res/values-af/strings.xml b/core/res/res/values-af/strings.xml
index 29b2916..4370acd 100644
--- a/core/res/res/values-af/strings.xml
+++ b/core/res/res/values-af/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"by jou kalender in te gaan"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS-boodskappe te stuur en te bekyk"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Lêers en dokumente"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"kry toegang tot lêers en dokumente op jou toestel"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Lêers"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"kry toegang tot lêers op jou toestel"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Musiek en oudio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"kry toegang tot musiek en oudio op jou toestel"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Foto\'s en video\'s"</string>
diff --git a/core/res/res/values-am/strings.xml b/core/res/res/values-am/strings.xml
index cdaeae0..8c6db33 100644
--- a/core/res/res/values-am/strings.xml
+++ b/core/res/res/values-am/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"የእርስዎን ቀን መቁጠሪያ ይድረሱበት"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"ኤስኤምኤስ"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"የኤስኤምኤስ መልዕክቶችን ይላኩና ይመልከቱ"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ፋይሎች እና ሰነዶች"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"ፋይሎች እና ሰነዶች ዘንድ በመሳሪያዎ ላይ ይድረሱ"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ፋይሎች"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"በመሣሪያዎ ላይ የሚገኙ ፋይሎች መዳረሻ"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"ሙዚቃ እና ኦዲዮ"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"በመሣሪያዎ ላይ ሙዚቃን እና ኦዲዮን መድረስ"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"ፎቶዎች እና ቪዲዮዎች"</string>
diff --git a/core/res/res/values-ar/strings.xml b/core/res/res/values-ar/strings.xml
index 995b683..4d04edc 100644
--- a/core/res/res/values-ar/strings.xml
+++ b/core/res/res/values-ar/strings.xml
@@ -221,7 +221,7 @@
<string name="turn_on_radio" msgid="2961717788170634233">"تفعيل اللاسلكي"</string>
<string name="turn_off_radio" msgid="7222573978109933360">"إيقاف الشبكة اللاسلكية"</string>
<string name="screen_lock" msgid="2072642720826409809">"قفل الشاشة"</string>
- <string name="power_off" msgid="4111692782492232778">"إيقاف التشغيل"</string>
+ <string name="power_off" msgid="4111692782492232778">"إطفاء"</string>
<string name="silent_mode_silent" msgid="5079789070221150912">"إيقاف الرنين"</string>
<string name="silent_mode_vibrate" msgid="8821830448369552678">"اهتزاز الرنين"</string>
<string name="silent_mode_ring" msgid="6039011004781526678">"تشغيل الرنين"</string>
@@ -245,7 +245,7 @@
<string name="global_actions" product="tv" msgid="3871763739487450369">"خيارات Android TV"</string>
<string name="global_actions" product="default" msgid="6410072189971495460">"خيارات الهاتف"</string>
<string name="global_action_lock" msgid="6949357274257655383">"قفل الشاشة"</string>
- <string name="global_action_power_off" msgid="4404936470711393203">"إيقاف التشغيل"</string>
+ <string name="global_action_power_off" msgid="4404936470711393203">"إطفاء"</string>
<string name="global_action_power_options" msgid="1185286119330160073">"التشغيل"</string>
<string name="global_action_restart" msgid="4678451019561687074">"إعادة التشغيل"</string>
<string name="global_action_emergency" msgid="1387617624177105088">"الطوارئ"</string>
@@ -309,8 +309,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"الوصول إلى تقويمك"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"إرسال رسائل قصيرة SMS وعرضها"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"الملفات والمستندات"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"الوصول إلى الملفات والمستندات على جهازك"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"الملفات"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"الوصول إلى الملفات على جهازك"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"الموسيقى والمقاطع الصوتية"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"تسمح فئة أذونات التطبيق هذه بالوصول إلى الموسيقى والمقاطع الصوتية على جهازك."</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"الصور والفيديوهات"</string>
@@ -1685,9 +1685,9 @@
<string name="accessibility_enable_service_title" msgid="3931558336268541484">"هل تريد السماح لخدمة <xliff:g id="SERVICE">%1$s</xliff:g> بالتحكّم الكامل في جهازك؟"</string>
<string name="accessibility_service_warning_description" msgid="291674995220940133">"إنّ التحكّم الكامل ليس ملائمًا لمعظم التطبيقات، باستثناء التطبيقات المعنية بسهولة الاستخدام."</string>
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"قراءة محتوى الشاشة والتحكم به"</string>
- <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"يمكنها قراءة كل المحتوى على الشاشة وعرض المحتوى عبر تطبيقات أخرى."</string>
+ <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"يمكنها قراءة كل المحتوى على الشاشة وعرض المحتوى فوق تطبيقات أخرى."</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"عرض الإجراءات وتنفيذها"</string>
- <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"يمكنها تتبّع تعاملاتك مع تطبيق أو جهاز استشعار والتفاعل مع التطبيقات نيابةً عنك."</string>
+ <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"يمكنها تتبّع تفاعلاتك مع تطبيق أو جهاز استشعار والتفاعل مع التطبيقات نيابةً عنك."</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"سماح"</string>
<string name="accessibility_dialog_button_deny" msgid="4129575637812472671">"رفض"</string>
<string name="accessibility_select_shortcut_menu_title" msgid="6002726538854613272">"انقر على ميزة لبدء استخدامها:"</string>
diff --git a/core/res/res/values-as/strings.xml b/core/res/res/values-as/strings.xml
index 0d23f50..09c1870 100644
--- a/core/res/res/values-as/strings.xml
+++ b/core/res/res/values-as/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"আপোনাৰ কেলেণ্ডাৰ ব্যৱহাৰ কৰিব পাৰে"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"এছএমএছ"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"এছএমএছ বার্তা পঠিয়াব আৰু চাব পাৰে"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ফাইল আৰু নথি"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"আপোনাৰ ডিভাইচত থকা ফাইল আৰু নথি এক্সেছ কৰে"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ফাইল"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"আপোনাৰ ডিভাইচত থকা ফাইল এক্সেছ কৰা"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"সংগীত আৰু অডিঅ’"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"আপোনাৰ ডিভাইচত সংগীত আৰু অডিঅ’ এক্সেছ কৰক"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"ফট’ আৰু ভিডিঅ’"</string>
diff --git a/core/res/res/values-az/strings.xml b/core/res/res/values-az/strings.xml
index 380fc73..862ef3c 100644
--- a/core/res/res/values-az/strings.xml
+++ b/core/res/res/values-az/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"təqvimə daxil olun"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"göndərin və SMS mesajlarına baxın"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Fayllar və sənədlər"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"cihazınızda fayllara və sənədlərə giriş"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Fayllar"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"cihazınızda fayllara giriş"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Musiqi və audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"cihazınızdakı musiqi və audioya giriş"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Foto və videolar"</string>
diff --git a/core/res/res/values-b+sr+Latn/strings.xml b/core/res/res/values-b+sr+Latn/strings.xml
index 2ee10f9..4b51f2c 100644
--- a/core/res/res/values-b+sr+Latn/strings.xml
+++ b/core/res/res/values-b+sr+Latn/strings.xml
@@ -306,8 +306,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"pristupi kalendaru"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"šalje i pregleda SMS poruke"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Fajlovi i dokumenti"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"pristupanje fajlovima i dokumentima na uređaju"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Fajlovi"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"pristup fajlovima na uređaju"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Muzika i zvuk"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"pristup muzici i audio sadržaju na uređaju"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Slike i video snimci"</string>
diff --git a/core/res/res/values-be/strings.xml b/core/res/res/values-be/strings.xml
index 0cfd3ff..3daea4b 100644
--- a/core/res/res/values-be/strings.xml
+++ b/core/res/res/values-be/strings.xml
@@ -307,8 +307,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"атрымліваць доступ да вашага календара"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"адпраўляць і праглядаць SMS-паведамленні"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Файлы і дакументы"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"доступ да файлаў і дакументаў на вашай прыладзе"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Файлы"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"доступ да файлаў на вашай прыладзе"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Музыка і аўдыя"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"доступ да музыкі і аўдыя на вашай прыладзе"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Фота і відэа"</string>
diff --git a/core/res/res/values-bg/strings.xml b/core/res/res/values-bg/strings.xml
index d88fd23..a8de53a 100644
--- a/core/res/res/values-bg/strings.xml
+++ b/core/res/res/values-bg/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"има достъп до календара ви"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"да изпраща и преглежда SMS съобщения"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Файлове и документи"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"достъп до файловете и документите на устройството ви"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Файлове"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"достъп до файловете на устройството ви"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Музика и аудио"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"достъп до музиката и аудиото на устройството ви"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Снимки и видеоклипове"</string>
diff --git a/core/res/res/values-bn/strings.xml b/core/res/res/values-bn/strings.xml
index b82ea64..c2a55f6 100644
--- a/core/res/res/values-bn/strings.xml
+++ b/core/res/res/values-bn/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"আপনার ক্যালেন্ডারে অ্যাক্সেস"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"এসএমএসগুলি পাঠাতে এবং দেখতে"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ফাইল এবং ডকুমেন্ট"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"আপনার ডিভাইসে ফাইল ও ডকুমেন্ট অ্যাক্সেস করুন"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ফাইল"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"আপনার ডিভাইসে ফাইল অ্যাক্সেস করবে"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"মিউজিক এবং অডিও"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"আপনার ডিভাইসে মিউজিক এবং অডিও অ্যাক্সেস করুন"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"ফটো এবং ভিডিও"</string>
diff --git a/core/res/res/values-bs/strings.xml b/core/res/res/values-bs/strings.xml
index c2f25f7..0f524b4 100644
--- a/core/res/res/values-bs/strings.xml
+++ b/core/res/res/values-bs/strings.xml
@@ -306,9 +306,9 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"pristupa vašem kalendaru"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"šalje i pregleda SMS poruke"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Fajlovi i dokumenti"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"pristup datotekama i dokumentima na vašem uređaju"</string>
- <string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Muzika i zvuk"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Fajlovi"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"pristup fajlovima na vašem uređaju"</string>
+ <string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Muzika i audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"pristupanje muzici i zvuku na vašem uređaju"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotografije i videozapisi"</string>
<string name="permgroupdesc_readMediaVisual" msgid="4080463241903508688">"pristupanje fotografijama i videozapisima na vašem uređaju"</string>
@@ -1381,7 +1381,7 @@
<string name="select_input_method" msgid="3971267998568587025">"Odaberite način unosa"</string>
<string name="show_ime" msgid="6406112007347443383">"Prikaži na ekranu dok je fizička tastatura aktivna"</string>
<string name="hardware" msgid="1800597768237606953">"Prikaz virtuelne tastature"</string>
- <string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"Konfiguriraj fizičku tastaturu"</string>
+ <string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"Konfigurirajte fizičku tastaturu"</string>
<string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"Dodirnite za odabir jezika i rasporeda"</string>
<string name="fast_scroll_alphabet" msgid="8854435958703888376">" ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
<string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
@@ -1682,7 +1682,7 @@
<string name="accessibility_enable_service_title" msgid="3931558336268541484">"Dozvoliti da usluga <xliff:g id="SERVICE">%1$s</xliff:g> ima punu kontrolu nad vašim uređajem?"</string>
<string name="accessibility_service_warning_description" msgid="291674995220940133">"Puna kontrola je prikladna za aplikacije koje vam pomažu kod potreba pristupačnosti, ali nije za većinu aplikacija."</string>
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"Prikaz i kontrola ekrana"</string>
- <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Može čitati sav sadržaj na ekranu i prikazivati sadržaj u drugim aplikacijama."</string>
+ <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Može čitati sav sadržaj na ekranu i prikazivati sadržaj preko drugih aplikacija."</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"Prikaz i izvršavanje radnji"</string>
<string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Može pratiti vaše interakcije s aplikacijom ili hardverskim senzorom te ostvariti interakciju s aplikacijama umjesto vas."</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"Dozvoli"</string>
diff --git a/core/res/res/values-ca/strings.xml b/core/res/res/values-ca/strings.xml
index 876e6ec..501ca1d 100644
--- a/core/res/res/values-ca/strings.xml
+++ b/core/res/res/values-ca/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"accedir al calendari"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"enviar i llegir missatges SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Fitxers i documents"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"accedir als fitxers i documents del dispositiu"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Fitxers"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"accedir als fitxers del dispositiu"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Música i àudio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"accedir a la música i l\'àudio del dispositiu"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotos i vídeos"</string>
diff --git a/core/res/res/values-cs/strings.xml b/core/res/res/values-cs/strings.xml
index 0f6ef5d..f86e783 100644
--- a/core/res/res/values-cs/strings.xml
+++ b/core/res/res/values-cs/strings.xml
@@ -307,8 +307,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"přístup ke kalendáři"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"odesílání a zobrazování zpráv SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Soubory a dokumenty"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"přístup k souborům a dokumentům v zařízení"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Soubory"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"přístup k souborům v zařízení"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Hudba a zvuk"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"přístup k hudbě a zvuku v zařízení"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotky a videa"</string>
diff --git a/core/res/res/values-da/strings.xml b/core/res/res/values-da/strings.xml
index 8510754..4fb3752 100644
--- a/core/res/res/values-da/strings.xml
+++ b/core/res/res/values-da/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"have adgang til din kalender"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"Sms"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"sende og se sms-beskeder"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Filer og dokumenter"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"få adgang til filer og dokumenter på din enhed"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Filer"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"få adgang til filer på din enhed"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Musik og lyd"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"adgang til musik og lyd på din enhed"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Billeder og videoer"</string>
diff --git a/core/res/res/values-de/strings.xml b/core/res/res/values-de/strings.xml
index e70e1cf..a3be5f0b 100644
--- a/core/res/res/values-de/strings.xml
+++ b/core/res/res/values-de/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"auf deinen Kalender zugreifen"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS senden und abrufen"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Dateien und Dokumente"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"Auf Dateien und Dokumente auf deinem Gerät zugreifen"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Dateien"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"auf Dateien auf deinem Gerät zugreifen"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Musik und Audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"Zugriff auf Musik und Audio auf deinem Gerät"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotos und Videos"</string>
diff --git a/core/res/res/values-el/strings.xml b/core/res/res/values-el/strings.xml
index 29a7030..118b63b 100644
--- a/core/res/res/values-el/strings.xml
+++ b/core/res/res/values-el/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"έχει πρόσβαση στο ημερολόγιό σας"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"στέλνει και να διαβάζει μηνύματα SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Αρχεία και έγγραφα"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"πρόσβαση σε αρχεία και έγγραφα στη συσκευή σας"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Αρχεία"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"πρόσβαση στα αρχεία της συσκευής σας"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Μουσική και ήχος"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"πρόσβαση στη μουσική και σε αρχεία ήχου στη συσκευή σας"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Φωτογραφίες και βίντεο"</string>
diff --git a/core/res/res/values-en-rAU/strings.xml b/core/res/res/values-en-rAU/strings.xml
index 80f9dc1..4e1c415 100644
--- a/core/res/res/values-en-rAU/strings.xml
+++ b/core/res/res/values-en-rAU/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"access your calendar"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"send and view SMS messages"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Files and documents"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"access files and documents on your device"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Files"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"access files on your device"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Music and audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"access music and audio on your device"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Photos and videos"</string>
diff --git a/core/res/res/values-en-rCA/strings.xml b/core/res/res/values-en-rCA/strings.xml
index feff3ee..84f1881 100644
--- a/core/res/res/values-en-rCA/strings.xml
+++ b/core/res/res/values-en-rCA/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"access your calendar"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"send and view SMS messages"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Files and documents"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"access files and documents on your device"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Files"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"access files on your device"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Music and audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"access music and audio on your device"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Photos and videos"</string>
diff --git a/core/res/res/values-en-rGB/strings.xml b/core/res/res/values-en-rGB/strings.xml
index b346bd8..606dc80 100644
--- a/core/res/res/values-en-rGB/strings.xml
+++ b/core/res/res/values-en-rGB/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"access your calendar"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"send and view SMS messages"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Files and documents"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"access files and documents on your device"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Files"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"access files on your device"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Music and audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"access music and audio on your device"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Photos and videos"</string>
diff --git a/core/res/res/values-en-rIN/strings.xml b/core/res/res/values-en-rIN/strings.xml
index 2b6d4ae..3990343 100644
--- a/core/res/res/values-en-rIN/strings.xml
+++ b/core/res/res/values-en-rIN/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"access your calendar"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"send and view SMS messages"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Files and documents"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"access files and documents on your device"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Files"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"access files on your device"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Music and audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"access music and audio on your device"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Photos and videos"</string>
diff --git a/core/res/res/values-en-rXC/strings.xml b/core/res/res/values-en-rXC/strings.xml
index f3d8243..b8aca73 100644
--- a/core/res/res/values-en-rXC/strings.xml
+++ b/core/res/res/values-en-rXC/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"access your calendar"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"send and view SMS messages"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Files and documents"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"access files and documents on your device"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Files"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"access files on your device"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Music and audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"access music and audio on your device"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Photos and videos"</string>
diff --git a/core/res/res/values-es-rUS/strings.xml b/core/res/res/values-es-rUS/strings.xml
index d9d6ecb..82cb7b4 100644
--- a/core/res/res/values-es-rUS/strings.xml
+++ b/core/res/res/values-es-rUS/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"acceder al calendario"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"enviar y ver mensajes SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Archivos y documentos"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"Accede a archivos y documentos en tu dispositivo"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Archivos"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"acceder a archivos de tu dispositivo"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Música y audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"acceder a música y audio de tu dispositivo"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotos y videos"</string>
@@ -1356,7 +1356,7 @@
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"Se detectó un accesorio de audio analógico"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"El dispositivo adjunto no es compatible con este teléfono. Presiona para obtener más información."</string>
<string name="adb_active_notification_title" msgid="408390247354560331">"Depuración por USB conectada"</string>
- <string name="adb_active_notification_message" msgid="5617264033476778211">"Presiona para desactivar la depuración por USB"</string>
+ <string name="adb_active_notification_message" msgid="5617264033476778211">"Presiona para desactivar"</string>
<string name="adb_active_notification_message" product="tv" msgid="6624498401272780855">"Seleccionar para desactivar la depuración por USB"</string>
<string name="adbwifi_active_notification_title" msgid="6147343659168302473">"Se conectó la depuración inalámbrica"</string>
<string name="adbwifi_active_notification_message" msgid="930987922852867972">"Presiona para desactivar la depuración inalámbrica"</string>
@@ -1378,7 +1378,7 @@
<string name="share_remote_bugreport_action" msgid="7630880678785123682">"COMPARTIR"</string>
<string name="decline_remote_bugreport_action" msgid="4040894777519784346">"RECHAZAR"</string>
<string name="select_input_method" msgid="3971267998568587025">"Selecciona el método de entrada"</string>
- <string name="show_ime" msgid="6406112007347443383">"Mantener en la pantalla cuando el teclado físico está activo"</string>
+ <string name="show_ime" msgid="6406112007347443383">"Mientras el teclado físico está activo"</string>
<string name="hardware" msgid="1800597768237606953">"Mostrar teclado virtual"</string>
<string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"Configura el teclado físico"</string>
<string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"Presiona para seleccionar el idioma y el diseño"</string>
diff --git a/core/res/res/values-es/strings.xml b/core/res/res/values-es/strings.xml
index 030d034..c44c9e9 100644
--- a/core/res/res/values-es/strings.xml
+++ b/core/res/res/values-es/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"acceder a tu calendario"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"enviar y ver mensajes SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Archivos y documentos"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"acceder a archivos y documentos de tu dispositivo"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Archivos"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"acceder a archivos de tu dispositivo"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Música y audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"acceder a música y audio de tu dispositivo"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotos y vídeos"</string>
@@ -546,8 +546,8 @@
<string name="permdesc_bluetooth_advertise" product="default" msgid="6085174451034210183">"Permite que la aplicación emita a dispositivos Bluetooth cercanos"</string>
<string name="permlab_uwb_ranging" msgid="8141915781475770665">"calcular posición de dispositivos de banda ultraancha cercanos"</string>
<string name="permdesc_uwb_ranging" msgid="2519723069604307055">"Permite que la aplicación determine la posición relativa de los dispositivos de banda ultraancha cercanos"</string>
- <string name="permlab_nearby_wifi_devices" msgid="392774237063608500">"Interactuar con dispositivos Wi-Fi cercanos"</string>
- <string name="permdesc_nearby_wifi_devices" msgid="3054307728646332906">"Permite a la aplicación mostrar, conectar y determinar la posición relativa de dispositivos Wi-Fi cercanos"</string>
+ <string name="permlab_nearby_wifi_devices" msgid="392774237063608500">"interactuar con dispositivos Wi-Fi cercanos"</string>
+ <string name="permdesc_nearby_wifi_devices" msgid="3054307728646332906">"Permite a la aplicación emitir y conectarse a dispositivos Wi-Fi cercanos y determinar su posición relativa"</string>
<string name="permlab_preferredPaymentInfo" msgid="5274423844767445054">"Información sobre el servicio de pago por NFC preferido"</string>
<string name="permdesc_preferredPaymentInfo" msgid="8583552469807294967">"Permite que la aplicación obtenga información sobre el servicio de pago por NFC preferido, como identificadores de aplicación registrados y destinos de rutas."</string>
<string name="permlab_nfc" msgid="1904455246837674977">"controlar Comunicación de campo cercano (NFC)"</string>
@@ -1380,7 +1380,7 @@
<string name="select_input_method" msgid="3971267998568587025">"Selecciona un método de entrada"</string>
<string name="show_ime" msgid="6406112007347443383">"Mientras el teclado físico está activo"</string>
<string name="hardware" msgid="1800597768237606953">"Mostrar teclado virtual"</string>
- <string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"Configura el teclado físico"</string>
+ <string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"Configurar el teclado físico"</string>
<string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"Toca para seleccionar el idioma y el diseño"</string>
<string name="fast_scroll_alphabet" msgid="8854435958703888376">" ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
<string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
@@ -1687,7 +1687,7 @@
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"Permitir"</string>
<string name="accessibility_dialog_button_deny" msgid="4129575637812472671">"Denegar"</string>
<string name="accessibility_select_shortcut_menu_title" msgid="6002726538854613272">"Toca una función para empezar a usarla:"</string>
- <string name="accessibility_edit_shortcut_menu_button_title" msgid="239446795930436325">"Selecciona qué funciones usar con el botón Accesibilidad"</string>
+ <string name="accessibility_edit_shortcut_menu_button_title" msgid="239446795930436325">"Selecciona qué funciones usar con el botón de accesibilidad"</string>
<string name="accessibility_edit_shortcut_menu_volume_title" msgid="1077294237378645981">"Selecciona qué funciones usar con la tecla de volumen"</string>
<string name="accessibility_uncheck_legacy_item_warning" msgid="8047830891064817447">"Se ha desactivado <xliff:g id="SERVICE_NAME">%s</xliff:g>"</string>
<string name="edit_accessibility_shortcut_menu_button" msgid="8885752738733772935">"Editar accesos directos"</string>
@@ -1701,10 +1701,10 @@
<string name="accessibility_shortcut_enabling_service" msgid="5473495203759847687">"Al mantener pulsadas las teclas de volumen, se ha activado <xliff:g id="SERVICE_NAME">%1$s</xliff:g>."</string>
<string name="accessibility_shortcut_disabling_service" msgid="8675244165062700619">"Se han mantenido pulsadas las teclas de volumen. Se ha desactivado <xliff:g id="SERVICE_NAME">%1$s</xliff:g>."</string>
<string name="accessibility_shortcut_spoken_feedback" msgid="4228997042855695090">"Para utilizar <xliff:g id="SERVICE_NAME">%1$s</xliff:g>, mantén pulsadas ambas teclas de volumen durante 3 segundos"</string>
- <string name="accessibility_button_prompt_text" msgid="8343213623338605305">"Selecciona la función que se utilizará cuando toques el botón Accesibilidad:"</string>
+ <string name="accessibility_button_prompt_text" msgid="8343213623338605305">"Selecciona la función que se utilizará cuando toques el botón de accesibilidad:"</string>
<string name="accessibility_gesture_prompt_text" msgid="8742535972130563952">"Elige la función que se utilizará con el gesto de accesibilidad (deslizar dos dedos hacia arriba desde la parte inferior de la pantalla):"</string>
<string name="accessibility_gesture_3finger_prompt_text" msgid="5211827854510660203">"Elige la función que se utilizará con el gesto de accesibilidad (deslizar tres dedos hacia arriba desde la parte inferior de la pantalla):"</string>
- <string name="accessibility_button_instructional_text" msgid="8853928358872550500">"Para cambiar de una función a otra, mantén pulsado el botón Accesibilidad."</string>
+ <string name="accessibility_button_instructional_text" msgid="8853928358872550500">"Para cambiar de una función a otra, mantén pulsado el botón de accesibilidad."</string>
<string name="accessibility_gesture_instructional_text" msgid="9196230728837090497">"Para cambiar de una función a otra, desliza hacia arriba con dos dedos y mantén pulsada la pantalla."</string>
<string name="accessibility_gesture_3finger_instructional_text" msgid="3425123684990193765">"Para cambiar de una función a otra, desliza tres dedos hacia arriba y mantén pulsada la pantalla."</string>
<string name="accessibility_magnification_chooser_text" msgid="1502075582164931596">"Ampliación"</string>
@@ -1918,7 +1918,7 @@
<string name="language_selection_title" msgid="52674936078683285">"Añadir un idioma"</string>
<string name="country_selection_title" msgid="5221495687299014379">"Preferencia de región"</string>
<string name="search_language_hint" msgid="7004225294308793583">"Nombre de idioma"</string>
- <string name="language_picker_section_suggested" msgid="6556199184638990447">"Sugerido"</string>
+ <string name="language_picker_section_suggested" msgid="6556199184638990447">"Sugeridos"</string>
<string name="language_picker_section_all" msgid="1985809075777564284">"Todos los idiomas"</string>
<string name="region_picker_section_all" msgid="756441309928774155">"Todas las regiones"</string>
<string name="locale_search_menu" msgid="6258090710176422934">"Buscar"</string>
diff --git a/core/res/res/values-et/strings.xml b/core/res/res/values-et/strings.xml
index 40b01a2..ec5e203 100644
--- a/core/res/res/values-et/strings.xml
+++ b/core/res/res/values-et/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"juurdepääs kalendrile"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"saata ja vaadata SMS-sõnumeid"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Failid ja dokumendid"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"juurdepääs teie seadmes olevatele failidele ja dokumentidele"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Failid"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"juurdepääs teie seadmes olevatele failidele"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Muusika ja heli"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"teie seadmes muusikale ja helile juurdepääsemine"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotod ja videod"</string>
diff --git a/core/res/res/values-eu/strings.xml b/core/res/res/values-eu/strings.xml
index 72fc72b..608368b 100644
--- a/core/res/res/values-eu/strings.xml
+++ b/core/res/res/values-eu/strings.xml
@@ -305,11 +305,11 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"atzitu egutegia"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMSak"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"bidali eta ikusi SMS mezuak"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"fitxategiak eta dokumentuak"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"gailuko fitxategiak eta dokumentuak atzitu"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Fitxategiak"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"gailuko fitxategiak atzitu"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"musika eta audioa"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"atzitu gailuko musika eta audioak"</string>
- <string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"argazkiak eta bideoak"</string>
+ <string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Argazkiak eta bideoak"</string>
<string name="permgroupdesc_readMediaVisual" msgid="4080463241903508688">"atzitu gailuko argazkiak eta bideoak"</string>
<string name="permgrouplab_microphone" msgid="2480597427667420076">"Mikrofonoa"</string>
<string name="permgroupdesc_microphone" msgid="1047786732792487722">"grabatu audioa"</string>
diff --git a/core/res/res/values-fa/strings.xml b/core/res/res/values-fa/strings.xml
index 6bb2f38..8cf7e8a 100644
--- a/core/res/res/values-fa/strings.xml
+++ b/core/res/res/values-fa/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"دسترسی به تقویم شما"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"پیامک"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"ارسال و مشاهده پیامکها"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"فایلها و سندها"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"دسترسی به فایلها و اسناد موجود در دستگاه"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"فایلها"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"دسترسی به فایلهای دستگاه"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"موسیقی و صدا"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"دسترسی به موسیقی و صدا در دستگاه شما"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"عکسها و ویدیوها"</string>
@@ -1241,7 +1241,7 @@
<string name="android_preparing_apk" msgid="589736917792300956">"آمادهسازی <xliff:g id="APPNAME">%1$s</xliff:g>."</string>
<string name="android_upgrading_starting_apps" msgid="6206161195076057075">"درحال آغاز کردن برنامهها."</string>
<string name="android_upgrading_complete" msgid="409800058018374746">"درحال اتمام راهاندازی."</string>
- <string name="fp_power_button_enrollment_title" msgid="3574363228413259548">"راهاندازی ادامه یابد؟"</string>
+ <string name="fp_power_button_enrollment_title" msgid="3574363228413259548">"ادامه راهاندازی؟"</string>
<string name="fp_power_button_enrollment_message" msgid="5648173517663246140">"دکمه روشن/ خاموش را فشار دادید — این کار معمولاً صفحهنمایش را خاموش میکند.\n\nهنگام راهاندازی اثر انگشت، آرام ضربه بزنید."</string>
<string name="fp_power_button_enrollment_positive_button" msgid="2095415838459356833">"خاموش کردن صفحه"</string>
<string name="fp_power_button_enrollment_negative_button" msgid="6558436406362486747">"ادامه راهاندازی"</string>
diff --git a/core/res/res/values-fi/strings.xml b/core/res/res/values-fi/strings.xml
index 6322456..11524b2 100644
--- a/core/res/res/values-fi/strings.xml
+++ b/core/res/res/values-fi/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"käyttää kalenteria"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"Tekstiviestit"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"lähettää ja tarkastella tekstiviestejä"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Tiedostot ja dokumentit"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"pääsyn laitteesi tiedostoihin ja dokumentteihin"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Tiedostot"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"pääsy laitteen tiedostoihin"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Musiikki ja audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"pääsy laitteen musiikkiin ja audioon"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Valokuvat ja videot"</string>
diff --git a/core/res/res/values-fr-rCA/strings.xml b/core/res/res/values-fr-rCA/strings.xml
index d1b0e92..f52b914 100644
--- a/core/res/res/values-fr-rCA/strings.xml
+++ b/core/res/res/values-fr-rCA/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"accéder à votre agenda"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"Messagerie texte"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"envoyer et afficher des messages texte"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Fichiers et documents"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"accédez aux fichiers et aux documents sur votre appareil"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Fichiers"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"accéder aux fichiers sur votre appareil"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Musique et audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"accédez aux fichiers musicaux et audio sur votre appareil"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Photos et vidéos"</string>
@@ -1356,7 +1356,7 @@
<string name="usb_unsupported_audio_accessory_title" msgid="2335775548086533065">"Un accessoire audio analogique a été détecté"</string>
<string name="usb_unsupported_audio_accessory_message" msgid="1300168007129796621">"L\'appareil connecté n\'est pas compatible avec ce téléphone. Touchez ici en savoir plus."</string>
<string name="adb_active_notification_title" msgid="408390247354560331">"Débogage USB activé"</string>
- <string name="adb_active_notification_message" msgid="5617264033476778211">"Touchez ici pour désactiver le débogage USB"</string>
+ <string name="adb_active_notification_message" msgid="5617264033476778211">"Touchez pour désactiver le débogage USB"</string>
<string name="adb_active_notification_message" product="tv" msgid="6624498401272780855">"Sélectionnez cette option pour désactiver le débogage USB."</string>
<string name="adbwifi_active_notification_title" msgid="6147343659168302473">"Débogage sans fil connecté"</string>
<string name="adbwifi_active_notification_message" msgid="930987922852867972">"Touchez l\'écran pour désactiver le débogage sans fil"</string>
@@ -1678,12 +1678,12 @@
<string name="accessibility_shortcut_off" msgid="3651336255403648739">"Ne pas activer"</string>
<string name="accessibility_shortcut_menu_item_status_on" msgid="6608392117189732543">"ACTIVÉ"</string>
<string name="accessibility_shortcut_menu_item_status_off" msgid="5531598275559472393">"DÉSACTIVÉ"</string>
- <string name="accessibility_enable_service_title" msgid="3931558336268541484">"Permettre à <xliff:g id="SERVICE">%1$s</xliff:g> de commander complètement votre appareil?"</string>
+ <string name="accessibility_enable_service_title" msgid="3931558336268541484">"Permettre à <xliff:g id="SERVICE">%1$s</xliff:g> de contrôler complètement votre appareil?"</string>
<string name="accessibility_service_warning_description" msgid="291674995220940133">"Le contrôle total convient aux applications qui répondent à vos besoins d\'accessibilité. Il ne convient pas à la plupart des applications."</string>
- <string name="accessibility_service_screen_control_title" msgid="190017412626919776">"Afficher et commander l\'écran"</string>
+ <string name="accessibility_service_screen_control_title" msgid="190017412626919776">"Afficher et contrôler l\'écran"</string>
<string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Cette fonctionnalité peut lire tout le contenu à l\'écran et afficher du contenu par-dessus d\'autres applications."</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"Afficher et effectuer des actions"</string>
- <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Cette fonctionnalité peut faire le suivi de vos interactions avec une application ou un capteur matériel, et interagir avec des applications en votre nom."</string>
+ <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Cette fonctionnalité peut faire le suivi de vos interactions avec une application ou un capteur matériel et interagir avec des applications en votre nom."</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"Autoriser"</string>
<string name="accessibility_dialog_button_deny" msgid="4129575637812472671">"Refuser"</string>
<string name="accessibility_select_shortcut_menu_title" msgid="6002726538854613272">"Toucher une fonctionnalité pour commencer à l\'utiliser :"</string>
diff --git a/core/res/res/values-fr/strings.xml b/core/res/res/values-fr/strings.xml
index a1949d0..06813e6 100644
--- a/core/res/res/values-fr/strings.xml
+++ b/core/res/res/values-fr/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"accéder à votre agenda"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"envoyer et consulter des SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Fichiers et documents"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"accéder aux fichiers et documents sur votre appareil"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Fichiers"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"accéder aux fichiers de votre appareil"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Musique et audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"accéder aux contenus musicaux et audio sur votre appareil"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Photos et vidéos"</string>
@@ -2052,8 +2052,8 @@
<string name="zen_upgrade_notification_visd_content" msgid="3683314609114134946">"Appuyez pour en savoir plus et pour modifier les paramètres."</string>
<string name="zen_upgrade_notification_title" msgid="8198167698095298717">"Le mode Ne pas déranger a été modifié"</string>
<string name="zen_upgrade_notification_content" msgid="5228458567180124005">"Appuyez pour vérifier les contenus bloqués."</string>
- <string name="review_notification_settings_title" msgid="5102557424459810820">"Consulter les paramètres de notification"</string>
- <string name="review_notification_settings_text" msgid="5916244866751849279">"À partir d\'Android 13, les applis que vous installez ont besoin de votre autorisation pour vous envoyer des notifications. Appuyez pour modifier cette autorisation pour les applis déjà installées."</string>
+ <string name="review_notification_settings_title" msgid="5102557424459810820">"Vérifiez les paramètres de notification"</string>
+ <string name="review_notification_settings_text" msgid="5916244866751849279">"À partir d\'Android 13, les applications que vous installez ont besoin de votre autorisation pour envoyer des notifications. Appuyez pour modifier cette autorisation pour les applications déjà installées."</string>
<string name="review_notification_settings_remind_me_action" msgid="1081081018678480907">"Plus tard"</string>
<string name="review_notification_settings_dismiss" msgid="4160916504616428294">"Fermer"</string>
<string name="notification_app_name_system" msgid="3045196791746735601">"Système"</string>
diff --git a/core/res/res/values-gl/strings.xml b/core/res/res/values-gl/strings.xml
index 3399413..c118efb 100644
--- a/core/res/res/values-gl/strings.xml
+++ b/core/res/res/values-gl/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"acceder ao teu calendario"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"enviar e consultar mensaxes de SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Ficheiros e documentos"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"acceder a ficheiros e documentos do dispositivo"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Ficheiros"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"acceder a ficheiros no teu dispositivo"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Música e audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"acceder a música e audio do dispositivo"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotos e vídeos"</string>
diff --git a/core/res/res/values-gu/strings.xml b/core/res/res/values-gu/strings.xml
index 6d9adea..9aa166f 100644
--- a/core/res/res/values-gu/strings.xml
+++ b/core/res/res/values-gu/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"તમારા કેલેન્ડરને ઍક્સેસ કરવાની"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS સંદેશા મોકલવાની અને જોવાની"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ફાઇલો અને દસ્તાવેજો"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"તમારા ડિવાઇસ પર ફાઇલો અને દસ્તાવેજો ઍક્સેસ કરો"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ફાઇલો"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"તમારા ડિવાઇસ પરની ફાઇલો ઍક્સેસ કરો"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"મ્યુઝિક અને ઑડિયો"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"તમારા ડિવાઇસ પર મ્યુઝિક અને ઑડિયો ઍક્સેસ કરવા માટે"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"ફોટા અને વીડિયો"</string>
diff --git a/core/res/res/values-hi/strings.xml b/core/res/res/values-hi/strings.xml
index 09139bb..d8aaa51 100644
--- a/core/res/res/values-hi/strings.xml
+++ b/core/res/res/values-hi/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"अपने कैलेंडर को ऐक्सेस करें"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"मैसेज (एसएमएस)"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"मैसेज (एसएमएस) भेजें और देखें"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"फ़ाइलों और दस्तावेज़ों को ऐक्सेस करने की अनुमति"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"अपने डिवाइस पर मौजूद फ़ाइलें और दस्तावेज़ ऐक्सेस करने की अनुमति दें"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"फ़ाइलें"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"अपने डिवाइस में मौजूद फ़ाइलों का ऐक्सेस दें"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"संगीत और ऑडियो को ऐक्सेस करने की अनुमति"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"आपके डिवाइस पर संगीत और ऑडियो को ऐक्सेस करने की अनुमति"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"फ़ोटो और वीडियो को ऐक्सेस करने की अनुमति"</string>
diff --git a/core/res/res/values-hr/strings.xml b/core/res/res/values-hr/strings.xml
index 6921fe7..b0bc0b7 100644
--- a/core/res/res/values-hr/strings.xml
+++ b/core/res/res/values-hr/strings.xml
@@ -306,8 +306,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"pristupati kalendaru"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"slati i pregledavati SMS poruke"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Datoteke i dokumenti"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"pristup datotekama i dokumentima na vašem uređaju"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Datoteke"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"pristupati datotekama na vašem uređaju"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Glazba i zvuk"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"pristupite glazbi i zvuku na svom uređaju"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotografije i videozapisi"</string>
diff --git a/core/res/res/values-hu/strings.xml b/core/res/res/values-hu/strings.xml
index 8bb3fe5..8a0b1ff 100644
--- a/core/res/res/values-hu/strings.xml
+++ b/core/res/res/values-hu/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"hozzáférés a naptárhoz"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS-ek küldése és megtekintése"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Fájlok és dokumentumok"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"hozzáférhet fájljaihoz és dokumentumaihoz az eszközén"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Fájlok"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"hozzáférés az eszközön lévő fájlokhoz"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Zene és hang"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"hozzáférés a zenékhez és más hanganyagokhoz az eszközön"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotók és videók"</string>
diff --git a/core/res/res/values-hy/strings.xml b/core/res/res/values-hy/strings.xml
index 6a94877..01d9375 100644
--- a/core/res/res/values-hy/strings.xml
+++ b/core/res/res/values-hy/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"օգտագործել օրացույցը"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"ուղարկել և դիտել SMS-ները"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Ֆայլեր և փաստաթղթեր"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"սարքի ֆայլերի և փաստաթղթերի օգտագործման թույլտվություն"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Ֆայլեր"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"սարքի ֆայլերի օգտագործման թույլտվություն"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Երաժշտություն և աուդիո"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"սարքի երաժշտության և աուդիո ֆայլերի հասանելիություն"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Լուսանկարներ և տեսանյութեր"</string>
@@ -1682,7 +1682,7 @@
<string name="accessibility_service_warning_description" msgid="291674995220940133">"Ամբողջական վերահսկումն անհրաժեշտ է միայն այն հավելվածներին, որոնք օգնում են ձեզ հատուկ գործառույթներից օգտվելիս։"</string>
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"Դիտել և կառավարել էկրանը"</string>
<string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Կարող է կարդալ էկրանի ողջ բովանդակությունը և ցուցադրել բովանդակություն այլ հավելվածների վրայից։"</string>
- <string name="accessibility_service_action_perform_title" msgid="779670378951658160">"Դիտել և համակարգել գործողությունները"</string>
+ <string name="accessibility_service_action_perform_title" msgid="779670378951658160">"Դիտել և կատարել գործողությունները"</string>
<string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Կարող է հետագծել ձեր գործողությունները հավելվածներում և սարքակազմի սենսորների վրա, ինչպես նաև հավելվածներում կատարել գործողություններ ձեր անունից։"</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"Թույլատրել"</string>
<string name="accessibility_dialog_button_deny" msgid="4129575637812472671">"Մերժել"</string>
diff --git a/core/res/res/values-in/strings.xml b/core/res/res/values-in/strings.xml
index 30a0fdb..314f6e2 100644
--- a/core/res/res/values-in/strings.xml
+++ b/core/res/res/values-in/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"mengakses kalender"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"mengirim dan melihat pesan SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"File dan dokumen"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"mengakses file dan dokumen di perangkat Anda"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"File"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"mengakses file di perangkat Anda"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Musik dan audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"mengakses musik dan audio di perangkat Anda"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Foto dan video"</string>
@@ -1378,7 +1378,7 @@
<string name="share_remote_bugreport_action" msgid="7630880678785123682">"BAGIKAN"</string>
<string name="decline_remote_bugreport_action" msgid="4040894777519784346">"TOLAK"</string>
<string name="select_input_method" msgid="3971267998568587025">"Pilih metode masukan"</string>
- <string name="show_ime" msgid="6406112007347443383">"Pertahankan di layar jika keyboard fisik masih aktif"</string>
+ <string name="show_ime" msgid="6406112007347443383">"Biarkan di layar meski keyboard fisik aktif"</string>
<string name="hardware" msgid="1800597768237606953">"Tampilkan keyboard virtual"</string>
<string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"Mengonfigurasi keyboard fisik"</string>
<string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"Ketuk untuk memilih bahasa dan tata letak"</string>
diff --git a/core/res/res/values-is/strings.xml b/core/res/res/values-is/strings.xml
index eff420fe..4346b63 100644
--- a/core/res/res/values-is/strings.xml
+++ b/core/res/res/values-is/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"fá aðgang að dagatalinu þínu"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"senda og skoða SMS-skilaboð"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Skrár og skjöl"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"fá aðgang að skrám og skjölum í tækinu þínu"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Skrár"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"fá aðgang að skrám í tækinu þínu"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Tónlist og hljóð"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"fáðu aðgang að tónlist og hljóði í tækinu þínu"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Myndir og myndskeið"</string>
@@ -1683,7 +1683,7 @@
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"Skoða og stjórna skjá"</string>
<string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Það getur lesið allt efni á skjánum og birt efni yfir öðrum forritum."</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"Skoða og framkvæma aðgerðir"</string>
- <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Það getur fylgst með samskiptum þínum við forrit eða skynjara vélbúnaðar, og haft samskipti við forrit fyrir þína hönd."</string>
+ <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Það getur fylgst með samskiptum þínum við forrit eða skynjara vélbúnaðar og haft samskipti við forrit fyrir þína hönd."</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"Leyfa"</string>
<string name="accessibility_dialog_button_deny" msgid="4129575637812472671">"Hafna"</string>
<string name="accessibility_select_shortcut_menu_title" msgid="6002726538854613272">"Ýttu á eiginleika til að byrja að nota hann:"</string>
diff --git a/core/res/res/values-it/strings.xml b/core/res/res/values-it/strings.xml
index c050c46..bdc813c 100644
--- a/core/res/res/values-it/strings.xml
+++ b/core/res/res/values-it/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"Possono accedere al calendario"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"Possono inviare e visualizzare SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"File e documenti"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"Consente di accedere a file e documenti sul tuo dispositivo"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"File"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"Consente di accedere ai file sul tuo dispositivo"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Musica e audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"accesso a musica e audio sul tuo dispositivo"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Foto e video"</string>
diff --git a/core/res/res/values-iw/strings.xml b/core/res/res/values-iw/strings.xml
index c7ecd4b..5b43fe9 100644
--- a/core/res/res/values-iw/strings.xml
+++ b/core/res/res/values-iw/strings.xml
@@ -307,8 +307,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"גישה אל היומן"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"שליחה והצגה של הודעות SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"קבצים ומסמכים"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"גישה לקבצים ולמסמכים במכשיר"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"קבצים"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"גישה לקבצים במכשיר שלך"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"מוזיקה ואודיו"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"גישה למוזיקה ולאודיו במכשיר"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"תמונות וסרטונים"</string>
@@ -1714,7 +1714,7 @@
<string name="user_switching_message" msgid="1912993630661332336">"מעבר אל <xliff:g id="NAME">%1$s</xliff:g>…"</string>
<string name="user_logging_out_message" msgid="7216437629179710359">"מתבצע ניתוק של <xliff:g id="NAME">%1$s</xliff:g>…"</string>
<string name="owner_name" msgid="8713560351570795743">"בעלים"</string>
- <string name="guest_name" msgid="8502103277839834324">"אורח/ת"</string>
+ <string name="guest_name" msgid="8502103277839834324">"אורח"</string>
<string name="error_message_title" msgid="4082495589294631966">"שגיאה"</string>
<string name="error_message_change_not_allowed" msgid="843159705042381454">"מנהל המערכת שלך לא מאפשר את השינוי הזה"</string>
<string name="app_not_found" msgid="3429506115332341800">"לא נמצאה אפליקציה שתומכת בפעולה הזו"</string>
diff --git a/core/res/res/values-ja/strings.xml b/core/res/res/values-ja/strings.xml
index 9c5d7be..9c9d9cf 100644
--- a/core/res/res/values-ja/strings.xml
+++ b/core/res/res/values-ja/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"カレンダーへのアクセス"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMSメッセージの送信と表示"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ファイルとドキュメント"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"デバイス内のファイルやドキュメントへのアクセス"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ファイル"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"デバイス内のファイルにアクセス"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"音楽とオーディオ"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"デバイス上の音楽とオーディオにアクセスする"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"写真と動画"</string>
@@ -1681,7 +1681,7 @@
<string name="accessibility_enable_service_title" msgid="3931558336268541484">"<xliff:g id="SERVICE">%1$s</xliff:g> にデバイスのフル コントロールを許可しますか?"</string>
<string name="accessibility_service_warning_description" msgid="291674995220940133">"フル コントロールは、ユーザー補助機能が必要な場合には適していますが、その他の多くのアプリには不要です。"</string>
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"画面の表示と操作"</string>
- <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"画面上のすべてのコンテンツを読み取り、他のアプリでコンテンツを表示することができます。"</string>
+ <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"画面上のすべてのコンテンツを読み取り、他のアプリ上にコンテンツを表示することができます。"</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"操作の表示と実行"</string>
<string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"アプリやハードウェア センサーの操作を記録したり、自動的にアプリを操作したりできます。"</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"許可"</string>
@@ -1826,7 +1826,7 @@
<string name="restr_pin_confirm_pin" msgid="7143161971614944989">"新しいPINの確認"</string>
<string name="restr_pin_create_pin" msgid="917067613896366033">"制限を変更するためのPINを作成してください"</string>
<string name="restr_pin_error_doesnt_match" msgid="7063392698489280556">"PIN が一致しません。もう一度お試しください。"</string>
- <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PINが短すぎます。4桁以上で作成してください。"</string>
+ <string name="restr_pin_error_too_short" msgid="1547007808237941065">"PINが短すぎます。4桁以上で設定してください。"</string>
<string name="restr_pin_try_later" msgid="5897719962541636727">"しばらくしてから再試行"</string>
<string name="immersive_cling_title" msgid="2307034298721541791">"全画面表示"</string>
<string name="immersive_cling_description" msgid="7092737175345204832">"終了するには、上から下にスワイプします。"</string>
diff --git a/core/res/res/values-ka/strings.xml b/core/res/res/values-ka/strings.xml
index 10d9ffd..08ac184 100644
--- a/core/res/res/values-ka/strings.xml
+++ b/core/res/res/values-ka/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"თქვენს კალენდარზე წვდომა"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS შეტყობინებების გაგზავნა და ნახვა"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ფაილები და დოკუმენტები"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"თქვენს მოწყობილობაზე ფაილებსა და დოკუმენტებზე წვდომა"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ფაილები"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"ფაილებზე წვდომა თქვენს მოწყობილობაში"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"მუსიკა და აუდიო"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"იქონიეთ წვდომა მუსიკასა და აუდიოზე თქვენს მოწყობილობაზე"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"ფოტოები და ვიდეოები"</string>
diff --git a/core/res/res/values-kk/strings.xml b/core/res/res/values-kk/strings.xml
index 8e32407..a763f3f 100644
--- a/core/res/res/values-kk/strings.xml
+++ b/core/res/res/values-kk/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"күнтізбеге кіру"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS хабарларын жіберу және көру"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Файлдар мен құжаттар"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"құрылғыдағы файлдар мен құжаттарды пайдалану"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Файлдар"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"құрылғыңыздағы файлдарды пайдалану"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Музыка және аудио"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"құрылғыдағы музыка мен аудиомазмұнды пайдалану рұқсаты"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Фотосуреттер мен бейнелер"</string>
diff --git a/core/res/res/values-km/strings.xml b/core/res/res/values-km/strings.xml
index e6b8bce..6501755 100644
--- a/core/res/res/values-km/strings.xml
+++ b/core/res/res/values-km/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"ចូលប្រើប្រិតិទិនរបស់អ្នក"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"សារ SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"ផ្ញើ និងមើលសារ SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ឯកសារ"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"ចូលប្រើឯកសារនៅលើឧបករណ៍របស់អ្នក"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ឯកសារ"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"ចូលប្រើប្រាស់ឯកសារនៅលើឧបករណ៍របស់អ្នក"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"តន្រ្តី និងសំឡេង"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"ចូលប្រើតន្ត្រី និងសំឡេងនៅលើឧបករណ៍របស់អ្នក"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"រូបថត និងវីដេអូ"</string>
@@ -1380,7 +1380,7 @@
<string name="select_input_method" msgid="3971267998568587025">"ជ្រើសវិធីសាស្ត្របញ្ចូល"</string>
<string name="show_ime" msgid="6406112007347443383">"ទុកវានៅលើអេក្រង់ខណៈពេលក្តារចុចពិតប្រាកដកំពុងសកម្ម"</string>
<string name="hardware" msgid="1800597768237606953">"បង្ហាញក្ដារចុចនិម្មិត"</string>
- <string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"កំណត់រចនាសម្ព័ន្ធក្តារចុចពិតប្រាកដ"</string>
+ <string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"កំណត់រចនាសម្ព័ន្ធក្តារចុចរូបវន្ត"</string>
<string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"ប៉ះដើម្បីជ្រើសភាសា និងប្លង់"</string>
<string name="fast_scroll_alphabet" msgid="8854435958703888376">" ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
<string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
@@ -1681,7 +1681,7 @@
<string name="accessibility_enable_service_title" msgid="3931558336268541484">"អនុញ្ញាតឱ្យ <xliff:g id="SERVICE">%1$s</xliff:g> មានសិទ្ធិគ្រប់គ្រងឧបករណ៍របស់អ្នកទាំងស្រុងឬ?"</string>
<string name="accessibility_service_warning_description" msgid="291674995220940133">"ការគ្រប់គ្រងទាំងស្រុងមានលក្ខណៈសមស្របសម្រាប់កម្មវិធី ដែលជួយអ្នកទាក់ទងនឹងការប្រើមុខងារភាពងាយស្រួល ប៉ុន្តែមិនសមស្របសម្រាប់កម្មវិធីភាគច្រើនទេ។"</string>
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"មើល និងគ្រប់គ្រងអេក្រង់"</string>
- <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"ការគ្រប់គ្រងអេក្រង់អាចអានខ្លឹមសារទាំងអស់នៅលើអេក្រង់ និងបង្ហាញខ្លឹមសារលើកម្មវិធីផ្សេងទៀត។"</string>
+ <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"វាអាចអានខ្លឹមសារទាំងអស់នៅលើអេក្រង់ និងបង្ហាញខ្លឹមសារលើកម្មវិធីផ្សេងទៀត។"</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"មើល និងធ្វើសកម្មភាព"</string>
<string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"វាអាចតាមដានអន្តរកម្មរបស់អ្នកជាមួយនឹងកម្មវិធី ឬឧបករណ៍ចាប់សញ្ញាហាតវែរ និងធ្វើអន្តរកម្មជាមួយកម្មវិធីនានាជំនួសឱ្យអ្នក។"</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"អនុញ្ញាត"</string>
diff --git a/core/res/res/values-kn/strings.xml b/core/res/res/values-kn/strings.xml
index 2011da6..30b8e07 100644
--- a/core/res/res/values-kn/strings.xml
+++ b/core/res/res/values-kn/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"ನಿಮ್ಮ ಕ್ಯಾಲೆಂಡರ್ ಪ್ರವೇಶಿಸಲು"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS ಸಂದೇಶಗಳನ್ನು ಕಳುಹಿಸಲು ಮತ್ತು ನಿರ್ವಹಿಸಲು"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ಫೈಲ್ಗಳು ಮತ್ತು ಡಾಕ್ಯುಮೆಂಟ್ಗಳು"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"ನಿಮ್ಮ ಸಾಧನದಲ್ಲಿ ಫೈಲ್ಗಳು ಮತ್ತು ಡಾಕ್ಯುಮೆಂಟ್ಗಳನ್ನು ಪ್ರವೇಶಿಸಿ"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ಫೈಲ್ಗಳು"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"ನಿಮ್ಮ ಸಾಧನದಲ್ಲಿರುವ ಫೈಲ್ಗಳನ್ನು ಪ್ರವೇಶಿಸಿ"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"ಸಂಗೀತ ಮತ್ತು ಆಡಿಯೋ"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"ನಿಮ್ಮ ಸಾಧನದಲ್ಲಿ ಸಂಗೀತ ಮತ್ತು ಆಡಿಯೊವನ್ನು ಪ್ರವೇಶಿಸಿ"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"ಫೋಟೋಗಳು ಮತ್ತು ವೀಡಿಯೊಗಳು"</string>
@@ -1241,7 +1241,7 @@
<string name="android_preparing_apk" msgid="589736917792300956">"<xliff:g id="APPNAME">%1$s</xliff:g> ಸಿದ್ಧಪಡಿಸಲಾಗುತ್ತಿದೆ."</string>
<string name="android_upgrading_starting_apps" msgid="6206161195076057075">"ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಪ್ರಾರಂಭಿಸಲಾಗುತ್ತಿದೆ."</string>
<string name="android_upgrading_complete" msgid="409800058018374746">"ಬೂಟ್ ಪೂರ್ಣಗೊಳಿಸಲಾಗುತ್ತಿದೆ."</string>
- <string name="fp_power_button_enrollment_title" msgid="3574363228413259548">"ಸೆಟಪ್ ಮುಂದುವರಿಸಬೇಕೆ?"</string>
+ <string name="fp_power_button_enrollment_title" msgid="3574363228413259548">"ಸೆಟ್ ಮಾಡುವುದನ್ನು ಮುಂದುವರಿಸಬೇಕೇ?"</string>
<string name="fp_power_button_enrollment_message" msgid="5648173517663246140">"ನೀವು ಪವರ್ ಬಟನ್ ಒತ್ತಿದ್ದೀರಿ — ಇದು ಸಾಮಾನ್ಯವಾಗಿ ಸ್ಕ್ರೀನ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸುತ್ತದೆ.\n\nನಿಮ್ಮ ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಅನ್ನು ಹೊಂದಿಸುವಾಗ ಲಘುವಾಗಿ ಟ್ಯಾಪ್ ಮಾಡಲು ಪ್ರಯತ್ನಿಸಿ."</string>
<string name="fp_power_button_enrollment_positive_button" msgid="2095415838459356833">"ಸ್ಕ್ರೀನ್ ಆಫ್ ಮಾಡಿ"</string>
<string name="fp_power_button_enrollment_negative_button" msgid="6558436406362486747">"ಸೆಟಪ್ ಮುಂದುವರಿಸಿ"</string>
diff --git a/core/res/res/values-ko/strings.xml b/core/res/res/values-ko/strings.xml
index 7dfe722..eedcaf9 100644
--- a/core/res/res/values-ko/strings.xml
+++ b/core/res/res/values-ko/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"캘린더에 액세스"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS 메시지 전송 및 보기"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"파일 및 문서"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"기기의 파일 및 문서에 액세스"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"파일"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"내 기기의 파일에 액세스"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"음악 및 오디오"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"기기의 음악 및 오디오에 액세스"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"사진 및 동영상"</string>
@@ -1843,7 +1843,7 @@
<string name="managed_profile_label_badge_2" msgid="5673187309555352550">"두 번째 업무용 <xliff:g id="LABEL">%1$s</xliff:g>"</string>
<string name="managed_profile_label_badge_3" msgid="6882151970556391957">"세 번째 업무용<xliff:g id="LABEL">%1$s</xliff:g>"</string>
<string name="lock_to_app_unlock_pin" msgid="3890940811866290782">"고정 해제 이전에 PIN 요청"</string>
- <string name="lock_to_app_unlock_pattern" msgid="2694204070499712503">"고정 해제 이전에 잠금해제 패턴 요청"</string>
+ <string name="lock_to_app_unlock_pattern" msgid="2694204070499712503">"고정 해제 시 잠금 해제 패턴 요청"</string>
<string name="lock_to_app_unlock_password" msgid="9126722403506560473">"고정 해제 이전에 비밀번호 요청"</string>
<string name="package_installed_device_owner" msgid="7035926868974878525">"관리자에 의해 설치되었습니다."</string>
<string name="package_updated_device_owner" msgid="7560272363805506941">"관리자에 의해 업데이트되었습니다."</string>
diff --git a/core/res/res/values-ky/strings.xml b/core/res/res/values-ky/strings.xml
index 221efe10..08fb1f0 100644
--- a/core/res/res/values-ky/strings.xml
+++ b/core/res/res/values-ky/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"жылнаамаңызды пайдалануу"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS билдирүүлөрдү жиберүү жана көрсөтүү"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Файлдар жана документтер"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"түзмөгүңүздөгү файлдары жана документтерди колдонуу"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Файлдар"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"түзмөгүңүздөгү файлдар жеткиликтүү болот"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Музыка жана аудио"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"түзмөгүңүздөгү музыка менен аудиолорго мүмкүнчүлүк алуу"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Сүрөттөр жана видеолор"</string>
@@ -1679,7 +1679,7 @@
<string name="accessibility_shortcut_menu_item_status_on" msgid="6608392117189732543">"КҮЙҮК"</string>
<string name="accessibility_shortcut_menu_item_status_off" msgid="5531598275559472393">"ӨЧҮК"</string>
<string name="accessibility_enable_service_title" msgid="3931558336268541484">"<xliff:g id="SERVICE">%1$s</xliff:g> кызматына түзмөгүңүздү толугу менен көзөмөлдөөгө уруксат бересизби?"</string>
- <string name="accessibility_service_warning_description" msgid="291674995220940133">"Толук көзөмөл атайын мүмкүнчүлүктөрдү пайдаланууга керек, бирок калган көпчүлүк колдонмолорго кереги жок."</string>
+ <string name="accessibility_service_warning_description" msgid="291674995220940133">"Толук көзөмөл атайын мүмкүнчүлүктөрдү иштеткен колдонмолорго керек болуп, калган көптөгөн колдонмолорго кереги деле жок."</string>
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"Экранды көрүп, көзөмөлдөө"</string>
<string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Кызмат экрандагы нерселерди окуп, аларды башка колдонмолордун үстүнөн көрсөтөт."</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"Аракеттерди көрүп, аткаруу"</string>
diff --git a/core/res/res/values-lo/strings.xml b/core/res/res/values-lo/strings.xml
index 1540713..aa99ef1 100644
--- a/core/res/res/values-lo/strings.xml
+++ b/core/res/res/values-lo/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"ເຂົ້າຫາປະຕິທິນຂອງທ່ານ"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"ສົ່ງ ແລະເບິ່ງຂໍ້ຄວາມ SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ໄຟລ໌ ແລະ ເອກະສານ"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"ເຂົ້າເຖິງໄຟລ໌ ແລະ ເອກະສານຢູ່ອຸປະກອນຂອງທ່ານ"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ໄຟລ໌"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"ເຂົ້າເຖິງໄຟລ໌ຢູ່ອຸປະກອນຂອງທ່ານ"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"ເພງ ແລະ ສຽງ"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"ເຂົ້າເຖິງເພງ ແລະ ສຽງຢູ່ອຸປະກອນຂອງທ່ານ"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"ຮູບພາບ ແລະ ວິດີໂອ"</string>
diff --git a/core/res/res/values-lt/strings.xml b/core/res/res/values-lt/strings.xml
index 7f32466..0b368fa 100644
--- a/core/res/res/values-lt/strings.xml
+++ b/core/res/res/values-lt/strings.xml
@@ -307,8 +307,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"pasiekti kalendorių"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"siųsti ir peržiūrėti SMS pranešimus"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Failai ir dokumentai"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"pasiekti failus ir dokumentus jūsų įrenginyje"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Failai"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"pasiekti failus jūsų įrenginyje"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Muzika ir garso įrašai"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"pasiekti muziką ir garso įrašus jūsų įrenginyje"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Nuotraukos ir vaizdo įrašai"</string>
@@ -1697,7 +1697,7 @@
<string name="disable_accessibility_shortcut" msgid="5806091378745232383">"Išjungti spartųjį klavišą"</string>
<string name="leave_accessibility_shortcut_on" msgid="6543362062336990814">"Naudoti spartųjį klavišą"</string>
<string name="color_inversion_feature_name" msgid="326050048927789012">"Spalvų inversija"</string>
- <string name="color_correction_feature_name" msgid="3655077237805422597">"Spalvų taisymas"</string>
+ <string name="color_correction_feature_name" msgid="3655077237805422597">"Spalvų koregavimas"</string>
<string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Vienos rankos režimas"</string>
<string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Itin blanku"</string>
<string name="accessibility_shortcut_enabling_service" msgid="5473495203759847687">"Laikomi garsumo klavišai. „<xliff:g id="SERVICE_NAME">%1$s</xliff:g>“ įjungta."</string>
diff --git a/core/res/res/values-lv/strings.xml b/core/res/res/values-lv/strings.xml
index 5d68539..4d57390 100644
--- a/core/res/res/values-lv/strings.xml
+++ b/core/res/res/values-lv/strings.xml
@@ -306,8 +306,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"piekļūt jūsu kalendāram"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"Īsziņas"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"sūtīt un skatīt īsziņas"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Faili un dokumenti"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"piekļuve failiem un dokumentiem jūsu ierīcē"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Faili"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"piekļūt failiem jūsu ierīcē"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Mūzika un audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"piekļuve mūzikai un audio jūsu ierīcē"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotoattēli un videoklipi"</string>
diff --git a/core/res/res/values-mk/strings.xml b/core/res/res/values-mk/strings.xml
index 6314f2d..2c346fd 100644
--- a/core/res/res/values-mk/strings.xml
+++ b/core/res/res/values-mk/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"пристапува до календарот"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"испраќа и прикажува SMS-пораки"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Датотеки и документи"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"да пристапува до датотеки и документи на уредот"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Датотеки"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"да пристапува до датотеки на вашиот уред"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Музика и аудио"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"пристапувајте до музика и аудио на вашиот уред"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Фотографии и видеа"</string>
diff --git a/core/res/res/values-ml/strings.xml b/core/res/res/values-ml/strings.xml
index 0292ea6..cba1b32 100644
--- a/core/res/res/values-ml/strings.xml
+++ b/core/res/res/values-ml/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"നിങ്ങളുടെ കലണ്ടർ ആക്സസ്സ് ചെയ്യുക"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS സന്ദേശങ്ങൾ അയയ്ക്കുകയും കാണുകയും ചെയ്യുക"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ഫയലുകളും ഡോക്യുമെന്റുകളും"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"നിങ്ങളുടെ ഉപകരണത്തിലെ ഫയലുകളും ഡോക്യുമെന്റുകളും ആക്സസ് ചെയ്യുക"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ഫയലുകൾ"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"നിങ്ങളുടെ ഉപകരണത്തിലെ ഫയലുകൾ ആക്സസ് ചെയ്യുക"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"സംഗീതവും ഓഡിയോയും"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"നിങ്ങളുടെ ഉപകരണത്തിൽ സംഗീതവും ഓഡിയോയും ആക്സസ് ചെയ്യുക"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"ഫോട്ടോകളും വീഡിയോകളും"</string>
@@ -1381,7 +1381,7 @@
<string name="show_ime" msgid="6406112007347443383">"ഫിസിക്കൽ കീബോർഡ് സജീവമായിരിക്കുമ്പോൾ സ്ക്രീനിൽ നിലനിർത്തുക"</string>
<string name="hardware" msgid="1800597768237606953">"വെർച്വൽ കീബോർഡ് കാണിക്കുക"</string>
<string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"ഫിസിക്കൽ കീബോർഡ് കോൺഫിഗർ ചെയ്യുക"</string>
- <string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"ഭാഷയും ലേഔട്ടും തിരഞ്ഞെടുക്കുന്നതിന് ടാപ്പുചെയ്യുക"</string>
+ <string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"ഭാഷയും ലേഔട്ടും തിരഞ്ഞെടുക്കുന്നതിന് ടാപ്പ് ചെയ്യുക"</string>
<string name="fast_scroll_alphabet" msgid="8854435958703888376">" ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
<string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
<string name="alert_windows_notification_channel_group_name" msgid="6063891141815714246">"മറ്റ് ആപ്സിന് മുകളിൽ പ്രദർശിപ്പിക്കുക"</string>
diff --git a/core/res/res/values-mn/strings.xml b/core/res/res/values-mn/strings.xml
index c8de471..38056dd 100644
--- a/core/res/res/values-mn/strings.xml
+++ b/core/res/res/values-mn/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"Календарь руу хандах"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"Мессеж"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS мессежийг илгээх, харах"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Файл, документ"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"таны төхөөрөмж дээрх файл болон документод хандах"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Файлууд"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"таны төхөөрөмж дээрх файлуудад хандах"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Хөгжим, аудио"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"төхөөрөмж дээрээ хөгжим болон аудионд хандах"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Зураг, видео"</string>
diff --git a/core/res/res/values-mr/strings.xml b/core/res/res/values-mr/strings.xml
index d4946e8..1e2b43b 100644
--- a/core/res/res/values-mr/strings.xml
+++ b/core/res/res/values-mr/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"आपल्या कॅलेंडरवर प्रवेश"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"एसएमएस"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS मेसेज पाठवणे आणि पाहणे हे"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"फाइल आणि दस्तऐवज"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"तुमच्या डिव्हाइसवर फाइल आणि दस्तऐवज अॅक्सेस करा"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"फाइल"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"तुमच्या डिव्हाइसवरील फाइल अॅक्सेस करा"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"संगीत आणि ऑडिओ"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"तुमच्या डिव्हाइसवर संगीत आणि ऑडिओ अॅक्सेस करा"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"फोटो आणि व्हिडिओ"</string>
diff --git a/core/res/res/values-ms/strings.xml b/core/res/res/values-ms/strings.xml
index ad9ad79a..03cfbf5 100644
--- a/core/res/res/values-ms/strings.xml
+++ b/core/res/res/values-ms/strings.xml
@@ -20,7 +20,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="byteShort" msgid="202579285008794431">"B."</string>
+ <string name="byteShort" msgid="202579285008794431">"B"</string>
<string name="kilobyteShort" msgid="2214285521564195803">"kB"</string>
<string name="megabyteShort" msgid="6649361267635823443">"MB"</string>
<string name="gigabyteShort" msgid="7515809460261287991">"GB"</string>
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"mengakses kalendar"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"menghantar dan melihat mesej SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Fail dan dokumen"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"akses fail dan dokumen pada peranti anda"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Fail"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"akses fail pada peranti anda"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Muzik dan audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"akses muzik dan audio pada peranti anda"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Foto dan video"</string>
@@ -1476,7 +1476,7 @@
<string name="sync_binding_label" msgid="469249309424662147">"Penyegerakan"</string>
<string name="accessibility_binding_label" msgid="1974602776545801715">"Kebolehaksesan"</string>
<string name="wallpaper_binding_label" msgid="1197440498000786738">"Kertas dinding"</string>
- <string name="chooser_wallpaper" msgid="3082405680079923708">"Tukar kertas dinding"</string>
+ <string name="chooser_wallpaper" msgid="3082405680079923708">"Tukar hiasan latar"</string>
<string name="notification_listener_binding_label" msgid="2702165274471499713">"Pendengar pemberitahuan"</string>
<string name="vr_listener_binding_label" msgid="8013112996671206429">"Pendengar VR"</string>
<string name="condition_provider_service_binding_label" msgid="8490641013951857673">"Pembekal keadaan"</string>
@@ -1683,7 +1683,7 @@
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"Melihat dan mengawal skrin"</string>
<string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Ciri ini boleh membaca semua kandungan pada skrin dan memaparkan kandungan di atas apl lain."</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"Lihat dan laksanakan tindakan"</string>
- <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Tindakan ini boleh menjejak interaksi anda dengan apl atau penderia perkakasan dan berinteraksi dengan apl bagi pihak anda."</string>
+ <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Ciri ini boleh menjejak interaksi anda dengan apl atau penderia perkakasan dan berinteraksi dengan apl bagi pihak anda."</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"Benarkan"</string>
<string name="accessibility_dialog_button_deny" msgid="4129575637812472671">"Tolak"</string>
<string name="accessibility_select_shortcut_menu_title" msgid="6002726538854613272">"Ketik ciri untuk mula menggunakan ciri itu:"</string>
diff --git a/core/res/res/values-my/strings.xml b/core/res/res/values-my/strings.xml
index cc5392c..cd8fdcd 100644
--- a/core/res/res/values-my/strings.xml
+++ b/core/res/res/values-my/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"သင့်ပြက္ခဒိန်အား ဝင်ရောက်သုံးရန်"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS စာတိုစနစ်"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS စာများကို ပို့ကာ ကြည့်မည်"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ဖိုင်နှင့် မှတ်တမ်းများ"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"သင့်စက်ရှိ ဖိုင်နှင့် မှတ်တမ်းများ သုံးခွင့်"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ဖိုင်များ"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"သင့်စက်တွင် ဖိုင်များသုံးနိုင်သည်"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"တေးဂီတနှင့် အသံ"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"သင့်စက်တွင် တေးဂီတနှင့် အသံများ ဖွင့်နိုင်သည်"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"ဓာတ်ပုံနှင့် ဗီဒီယိုများ"</string>
@@ -1220,7 +1220,7 @@
<string name="screen_compat_mode_scale" msgid="8627359598437527726">"စကေး"</string>
<string name="screen_compat_mode_show" msgid="5080361367584709857">"အမြဲပြသရန်"</string>
<string name="screen_compat_mode_hint" msgid="4032272159093750908">"ဒါကို စနစ် ဆက်တင်များထဲ ပြန်ဖွင့်ပေးရန် > Apps > ဒေါင်းလုဒ် လုပ်ပြီး။"</string>
- <string name="unsupported_display_size_message" msgid="7265211375269394699">"<xliff:g id="APP_NAME">%1$s</xliff:g> သည် လက်ရှိ မျက်နှာပြင်အရွယ်အစားကို ပံ့ပိုးထားခြင်း မရှိပါ။ မမျှော်လင့်နိုင်သည့် ချွတ်ယွင်းချက်များ ဖြစ်ပေါ်နိုင်ပါသည်။"</string>
+ <string name="unsupported_display_size_message" msgid="7265211375269394699">"<xliff:g id="APP_NAME">%1$s</xliff:g> သည် လက်ရှိ ပြကွက်အရွယ်ကို ပံ့ပိုးထားခြင်း မရှိပါ။ မမျှော်လင့်နိုင်သည့် ချွတ်ယွင်းချက်များ ဖြစ်ပေါ်နိုင်ပါသည်။"</string>
<string name="unsupported_display_size_show" msgid="980129850974919375">"အမြဲပြပါ"</string>
<string name="unsupported_compile_sdk_message" msgid="7326293500707890537">"ကိုက်ညီမှုမရှိသည့် Android OS ဗားရှင်းအတွက် <xliff:g id="APP_NAME">%1$s</xliff:g> ကို ပြုလုပ်ထားခြင်းဖြစ်ပြီး ပုံမှန်အလုပ်မလုပ်နိုင်ပါ။ ဤအက်ပ်အတွက် အပ်ဒိတ်လုပ်ထားသည့် ဗားရှင်း ရနိုင်ပါမည်။"</string>
<string name="unsupported_compile_sdk_show" msgid="1601210057960312248">"အမြဲပြရန်"</string>
@@ -1683,7 +1683,7 @@
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"ဖန်သားပြင်ကို ကြည့်ရှုထိန်းချုပ်ခြင်း"</string>
<string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"၎င်းသည် မျက်နှာပြင်ပေါ်ရှိ အကြောင်းအရာအားလုံးကို ဖတ်နိုင်ပြီး အခြားအက်ပ်များအပေါ်တွင် အကြောင်းအရာကို ဖော်ပြနိုင်သည်။"</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"လုပ်ဆောင်ချက်များကို ကြည့်ရှုဆောင်ရွက်ခြင်း"</string>
- <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"၎င်းသည် အက်ပ်တစ်ခု သို့မဟုတ် အာရုံခံကိရိယာကို အသုံးပြု၍ သင့်ပြန်လှန်တုံ့ပြန်မှုများကို မှတ်သားနိုင်ပြီး သင့်ကိုယ်စား အက်ပ်များနှင့် ပြန်လှန်တုံ့ပြန်နိုင်သည်။"</string>
+ <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"၎င်းသည် သင်နှင့် အက်ပ်တစ်ခု (သို့) အာရုံခံကိရိယာအကြား ပြန်လှန်တုံ့ပြန်မှုများကို မှတ်သားနိုင်ပြီး သင့်ကိုယ်စား အက်ပ်များနှင့် ပြန်လှန်တုံ့ပြန်နိုင်သည်။"</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"ခွင့်ပြုရန်"</string>
<string name="accessibility_dialog_button_deny" msgid="4129575637812472671">"ပယ်ရန်"</string>
<string name="accessibility_select_shortcut_menu_title" msgid="6002726538854613272">"ဝန်ဆောင်မှုကို စတင်အသုံးပြုရန် တို့ပါ−"</string>
diff --git a/core/res/res/values-nb/strings.xml b/core/res/res/values-nb/strings.xml
index a834720..11b544d 100644
--- a/core/res/res/values-nb/strings.xml
+++ b/core/res/res/values-nb/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"åpne kalenderen din"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"sende og lese SMS-meldinger"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Filer og dokumenter"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"åpne filer og dokumenter på enheten din"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Filer"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"bruke filer på enheten"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Musikk og lyd"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"bruke musikk og lyd på enheten"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Bilder og videoer"</string>
diff --git a/core/res/res/values-ne/strings.xml b/core/res/res/values-ne/strings.xml
index 4259218..f98c0421 100644
--- a/core/res/res/values-ne/strings.xml
+++ b/core/res/res/values-ne/strings.xml
@@ -270,7 +270,7 @@
<string name="status_bar_notification_info_overflow" msgid="3330152558746563475">"९९९+"</string>
<string name="notification_hidden_text" msgid="2835519769868187223">"नयाँ सूचना"</string>
<string name="notification_channel_virtual_keyboard" msgid="6465975799223304567">"भर्चुअल किबोर्ड"</string>
- <string name="notification_channel_physical_keyboard" msgid="5417306456125988096">"वास्तविक किबोर्ड"</string>
+ <string name="notification_channel_physical_keyboard" msgid="5417306456125988096">"फिजिकल किबोर्ड"</string>
<string name="notification_channel_security" msgid="8516754650348238057">"सुरक्षा"</string>
<string name="notification_channel_car_mode" msgid="2123919247040988436">"कार मोड"</string>
<string name="notification_channel_account" msgid="6436294521740148173">"खाताको स्थिति"</string>
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"तपाईंको पात्रोमाथि पहुँच गर्नुहोस्"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS सन्देशहरू पठाउनुहोस् र हेर्नुहोस्"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"फाइल तथा डकुमेन्टहरू"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"आफ्नो डिभाइसमा भएका फाइल र डकुमेन्टहरू प्रयोग गर्नुहोस्"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"फाइलहरू"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"आफ्नो डिभाइसमा रहेका फाइलहरू हेर्नुहोस् र प्रयोग गर्नुहोस्"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"सङ्गीत तथा अडियो"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"तपाईंको डिभाइसबाट सङ्गीत तथा अडियो सुन्ने अनुमति"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"फोटो र भिडियोहरू"</string>
@@ -1378,9 +1378,9 @@
<string name="share_remote_bugreport_action" msgid="7630880678785123682">"सेयर गर्नुहोस्"</string>
<string name="decline_remote_bugreport_action" msgid="4040894777519784346">"अस्वीकार गर्नुहोस्"</string>
<string name="select_input_method" msgid="3971267998568587025">"निवेश विधि छान्नुहोस्"</string>
- <string name="show_ime" msgid="6406112007347443383">"वास्तविक किबोर्ड सक्रिय हुँदा यसलाई स्क्रिनमा राखियोस्"</string>
+ <string name="show_ime" msgid="6406112007347443383">"फिजिकल किबोर्ड सक्रिय हुँदा यसलाई स्क्रिनमा राखियोस्"</string>
<string name="hardware" msgid="1800597768237606953">"भर्चुअल किबोर्ड देखाउनुहोस्"</string>
- <string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"फिजिकल किबोर्डलाई कन्फिगर गर्नुहोस्"</string>
+ <string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"फिजिकल किबोर्ड कन्फिगर गर्नुहोस्"</string>
<string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"भाषा र लेआउट चयन गर्न ट्याप गर्नुहोस्"</string>
<string name="fast_scroll_alphabet" msgid="8854435958703888376">" ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
<string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
diff --git a/core/res/res/values-night/themes_device_defaults.xml b/core/res/res/values-night/themes_device_defaults.xml
index 366e6f9..7cfdba7 100644
--- a/core/res/res/values-night/themes_device_defaults.xml
+++ b/core/res/res/values-night/themes_device_defaults.xml
@@ -98,5 +98,10 @@
<item name="colorAccentPrimary">@color/system_accent1_700</item>
<item name="textColorPrimary">@color/system_neutral1_100</item>
<item name="textColorSecondary">@color/system_neutral2_100</item>
+ <item name="colorListDivider">@color/white</item>
+ </style>
+
+ <style name="Theme.DeviceDefault.AutofillHalfScreenDialogList" parent="Theme.DeviceDefault.DayNight">
+ <item name="colorForeground">@android:color/white</item>
</style>
</resources>
diff --git a/core/res/res/values-nl/strings.xml b/core/res/res/values-nl/strings.xml
index a67623b..f7f28dd 100644
--- a/core/res/res/values-nl/strings.xml
+++ b/core/res/res/values-nl/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"toegang krijgen tot je agenda"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"Sms"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"sms\'jes verzenden en bekijken"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Bestanden en documenten"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"bestanden en documenten op je apparaat openen"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Bestanden"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"toegang tot bestanden op je apparaat"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Muziek en audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"muziek en audio op je apparaat openen"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Foto\'s en video\'s"</string>
@@ -1967,7 +1967,7 @@
<string name="demo_restarting_message" msgid="1160053183701746766">"Apparaat resetten…"</string>
<string name="suspended_widget_accessibility" msgid="6331451091851326101">"<xliff:g id="LABEL">%1$s</xliff:g> staat uit"</string>
<string name="conference_call" msgid="5731633152336490471">"Telefonische vergadering"</string>
- <string name="tooltip_popup_title" msgid="7863719020269945722">"Knopinfo"</string>
+ <string name="tooltip_popup_title" msgid="7863719020269945722">"Tooltip"</string>
<string name="app_category_game" msgid="4534216074910244790">"Games"</string>
<string name="app_category_audio" msgid="8296029904794676222">"Muziek en audio"</string>
<string name="app_category_video" msgid="2590183854839565814">"Films en video"</string>
diff --git a/core/res/res/values-or/strings.xml b/core/res/res/values-or/strings.xml
index b4dd482..26e129f 100644
--- a/core/res/res/values-or/strings.xml
+++ b/core/res/res/values-or/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"ଆପଣଙ୍କ କ୍ୟାଲେଣ୍ଡର୍ ଆକ୍ସେସ୍ କରେ"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS ମେସେଜ୍ ପଠାନ୍ତୁ ଓ ଦେଖନ୍ତୁ"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ଫାଇଲ ଏବଂ ଡକ୍ୟୁମେଣ୍ଟଗୁଡ଼ିକ"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"ଆପଣଙ୍କ ଡିଭାଇସରେ ଥିବା ଫାଇଲ ଏବଂ ଡକ୍ୟୁମେଣ୍ଟଗୁଡ଼ିକୁ ଆକ୍ସେସ କରନ୍ତୁ"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ଫାଇଲଗୁଡ଼ିକ"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"ଆପଣଙ୍କ ଡିଭାଇସରେ ଥିବା ଫାଇଲଗୁଡ଼ିକୁ ଆକ୍ସେସ କରନ୍ତୁ"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"ମ୍ୟୁଜିକ ଏବଂ ଅଡିଓ"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"ଆପଣଙ୍କ ଡିଭାଇସରେ ମ୍ୟୁଜିକ ଏବଂ ଅଡିଓକୁ ଆକ୍ସେସ କରନ୍ତୁ"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"ଫଟୋ ଏବଂ ଭିଡିଓଗୁଡ଼ିକ"</string>
@@ -1683,7 +1683,7 @@
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"ଭ୍ୟୁ ଏବଂ ସ୍କ୍ରିନ୍ ନିୟନ୍ତ୍ରଣ"</string>
<string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"ଏହା ସ୍କ୍ରିନ୍ର ସମସ୍ତ ବିଷୟବସ୍ତୁ ପଢ଼ିପାରେ ଏବଂ ଅନ୍ୟ ଆପ୍ସରେ ବିଷୟବସ୍ତୁ ପ୍ରଦର୍ଶନ କରିପାରେ।"</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"ଦେଖନ୍ତୁ ଏବଂ କାର୍ଯ୍ୟ ସମ୍ପାଦନ କରନ୍ତୁ"</string>
- <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"ଏହା କୌଣସି ଆପ୍ କିମ୍ବା ହାର୍ଡୱେର୍ ସେନ୍ସର୍ ସହ ଆପଣଙ୍କର ପାରସ୍ପରିକ ଆଦାନପ୍ରଦାନକୁ ଟ୍ରାକ୍ କରିପାରେ ଏବଂ ଆପଣଙ୍କ ତରଫରୁ ଆପ୍ସ ସହ ପରିଚିତ ହୋଇପାରେ।"</string>
+ <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"ଏହା କୌଣସି ଆପ କିମ୍ବା ହାର୍ଡୱେର ସେନ୍ସର ସହ ଆପଣଙ୍କର ଇଣ୍ଟେରାକ୍ସନକୁ ଟ୍ରାକ କରିପାରେ ଏବଂ ଆପଣଙ୍କ ତରଫରୁ ଆପ୍ସ ସହ ଇଣ୍ଟରାକ୍ଟ କରିପାରେ।"</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"ଅନୁମତି"</string>
<string name="accessibility_dialog_button_deny" msgid="4129575637812472671">"ଅଗ୍ରାହ୍ୟ"</string>
<string name="accessibility_select_shortcut_menu_title" msgid="6002726538854613272">"ଏକ ଫିଚର୍ ବ୍ୟବହାର କରିବା ଆରମ୍ଭ କରିବାକୁ ଏହାକୁ ଟାପ୍ କରନ୍ତୁ:"</string>
diff --git a/core/res/res/values-pa/strings.xml b/core/res/res/values-pa/strings.xml
index f1aa1f4..852d0f5f 100644
--- a/core/res/res/values-pa/strings.xml
+++ b/core/res/res/values-pa/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"ਤੁਹਾਡੇ ਕੈਲੰਡਰ ਤੱਕ ਪਹੁੰਚ ਕਰਨ"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS ਸੁਨੇਹੇ ਭੇਜੋ ਅਤੇ ਦੇਖੋ"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ਫ਼ਾਈਲਾਂ ਅਤੇ ਦਸਤਾਵੇਜ਼"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"ਆਪਣੇ ਡੀਵਾਈਸ \'ਤੇ ਫ਼ਾਈਲਾਂ ਅਤੇ ਦਸਤਾਵੇਜ਼ਾਂ ਤੱਕ ਪਹੁੰਚ ਕਰੋ"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ਫ਼ਾਈਲਾਂ"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"ਤੁਹਾਡੇ ਡੀਵਾਈਸ \'ਤੇ ਫ਼ਾਈਲਾਂ ਤੱਕ ਪਹੁੰਚ"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"ਸੰਗੀਤ ਅਤੇ ਆਡੀਓ"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"ਆਪਣੇ ਡੀਵਾਈਸ \'ਤੇ ਸੰਗੀਤ ਅਤੇ ਆਡੀਓ ਤੱਕ ਪਹੁੰਚ ਕਰੋ"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"ਫ਼ੋਟੋਆਂ ਅਤੇ ਵੀਡੀਓ"</string>
@@ -1380,7 +1380,7 @@
<string name="select_input_method" msgid="3971267998568587025">"ਇਨਪੁਟ ਵਿਧੀ ਚੁਣੋ"</string>
<string name="show_ime" msgid="6406112007347443383">"ਭੌਤਿਕ ਕੀ-ਬੋਰਡ ਸਰਗਰਮ ਹੋਣ ਦੌਰਾਨ ਇਸ ਨੂੰ ਸਕ੍ਰੀਨ \'ਤੇ ਬਣਾਈ ਰੱਖੋ"</string>
<string name="hardware" msgid="1800597768237606953">"ਆਭਾਸੀ ਕੀ-ਬੋਰਡ ਦਿਖਾਓ"</string>
- <string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"ਭੌਤਿਕ ਕੀ-ਬੋਰਡ ਦੀ ਰੂਪ-ਰੇਖਾ ਬਦਲੋ"</string>
+ <string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"ਭੌਤਿਕ ਕੀ-ਬੋਰਡ ਦਾ ਸੰਰੂਪਣ ਕਰੋ"</string>
<string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"ਭਾਸ਼ਾ ਅਤੇ ਖਾਕਾ ਚੁਣਨ ਲਈ ਟੈਪ ਕਰੋ"</string>
<string name="fast_scroll_alphabet" msgid="8854435958703888376">" ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
<string name="fast_scroll_numeric_alphabet" msgid="2529539945421557329">" 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"</string>
diff --git a/core/res/res/values-pl/strings.xml b/core/res/res/values-pl/strings.xml
index 1770819..9d08c66 100644
--- a/core/res/res/values-pl/strings.xml
+++ b/core/res/res/values-pl/strings.xml
@@ -307,8 +307,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"dostęp do kalendarza"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"wysyłanie i wyświetlanie SMS‑ów"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Pliki i dokumenty"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"dostęp do plików i dokumentów na urządzeniu"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Pliki"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"dostęp do plików na urządzeniu"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Muzyka i dźwięk"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"dostęp do muzyki i dźwięku na urządzeniu"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Zdjęcia i filmy"</string>
diff --git a/core/res/res/values-pt-rBR/strings.xml b/core/res/res/values-pt-rBR/strings.xml
index ed761708..6ef3a0b 100644
--- a/core/res/res/values-pt-rBR/strings.xml
+++ b/core/res/res/values-pt-rBR/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"acesse sua agenda"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"envie e veja mensagens SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Arquivos e documentos"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"acessar arquivos e documentos no seu dispositivo"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Arquivos"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"acessar arquivos no dispositivo"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Música e áudio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"acessar música e áudio no dispositivo"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotos e vídeos"</string>
@@ -1681,7 +1681,7 @@
<string name="accessibility_enable_service_title" msgid="3931558336268541484">"Permitir que o <xliff:g id="SERVICE">%1$s</xliff:g> tenha controle total do seu dispositivo?"</string>
<string name="accessibility_service_warning_description" msgid="291674995220940133">"O controle total é adequado para apps que ajudam você com as necessidades de acessibilidade, mas não para a maioria dos apps."</string>
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"Ver e controlar tela"</string>
- <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Pode ler todo o conteúdo na tela e mostrar conteúdo sobreposto a outros apps."</string>
+ <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Pode ler todo o conteúdo na tela e o conteúdo se sobrepõe ao de outros apps."</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"Ver e realizar ações"</string>
<string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Pode monitorar suas interações com um app ou um sensor de hardware e interagir com apps em seu nome."</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"Permitir"</string>
@@ -1697,7 +1697,7 @@
<string name="color_inversion_feature_name" msgid="326050048927789012">"Inversão de cores"</string>
<string name="color_correction_feature_name" msgid="3655077237805422597">"Correção de cor"</string>
<string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Modo para uma mão"</string>
- <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Mais escuro"</string>
+ <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Escurecer a tela"</string>
<string name="accessibility_shortcut_enabling_service" msgid="5473495203759847687">"Teclas de volume pressionadas. Serviço <xliff:g id="SERVICE_NAME">%1$s</xliff:g> ativado."</string>
<string name="accessibility_shortcut_disabling_service" msgid="8675244165062700619">"Teclas de volume pressionadas. <xliff:g id="SERVICE_NAME">%1$s</xliff:g> desativado."</string>
<string name="accessibility_shortcut_spoken_feedback" msgid="4228997042855695090">"Toque nos dois botões de volume e os mantenha pressionados por três segundo para usar o <xliff:g id="SERVICE_NAME">%1$s</xliff:g>"</string>
@@ -1712,7 +1712,7 @@
<string name="user_switching_message" msgid="1912993630661332336">"Alternando para <xliff:g id="NAME">%1$s</xliff:g>…"</string>
<string name="user_logging_out_message" msgid="7216437629179710359">"Desconectando <xliff:g id="NAME">%1$s</xliff:g>…"</string>
<string name="owner_name" msgid="8713560351570795743">"Proprietário"</string>
- <string name="guest_name" msgid="8502103277839834324">"Convidado"</string>
+ <string name="guest_name" msgid="8502103277839834324">"Visitante"</string>
<string name="error_message_title" msgid="4082495589294631966">"Erro"</string>
<string name="error_message_change_not_allowed" msgid="843159705042381454">"Esta alteração não é permitida pelo administrador"</string>
<string name="app_not_found" msgid="3429506115332341800">"Nenhum app encontrado para executar a ação"</string>
diff --git a/core/res/res/values-pt-rPT/strings.xml b/core/res/res/values-pt-rPT/strings.xml
index caf947f..93516bd 100644
--- a/core/res/res/values-pt-rPT/strings.xml
+++ b/core/res/res/values-pt-rPT/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"aceder ao calendário"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"enviar e ver mensagens SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Ficheiros e documentos"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"aceder a ficheiros e documentos no seu dispositivo"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Ficheiros"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"aceder aos ficheiros no seu dispositivo"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Música e áudio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"aceder a música e áudio no seu dispositivo"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotos e vídeos"</string>
@@ -1700,7 +1700,7 @@
<string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Mais escuro"</string>
<string name="accessibility_shortcut_enabling_service" msgid="5473495203759847687">"Teclas do volume premidas. Serviço <xliff:g id="SERVICE_NAME">%1$s</xliff:g> ativado."</string>
<string name="accessibility_shortcut_disabling_service" msgid="8675244165062700619">"Teclas de volume premidas. Serviço <xliff:g id="SERVICE_NAME">%1$s</xliff:g> desativado."</string>
- <string name="accessibility_shortcut_spoken_feedback" msgid="4228997042855695090">"Prima sem soltar as teclas de volume durante três segundos para utilizar o serviço <xliff:g id="SERVICE_NAME">%1$s</xliff:g>."</string>
+ <string name="accessibility_shortcut_spoken_feedback" msgid="4228997042855695090">"prima sem soltar as teclas de volume durante três segundos para usar o serviço <xliff:g id="SERVICE_NAME">%1$s</xliff:g>."</string>
<string name="accessibility_button_prompt_text" msgid="8343213623338605305">"Escolha uma funcionalidade para utilizar quando tocar no botão Acessibilidade:"</string>
<string name="accessibility_gesture_prompt_text" msgid="8742535972130563952">"Escolha a funcionalidade a utilizar com o gesto de acessibilidade (deslize rapidamente com dois dedos para cima a partir da parte inferior do ecrã):"</string>
<string name="accessibility_gesture_3finger_prompt_text" msgid="5211827854510660203">"Escolha a funcionalidade a utilizar com o gesto de acessibilidade (deslize rapidamente com três dedos para cima a partir da parte inferior do ecrã):"</string>
diff --git a/core/res/res/values-pt/strings.xml b/core/res/res/values-pt/strings.xml
index ed761708..6ef3a0b 100644
--- a/core/res/res/values-pt/strings.xml
+++ b/core/res/res/values-pt/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"acesse sua agenda"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"envie e veja mensagens SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Arquivos e documentos"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"acessar arquivos e documentos no seu dispositivo"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Arquivos"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"acessar arquivos no dispositivo"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Música e áudio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"acessar música e áudio no dispositivo"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotos e vídeos"</string>
@@ -1681,7 +1681,7 @@
<string name="accessibility_enable_service_title" msgid="3931558336268541484">"Permitir que o <xliff:g id="SERVICE">%1$s</xliff:g> tenha controle total do seu dispositivo?"</string>
<string name="accessibility_service_warning_description" msgid="291674995220940133">"O controle total é adequado para apps que ajudam você com as necessidades de acessibilidade, mas não para a maioria dos apps."</string>
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"Ver e controlar tela"</string>
- <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Pode ler todo o conteúdo na tela e mostrar conteúdo sobreposto a outros apps."</string>
+ <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Pode ler todo o conteúdo na tela e o conteúdo se sobrepõe ao de outros apps."</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"Ver e realizar ações"</string>
<string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Pode monitorar suas interações com um app ou um sensor de hardware e interagir com apps em seu nome."</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"Permitir"</string>
@@ -1697,7 +1697,7 @@
<string name="color_inversion_feature_name" msgid="326050048927789012">"Inversão de cores"</string>
<string name="color_correction_feature_name" msgid="3655077237805422597">"Correção de cor"</string>
<string name="one_handed_mode_feature_name" msgid="2334330034828094891">"Modo para uma mão"</string>
- <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Mais escuro"</string>
+ <string name="reduce_bright_colors_feature_name" msgid="3222994553174604132">"Escurecer a tela"</string>
<string name="accessibility_shortcut_enabling_service" msgid="5473495203759847687">"Teclas de volume pressionadas. Serviço <xliff:g id="SERVICE_NAME">%1$s</xliff:g> ativado."</string>
<string name="accessibility_shortcut_disabling_service" msgid="8675244165062700619">"Teclas de volume pressionadas. <xliff:g id="SERVICE_NAME">%1$s</xliff:g> desativado."</string>
<string name="accessibility_shortcut_spoken_feedback" msgid="4228997042855695090">"Toque nos dois botões de volume e os mantenha pressionados por três segundo para usar o <xliff:g id="SERVICE_NAME">%1$s</xliff:g>"</string>
@@ -1712,7 +1712,7 @@
<string name="user_switching_message" msgid="1912993630661332336">"Alternando para <xliff:g id="NAME">%1$s</xliff:g>…"</string>
<string name="user_logging_out_message" msgid="7216437629179710359">"Desconectando <xliff:g id="NAME">%1$s</xliff:g>…"</string>
<string name="owner_name" msgid="8713560351570795743">"Proprietário"</string>
- <string name="guest_name" msgid="8502103277839834324">"Convidado"</string>
+ <string name="guest_name" msgid="8502103277839834324">"Visitante"</string>
<string name="error_message_title" msgid="4082495589294631966">"Erro"</string>
<string name="error_message_change_not_allowed" msgid="843159705042381454">"Esta alteração não é permitida pelo administrador"</string>
<string name="app_not_found" msgid="3429506115332341800">"Nenhum app encontrado para executar a ação"</string>
diff --git a/core/res/res/values-ro/strings.xml b/core/res/res/values-ro/strings.xml
index ab2f645..15d1a67 100644
--- a/core/res/res/values-ro/strings.xml
+++ b/core/res/res/values-ro/strings.xml
@@ -306,8 +306,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"acceseze calendarul"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"trimită și să vadă mesajele SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Fișiere și documente"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"să acceseze fișiere și documente de pe dispozitiv"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Fișiere"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"să acceseze fișiere de pe dispozitiv"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Muzică și conținut audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"să acceseze muzică și conținut audio pe dispozitiv"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotografii și videoclipuri"</string>
diff --git a/core/res/res/values-ru/strings.xml b/core/res/res/values-ru/strings.xml
index d41f3935..845f89d 100644
--- a/core/res/res/values-ru/strings.xml
+++ b/core/res/res/values-ru/strings.xml
@@ -307,8 +307,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"доступ к календарю"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"отправлять и просматривать SMS-сообщения"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Файлы и документы"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"Доступ к файлам и документам на вашем устройстве"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Файлы"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"доступ к файлам на вашем устройстве"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Музыка и аудио"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"доступ к музыке и аудио на вашем устройстве"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Фото и видео"</string>
diff --git a/core/res/res/values-si/strings.xml b/core/res/res/values-si/strings.xml
index 15d9c1e..f0cde1d 100644
--- a/core/res/res/values-si/strings.xml
+++ b/core/res/res/values-si/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"ඔබේ දින දර්ශනයට පිවිසෙන්න"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"කෙටි පණිවිඩ"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS පණිවිඩ යැවීම සහ බැලීම"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ගොනු සහ ලේඛන"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"ඔබගේ උපාංගයේ ගොනු සහ ලේඛන වෙත ප්රවේශ වන්න"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ගොනු"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"ඔබගේ උපාංගයේ ගොනු වෙත ප්රවේශය"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"සංගීතය සහ ශ්රව්ය"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"ඔබගේ උපාංගයේ සංගීතය සහ ශ්රව්ය වෙත ප්රවේශ වන්න"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"ඡායාරූප සහ වීඩියෝ"</string>
diff --git a/core/res/res/values-sk/strings.xml b/core/res/res/values-sk/strings.xml
index 8b9932a..8a468fb 100644
--- a/core/res/res/values-sk/strings.xml
+++ b/core/res/res/values-sk/strings.xml
@@ -307,8 +307,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"prístup ku kalendáru"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"posielanie a zobrazovanie SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Súbory a dokumenty"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"prístup k súborom a dokumentom vo vašom zariadení"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Súbory"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"dostať sa k súborom vo vašom zariadení"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Hudba a zvuk"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"prístup k hudbe a zvuku vo vašom zariadení"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotky a videá"</string>
@@ -352,7 +352,7 @@
<string name="permlab_fullScreenIntent" msgid="4310888199502509104">"zobrazovanie upozornení ako aktivít na celej obrazovke v uzamknutom zariadení"</string>
<string name="permdesc_fullScreenIntent" msgid="1100721419406643997">"Táto možnosť umožňuje aplikácii zobrazovať upozornenia ako aktivity na celej obrazovke v uzamknutom zariadení"</string>
<string name="permlab_install_shortcut" msgid="7451554307502256221">"Inštalovať odkazy"</string>
- <string name="permdesc_install_shortcut" msgid="4476328467240212503">"Povoľuje aplikácii pridať odkazy na ploche bez zásahu používateľa."</string>
+ <string name="permdesc_install_shortcut" msgid="4476328467240212503">"povoliť aplikácii pridať odkazy na ploche bez zásahu používateľa."</string>
<string name="permlab_uninstall_shortcut" msgid="295263654781900390">"odinštalovať odkazy"</string>
<string name="permdesc_uninstall_shortcut" msgid="1924735350988629188">"Povoľuje aplikácii odstrániť odkazy na ploche bez zásahu používateľa."</string>
<string name="permlab_processOutgoingCalls" msgid="4075056020714266558">"presmerovať odchádzajúce hovory"</string>
diff --git a/core/res/res/values-sl/strings.xml b/core/res/res/values-sl/strings.xml
index 4a0a43a..9a2941f 100644
--- a/core/res/res/values-sl/strings.xml
+++ b/core/res/res/values-sl/strings.xml
@@ -307,8 +307,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"dostop do koledarja"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"pošiljanje in ogled sporočil SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Datoteke in dokumenti"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"dostop do datotek in dokumentov v napravi"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Datoteke"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"dostop do datotek v napravi"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Glasba in zvok"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"dostop do glasbe in zvoka v napravi"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotografije in videoposnetki"</string>
diff --git a/core/res/res/values-sq/strings.xml b/core/res/res/values-sq/strings.xml
index 32a694a..5792e15 100644
--- a/core/res/res/values-sq/strings.xml
+++ b/core/res/res/values-sq/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"qasje te kalendari yt"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"dërgo dhe shiko mesazhet SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Skedarët dhe dokumentet"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"përfito qasje te skedarët dhe dokumentet në pajisjen tënde"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Skedarët"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"qasje te skedarët në pajisjen tënde"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Muzika dhe audioja"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"të qaset te muzika dhe audioja në pajisjen tënde"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotografitë dhe videot"</string>
diff --git a/core/res/res/values-sr/strings.xml b/core/res/res/values-sr/strings.xml
index de06ed6..9a8eaa2 100644
--- a/core/res/res/values-sr/strings.xml
+++ b/core/res/res/values-sr/strings.xml
@@ -306,8 +306,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"приступи календару"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"шаље и прегледа SMS поруке"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Фајлови и документи"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"приступање фајловима и документима на уређају"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Фајлови"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"приступ фајловима на уређају"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Музика и звук"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"приступ музици и аудио садржају на уређају"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Слике и видео снимци"</string>
diff --git a/core/res/res/values-sv/strings.xml b/core/res/res/values-sv/strings.xml
index 2400136..a256494 100644
--- a/core/res/res/values-sv/strings.xml
+++ b/core/res/res/values-sv/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"få tillgång till din kalender"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"Sms"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"skicka och visa sms"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Filer och dokument"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"visa filer och dokument på enheten"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Filer"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"få åtkomst till filer på enheten"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Musik och ljud"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"få åtkomst till musik och ljud på enheten"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Foton och videor"</string>
diff --git a/core/res/res/values-sw/strings.xml b/core/res/res/values-sw/strings.xml
index ab24a27..d9684ec 100644
--- a/core/res/res/values-sw/strings.xml
+++ b/core/res/res/values-sw/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"ifikie kalenda yako"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"itume na iangalie SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Faili na hati"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"fikia faili na hati kwenye kifaa chako"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Faili"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"fikia faili kwenye kifaa chako"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Muziki na sauti"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"fikia muziki na sauti kwenye kifaa chako"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Picha na video"</string>
@@ -323,7 +323,7 @@
<string name="permgroupdesc_calllog" msgid="2026996642917801803">"kusoma na kuandika kumbukumbu za simu"</string>
<string name="permgrouplab_phone" msgid="570318944091926620">"Simu"</string>
<string name="permgroupdesc_phone" msgid="270048070781478204">"piga na udhibiti simu"</string>
- <string name="permgrouplab_sensors" msgid="9134046949784064495">"Vitambua shughuli za mwili"</string>
+ <string name="permgrouplab_sensors" msgid="9134046949784064495">"Vitambuzi vya shughuli za mwili"</string>
<string name="permgroupdesc_sensors" msgid="2610631290633747752">"fikia data ya kitambuzi kuhusu alama zako muhimu"</string>
<string name="permgrouplab_notifications" msgid="5472972361980668884">"Arifa"</string>
<string name="permgroupdesc_notifications" msgid="4608679556801506580">"kuonyesha arifa"</string>
@@ -1681,9 +1681,9 @@
<string name="accessibility_enable_service_title" msgid="3931558336268541484">"Ungependa kuruhusu <xliff:g id="SERVICE">%1$s</xliff:g> idhibiti kifaa chako kikamilifu?"</string>
<string name="accessibility_service_warning_description" msgid="291674995220940133">"Udhibiti kamili unafaa kwa programu zinazokusaidia kwa mahitaji ya ufikivu, ila si kwa programu nyingi."</string>
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"Kuangalia na kudhibiti skrini"</string>
- <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Kinaweza kusoma maudhui yote kwenye skrini na kuonyesha maudhui kwenye programu zingine."</string>
+ <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Inaweza kusoma maudhui yote kwenye skrini na kuonyesha maudhui kwenye programu zingine."</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"Kuangalia na kutekeleza vitendo"</string>
- <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Kinaweza kufuatilia mawasiliano yako na programu au kitambuzi cha maunzi na kuwasiliana na programu zingine kwa niaba yako."</string>
+ <string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Inaweza kufuatilia mawasiliano yako na programu au kitambuzi cha maunzi na kuwasiliana na programu zingine kwa niaba yako."</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"Ruhusu"</string>
<string name="accessibility_dialog_button_deny" msgid="4129575637812472671">"Kataa"</string>
<string name="accessibility_select_shortcut_menu_title" msgid="6002726538854613272">"Gusa kipengele ili uanze kukitumia:"</string>
diff --git a/core/res/res/values-ta/strings.xml b/core/res/res/values-ta/strings.xml
index 0139c77..6c889f9 100644
--- a/core/res/res/values-ta/strings.xml
+++ b/core/res/res/values-ta/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"கேலெண்டரை அணுகலாம்"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS அனுப்பலாம், வந்த SMSகளைப் பார்க்கலாம்"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ஃபைல்களும் ஆவணங்களும்"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"சாதனத்திலுள்ள ஃபைல்களையும் ஆவணங்களையும் அணுகும்"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ஃபைல்கள்"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"உங்கள் சாதனத்திலுள்ள ஃபைல்களை அணுகும்"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"இசையும் ஆடியோவும்"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"உங்கள் சாதனத்திலுள்ள இசையையும் ஆடியோவையும் அணுகும்"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"படங்களும் வீடியோக்களும்"</string>
diff --git a/core/res/res/values-te/strings.xml b/core/res/res/values-te/strings.xml
index 9463843..93db1f1 100644
--- a/core/res/res/values-te/strings.xml
+++ b/core/res/res/values-te/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"మీ క్యాలెండర్ను యాక్సెస్ చేయడానికి"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS మెసేజ్లను పంపడం, వీక్షించడం"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ఫైల్స్, డాక్యుమెంట్లు"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"మీ పరికరంలోని ఫైల్లు, డాక్యుమెంట్లను యాక్సెస్ చేయండి"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ఫైల్స్"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"మీ పరికరంలోని ఫైల్స్ని యాక్సెస్ చేస్తుంది"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"మ్యూజిక్, ఆడియో"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"మీ పరికరంలో మ్యూజిక్, ఆడియోను యాక్సెస్ చేయండి"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"ఫోటోలు, వీడియోలు"</string>
@@ -1680,9 +1680,9 @@
<string name="accessibility_shortcut_menu_item_status_off" msgid="5531598275559472393">"ఆఫ్"</string>
<string name="accessibility_enable_service_title" msgid="3931558336268541484">"<xliff:g id="SERVICE">%1$s</xliff:g>కి మీ పరికరంపై పూర్తి కంట్రోల్ను ఇవ్వాలనుకుంటున్నారా?"</string>
<string name="accessibility_service_warning_description" msgid="291674995220940133">"అవసరమైన యాక్సెసిబిలిటీ కోసం యాప్లకు పూర్తి కంట్రోల్ ఇవ్వడం తగిన పనే అయినా, అన్ని యాప్లకు అలా ఇవ్వడం సరికాదు."</string>
- <string name="accessibility_service_screen_control_title" msgid="190017412626919776">"స్క్రీన్ను చూసి, కంట్రోల్ చేయడం"</string>
+ <string name="accessibility_service_screen_control_title" msgid="190017412626919776">"స్క్రీన్ను చూసి, కంట్రోల్ చేయగలగడం"</string>
<string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"స్క్రీన్పై ఉండే కంటెంట్ మొత్తాన్ని చదవగలుగుతుంది మరియు ఇతర యాప్లలో కూడా ఈ కంటెంట్ను ప్రదర్శిస్తుంది."</string>
- <string name="accessibility_service_action_perform_title" msgid="779670378951658160">"చర్యలను చూసి, అమలు చేయండి"</string>
+ <string name="accessibility_service_action_perform_title" msgid="779670378951658160">"చర్యలను చూసి, అమలు చేయగలగడం"</string>
<string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"మీరు ఒక యాప్తో చేసే ఇంటరాక్షన్లను లేదా హార్డ్వేర్ సెన్సార్ను ట్రాక్ చేస్తూ మీ తరఫున యాప్లతో ఇంటరాక్ట్ చేయగలదు."</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"అనుమతించు"</string>
<string name="accessibility_dialog_button_deny" msgid="4129575637812472671">"నిరాకరించు"</string>
diff --git a/core/res/res/values-television/styles.xml b/core/res/res/values-television/styles.xml
new file mode 100644
index 0000000..ad9140c
--- /dev/null
+++ b/core/res/res/values-television/styles.xml
@@ -0,0 +1,21 @@
+<!--
+ ~ Copyright (C) 2022 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.
+ -->
+<resources>
+ <style name="PermissionGrantButtonTop"
+ parent="@style/Widget.Leanback.Button.ButtonBarGravityStart" />
+ <style name="PermissionGrantButtonBottom"
+ parent="@style/Widget.Leanback.Button.ButtonBarGravityStart" />
+</resources>
\ No newline at end of file
diff --git a/core/res/res/values-th/strings.xml b/core/res/res/values-th/strings.xml
index 007fe1b..8af100d 100644
--- a/core/res/res/values-th/strings.xml
+++ b/core/res/res/values-th/strings.xml
@@ -270,7 +270,7 @@
<string name="status_bar_notification_info_overflow" msgid="3330152558746563475">"999+"</string>
<string name="notification_hidden_text" msgid="2835519769868187223">"การแจ้งเตือนใหม่"</string>
<string name="notification_channel_virtual_keyboard" msgid="6465975799223304567">"แป้นพิมพ์เสมือน"</string>
- <string name="notification_channel_physical_keyboard" msgid="5417306456125988096">"แป้นพิมพ์บนเครื่อง"</string>
+ <string name="notification_channel_physical_keyboard" msgid="5417306456125988096">"แป้นพิมพ์จริง"</string>
<string name="notification_channel_security" msgid="8516754650348238057">"ความปลอดภัย"</string>
<string name="notification_channel_car_mode" msgid="2123919247040988436">"โหมดรถยนต์"</string>
<string name="notification_channel_account" msgid="6436294521740148173">"สถานะบัญชี"</string>
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"เข้าถึงปฏิทิน"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"ส่งและดูข้อความ SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"ไฟล์และเอกสาร"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"เข้าถึงไฟล์และเอกสารในอุปกรณ์"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"ไฟล์"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"เข้าถึงไฟล์ในอุปกรณ์"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"เพลงและเสียง"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"เข้าถึงเพลงและเสียงในอุปกรณ์ได้"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"รูปภาพและวิดีโอ"</string>
@@ -1679,7 +1679,7 @@
<string name="accessibility_shortcut_menu_item_status_on" msgid="6608392117189732543">"เปิด"</string>
<string name="accessibility_shortcut_menu_item_status_off" msgid="5531598275559472393">"ปิด"</string>
<string name="accessibility_enable_service_title" msgid="3931558336268541484">"อนุญาตให้ <xliff:g id="SERVICE">%1$s</xliff:g> ควบคุมอุปกรณ์อย่างเต็มที่ไหม"</string>
- <string name="accessibility_service_warning_description" msgid="291674995220940133">"การควบคุมอย่างเต็มที่เหมาะสำหรับแอปเกี่ยวกับความช่วยเหลือพิเศษ แต่ไม่เหมาะสำหรับแอปส่วนใหญ่"</string>
+ <string name="accessibility_service_warning_description" msgid="291674995220940133">"การควบคุมอย่างเต็มที่เหมาะสำหรับแอปเกี่ยวกับความช่วยเหลือพิเศษ แต่ไม่เหมาะสำหรับแอปส่วนใหญ่"</string>
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"ดูและควบคุมหน้าจอ"</string>
<string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"การควบคุมนี้สามารถอ่านเนื้อหาทั้งหมดบนหน้าจอและแสดงเนื้อหาทับแอปอื่นๆ"</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"ดูและดำเนินการ"</string>
diff --git a/core/res/res/values-tl/strings.xml b/core/res/res/values-tl/strings.xml
index 4272b6c..17085e7 100644
--- a/core/res/res/values-tl/strings.xml
+++ b/core/res/res/values-tl/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"i-access ang iyong kalendaryo"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"magpadala at tumingin ng mga mensaheng SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Mga file at dokumento"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"i-access ang mga file at dokumento sa iyong device"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Mga File"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"i-access ang mga file sa iyong device"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Musika at audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"mag-access ng musika at audio sa iyong device"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Mga larawan at video"</string>
diff --git a/core/res/res/values-tr/strings.xml b/core/res/res/values-tr/strings.xml
index 3efb2e1..0bee062 100644
--- a/core/res/res/values-tr/strings.xml
+++ b/core/res/res/values-tr/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"takviminize erişme"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS mesajları gönderme ve görüntüleme"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Dosyalar ve dokümanlar"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"cihazınızdaki dosyalara ve dokümanlara erişme"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Dosyalar"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"cihazınızdaki dosyalara erişme"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Müzik ve ses"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"cihazınızdaki müziklere ve seslere erişme"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Fotoğraflar ve videolar"</string>
@@ -2067,11 +2067,11 @@
<string name="notification_feedback_indicator_promoted" msgid="9030204303764698640">"Bu bildirimin önem derecesi yükseltildi. Geri bildirimde bulunmak için dokunun."</string>
<string name="notification_feedback_indicator_demoted" msgid="8880309924296450875">"Bu bildirimin önem derecesi düşürüldü. Geri bildirimde bulunmak için dokunun."</string>
<string name="nas_upgrade_notification_title" msgid="8436359459300146555">"Gelişmiş bildirimler"</string>
- <string name="nas_upgrade_notification_content" msgid="5157550369837103337">"Önerilen işlemler ve yanıtlar artık gelişmiş bildirimler tarafından sağlanıyor. Android Uyarlamalı Bildirimler artık desteklenmiyor."</string>
+ <string name="nas_upgrade_notification_content" msgid="5157550369837103337">"Önerilen işlemler ve yanıtlar artık gelişmiş bildirimler tarafından sağlanıyor. Android Uyarlanabilir Bildirimler artık desteklenmiyor."</string>
<string name="nas_upgrade_notification_enable_action" msgid="3046406808378726874">"Tamam"</string>
<string name="nas_upgrade_notification_disable_action" msgid="3794833210043497982">"Kapat"</string>
<string name="nas_upgrade_notification_learn_more_action" msgid="7011130656195423947">"Daha fazla bilgi"</string>
- <string name="nas_upgrade_notification_learn_more_content" msgid="3735480566983530650">"Gelişmiş bildirimler, Android 12\'de Android Uyarlamalı Bildirimler\'in yerini aldı. Bu özellik, önerilen işlem ve yanıtları gösterir ve bildirimlerinizi organize eder.\n\nGelişmiş bildirimler, kişiler ve mesajlar gibi kişisel bilgiler dahil olmak üzere tüm bildirim içeriklerine erişebilir. Bu özellik ayrıca bildirimleri kapatabilir veya telefon aramalarını yanıtlamak ve Rahatsız Etmeyin modunu kontrol etmek gibi işlemlerle bildirimlere yanıt verebilir."</string>
+ <string name="nas_upgrade_notification_learn_more_content" msgid="3735480566983530650">"Gelişmiş bildirimler, Android 12\'de Android Uyarlanabilir Bildirimler\'in yerini aldı. Bu özellik, önerilen işlem ve yanıtları gösterir ve bildirimlerinizi organize eder.\n\nGelişmiş bildirimler, kişiler ve mesajlar gibi kişisel bilgiler dahil olmak üzere tüm bildirim içeriklerine erişebilir. Bu özellik ayrıca bildirimleri kapatabilir veya telefon aramalarını yanıtlamak ve Rahatsız Etmeyin modunu kontrol etmek gibi işlemlerle bildirimlere yanıt verebilir."</string>
<string name="dynamic_mode_notification_channel_name" msgid="2986926422100223328">"Rutin Modu bilgi bildirimi"</string>
<string name="dynamic_mode_notification_title" msgid="9205715501274608016">"Pil normal şarjdan önce bitebilir"</string>
<string name="dynamic_mode_notification_summary" msgid="4141614604437372157">"Pilin ömrünü uzatmak için Pil Tasarrufu etkinleştirildi"</string>
diff --git a/core/res/res/values-uk/strings.xml b/core/res/res/values-uk/strings.xml
index 285c586..d69e256 100644
--- a/core/res/res/values-uk/strings.xml
+++ b/core/res/res/values-uk/strings.xml
@@ -307,8 +307,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"отримувати доступ до календаря"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"надсилати та переглядати SMS-повідомлення"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Файли й документи"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"отримувати доступ до файлів і документів на вашому пристрої"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Файли"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"отримувати доступ до файлів на пристрої"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Музика й аудіо"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"отримувати доступ до музики й аудіо на пристрої"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Фото й відео"</string>
@@ -1683,7 +1683,7 @@
<string name="accessibility_enable_service_title" msgid="3931558336268541484">"Надати сервісу <xliff:g id="SERVICE">%1$s</xliff:g> повний доступ до вашого пристрою?"</string>
<string name="accessibility_service_warning_description" msgid="291674995220940133">"Повний доступ доречний для додатків, які надають спеціальні можливості, але його не варто відкривати для більшості інших додатків."</string>
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"Перегляд і контроль екрана"</string>
- <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Цей сервіс може переглядати всі дані на екрані й показувати вміст над іншими додатками."</string>
+ <string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"Цей сервіс може переглядати всі дані на екрані й показувати контент поверх інших додатків."</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"Перегляд і виконання дій"</string>
<string name="accessibility_service_action_perform_description" msgid="2718852014003170558">"Цей сервіс може відстежувати вашу взаємодію з додатком чи апаратним датчиком, а також взаємодіяти з додатками від вашого імені."</string>
<string name="accessibility_dialog_button_allow" msgid="2092558122987144530">"Дозволити"</string>
diff --git a/core/res/res/values-ur/strings.xml b/core/res/res/values-ur/strings.xml
index dd21648..7e170af 100644
--- a/core/res/res/values-ur/strings.xml
+++ b/core/res/res/values-ur/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"اپنے کیلنڈر تک رسائی حاصل کریں"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS پیغامات بھیجیں اور دیکھیں"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"فائلز اور دستاویزات"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"آپ کے آلے پر فائلز اور دستاویزات تک رسائی حاصل کریں"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"فائلیں"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"آپ کے آلے پر موجود فائلز تک رسائل حاصل کریں"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"موسیقی اور آڈیو"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"اپنے آلے پر موسیقی اور آڈیو تک رسائی حاصل کریں"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"تصاویر اور ویڈیوز"</string>
diff --git a/core/res/res/values-uz/strings.xml b/core/res/res/values-uz/strings.xml
index 441a335..f870360 100644
--- a/core/res/res/values-uz/strings.xml
+++ b/core/res/res/values-uz/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"taqvimingizga kirish"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"SMS xabarlarni yuborish va ko‘rish"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Fayl va hujjatlar"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"qurilmangizdagi fayl va hujjatlarga kirish"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Fayllar"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"qurilmangizdagi fayllarga kirish"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Musiqa va audio"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"qurilmadagi musiqa va audioga ruxsat"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Video va suratlar"</string>
@@ -1378,7 +1378,7 @@
<string name="share_remote_bugreport_action" msgid="7630880678785123682">"BAHAM KO‘RISH"</string>
<string name="decline_remote_bugreport_action" msgid="4040894777519784346">"RAD ETISH"</string>
<string name="select_input_method" msgid="3971267998568587025">"Matn kiritish usulini tanlang"</string>
- <string name="show_ime" msgid="6406112007347443383">"Jismoniy klaviatura ulanganida ekranda chiqib turadi"</string>
+ <string name="show_ime" msgid="6406112007347443383">"Tashqi klaviatura ulanganida ekranda chiqib turadi"</string>
<string name="hardware" msgid="1800597768237606953">"Virtual klaviatura"</string>
<string name="select_keyboard_layout_notification_title" msgid="4427643867639774118">"Tashqi klaviaturani sozlash"</string>
<string name="select_keyboard_layout_notification_message" msgid="8835158247369158154">"Til va sxemani belgilash uchun bosing"</string>
diff --git a/core/res/res/values-vi/strings.xml b/core/res/res/values-vi/strings.xml
index fa19f9d..ce47bc5 100644
--- a/core/res/res/values-vi/strings.xml
+++ b/core/res/res/values-vi/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"truy cập lịch của bạn"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"Tin nhắn SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"gửi và xem tin nhắn SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Tệp và tài liệu"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"truy cập vào các tệp và tài liệu trên thiết bị của bạn"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Tệp"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"truy cập tệp trên thiết bị của bạn"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Nhạc và âm thanh"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"truy cập vào âm nhạc và âm thanh trên thiết bị của bạn"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Ảnh và video"</string>
diff --git a/core/res/res/values-zh-rCN/strings.xml b/core/res/res/values-zh-rCN/strings.xml
index 42e0be9..4fa44fb 100644
--- a/core/res/res/values-zh-rCN/strings.xml
+++ b/core/res/res/values-zh-rCN/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"访问您的日历"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"短信"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"发送和查看短信"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"文件和文档"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"访问您设备上的文件和文档"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"文件"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"访问您设备上的文件"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"音乐和音频"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"访问您设备上的音乐和音频"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"照片和视频"</string>
@@ -1678,7 +1678,7 @@
<string name="accessibility_shortcut_off" msgid="3651336255403648739">"不开启"</string>
<string name="accessibility_shortcut_menu_item_status_on" msgid="6608392117189732543">"已开启"</string>
<string name="accessibility_shortcut_menu_item_status_off" msgid="5531598275559472393">"已关闭"</string>
- <string name="accessibility_enable_service_title" msgid="3931558336268541484">"要允许<xliff:g id="SERVICE">%1$s</xliff:g>完全控制您的设备吗?"</string>
+ <string name="accessibility_enable_service_title" msgid="3931558336268541484">"要允许“<xliff:g id="SERVICE">%1$s</xliff:g>”完全控制您的设备吗?"</string>
<string name="accessibility_service_warning_description" msgid="291674995220940133">"对于能满足您的无障碍功能需求的应用,可授予其完全控制权限;但对大部分应用来说,都不适合授予此权限。"</string>
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"查看和控制屏幕"</string>
<string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"此功能可以读出屏幕上的所有内容,并在其他应用上层显示内容。"</string>
@@ -1957,7 +1957,7 @@
<string name="profile_encrypted_message" msgid="1128512616293157802">"点按即可解锁工作资料"</string>
<string name="usb_mtp_launch_notification_title" msgid="774319638256707227">"已连接到<xliff:g id="PRODUCT_NAME">%1$s</xliff:g>"</string>
<string name="usb_mtp_launch_notification_description" msgid="6942535713629852684">"点按即可查看文件"</string>
- <string name="pin_target" msgid="8036028973110156895">"固定"</string>
+ <string name="pin_target" msgid="8036028973110156895">"置顶"</string>
<string name="pin_specific_target" msgid="7824671240625957415">"将<xliff:g id="LABEL">%1$s</xliff:g>置顶"</string>
<string name="unpin_target" msgid="3963318576590204447">"取消固定"</string>
<string name="unpin_specific_target" msgid="3859828252160908146">"取消置顶<xliff:g id="LABEL">%1$s</xliff:g>"</string>
diff --git a/core/res/res/values-zh-rHK/strings.xml b/core/res/res/values-zh-rHK/strings.xml
index 92620e8..7198d4e 100644
--- a/core/res/res/values-zh-rHK/strings.xml
+++ b/core/res/res/values-zh-rHK/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"存取您的日曆"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"短訊"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"傳送和查看短訊"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"檔案和文件"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"存取裝置上的檔案和文件"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"檔案"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"存取裝置上的檔案"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"音樂和音訊"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"在裝置上使用音樂和音訊"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"相片和影片"</string>
@@ -1678,8 +1678,8 @@
<string name="accessibility_shortcut_off" msgid="3651336255403648739">"不要開啟"</string>
<string name="accessibility_shortcut_menu_item_status_on" msgid="6608392117189732543">"開啟"</string>
<string name="accessibility_shortcut_menu_item_status_off" msgid="5531598275559472393">"關閉"</string>
- <string name="accessibility_enable_service_title" msgid="3931558336268541484">"要允許 <xliff:g id="SERVICE">%1$s</xliff:g> 完全控制您的裝置嗎?"</string>
- <string name="accessibility_service_warning_description" msgid="291674995220940133">"為您提供所需無障礙功能的應用程式有權完全控制您的裝置,但大部分應用程式均沒有此權限。"</string>
+ <string name="accessibility_enable_service_title" msgid="3931558336268541484">"允許 <xliff:g id="SERVICE">%1$s</xliff:g> 完全控制您的裝置?"</string>
+ <string name="accessibility_service_warning_description" msgid="291674995220940133">"對於為您提供無障礙功能的應用程式,您可授予完整控制權,但大部分應用程式都不應獲授予此權限。"</string>
<string name="accessibility_service_screen_control_title" msgid="190017412626919776">"查看和控制螢幕"</string>
<string name="accessibility_service_screen_control_description" msgid="6946315917771791525">"這項功能可以讀出螢幕上的所有內容,並透過其他應用程式顯示內容。"</string>
<string name="accessibility_service_action_perform_title" msgid="779670378951658160">"查看和執行動作"</string>
diff --git a/core/res/res/values-zh-rTW/strings.xml b/core/res/res/values-zh-rTW/strings.xml
index 4797035..e0a06d5 100644
--- a/core/res/res/values-zh-rTW/strings.xml
+++ b/core/res/res/values-zh-rTW/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"存取你的日曆"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"簡訊"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"傳送及查看簡訊"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"檔案和文件"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"存取裝置上的檔案與文件"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"檔案"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"存取裝置上的檔案"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"音樂和音訊"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"存取裝置上的音樂和音訊"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"相片和影片"</string>
diff --git a/core/res/res/values-zu/strings.xml b/core/res/res/values-zu/strings.xml
index 581eda1..8f3be13 100644
--- a/core/res/res/values-zu/strings.xml
+++ b/core/res/res/values-zu/strings.xml
@@ -305,8 +305,8 @@
<string name="permgroupdesc_calendar" msgid="6762751063361489379">"finyelela kukhalenda yakho"</string>
<string name="permgrouplab_sms" msgid="795737735126084874">"I-SMS"</string>
<string name="permgroupdesc_sms" msgid="5726462398070064542">"thumela uphinde ubuke imilayezo ye-SMS"</string>
- <string name="permgrouplab_storage" msgid="5570124978732352858">"Amafayela namadokhumenti"</string>
- <string name="permgroupdesc_storage" msgid="8352226729501080525">"finyelela amafayela namadokhumenti kudivayisi yakho"</string>
+ <string name="permgrouplab_storage" msgid="17339216290379241">"Amafayela"</string>
+ <string name="permgroupdesc_storage" msgid="5378659041354582769">"finyelela amafayela kudivayisi yakho"</string>
<string name="permgrouplab_readMediaAural" msgid="1858331312624942053">"Umculo nomsindo"</string>
<string name="permgroupdesc_readMediaAural" msgid="7565467343667089595">"finyelela umculo nomsindo kudivayisi yakho"</string>
<string name="permgrouplab_readMediaVisual" msgid="4724874717811908660">"Izithombe namavidiyo"</string>
diff --git a/core/res/res/values/colors_material.xml b/core/res/res/values/colors_material.xml
index d357f01..ea6e1f1 100644
--- a/core/res/res/values/colors_material.xml
+++ b/core/res/res/values/colors_material.xml
@@ -65,18 +65,12 @@
<!-- 70% white -->
<color name="secondary_text_default_material_dark">#b3ffffff</color>
- <item name="hint_alpha_material_dark" format="float" type="dimen">0.50</item>
- <item name="hint_alpha_material_light" format="float" type="dimen">0.38</item>
-
- <item name="hint_pressed_alpha_material_dark" format="float" type="dimen">0.70</item>
- <item name="hint_pressed_alpha_material_light" format="float" type="dimen">0.54</item>
-
<item name="disabled_alpha_material_light" format="float" type="dimen">0.26</item>
<item name="disabled_alpha_material_dark" format="float" type="dimen">0.30</item>
<item name="primary_content_alpha_material_dark" format="float" type="dimen">1</item>
<item name="primary_content_alpha_material_light" format="float" type="dimen">0.87</item>
<item name="secondary_content_alpha_material_dark" format="float" type="dimen">.7</item>
- <item name="secondary_content_alpha_material_light" format="float" type="dimen">0.54</item>
+ <item name="secondary_content_alpha_material_light" format="float" type="dimen">0.60</item>
<item name="highlight_alpha_material_light" format="float" type="dimen">0.10</item>
<item name="highlight_alpha_material_dark" format="float" type="dimen">0.10</item>
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
index 054695e..70766cc 100644
--- a/core/res/res/values/config.xml
+++ b/core/res/res/values/config.xml
@@ -5163,9 +5163,8 @@
when TextClassifier has not been initialized. -->
<integer name="config_smartSelectionInitializingTimeoutMillis">500</integer>
- <!-- The delay in milliseconds before focused Views set themselves as preferred to keep clear.
- Set to -1 if Views should not set themselves as preferred to keep clear. -->
- <integer name="config_preferKeepClearForFocusDelayMillis">-1</integer>
+ <!-- If true, Views will declare they prefer to be kept clear from overlays when focused. -->
+ <bool name="config_preferKeepClearForFocus">false</bool>
<!-- Indicates that default fitness tracker app needs to request sensor and location permissions. -->
<bool name="config_trackerAppNeedsPermissions">false</bool>
diff --git a/core/res/res/values/dimens.xml b/core/res/res/values/dimens.xml
index 211bf7f..43ca4f0 100644
--- a/core/res/res/values/dimens.xml
+++ b/core/res/res/values/dimens.xml
@@ -865,13 +865,13 @@
<dimen name="autofill_dataset_picker_max_height">90%</dimen>
<!-- Autofill save dialog padding -->
- <dimen name="autofill_save_outer_top_margin">32dp</dimen>
+ <dimen name="autofill_save_outer_top_margin">24dp</dimen>
<dimen name="autofill_save_outer_top_padding">16dp</dimen>
<dimen name="autofill_elevation">32dp</dimen>
<dimen name="autofill_save_inner_padding">16dp</dimen>
- <dimen name="autofill_save_icon_size">24dp</dimen>
+ <dimen name="autofill_save_icon_size">32dp</dimen>
<dimen name="autofill_save_title_start_padding">8dp</dimen>
- <dimen name="autofill_save_scroll_view_top_margin">4dp</dimen>
+ <dimen name="autofill_save_scroll_view_top_margin">16dp</dimen>
<dimen name="autofill_save_button_bar_padding">16dp</dimen>
<dimen name="autofill_dialog_corner_radius">28dp</dimen>
diff --git a/core/res/res/values/styles.xml b/core/res/res/values/styles.xml
index 0c35f93..5d17047 100644
--- a/core/res/res/values/styles.xml
+++ b/core/res/res/values/styles.xml
@@ -1495,7 +1495,14 @@
<item name="background">@drawable/autofill_dataset_picker_background</item>
</style>
- <!-- @hide -->
+ <!-- @hide Autofill save dialog title -->
+ <style name="AutofillSaveUiTitle" parent="TextAppearance.DeviceDefault.Subhead">
+ <item name="textColor">?attr/textColorPrimary</item>
+ <item name="fontFamily">google-sans</item>
+ <item name="textSize">24sp</item>
+ </style>
+
+ <!--@hide -->
<style name="AutofillHalfScreenAnimation">
<item name="android:windowEnterAnimation">@anim/slide_in_up</item>
<item name="android:windowExitAnimation">@anim/slide_out_down</item>
@@ -1526,26 +1533,27 @@
<!-- The style for log access consent text -->
<style name="AllowLogAccess">
- <item name="android:layout_width">332dp</item>
<item name="android:textSize">24sp</item>
<item name="android:fontFamily">google-sans</item>
</style>
<style name="PrimaryAllowLogAccess">
- <item name="android:layout_width">332dp</item>
<item name="android:textSize">14sp</item>
<item name="android:fontFamily">google-sans-text</item>
</style>
+ <style name="PermissionGrantButtonTextAppearance">
+ <item name="android:fontFamily">google-sans-medium</item>
+ <item name="android:textSize">14sp</item>
+ <item name="android:textColor">@android:color/system_neutral1_900</item>
+ </style>
+
<style name="PermissionGrantButtonTop"
parent="@android:style/Widget.DeviceDefault.Button.Borderless.Colored">
<item name="android:layout_width">332dp</item>
<item name="android:layout_height">56dp</item>
<item name="android:layout_marginTop">2dp</item>
<item name="android:layout_marginBottom">2dp</item>
- <item name="android:fontFamily">google-sans-medium</item>
- <item name="android:textSize">14sp</item>
- <item name="android:textColor">@android:color/system_neutral1_900</item>
<item name="android:background">@drawable/grant_permissions_buttons_top</item>
</style>
@@ -1555,9 +1563,6 @@
<item name="android:layout_height">56dp</item>
<item name="android:layout_marginTop">2dp</item>
<item name="android:layout_marginBottom">2dp</item>
- <item name="android:fontFamily">google-sans-medium</item>
- <item name="android:textSize">14sp</item>
- <item name="android:textColor">@android:color/system_neutral1_900</item>
<item name="android:background">@drawable/grant_permissions_buttons_bottom</item>
</style>
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index 5bfc568..e111ee1 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -479,7 +479,7 @@
<java-symbol type="bool" name="config_useAssistantVolume" />
<java-symbol type="integer" name="config_smartSelectionInitializedTimeoutMillis" />
<java-symbol type="integer" name="config_smartSelectionInitializingTimeoutMillis" />
- <java-symbol type="integer" name="config_preferKeepClearForFocusDelayMillis" />
+ <java-symbol type="bool" name="config_preferKeepClearForFocus" />
<java-symbol type="bool" name="config_hibernationDeletesOatArtifactsEnabled"/>
<java-symbol type="integer" name="config_defaultAnalogClockSecondsHandFps"/>
diff --git a/core/res/res/values/themes_device_defaults.xml b/core/res/res/values/themes_device_defaults.xml
index 5000b58..c603c83 100644
--- a/core/res/res/values/themes_device_defaults.xml
+++ b/core/res/res/values/themes_device_defaults.xml
@@ -2704,4 +2704,8 @@
<item name="textColorPrimary">@color/system_neutral1_900</item>
<item name="textColorSecondary">@color/system_neutral2_700</item>
</style>
+ <style name="Theme.DeviceDefault.AutofillHalfScreenDialogList" parent="Theme.DeviceDefault.DayNight">
+ <item name="colorListDivider">@color/list_divider_opacity_device_default_light</item>
+ <item name="opacityListDivider">@color/list_divider_opacity_device_default_light</item>
+ </style>
</resources>
diff --git a/core/tests/coretests/src/android/window/BackNavigationTest.java b/core/tests/coretests/src/android/window/BackNavigationTest.java
index 678eef55..ce69f12 100644
--- a/core/tests/coretests/src/android/window/BackNavigationTest.java
+++ b/core/tests/coretests/src/android/window/BackNavigationTest.java
@@ -91,7 +91,7 @@
private void assertCallbackIsCalled(CountDownLatch latch) {
try {
mInstrumentation.getUiAutomation().waitForIdle(500, 1000);
- BackNavigationInfo info = ActivityTaskManager.getService().startBackNavigation();
+ BackNavigationInfo info = ActivityTaskManager.getService().startBackNavigation(true);
assertNotNull("BackNavigationInfo is null", info);
assertNotNull("OnBackInvokedCallback is null", info.getOnBackInvokedCallback());
info.getOnBackInvokedCallback().onBackInvoked();
diff --git a/core/tests/coretests/src/com/android/internal/os/BatteryUsageStatsStoreTest.java b/core/tests/coretests/src/com/android/internal/os/BatteryUsageStatsStoreTest.java
index 21f6e7c..c9729fa 100644
--- a/core/tests/coretests/src/com/android/internal/os/BatteryUsageStatsStoreTest.java
+++ b/core/tests/coretests/src/com/android/internal/os/BatteryUsageStatsStoreTest.java
@@ -132,6 +132,26 @@
}
@Test
+ public void testRemoveAllSnapshots() throws Exception {
+ prepareBatteryStats();
+
+ for (int i = 0; i < 3; i++) {
+ mMockClock.realtime += 10_000_000;
+ mMockClock.uptime += 10_000_000;
+ mMockClock.currentTime += 10_000_000;
+ prepareBatteryStats();
+
+ mBatteryStats.resetAllStatsCmdLocked();
+ }
+
+ assertThat(getDirectorySize(mStoreDirectory)).isNotEqualTo(0);
+
+ mBatteryUsageStatsStore.removeAllSnapshots();
+
+ assertThat(getDirectorySize(mStoreDirectory)).isEqualTo(0);
+ }
+
+ @Test
public void testSavingStatsdAtomPullTimestamp() {
mBatteryUsageStatsStore.setLastBatteryUsageStatsBeforeResetAtomPullTimestamp(1234);
assertThat(mBatteryUsageStatsStore.getLastBatteryUsageStatsBeforeResetAtomPullTimestamp())
diff --git a/libs/WindowManager/Shell/res/values/strings_tv.xml b/libs/WindowManager/Shell/res/values/strings_tv.xml
index 09ed9b8..2b7a13e 100644
--- a/libs/WindowManager/Shell/res/values/strings_tv.xml
+++ b/libs/WindowManager/Shell/res/values/strings_tv.xml
@@ -26,23 +26,38 @@
<!-- Picture-in-Picture (PIP) menu -->
<eat-comment />
<!-- Button to close picture-in-picture (PIP) in PIP menu [CHAR LIMIT=30] -->
- <string name="pip_close">Close PIP</string>
+ <string name="pip_close">Close</string>
<!-- Button to move picture-in-picture (PIP) screen to the fullscreen in PIP menu [CHAR LIMIT=30] -->
<string name="pip_fullscreen">Full screen</string>
<!-- Button to move picture-in-picture (PIP) via DPAD in the PIP menu [CHAR LIMIT=30] -->
- <string name="pip_move">Move PIP</string>
+ <string name="pip_move">Move</string>
<!-- Button to expand the picture-in-picture (PIP) window [CHAR LIMIT=30] -->
- <string name="pip_expand">Expand PIP</string>
+ <string name="pip_expand">Expand</string>
<!-- Button to collapse/shrink the picture-in-picture (PIP) window [CHAR LIMIT=30] -->
- <string name="pip_collapse">Collapse PIP</string>
+ <string name="pip_collapse">Collapse</string>
<!-- Educative text instructing the user to double press the HOME button to access the pip
controls menu [CHAR LIMIT=50] -->
<string name="pip_edu_text"> Double press <annotation icon="home_icon"> HOME </annotation> for
controls </string>
+
+ <!-- Accessibility announcement when opening the PiP menu. [CHAR LIMIT=NONE] -->
+ <string name="a11y_pip_menu_entered">Picture-in-Picture menu.</string>
+
+ <!-- Accessibility action: move the PiP window to the left [CHAR LIMIT=30] -->
+ <string name="a11y_action_pip_move_left">Move left</string>
+ <!-- Accessibility action: move the PiP window to the right [CHAR LIMIT=30] -->
+ <string name="a11y_action_pip_move_right">Move right</string>
+ <!-- Accessibility action: move the PiP window up [CHAR LIMIT=30] -->
+ <string name="a11y_action_pip_move_up">Move up</string>
+ <!-- Accessibility action: move the PiP window down [CHAR LIMIT=30] -->
+ <string name="a11y_action_pip_move_down">Move down</string>
+ <!-- Accessibility action: done with moving the PiP [CHAR LIMIT=30] -->
+ <string name="a11y_action_pip_move_done">Done</string>
+
</resources>
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java b/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java
index a16841c..7760df1 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java
@@ -286,7 +286,8 @@
mBackGestureStarted = true;
try {
- mBackNavigationInfo = mActivityTaskManager.startBackNavigation();
+ boolean requestAnimation = mEnableAnimations.get();
+ mBackNavigationInfo = mActivityTaskManager.startBackNavigation(requestAnimation);
onBackNavigationInfoReceived(mBackNavigationInfo);
} catch (RemoteException remoteException) {
Log.e(TAG, "Failed to initAnimation", remoteException);
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubblePositioner.java b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubblePositioner.java
index 7cfacbc..e9729e4 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubblePositioner.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubblePositioner.java
@@ -88,6 +88,9 @@
private int mMaxBubbles;
private int mBubbleSize;
private int mSpacingBetweenBubbles;
+ private int mBubblePaddingTop;
+ private int mBubbleOffscreenAmount;
+ private int mStackOffset;
private int mExpandedViewMinHeight;
private int mExpandedViewLargeScreenWidth;
@@ -187,6 +190,10 @@
mSpacingBetweenBubbles = res.getDimensionPixelSize(R.dimen.bubble_spacing);
mDefaultMaxBubbles = res.getInteger(R.integer.bubbles_max_rendered);
mExpandedViewPadding = res.getDimensionPixelSize(R.dimen.bubble_expanded_view_padding);
+ mBubblePaddingTop = res.getDimensionPixelSize(R.dimen.bubble_padding_top);
+ mBubbleOffscreenAmount = res.getDimensionPixelSize(R.dimen.bubble_stack_offscreen);
+ mStackOffset = res.getDimensionPixelSize(R.dimen.bubble_stack_offset);
+
if (mIsSmallTablet) {
mExpandedViewLargeScreenWidth = (int) (bounds.width()
* EXPANDED_VIEW_SMALL_TABLET_WIDTH_PERCENT);
@@ -329,6 +336,21 @@
: mBubbleSize;
}
+ /** The amount of padding at the top of the screen that the bubbles avoid when being placed. */
+ public int getBubblePaddingTop() {
+ return mBubblePaddingTop;
+ }
+
+ /** The amount the stack hang off of the screen when collapsed. */
+ public int getStackOffScreenAmount() {
+ return mBubbleOffscreenAmount;
+ }
+
+ /** Offset of bubbles in the stack (i.e. how much they overlap). */
+ public int getStackOffset() {
+ return mStackOffset;
+ }
+
/** Size of the visible (non-overlapping) part of the pointer. */
public int getPointerSize() {
return mPointerHeight - mPointerOverlap;
@@ -678,7 +700,28 @@
return new BubbleStackView.RelativeStackPosition(
startOnLeft,
startingVerticalOffset / mPositionRect.height())
- .getAbsolutePositionInRegion(new RectF(mPositionRect));
+ .getAbsolutePositionInRegion(getAllowableStackPositionRegion(
+ 1 /* default starts with 1 bubble */));
+ }
+
+
+ /**
+ * Returns the region that the stack position must stay within. This goes slightly off the left
+ * and right sides of the screen, below the status bar/cutout and above the navigation bar.
+ * While the stack position is not allowed to rest outside of these bounds, it can temporarily
+ * be animated or dragged beyond them.
+ */
+ public RectF getAllowableStackPositionRegion(int bubbleCount) {
+ final RectF allowableRegion = new RectF(getAvailableRect());
+ final int imeHeight = getImeHeight();
+ final float bottomPadding = bubbleCount > 1
+ ? mBubblePaddingTop + mStackOffset
+ : mBubblePaddingTop;
+ allowableRegion.left -= mBubbleOffscreenAmount;
+ allowableRegion.top += mBubblePaddingTop;
+ allowableRegion.right += mBubbleOffscreenAmount - mBubbleSize;
+ allowableRegion.bottom -= imeHeight + bottomPadding + mBubbleSize;
+ return allowableRegion;
}
/**
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleStackView.java b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleStackView.java
index b7c5eb0..0e8dc63 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleStackView.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/BubbleStackView.java
@@ -1296,7 +1296,7 @@
public void onOrientationChanged() {
mRelativeStackPositionBeforeRotation = new RelativeStackPosition(
mPositioner.getRestingPosition(),
- mStackAnimationController.getAllowableStackPositionRegion());
+ mPositioner.getAllowableStackPositionRegion(getBubbleCount()));
addOnLayoutChangeListener(mOrientationChangedListener);
hideFlyoutImmediate();
}
@@ -1340,7 +1340,7 @@
mStackAnimationController.setStackPosition(
new RelativeStackPosition(
mPositioner.getRestingPosition(),
- mStackAnimationController.getAllowableStackPositionRegion()));
+ mPositioner.getAllowableStackPositionRegion(getBubbleCount())));
}
if (mIsExpanded) {
updateExpandedView();
@@ -1440,7 +1440,7 @@
if (super.performAccessibilityActionInternal(action, arguments)) {
return true;
}
- final RectF stackBounds = mStackAnimationController.getAllowableStackPositionRegion();
+ final RectF stackBounds = mPositioner.getAllowableStackPositionRegion(getBubbleCount());
// R constants are not final so we cannot use switch-case here.
if (action == AccessibilityNodeInfo.ACTION_DISMISS) {
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/animation/StackAnimationController.java b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/animation/StackAnimationController.java
index 04af60d..0a1b4d7 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/animation/StackAnimationController.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/bubbles/animation/StackAnimationController.java
@@ -185,8 +185,6 @@
* stack goes offscreen intentionally.
*/
private int mBubblePaddingTop;
- /** How far offscreen the stack rests. */
- private int mBubbleOffscreen;
/** Contains display size, orientation, and inset information. */
private BubblePositioner mPositioner;
@@ -212,7 +210,8 @@
public Rect getAllowedFloatingBoundsRegion() {
final Rect floatingBounds = getFloatingBoundsOnScreen();
final Rect allowableStackArea = new Rect();
- getAllowableStackPositionRegion().roundOut(allowableStackArea);
+ mPositioner.getAllowableStackPositionRegion(getBubbleCount())
+ .roundOut(allowableStackArea);
allowableStackArea.right += floatingBounds.width();
allowableStackArea.bottom += floatingBounds.height();
return allowableStackArea;
@@ -349,7 +348,7 @@
? velX < ESCAPE_VELOCITY
: velX < -ESCAPE_VELOCITY;
- final RectF stackBounds = getAllowableStackPositionRegion();
+ final RectF stackBounds = mPositioner.getAllowableStackPositionRegion(getBubbleCount());
// Target X translation (either the left or right side of the screen).
final float destinationRelativeX = stackShouldFlingLeft
@@ -425,7 +424,7 @@
}
final PointF stackPos = getStackPosition();
final boolean onLeft = mLayout.isFirstChildXLeftOfCenter(stackPos.x);
- final RectF bounds = getAllowableStackPositionRegion();
+ final RectF bounds = mPositioner.getAllowableStackPositionRegion(getBubbleCount());
stackPos.x = onLeft ? bounds.left : bounds.right;
return stackPos;
@@ -464,7 +463,7 @@
StackPositionProperty firstBubbleProperty = new StackPositionProperty(property);
final float currentValue = firstBubbleProperty.getValue(this);
- final RectF bounds = getAllowableStackPositionRegion();
+ final RectF bounds = mPositioner.getAllowableStackPositionRegion(getBubbleCount());
final float min =
property.equals(DynamicAnimation.TRANSLATION_X)
? bounds.left
@@ -525,7 +524,8 @@
* of the stack if it's not moving).
*/
public float animateForImeVisibility(boolean imeVisible) {
- final float maxBubbleY = getAllowableStackPositionRegion().bottom;
+ final float maxBubbleY = mPositioner.getAllowableStackPositionRegion(
+ getBubbleCount()).bottom;
float destinationY = UNSET;
if (imeVisible) {
@@ -567,25 +567,6 @@
mFloatingContentCoordinator.onContentMoved(mStackFloatingContent);
}
- /**
- * Returns the region that the stack position must stay within. This goes slightly off the left
- * and right sides of the screen, below the status bar/cutout and above the navigation bar.
- * While the stack position is not allowed to rest outside of these bounds, it can temporarily
- * be animated or dragged beyond them.
- */
- public RectF getAllowableStackPositionRegion() {
- final RectF allowableRegion = new RectF(mPositioner.getAvailableRect());
- final int imeHeight = mPositioner.getImeHeight();
- final float bottomPadding = getBubbleCount() > 1
- ? mBubblePaddingTop + mStackOffset
- : mBubblePaddingTop;
- allowableRegion.left -= mBubbleOffscreen;
- allowableRegion.top += mBubblePaddingTop;
- allowableRegion.right += mBubbleOffscreen - mBubbleSize;
- allowableRegion.bottom -= imeHeight + bottomPadding + mBubbleSize;
- return allowableRegion;
- }
-
/** Moves the stack in response to a touch event. */
public void moveStackFromTouch(float x, float y) {
// Begin the spring-to-touch catch up animation if needed.
@@ -861,13 +842,12 @@
@Override
void onActiveControllerForLayout(PhysicsAnimationLayout layout) {
Resources res = layout.getResources();
- mStackOffset = res.getDimensionPixelSize(R.dimen.bubble_stack_offset);
+ mStackOffset = mPositioner.getStackOffset();
mSwapAnimationOffset = res.getDimensionPixelSize(R.dimen.bubble_swap_animation_offset);
mMaxBubbles = res.getInteger(R.integer.bubbles_max_rendered);
mElevation = res.getDimensionPixelSize(R.dimen.bubble_elevation);
mBubbleSize = mPositioner.getBubbleSize();
- mBubblePaddingTop = res.getDimensionPixelSize(R.dimen.bubble_padding_top);
- mBubbleOffscreen = res.getDimensionPixelSize(R.dimen.bubble_stack_offscreen);
+ mBubblePaddingTop = mPositioner.getBubblePaddingTop();
}
/**
@@ -958,7 +938,8 @@
}
public void setStackPosition(BubbleStackView.RelativeStackPosition position) {
- setStackPosition(position.getAbsolutePositionInRegion(getAllowableStackPositionRegion()));
+ setStackPosition(position.getAbsolutePositionInRegion(
+ mPositioner.getAllowableStackPositionRegion(getBubbleCount())));
}
private boolean isStackPositionSet() {
diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/back/BackAnimationControllerTest.java b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/back/BackAnimationControllerTest.java
index 49b6968..fcfcbfa 100644
--- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/back/BackAnimationControllerTest.java
+++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/back/BackAnimationControllerTest.java
@@ -20,6 +20,7 @@
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
+import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.atLeastOnce;
@@ -128,7 +129,7 @@
new RemoteCallback((bundle) -> {}),
onBackInvokedCallback);
try {
- doReturn(navigationInfo).when(mActivityTaskManager).startBackNavigation();
+ doReturn(navigationInfo).when(mActivityTaskManager).startBackNavigation(anyBoolean());
} catch (RemoteException ex) {
ex.rethrowFromSystemServer();
}
@@ -136,7 +137,7 @@
private void createNavigationInfo(BackNavigationInfo.Builder builder) {
try {
- doReturn(builder.build()).when(mActivityTaskManager).startBackNavigation();
+ doReturn(builder.build()).when(mActivityTaskManager).startBackNavigation(anyBoolean());
} catch (RemoteException ex) {
ex.rethrowFromSystemServer();
}
diff --git a/media/java/android/media/MediaCodec.java b/media/java/android/media/MediaCodec.java
index e39914d..d5b7ada 100644
--- a/media/java/android/media/MediaCodec.java
+++ b/media/java/android/media/MediaCodec.java
@@ -2317,10 +2317,6 @@
*/
public final void start() {
native_start();
- synchronized(mBufferLock) {
- cacheBuffers(true /* input */);
- cacheBuffers(false /* input */);
- }
}
private native final void native_start();
@@ -3952,6 +3948,9 @@
+ "objects and attach to QueueRequest objects.");
}
if (mCachedInputBuffers == null) {
+ cacheBuffers(true /* input */);
+ }
+ if (mCachedInputBuffers == null) {
throw new IllegalStateException();
}
// FIXME: check codec status
@@ -3990,6 +3989,9 @@
+ "Please use getOutputFrame to get output frames.");
}
if (mCachedOutputBuffers == null) {
+ cacheBuffers(false /* input */);
+ }
+ if (mCachedOutputBuffers == null) {
throw new IllegalStateException();
}
// FIXME: check codec status
diff --git a/media/java/android/media/MediaMetrics.java b/media/java/android/media/MediaMetrics.java
index 6eb1af8..a4a8cc4 100644
--- a/media/java/android/media/MediaMetrics.java
+++ b/media/java/android/media/MediaMetrics.java
@@ -107,6 +107,9 @@
public static final Key<String> EVENT = createKey("event#", String.class);
+ // Generally string "true" or "false"
+ public static final Key<String> ENABLED = createKey("enabled", String.class);
+
// event generated is external (yes, no)
public static final Key<String> EXTERNAL = createKey("external", String.class);
@@ -122,6 +125,13 @@
public static final Key<String> GROUP =
createKey("group", String.class);
+ // Generally string "true" or "false"
+ public static final Key<String> HAS_HEAD_TRACKER =
+ createKey("hasHeadTracker", String.class); // spatializer
+ // Generally string "true" or "false"
+ public static final Key<String> HEAD_TRACKER_ENABLED =
+ createKey("headTrackerEnabled", String.class); // spatializer
+
public static final Key<Integer> INDEX = createKey("index", Integer.class); // volume
public static final Key<String> LOG_SESSION_ID = createKey("logSessionId", String.class);
public static final Key<Integer> MAX_INDEX = createKey("maxIndex", Integer.class); // vol
diff --git a/media/java/android/media/projection/IMediaProjectionManager.aidl b/media/java/android/media/projection/IMediaProjectionManager.aidl
index d190fce..1d58a40 100644
--- a/media/java/android/media/projection/IMediaProjectionManager.aidl
+++ b/media/java/android/media/projection/IMediaProjectionManager.aidl
@@ -21,6 +21,7 @@
import android.media.projection.IMediaProjectionWatcherCallback;
import android.media.projection.MediaProjectionInfo;
import android.os.IBinder;
+import android.view.ContentRecordingSession;
/** {@hide} */
interface IMediaProjectionManager {
@@ -33,4 +34,15 @@
void stopActiveProjection();
void addCallback(IMediaProjectionWatcherCallback callback);
void removeCallback(IMediaProjectionWatcherCallback callback);
+
+ /**
+ * Updates the content recording session. If a different session is already in progress, then
+ * the pre-existing session is stopped, and the new incoming session takes over. Only updates
+ * the session if the given projection is valid.
+ *
+ * @param incomingSession the nullable incoming content recording session
+ * @param projection the non-null projection the session describes
+ */
+ void setContentRecordingSession(in ContentRecordingSession incomingSession,
+ in IMediaProjection projection);
}
diff --git a/media/java/android/media/projection/MediaProjection.java b/media/java/android/media/projection/MediaProjection.java
index b5f9593..ba7bf3f 100644
--- a/media/java/android/media/projection/MediaProjection.java
+++ b/media/java/android/media/projection/MediaProjection.java
@@ -26,12 +26,11 @@
import android.hardware.display.VirtualDisplayConfig;
import android.os.Handler;
import android.os.RemoteException;
+import android.os.ServiceManager;
import android.util.ArrayMap;
import android.util.Log;
import android.view.ContentRecordingSession;
-import android.view.IWindowManager;
import android.view.Surface;
-import android.view.WindowManagerGlobal;
import android.window.WindowContainerToken;
import java.util.Map;
@@ -53,6 +52,7 @@
private final IMediaProjection mImpl;
private final Context mContext;
private final Map<Callback, CallbackRecord> mCallbacks;
+ @Nullable private IMediaProjectionManager mProjectionService = null;
/** @hide */
public MediaProjection(Context context, IMediaProjection impl) {
@@ -172,7 +172,6 @@
@NonNull VirtualDisplayConfig.Builder virtualDisplayConfig,
@Nullable VirtualDisplay.Callback callback, @Nullable Handler handler) {
try {
- final IWindowManager wmService = WindowManagerGlobal.getWindowManagerService();
final WindowContainerToken taskWindowContainerToken =
mImpl.getTaskRecordingWindowContainerToken();
Context windowContext = null;
@@ -199,7 +198,7 @@
}
session.setDisplayId(virtualDisplay.getDisplay().getDisplayId());
// Successfully set up, so save the current session details.
- wmService.setContentRecordingSession(session);
+ getProjectionService().setContentRecordingSession(session, mImpl);
return virtualDisplay;
} catch (RemoteException e) {
// Can not capture if WMS is not accessible, so bail out.
@@ -207,6 +206,14 @@
}
}
+ private IMediaProjectionManager getProjectionService() {
+ if (mProjectionService == null) {
+ mProjectionService = IMediaProjectionManager.Stub.asInterface(
+ ServiceManager.getService(Context.MEDIA_PROJECTION_SERVICE));
+ }
+ return mProjectionService;
+ }
+
/**
* Stops projection.
*/
diff --git a/packages/CompanionDeviceManager/res/values-af/strings.xml b/packages/CompanionDeviceManager/res/values-af/strings.xml
index 71ddcad..480bc48 100644
--- a/packages/CompanionDeviceManager/res/values-af/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-af/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Metgeseltoestel-bestuurder"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Gee <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> toegang tot jou <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"horlosie"</string>
<string name="chooser_title" msgid="2262294130493605839">"Kies \'n <xliff:g id="PROFILE_NAME">%1$s</xliff:g> om deur <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> bestuur te word"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Hierdie program is nodig om jou <xliff:g id="DEVICE_NAME">%1$s</xliff:g> te bestuur. <xliff:g id="APP_NAME">%2$s</xliff:g> sal toegelaat word om interaksie met jou kennisgewings te hê, en sal toegang hê tot jou Foon-, SMS-, Kontakte-, Kalender- en Toestelle in die Omtrek-toestemming."</string>
<string name="permission_apps" msgid="6142133265286656158">"Programme"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Stroom jou foon se programme"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Gee <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> toegang tot hierdie inligting op jou foon"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Terug"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Dra programtoestemmings na jou horlosie toe oor"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Om dit makliker te maak om jou horlosie op te stel, sal programme wat gedurende opstelling op jou horlosie geïnstalleer word, dieselfde toestemmings as jou foon gebruik.\n\n Hierdie toestemmings kan toegang tot jou horlosie se mikrofoon en ligging insluit."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Program-ikoon"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Meer Inligting-knoppie"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-am/strings.xml b/packages/CompanionDeviceManager/res/values-am/strings.xml
index 081d452..5f2bd7f 100644
--- a/packages/CompanionDeviceManager/res/values-am/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-am/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"አጃቢ የመሣሪያ አስተዳዳሪ"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> የእርስዎን <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> መሣሪያ እንዲደርስ ይፍቀዱለት"</string>
<string name="profile_name_watch" msgid="576290739483672360">"ሰዓት"</string>
<string name="chooser_title" msgid="2262294130493605839">"በ<strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> የሚተዳደር <xliff:g id="PROFILE_NAME">%1$s</xliff:g> ይምረጡ"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"የእርስዎን <xliff:g id="DEVICE_NAME">%1$s</xliff:g> ለማስተዳደር ይህ መተግበሪያ ያስፈልጋል። <xliff:g id="APP_NAME">%2$s</xliff:g> ከማሳወቂያዎችዎ ጋር መስተጋብር እንዲፈጥር እና የእርስዎን ስልክ፣ ኤስኤምኤስ፣ እውቂያዎች፣ የቀን መቁጠሪያ፣ የጥሪ ምዝገባ ማስታወሻዎች እና በአቅራቢያ ያሉ የመሣሪያዎች ፈቃዶች እንዲደርስ ይፈቀድለታል።"</string>
<string name="permission_apps" msgid="6142133265286656158">"መተግበሪያዎች"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"የስልክዎን መተግበሪያዎች በዥረት ይልቀቁ"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ይህን መረጃ ከስልክዎ እንዲደርስበት ይፍቀዱለት"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ar/strings.xml b/packages/CompanionDeviceManager/res/values-ar/strings.xml
index cd39aec..318b60a5 100644
--- a/packages/CompanionDeviceManager/res/values-ar/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ar/strings.xml
@@ -17,17 +17,15 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"تطبيق \"مدير الجهاز المصاحب\""</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"السماح لتطبيق <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> بالوصول إلى <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"ساعة"</string>
<string name="chooser_title" msgid="2262294130493605839">"اختَر <xliff:g id="PROFILE_NAME">%1$s</xliff:g> ليديره تطبيق <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"هذا التطبيق مطلوب لإدارة <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. سيتم السماح لتطبيق <xliff:g id="APP_NAME">%2$s</xliff:g> بالتفاعل مع الإشعارات والوصول إلى أذونات الهاتف والرسائل القصيرة وجهات الاتصال والتقويم وسجلّات المكالمات والأجهزة المجاورة."</string>
<string name="permission_apps" msgid="6142133265286656158">"التطبيقات"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"بث تطبيقات هاتفك"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"السماح لتطبيق <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> بالوصول إلى هذه المعلومات من هاتفك"</string>
<string name="helper_title_app_streaming" msgid="4151687003439969765">"الخدمات التي تعمل بين الأجهزة"</string>
- <string name="helper_summary_app_streaming" msgid="7380294597268573523">"يطلب التطبيق <xliff:g id="APP_NAME">%1$s</xliff:g> الحصول على إذن نيابةً عن <xliff:g id="DEVICE_TYPE">%2$s</xliff:g> للوصول إلى صور ووسائط وإشعارات هاتفك."</string>
+ <string name="helper_summary_app_streaming" msgid="7380294597268573523">"تطلب \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" الحصول على إذن نيابةً عن <xliff:g id="DEVICE_TYPE">%2$s</xliff:g> للوصول إلى الصور والوسائط والإشعارات في هاتفك."</string>
<string name="title_automotive_projection" msgid="3296005598978412847"></string>
<string name="summary_automotive_projection" msgid="8683801274662496164"></string>
<string name="title_computer" msgid="4693714143506569253">"السماح لتطبيق <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> بالوصول إلى هذه المعلومات من هاتفك"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"رجوع"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"نقل أذونات التطبيقات إلى ساعتك"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"لتسهيل إعداد ساعتك، فإن التطبيقات التي يتم تثبيتها على ساعتك أثناء الإعداد ستستخدم الأذونات نفسها التي يستخدمها هاتفك.\n\n قد تشتمل هذه الأذونات على الوصول إلى ميكروفون ساعتك وبيانات موقعها الجغرافي."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"رمز التطبيق"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"زر مزيد من المعلومات"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-as/strings.xml b/packages/CompanionDeviceManager/res/values-as/strings.xml
index dd5681a..95c4e68 100644
--- a/packages/CompanionDeviceManager/res/values-as/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-as/strings.xml
@@ -25,7 +25,7 @@
<string name="permission_apps_summary" msgid="798718816711515431">"আপোনাৰ ফ’নৰ এপ্ ষ্ট্ৰীম কৰক"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong>ক আপোনাৰ ফ’নৰ পৰা এই তথ্যখিনি এক্সেছ কৰাৰ অনুমতি দিয়ক"</string>
<string name="helper_title_app_streaming" msgid="4151687003439969765">"ক্ৰছ-ডিভাইচ সেৱাসমূহ"</string>
- <string name="helper_summary_app_streaming" msgid="7380294597268573523">"<xliff:g id="APP_NAME">%1$s</xliff:g>এ আপোনৰ <xliff:g id="DEVICE_TYPE">%2$s</xliff:g>ৰ হৈ আপোনাৰ ফ’নৰ ফট’ মিডিয়া আৰু জাননী এক্সেছ কৰাৰ বাবে অনুৰোধ জনাইছে"</string>
+ <string name="helper_summary_app_streaming" msgid="7380294597268573523">"<xliff:g id="APP_NAME">%1$s</xliff:g>এ আপোনৰ <xliff:g id="DEVICE_TYPE">%2$s</xliff:g>ৰ হৈ আপোনাৰ ফ’নৰ ফট’, মিডিয়া আৰু জাননী এক্সেছ কৰাৰ বাবে অনুৰোধ জনাইছে"</string>
<string name="title_automotive_projection" msgid="3296005598978412847"></string>
<string name="summary_automotive_projection" msgid="8683801274662496164"></string>
<string name="title_computer" msgid="4693714143506569253">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong>ক আপোনাৰ ফ’নৰ পৰা এই তথ্যখিনি এক্সেছ কৰাৰ অনুমতি দিয়ক"</string>
diff --git a/packages/CompanionDeviceManager/res/values-b+sr+Latn/strings.xml b/packages/CompanionDeviceManager/res/values-b+sr+Latn/strings.xml
index 4d4f016..d821247 100644
--- a/packages/CompanionDeviceManager/res/values-b+sr+Latn/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-b+sr+Latn/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Menadžer pridruženog uređaja"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Dozvolite da <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> pristupa uređaju <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"sat"</string>
<string name="chooser_title" msgid="2262294130493605839">"Odaberite profil <xliff:g id="PROFILE_NAME">%1$s</xliff:g> kojim će upravljati aplikacija <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Ova aplikacija je potrebna za upravljanje uređajem <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> će dobiti dozvolu za interakciju sa obaveštenjima i pristup dozvolama za telefon, SMS, kontakte, kalendar, evidencije poziva i uređaje u blizini."</string>
<string name="permission_apps" msgid="6142133265286656158">"Aplikacije"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Strimujte aplikacije na telefonu"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Dozvolite da <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> pristupa ovim informacijama sa telefona"</string>
diff --git a/packages/CompanionDeviceManager/res/values-be/strings.xml b/packages/CompanionDeviceManager/res/values-be/strings.xml
index a181290..2086f2e 100644
--- a/packages/CompanionDeviceManager/res/values-be/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-be/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Менеджар спадарожнай прылады"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Дазвольце праграме <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> доступ да вашай прылады <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"гадзіннік"</string>
<string name="chooser_title" msgid="2262294130493605839">"Выберыце прыладу (<xliff:g id="PROFILE_NAME">%1$s</xliff:g>), якой будзе кіраваць праграма <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Гэта праграма неабходная для кіравання прыладай \"<xliff:g id="DEVICE_NAME">%1$s</xliff:g>\". <xliff:g id="APP_NAME">%2$s</xliff:g> зможа ўзаемадзейнічаць з вашымі апавяшчэннямі і атрымае доступ да тэлефона, SMS, кантактаў, календара, журналаў выклікаў і прылад паблізу."</string>
<string name="permission_apps" msgid="6142133265286656158">"Праграмы"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Трансліруйце змесціва праграм з вашага тэлефона"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Дазвольце праграме <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> мець доступ да гэтай інфармацыі з вашага тэлефона"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Назад"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Перанос дазволаў праграм на ваш гадзіннік"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Для праграм, усталяваных на гадзіннік падчас наладжвання, будуць дзейнічаць тыя самыя дазволы, што і на тэлефоне.\n\n Так гадзіннік можа атрымаць доступ да мікрафона і даных пра месцазнаходжанне."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Значок праграмы"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Кнопка \"Даведацца больш\""</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-bg/strings.xml b/packages/CompanionDeviceManager/res/values-bg/strings.xml
index 7398ff3..134ae1c 100644
--- a/packages/CompanionDeviceManager/res/values-bg/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-bg/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Companion Device Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Разрешаване на <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> да осъществява достъп до устройството ви <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"часовник"</string>
<string name="chooser_title" msgid="2262294130493605839">"Изберете устройство (<xliff:g id="PROFILE_NAME">%1$s</xliff:g>), което да се управлява от <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Това приложение е необходимо за управление на <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> ще получи разрешение да взаимодейства с известията ви и да осъществява достъп до разрешенията за телефона, SMS съобщенията, контактите, календара, списъците с обажданията и разрешенията за устройства в близост."</string>
<string name="permission_apps" msgid="6142133265286656158">"Приложения"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Поточно предаване на приложенията на телефона ви"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Разрешете на <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> да осъществява достъп до тази информация от телефона ви"</string>
diff --git a/packages/CompanionDeviceManager/res/values-bn/strings.xml b/packages/CompanionDeviceManager/res/values-bn/strings.xml
index 54f11ff..08c4a16b 100644
--- a/packages/CompanionDeviceManager/res/values-bn/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-bn/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Companion Device Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"আপনার <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> অ্যাক্সেস করার জন্য <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong>-কে অনুমতি দিন"</string>
<string name="profile_name_watch" msgid="576290739483672360">"ঘড়ি"</string>
<string name="chooser_title" msgid="2262294130493605839">"<xliff:g id="PROFILE_NAME">%1$s</xliff:g> বেছে নিন যেটি <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> ম্যানেজ করবে"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"এই অ্যাপকে আপনার <xliff:g id="DEVICE_NAME">%1$s</xliff:g> ম্যানেজ করতে দিতে হবে। <xliff:g id="APP_NAME">%2$s</xliff:g>-কে আপনার বিজ্ঞপ্তির সাথে ইন্টার্যাক্ট এবং ফোন, এসএমএস, পরিচিতি, ক্যালেন্ডার, কল লগ ও আশেপাশের ডিভাইস অ্যাক্সেস করার অনুমতি দেওয়া হবে।"</string>
<string name="permission_apps" msgid="6142133265286656158">"অ্যাপ"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"আপনার ফোনের অ্যাপ স্ট্রিমিংয়ের মাধ্যমে কাস্ট করুন"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"আপনার ফোন থেকে <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> অ্যাপকে এই তথ্য অ্যাক্সেস করার অনুমতি দিন"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"ফিরুন"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"অ্যাপকে দেওয়া অনুমতি আপনার ঘড়িতে ট্রান্সফার করুন"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"ঘড়ি আরও সহজে সেট আপ করতে, সেট আপ চলাকালীন আপনার ঘড়িতে ইনস্টল করা অ্যাপ ফোনের মতো একই অনুমতি ব্যবহার করবে।\n\n এইসব অনুমতির মধ্যে আপনার ঘড়ির মাইক্রোফোন ও লোকেশন সম্পর্কে তথ্যের অ্যাক্সেস অন্তর্ভুক্ত থাকতে পারে।"</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"অ্যাপের আইকন"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"আরও তথ্য সংক্রান্ত বোতাম"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-bs/strings.xml b/packages/CompanionDeviceManager/res/values-bs/strings.xml
index 8cfb179..340fd6a 100644
--- a/packages/CompanionDeviceManager/res/values-bs/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-bs/strings.xml
@@ -17,10 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Prateći upravitelj uređaja"</string>
- <string name="confirmation_title" msgid="3785000297483688997">"Dopustite aplikaciji <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> da pristupa vašem uređaju <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
+ <string name="confirmation_title" msgid="3785000297483688997">"Dozvolite aplikaciji <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> da pristupa uređaju <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"sat"</string>
<string name="chooser_title" msgid="2262294130493605839">"Odaberite uređaj <xliff:g id="PROFILE_NAME">%1$s</xliff:g> kojim će upravljati aplikacija <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <string name="summary_watch" msgid="3002344206574997652">"Ta je aplikacija potrebna za upravljanje vašim uređajem <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. Aplikacija <xliff:g id="APP_NAME">%2$s</xliff:g> moći će stupati u interakciju s vašim obavijestima i pristupati dopuštenjima za telefon, SMS-ove, kontakte, kalendar, zapisnike poziva i uređaje u blizini."</string>
+ <string name="summary_watch" msgid="3002344206574997652">"Ova aplikacija je potrebna za upravljanje profilom: <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. Aplikaciji <xliff:g id="APP_NAME">%2$s</xliff:g> će se dozvoliti da ostvari interakciju s vašim obavještenjima i da pristupi odobrenjima za Telefon, SMS, Kontakte, Kalendar, Zapisnike poziva i Uređaje u blizini."</string>
<string name="permission_apps" msgid="6142133265286656158">"Aplikacije"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Prenosite aplikacije s telefona"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Dozvolite da aplikacija <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> pristupa ovim informacijama s telefona"</string>
@@ -44,5 +44,5 @@
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Prijenos odobrenja za aplikaciju na sat"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Radi lakšeg postavljanja sata, aplikacije instalirane na satu tokom postavljanja će koristiti ista odobrenja kao i na telefonu.\n\n Ta odobrenja mogu uključivati pristup mikrofonu i lokaciji sata."</string>
<string name="vendor_icon_description" msgid="4445875290032225965">"Ikona aplikacije"</string>
- <string name="vendor_header_button_description" msgid="6566660389500630608">"Gumb Više informacija"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Dugme Više informacija"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-ca/strings.xml b/packages/CompanionDeviceManager/res/values-ca/strings.xml
index 768d980..967b390 100644
--- a/packages/CompanionDeviceManager/res/values-ca/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ca/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Gestor de dispositius complementaris"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Permet que <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> accedeixi a <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"rellotge"</string>
<string name="chooser_title" msgid="2262294130493605839">"Tria un <xliff:g id="PROFILE_NAME">%1$s</xliff:g> perquè el gestioni <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Aquesta aplicació es necessita per gestionar <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> tindrà permís per interaccionar amb les teves notificacions i accedir al telèfon, als SMS, als contactes, al calendari, als registres de trucades i als dispositius propers."</string>
<string name="permission_apps" msgid="6142133265286656158">"Aplicacions"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Reprodueix en continu aplicacions del telèfon"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Permet que <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> accedeixi a aquesta informació del telèfon"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Enrere"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Transfereix els permisos de les aplicacions al teu rellotge"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Per facilitar la configuració del rellotge, les aplicacions instal·lades al rellotge durant la configuració utilitzaran els mateixos permisos que al teu telèfon.\n\n Aquests permisos poden incloure l\'accés al micròfon i a la ubicació del rellotge."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Icona de l\'aplicació"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Botó Més informació"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-cs/strings.xml b/packages/CompanionDeviceManager/res/values-cs/strings.xml
index ac83290..7ab5f624 100644
--- a/packages/CompanionDeviceManager/res/values-cs/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-cs/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Správce doprovodných zařízení"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Povolit aplikaci <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> přístup k vašemu zařízení <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"hodinky"</string>
<string name="chooser_title" msgid="2262294130493605839">"Vyberte zařízení <xliff:g id="PROFILE_NAME">%1$s</xliff:g>, které chcete spravovat pomocí aplikace <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Tato aplikace je nutná ke správě zařízení <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. Aplikace <xliff:g id="APP_NAME">%2$s</xliff:g> bude moci interagovat s vašimi oznámeními a získá přístup k telefonu, SMS, kontaktům, kalendáři, seznamům hovorů a zařízením v okolí."</string>
<string name="permission_apps" msgid="6142133265286656158">"Aplikace"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Streamujte aplikace v telefonu"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Povolte aplikaci <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> přístup k těmto informacím z vašeho telefonu"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Zpět"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Přesunout oprávnění aplikací do hodinek"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Abychom vám usnadnili nastavení hodinek, aplikace nainstalované do hodinek během úvodního nastavení budou používat stejná oprávnění jako váš telefon.\n\n Tato oprávnění mohou zahrnovat přístup k mikrofonu a poloze hodinek."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Ikona aplikace"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Tlačítko Další informace"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-da/strings.xml b/packages/CompanionDeviceManager/res/values-da/strings.xml
index 3307110..2fb2e6e 100644
--- a/packages/CompanionDeviceManager/res/values-da/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-da/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Medfølgende enhedsadministrator"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Tillad, at <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> får adgang til dit <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"ur"</string>
<string name="chooser_title" msgid="2262294130493605839">"Vælg den enhed (<xliff:g id="PROFILE_NAME">%1$s</xliff:g>), som skal administreres af <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Du skal bruge denne app for at administrere dit <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> får tilladelse til at interagere med dine notifikationer og får adgang til dine tilladelser Opkald, Sms, Kalender, Opkaldshistorik og Enheder i nærheden."</string>
<string name="permission_apps" msgid="6142133265286656158">"Apps"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Stream din telefons apps"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Giv <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> adgang til disse oplysninger fra din telefon"</string>
diff --git a/packages/CompanionDeviceManager/res/values-de/strings.xml b/packages/CompanionDeviceManager/res/values-de/strings.xml
index c65d78b..a5b642a 100644
--- a/packages/CompanionDeviceManager/res/values-de/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-de/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Begleitgerät-Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> erlauben, auf dein Gerät (<strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>) zuzugreifen"</string>
<string name="profile_name_watch" msgid="576290739483672360">"Smartwatch"</string>
<string name="chooser_title" msgid="2262294130493605839">"Gerät (<xliff:g id="PROFILE_NAME">%1$s</xliff:g>) auswählen, das von <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> verwaltet werden soll"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Diese App wird zur Verwaltung des Geräts „<xliff:g id="DEVICE_NAME">%1$s</xliff:g>“ benötigt. <xliff:g id="APP_NAME">%2$s</xliff:g> darf mit deinen Benachrichtigungen interagieren und auf die Berechtigungen für „Telefon“, „SMS“, „Kontakte“, „Kalender“, „Anrufliste“ und „Geräte in der Nähe“ zugreifen."</string>
<string name="permission_apps" msgid="6142133265286656158">"Apps"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Smartphone-Apps streamen"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> Zugriff auf diese Informationen von deinem Smartphone gewähren"</string>
diff --git a/packages/CompanionDeviceManager/res/values-el/strings.xml b/packages/CompanionDeviceManager/res/values-el/strings.xml
index 9073644..726009f 100644
--- a/packages/CompanionDeviceManager/res/values-el/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-el/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Διαχείριση συνοδευτικής εφαρμογής"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Επιτρέψτε στην εφαρμογή <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> να έχει πρόσβαση στη συσκευή <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"ρολόι"</string>
<string name="chooser_title" msgid="2262294130493605839">"Επιλέξτε ένα προφίλ <xliff:g id="PROFILE_NAME">%1$s</xliff:g> για διαχείριση από την εφαρμογή <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Αυτή η εφαρμογή είναι απαραίτητη για τη διαχείριση της συσκευής <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. Η εφαρμογή <xliff:g id="APP_NAME">%2$s</xliff:g> θα επιτρέπεται να αλληλεπιδρά με τις ειδοποιήσεις και να έχει πρόσβαση στις άδειες Τηλέφωνο, SMS, Επαφές, Ημερολόγιο, Αρχεία καταγραφής κλήσεων και Συσκευές σε κοντινή απόσταση."</string>
<string name="permission_apps" msgid="6142133265286656158">"Εφαρμογές"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Μεταδώστε σε ροή τις εφαρμογές του τηλεφώνου σας"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Να επιτρέπεται στο <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> η πρόσβαση σε αυτές τις πληροφορίες από το τηλέφωνό σας."</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Πίσω"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Μεταφορά αδειών εφαρμογών στο ρολόι σας"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Για να είναι πιο εύκολη η ρύθμιση του ρολογιού σας, οι εφαρμογές που εγκαθίστανται στο ρολόι σας κατά τη ρύθμιση, θα χρησιμοποιούν τις ίδιες άδειες με το τηλέφωνό σας.\n\n Στις άδειες ενδέχεται να περιλαμβάνεται άδεια πρόσβασης στο μικρόφωνο και την τοποθεσία του ρολογιού σας."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Εικονίδιο εφαρμογής"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Κουμπί περισσότερων πληροφορ."</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml b/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml
index 6d715e0..ee93842 100644
--- a/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-es-rUS/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Administrador de dispositivo complementario"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Permite que <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> acceda a tu <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"reloj"</string>
<string name="chooser_title" msgid="2262294130493605839">"Elige un <xliff:g id="PROFILE_NAME">%1$s</xliff:g> para que <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> lo administre"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Esta app es necesaria para administrar tu <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> podrá interactuar con tus notificaciones y acceder a los permisos de Teléfono, SMS, Contactos, Calendario, Llamadas y Dispositivos cercanos."</string>
<string name="permission_apps" msgid="6142133265286656158">"Apps"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Transmitir las apps de tu teléfono"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Permite que <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> acceda a esta información de tu teléfono"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Atrás"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Transfiere los permisos de la app a tu reloj"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Para que sea más fácil configurar tu reloj, las apps que se instalen en este durante la configuración usarán los mismos permisos que tu teléfono.\n\n Es posible que estos permisos incluyan el acceso al micrófono y a la ubicación del reloj."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Ícono de la app"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Botón Más información"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-es/strings.xml b/packages/CompanionDeviceManager/res/values-es/strings.xml
index 60ced10..0d0b10e 100644
--- a/packages/CompanionDeviceManager/res/values-es/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-es/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Gestor de dispositivos complementario"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Permitir que <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> acceda a tu <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"reloj"</string>
<string name="chooser_title" msgid="2262294130493605839">"Elige un <xliff:g id="PROFILE_NAME">%1$s</xliff:g> para gestionarlo con <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Se necesita esta aplicación para gestionar tu <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> podrá interactuar con tus notificaciones y acceder a tus permisos de teléfono, SMS, contactos, calendario, registros de llamadas y dispositivos cercanos."</string>
<string name="permission_apps" msgid="6142133265286656158">"Aplicaciones"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Emite las aplicaciones de tu teléfono"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Permitir que <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> acceda a esta información desde tu teléfono"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Atrás"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Transferir permisos de aplicaciones a tu reloj"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Para configurar fácilmente tu reloj, las aplicaciones que instales en él durante la configuración usarán los mismos permisos que tengan en tu teléfono.\n\n Estos permisos pueden incluir acceso al micrófono y a la ubicación del reloj."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Icono de la aplicación"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Botón Más información"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-et/strings.xml b/packages/CompanionDeviceManager/res/values-et/strings.xml
index d3a34d3..b160390 100644
--- a/packages/CompanionDeviceManager/res/values-et/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-et/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Kaasseadme haldur"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Lubage rakendusel <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> teie seadmele <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> juurde pääseda"</string>
<string name="profile_name_watch" msgid="576290739483672360">"käekell"</string>
<string name="chooser_title" msgid="2262294130493605839">"Valige seade <xliff:g id="PROFILE_NAME">%1$s</xliff:g>, mida haldab rakendus <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Seda rakendust on vaja teie profiili <xliff:g id="DEVICE_NAME">%1$s</xliff:g> haldamiseks. Rakendusel <xliff:g id="APP_NAME">%2$s</xliff:g> lubatakse kasutada teie märguandeid ja pääseda juurde teie telefoni, SMS-ide, kontaktide, kalendri, kõnelogide ja läheduses olevate seadmete lubadele."</string>
<string name="permission_apps" msgid="6142133265286656158">"Rakendused"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Telefoni rakenduste voogesitamine"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Lubage rakendusel <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> pääseda teie telefonis juurde sellele teabele"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Tagasi"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Rakenduste lubade kellale ülekandmine"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Selleks et muuta kella seadistamine lihtsamaks, kasutavad teie kellas seadistamise ajal installitud rakendused samasid lubasid, mis neile telefonis antud on.\n\n Need load võivad hõlmata juurdepääsuluba kella mikrofonile ja asukohale."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Rakenduse ikoon"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Nupp Lisateave"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-eu/strings.xml b/packages/CompanionDeviceManager/res/values-eu/strings.xml
index 5af1c88..395c385 100644
--- a/packages/CompanionDeviceManager/res/values-eu/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-eu/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Gailu osagarriaren kudeatzailea"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Eman <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> atzitzeko baimena <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> aplikazioari"</string>
<string name="profile_name_watch" msgid="576290739483672360">"erlojua"</string>
<string name="chooser_title" msgid="2262294130493605839">"Aukeratu <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> aplikazioak kudeatu beharreko <xliff:g id="PROFILE_NAME">%1$s</xliff:g>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> kudeatzeko beharrezkoa da aplikazio hau. Jakinarazpenekin interakzioan aritzeko eta telefonoa, SMSak, kontaktuak, egutegia, deien erregistroa eta inguruko gailuak atzitzeko baimenak izango ditu <xliff:g id="APP_NAME">%2$s</xliff:g> aplikazioak."</string>
<string name="permission_apps" msgid="6142133265286656158">"Aplikazioak"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Igorri zuzenean telefonoko aplikazioak"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Eman informazioa telefonotik hartzeko baimena <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> aplikazioari"</string>
diff --git a/packages/CompanionDeviceManager/res/values-fi/strings.xml b/packages/CompanionDeviceManager/res/values-fi/strings.xml
index ae5fb54..35e0e47 100644
--- a/packages/CompanionDeviceManager/res/values-fi/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-fi/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Companion Device Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Salli, että <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> saa pääsyn laitteeseesi: <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"kello"</string>
<string name="chooser_title" msgid="2262294130493605839">"Valitse <xliff:g id="PROFILE_NAME">%1$s</xliff:g>, jota <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> hallinnoi"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Profiilin (<xliff:g id="DEVICE_NAME">%1$s</xliff:g>) ylläpitoon tarvitaan tätä sovellusta. <xliff:g id="APP_NAME">%2$s</xliff:g> saa luvan hallinnoida ilmoituksiasi sekä pääsyn puhelimeen, tekstiviesteihin, yhteystietoihin, kalenteriin, puhelulokeihin ja lähellä olevat laitteet ‑lupiin."</string>
<string name="permission_apps" msgid="6142133265286656158">"Sovellukset"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Striimaa puhelimen sovelluksia"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Salli, että <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> saa pääsyn näihin puhelimesi tietoihin"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Takaisin"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Siirrä sovellusluvat kelloon"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Sovellukset, jotka on asennettu kelloon käyttöönoton aikana, käyttävät samoja lupia kuin puhelin. Näin kello on helpompi ottaa käyttöön.\n\n Näihin lupiin saattaa kuulua pääsy kellon mikrofoniin ja sijaintiin."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Sovelluskuvake"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Lisätietopainike"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml b/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml
index 8c5f3203..b978af6 100644
--- a/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-fr-rCA/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Gestionnaire d\'appareil compagnon"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Autoriser <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> à accéder à votre <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"montre"</string>
<string name="chooser_title" msgid="2262294130493605839">"Choisissez un <xliff:g id="PROFILE_NAME">%1$s</xliff:g> qui sera géré par <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Cette application est nécessaire pour gérer votre <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> aura l\'autorisation d\'interagir avec vos notifications et d\'accéder aux autorisations suivantes : téléphone, messages texte, contacts, agenda, journaux d\'appels et appareils à proximité."</string>
<string name="permission_apps" msgid="6142133265286656158">"Applications"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Diffusez les applications de votre téléphone"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Autorisez <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> à accéder à ces informations à partir de votre téléphone"</string>
diff --git a/packages/CompanionDeviceManager/res/values-fr/strings.xml b/packages/CompanionDeviceManager/res/values-fr/strings.xml
index 56b83cc..6ffe4b1 100644
--- a/packages/CompanionDeviceManager/res/values-fr/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-fr/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Gestionnaire d\'appareils associés"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Autoriser <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> à accéder à votre <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"montre"</string>
<string name="chooser_title" msgid="2262294130493605839">"Sélectionner le/la <xliff:g id="PROFILE_NAME">%1$s</xliff:g> qui sera géré(e) par <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Cette appli est nécessaire pour gérer votre <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> aura l\'autorisation d\'interagir avec vos notifications et d\'accéder au téléphone, aux SMS, aux contacts, à l\'agenda, aux journaux d\'appels et aux appareils à proximité."</string>
<string name="permission_apps" msgid="6142133265286656158">"Applis"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Diffuser en streaming les applis de votre téléphone"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Autoriser <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> à accéder à ces informations depuis votre téléphone"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Retour"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Transférer les autorisations de l\'appli vers la montre"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Pour que votre montre soit plus facile à configurer, les applis qui y sont installées pendant la configuration utiliseront les mêmes autorisations que votre téléphone.\n\n Il peut s\'agir, par exemple, de l\'accès au micro et à la position de votre montre."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Icône d\'application"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Bouton Plus d\'informations"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-gl/strings.xml b/packages/CompanionDeviceManager/res/values-gl/strings.xml
index e2c657e..c692c03 100644
--- a/packages/CompanionDeviceManager/res/values-gl/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-gl/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Xestor de dispositivos complementarios"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Permitir que <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> acceda ao teu dispositivo (<strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>)"</string>
<string name="profile_name_watch" msgid="576290739483672360">"reloxo"</string>
<string name="chooser_title" msgid="2262294130493605839">"Escolle un perfil (<xliff:g id="PROFILE_NAME">%1$s</xliff:g>) para que o xestione a aplicación <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Esta aplicación é necesaria para xestionar o teu dispositivo (<xliff:g id="DEVICE_NAME">%1$s</xliff:g>). <xliff:g id="APP_NAME">%2$s</xliff:g> poderá interactuar coas túas notificacións e acceder aos permisos do teu teléfono, das SMS, dos contactos, do calendario, dos rexistros de chamadas e dos dispositivos próximos."</string>
<string name="permission_apps" msgid="6142133265286656158">"Aplicacións"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Emite as aplicacións do teu teléfono"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Permitir que a aplicación <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> acceda a esta información desde o teu teléfono"</string>
diff --git a/packages/CompanionDeviceManager/res/values-gu/strings.xml b/packages/CompanionDeviceManager/res/values-gu/strings.xml
index 0e1690b..8c92de8 100644
--- a/packages/CompanionDeviceManager/res/values-gu/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-gu/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"કમ્પેનિયન ડિવાઇસ મેનેજર"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"તમારા <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>ને ઍક્સેસ કરવાની <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong>ને મંજૂરી આપો"</string>
<string name="profile_name_watch" msgid="576290739483672360">"સ્માર્ટવૉચ"</string>
<string name="chooser_title" msgid="2262294130493605839">"<strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> દ્વારા મેનેજ કરવા માટે કોઈ <xliff:g id="PROFILE_NAME">%1$s</xliff:g> પસંદ કરો"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"તમારી <xliff:g id="DEVICE_NAME">%1$s</xliff:g> મેનેજ કરવા માટે આ ઍપ જરૂરી છે. <xliff:g id="APP_NAME">%2$s</xliff:g>ને તમારા નોટિફિકેશન સાથે ક્રિયાપ્રતિક્રિયા કરવાની તેમજ તમારો ફોન, SMS, સંપર્કો, કૅલેન્ડર, કૉલ લૉગ અને નજીકનાં ડિવાઇસની પરવાનગીઓ ઍક્સેસ કરવાની મંજૂરી આપવામાં આવશે."</string>
<string name="permission_apps" msgid="6142133265286656158">"ઍપ"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"તમારા ફોનની ઍપ સ્ટ્રીમ કરો"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"તમારા ફોનમાંથી આ માહિતી ઍક્સેસ કરવા માટે, <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong>ને મંજૂરી આપો"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"પાછળ"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"તમારી ઘડિયાળમાં ઍપ પરવાનગીઓ ટ્રાન્સફર કરો"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"તમારી ઘડિયાળનું સેટઅપ કરવાનું સરળ બનાવવા માટે, સેટઅપ દરમિયાન તમારી ઘડિયાળ પર ઇન્સ્ટૉલ કરેલી ઍપ દ્વારા તમારા ફોન પર મળેલી પરવાનગીઓનો ઉપયોગ કરવામાં આવશે.\n\n આ પરવાનગીઓમાં તમારી ઘડિયાળના માઇક્રોફોન અને સ્થાન સંબંધિત માહિતીનો ઍક્સેસ શામેલ હોઈ શકે છે."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"ઍપનું આઇકન"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"વધુ માહિતી માટેનું બટન"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-hi/strings.xml b/packages/CompanionDeviceManager/res/values-hi/strings.xml
index df329b7..b23ac10 100644
--- a/packages/CompanionDeviceManager/res/values-hi/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-hi/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"सहयोगी डिवाइस मैनेजर"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> को <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> ऐक्सेस करने की अनुमति दें"</string>
<string name="profile_name_watch" msgid="576290739483672360">"स्मार्टवॉच"</string>
<string name="chooser_title" msgid="2262294130493605839">"कोई <xliff:g id="PROFILE_NAME">%1$s</xliff:g> चुनें, ताकि उसे <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> की मदद से प्रबंधित किया जा सके"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"यह ऐप्लिकेशन, <xliff:g id="DEVICE_NAME">%1$s</xliff:g> को मैनेज करने के लिए ज़रूरी है. <xliff:g id="APP_NAME">%2$s</xliff:g> आपकी सूचनाओं पर कार्रवाई कर पाएगा. साथ ही, इसे आपके फ़ोन, एसएमएस, संपर्कों, कैलेंडर, कॉल लॉग, और आस-पास मौजूद डिवाइसों को ऐक्सेस करने की अनुमति मिल पाएगी."</string>
<string name="permission_apps" msgid="6142133265286656158">"ऐप्लिकेशन"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"अपने फ़ोन के ऐप्लिकेशन को स्ट्रीम करें"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> को अपने फ़ोन से यह जानकारी ऐक्सेस करने की अनुमति दें"</string>
diff --git a/packages/CompanionDeviceManager/res/values-hu/strings.xml b/packages/CompanionDeviceManager/res/values-hu/strings.xml
index dc73282..2f8dd85 100644
--- a/packages/CompanionDeviceManager/res/values-hu/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-hu/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Társeszközök kezelője"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"A(z) <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> hozzáférésének engedélyezése a(z) <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> eszközhöz"</string>
<string name="profile_name_watch" msgid="576290739483672360">"óra"</string>
<string name="chooser_title" msgid="2262294130493605839">"A(z) <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> alkalmazással kezelni kívánt <xliff:g id="PROFILE_NAME">%1$s</xliff:g> kiválasztása"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Szükség van erre az alkalmazásra a következő kezeléséhez: <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. A(z) <xliff:g id="APP_NAME">%2$s</xliff:g> műveleteket végezhet majd az értesítésekkel, és hozzáférhet a telefonra, az SMS-ekre, a névjegyekre, a naptárra, a hívásnaplókra és a közeli eszközökre vonatkozó engedélyekhez."</string>
<string name="permission_apps" msgid="6142133265286656158">"Alkalmazások"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"A telefon alkalmazásainak streamelése"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Engedélyezi a(z) „<xliff:g id="APP_NAME">%1$s</xliff:g>” alkalmazás számára az információhoz való hozzáférést a telefonról"</string>
diff --git a/packages/CompanionDeviceManager/res/values-hy/strings.xml b/packages/CompanionDeviceManager/res/values-hy/strings.xml
index c7e0076..aed650b 100644
--- a/packages/CompanionDeviceManager/res/values-hy/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-hy/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Companion Device Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Թույլատրեք <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> հավելվածին կառավարել ձեր <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> սարքը"</string>
<string name="profile_name_watch" msgid="576290739483672360">"ժամացույց"</string>
<string name="chooser_title" msgid="2262294130493605839">"Ընտրեք <xliff:g id="PROFILE_NAME">%1$s</xliff:g>ը, որը պետք է կառավարվի <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> հավելվածի կողմից"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Այս հավելվածն անհրաժեշտ է ձեր <xliff:g id="DEVICE_NAME">%1$s</xliff:g> սարքը կառավարելու համար։ <xliff:g id="APP_NAME">%2$s</xliff:g> հավելվածը կկարողանա փոխազդել ձեր ծանուցումների հետ և կստանա «Հեռախոս», «SMS», «Կոնտակտներ», «Օրացույց», «Կանչերի ցուցակ» և «Մոտակա սարքեր» թույլտվությունները։"</string>
<string name="permission_apps" msgid="6142133265286656158">"Հավելվածներ"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Հեռարձակել հեռախոսի հավելվածները"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Թույլատրեք <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> հավելվածին օգտագործել այս տեղեկությունները ձեր հեռախոսից"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Հետ"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Հավելվածների թույլտվությունների տեղափոխում ժամացույց"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Կարգավորման ժամանակ ժամացույցում տեղադրված հավելվածների համար կօգտագործվեն նույն թույլտվությունները, ինչ հեռախոսում։\n\n Այդ թույլտվությունները կարող են ներառել ժամացույցի խոսափողի կամ տեղադրության տվյալների օգտագործումը։"</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Հավելվածի պատկերակ"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"«Այլ տեղեկություններ» կոճակ"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-in/strings.xml b/packages/CompanionDeviceManager/res/values-in/strings.xml
index f619af7..048325c 100644
--- a/packages/CompanionDeviceManager/res/values-in/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-in/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Pengelola Perangkat Pendamping"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Izinkan <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> mengakses <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"smartwatch"</string>
<string name="chooser_title" msgid="2262294130493605839">"Pilih <xliff:g id="PROFILE_NAME">%1$s</xliff:g> untuk dikelola oleh <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Aplikasi ini diperlukan untuk mengelola <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> akan diizinkan berinteraksi dengan notifikasi dan mengakses izin Telepon, SMS, Kontak, Kalender, Log panggilan, dan Perangkat di sekitar."</string>
<string name="permission_apps" msgid="6142133265286656158">"Aplikasi"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Streaming aplikasi ponsel"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Izinkan <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> untuk mengakses informasi ini dari ponsel Anda"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Kembali"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Transfer izin aplikasi ke smartwatch"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Untuk mempermudah penyiapan smartwatch, aplikasi yang diinstal di smartwatch selama penyiapan akan menggunakan izin yang sama dengan ponsel.\n\n Izin ini dapat meliputi akses ke mikrofon dan lokasi smartwatch."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Ikon Aplikasi"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Tombol Informasi Lainnya"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-is/strings.xml b/packages/CompanionDeviceManager/res/values-is/strings.xml
index 5f5a71f..3f5a3de 100644
--- a/packages/CompanionDeviceManager/res/values-is/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-is/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Stjórnun fylgdartækja"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Veita <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> aðgang að <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"úr"</string>
<string name="chooser_title" msgid="2262294130493605839">"Velja <xliff:g id="PROFILE_NAME">%1$s</xliff:g> sem <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> á að stjórna"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Þetta forrit er nauðsynlegt til að hafa umsjón með <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> fær aðgang að tilkynningum og heimildum síma, SMS, tengiliða, dagatals, símtalaskráa og nálægra tækja."</string>
<string name="permission_apps" msgid="6142133265286656158">"Forrit"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Streymdu forritum símans"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Veita <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> aðgang að þessum upplýsingum úr símanum þínum"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Til baka"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Flytja heimildir forrita yfir í úrið"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Til að auðvelda uppsetningu úrsins munu forrit sem eru sett upp í úrinu við uppsetningu nota sömu heimildir og stilltar eru í símanum.\n\n Þessar heimildir kunna að fela í sér aðgang að hljóðnema og staðsetningu úrsins."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Tákn forrits"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Hnappur fyrir upplýsingar"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-it/strings.xml b/packages/CompanionDeviceManager/res/values-it/strings.xml
index 73579ca..88a1145 100644
--- a/packages/CompanionDeviceManager/res/values-it/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-it/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Gestione dispositivi companion"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Consenti all\'app <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> di accedere <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"orologio"</string>
<string name="chooser_title" msgid="2262294130493605839">"Scegli un <xliff:g id="PROFILE_NAME">%1$s</xliff:g> che sia gestito da <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Questa app è necessaria per gestire il tuo <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. L\'app <xliff:g id="APP_NAME">%2$s</xliff:g> potrà interagire con le tue notifiche e accedere alle autorizzazioni Telefono, SMS, Contatti, Calendar, Registri chiamate e Dispositivi nelle vicinanze."</string>
<string name="permission_apps" msgid="6142133265286656158">"App"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Trasmetti in streaming le app del tuo telefono"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Consenti a <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> di accedere a queste informazioni dal tuo telefono"</string>
diff --git a/packages/CompanionDeviceManager/res/values-iw/strings.xml b/packages/CompanionDeviceManager/res/values-iw/strings.xml
index 3c56113..9622ce5 100644
--- a/packages/CompanionDeviceManager/res/values-iw/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-iw/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"ניהול מכשיר מותאם"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"אישור לאפליקציה <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong&g; לגשת אל <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"שעון"</string>
<string name="chooser_title" msgid="2262294130493605839">"בחירת <xliff:g id="PROFILE_NAME">%1$s</xliff:g> לניהול באמצעות <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"האפליקציה הזו נחוצה כדי לנהל את <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. האפליקציה <xliff:g id="APP_NAME">%2$s</xliff:g> תוכל לבצע פעולות בהתראות ותקבל הרשאות גישה לטלפון, ל-SMS לאנשי הקשר, ליומן, ליומני השיחות ולמכשירים בקרבת מקום."</string>
<string name="permission_apps" msgid="6142133265286656158">"אפליקציות"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"שידור אפליקציות מהטלפון"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"מתן אישור לאפליקציה <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> לגשת למידע הזה מהטלפון שלך"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ja/strings.xml b/packages/CompanionDeviceManager/res/values-ja/strings.xml
index b55ccbe..97bc56d 100644
--- a/packages/CompanionDeviceManager/res/values-ja/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ja/strings.xml
@@ -43,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"戻る"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"スマートウォッチへのアプリの権限の移行"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"スマートウォッチのセットアップを簡単にするため、セットアップ時にスマートウォッチにインストールされたアプリに、スマートフォンと同じ権限が適用されます。\n\n これらの権限には、スマートウォッチのマイクや位置情報へのアクセス権も含まれることがあります。"</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"アプリのアイコン"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"詳細情報ボタン"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-kk/strings.xml b/packages/CompanionDeviceManager/res/values-kk/strings.xml
index 9c22ecc..5a4314b 100644
--- a/packages/CompanionDeviceManager/res/values-kk/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-kk/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Companion Device Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> қолданбасына <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> құрылғысын пайдалануға рұқсат беру"</string>
<string name="profile_name_watch" msgid="576290739483672360">"сағат"</string>
<string name="chooser_title" msgid="2262294130493605839">"<strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> арқылы басқарылатын <xliff:g id="PROFILE_NAME">%1$s</xliff:g> құрылғысын таңдаңыз"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Бұл қолданба <xliff:g id="DEVICE_NAME">%1$s</xliff:g> құрылғысын басқару үшін қажет. <xliff:g id="APP_NAME">%2$s</xliff:g> қолданбасына хабарландырулар жіберу, Телефон, SMS, Контактілер, Күнтізбе, Қоңырау журналдары қолданбаларын және маңайдағы құрылғыларды пайдалану рұқсаттары беріледі."</string>
<string name="permission_apps" msgid="6142133265286656158">"Қолданбалар"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Телефон қолданбаларын трансляциялайды."</string>
<string name="title_app_streaming" msgid="2270331024626446950">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> қолданбасына телефоныңыздағы осы ақпаратты пайдалануға рұқсат беріңіз."</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Артқа"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Қолданба рұқсаттарын сағатқа ауыстыру"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Реттеу кезінде сағатқа орнатылған қолданбалар телефондағыдай рұқсаттарды пайдаланады. Осылайша сағат оңай реттеледі.\n\n Бұл рұқсаттар сағаттың микрофоны мен геодерегін пайдалануды қамтиды."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Қолданба белгішесі"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"\"Қосымша ақпарат\" түймесі"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-km/strings.xml b/packages/CompanionDeviceManager/res/values-km/strings.xml
index e7b7e2d..e01916e 100644
--- a/packages/CompanionDeviceManager/res/values-km/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-km/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"កម្មវិធីគ្រប់គ្រងឧបករណ៍ដៃគូ"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"អនុញ្ញាតឱ្យ <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ចូលប្រើប្រាស់ <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> របស់អ្នក"</string>
<string name="profile_name_watch" msgid="576290739483672360">"នាឡិកា"</string>
<string name="chooser_title" msgid="2262294130493605839">"ជ្រើសរើស <xliff:g id="PROFILE_NAME">%1$s</xliff:g> ដើម្បីឱ្យស្ថិតក្រោមការគ្រប់គ្រងរបស់ <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"ត្រូវការកម្មវិធីនេះ ដើម្បីគ្រប់គ្រង <xliff:g id="DEVICE_NAME">%1$s</xliff:g> របស់អ្នក។ <xliff:g id="APP_NAME">%2$s</xliff:g> នឹងត្រូវបានអនុញ្ញាតឱ្យធ្វើអន្តរកម្មជាមួយការជូនដំណឹងរបស់អ្នក និងចូលប្រើការអនុញ្ញាតទូរសព្ទ, SMS, ទំនាក់ទំនង, ប្រតិទិន, កំណត់ហេតុហៅទូរសព្ទ និងឧបករណ៍នៅជិតរបស់អ្នក។"</string>
<string name="permission_apps" msgid="6142133265286656158">"កម្មវិធី"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"ផ្សាយកម្មវិធីរបស់ទូរសព្ទអ្នក"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"អនុញ្ញាតឱ្យ <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ចូលប្រើព័ត៌មាននេះពីទូរសព្ទរបស់អ្នក"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"ថយក្រោយ"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"ផ្ទេរការអនុញ្ញាតកម្មវិធីទៅនាឡិការបស់អ្នក"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"ដើម្បីជួយឱ្យការរៀបចំនាឡិការបស់អ្នកកាន់តែងាយស្រួល កម្មវិធីដែលបានដំឡើងនៅលើនាឡិការបស់អ្នកអំឡុងពេលរៀបចំនឹងប្រើការអនុញ្ញាតដូចគ្នានឹងទូរសព្ទរបស់អ្នកដែរ។\n\n ការអនុញ្ញាតទាំងនេះអាចរួមបញ្ចូលសិទ្ធិចូលប្រើទីតាំង និងមីក្រូហ្វូនរបស់នាឡិកាអ្នក។"</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"រូបកម្មវិធី"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"ប៊ូតុងព័ត៌មានបន្ថែម"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-kn/strings.xml b/packages/CompanionDeviceManager/res/values-kn/strings.xml
index 97be14e..5284ebf 100644
--- a/packages/CompanionDeviceManager/res/values-kn/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-kn/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"ಕಂಪ್ಯಾನಿಯನ್ ಸಾಧನ ನಿರ್ವಾಹಕರು"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"ನಿಮ್ಮ <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> ಅನ್ನು ಪ್ರವೇಶಿಸಲು <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ಗೆ ಅನುಮತಿಸಿ"</string>
<string name="profile_name_watch" msgid="576290739483672360">"ವೀಕ್ಷಿಸಿ"</string>
<string name="chooser_title" msgid="2262294130493605839">"<strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> ಮೂಲಕ ನಿರ್ವಹಿಸಬೇಕಾದ <xliff:g id="PROFILE_NAME">%1$s</xliff:g> ಅನ್ನು ಆಯ್ಕೆಮಾಡಿ"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"ನಿಮ್ಮ <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. ಅನ್ನು ನಿರ್ವಹಿಸಲು ಈ ಆ್ಯಪ್ನ ಅಗತ್ಯವಿದೆ. ನಿಮ್ಮ ಅಧಿಸೂಚನೆಗಳೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸಲು ಮತ್ತು ನಿಮ್ಮ ಫೋನ್, SMS, ಸಂಪರ್ಕಗಳು, Calendar, ಕರೆಯ ಲಾಗ್ಗಳು ಹಾಗೂ ಸಮೀಪದಲ್ಲಿರುವ ಸಾಧನಗಳ ಅನುಮತಿಗಳನ್ನು ಪ್ರವೇಶಿಸಲು <xliff:g id="APP_NAME">%2$s</xliff:g> ಗೆ ಅನುಮತಿಸಲಾಗುತ್ತದೆ."</string>
<string name="permission_apps" msgid="6142133265286656158">"ಆ್ಯಪ್ಗಳು"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"ನಿಮ್ಮ ಫೋನ್ನ ಆ್ಯಪ್ಗಳನ್ನು ಸ್ಟ್ರೀಮ್ ಮಾಡಿ"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"ನಿಮ್ಮ ಫೋನ್ ಮೂಲಕ ಈ ಮಾಹಿತಿಯನ್ನು ಆ್ಯಕ್ಸೆಸ್ ಮಾಡಲು <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ಗೆ ಅನುಮತಿಸಿ"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"ಹಿಂದೆ"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"ಆ್ಯಪ್ ಅನುಮತಿಗಳನ್ನು ನಿಮ್ಮ ವಾಚ್ಗೆ ವರ್ಗಾವಣೆ ಮಾಡಿ"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"ನಿಮ್ಮ ವಾಚ್ ಸೆಟಪ್ ಮಾಡುವುದನ್ನು ಸುಲಭವಾಗಿಸಲು, ಸೆಟಪ್ನ ಸಮಯದಲ್ಲಿ ನಿಮ್ಮ ವಾಚ್ನಲ್ಲಿ ಇನ್ಸ್ಟಾಲ್ ಮಾಡಿದ ಆ್ಯಪ್ಗಳು, ನಿಮ್ಮ ಫೋನ್ನಲ್ಲಿನ ಅನುಮತಿಗಳನ್ನೇ ಬಳಸಿಕೊಳ್ಳುತ್ತವೆ.\n\n ಈ ಅನುಮತಿಗಳು ನಿಮ್ಮ ವಾಚ್ನ ಮೈಕ್ರೊಫೋನ್ ಮತ್ತು ಸ್ಥಳದ ಪ್ರವೇಶವನ್ನು ಒಳಗೊಳ್ಳಬಹುದು."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"ಆ್ಯಪ್ ಐಕಾನ್"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"ಹೆಚ್ಚಿನ ಮಾಹಿತಿಯ ಬಟನ್"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-ko/strings.xml b/packages/CompanionDeviceManager/res/values-ko/strings.xml
index d1a1394..4451cb9 100644
--- a/packages/CompanionDeviceManager/res/values-ko/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ko/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"부속 기기 관리자"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong>에서 내 <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> 기기에 액세스하도록 허용"</string>
<string name="profile_name_watch" msgid="576290739483672360">"시계"</string>
<string name="chooser_title" msgid="2262294130493605839">"<strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>에서 관리할 <xliff:g id="PROFILE_NAME">%1$s</xliff:g>을(를) 선택"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"이 앱은 <xliff:g id="DEVICE_NAME">%1$s</xliff:g> 프로필을 관리하는 데 필요합니다. <xliff:g id="APP_NAME">%2$s</xliff:g>에서 알림과 상호작용하고 내 전화, SMS, 연락처, Calendar, 통화 기록, 근처 기기에 대한 권한을 갖게 됩니다."</string>
<string name="permission_apps" msgid="6142133265286656158">"앱"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"휴대전화의 앱을 스트리밍합니다."</string>
<string name="title_app_streaming" msgid="2270331024626446950">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> 앱이 휴대전화에서 이 정보에 액세스하도록 허용합니다."</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"뒤로"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"앱 권한을 시계로 이전"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"시계를 더 쉽게 설정하기 위해 설정하는 동안 시계에 설치된 앱에서 휴대전화와 동일한 권한을 사용합니다.\n\n 이러한 권한에는 시계의 마이크 및 위치 정보에 대한 액세스가 포함될 수 있습니다."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"앱 아이콘"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"추가 정보 버튼"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-ky/strings.xml b/packages/CompanionDeviceManager/res/values-ky/strings.xml
index 3d1a28a..3a345fb 100644
--- a/packages/CompanionDeviceManager/res/values-ky/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ky/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Companion Device Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> колдонмосуна <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> түзмөгүңүзгө кирүүгө уруксат бериңиз"</string>
<string name="profile_name_watch" msgid="576290739483672360">"саат"</string>
<string name="chooser_title" msgid="2262294130493605839">"<xliff:g id="PROFILE_NAME">%1$s</xliff:g> <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> тарабынан башкарылсын"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Бул колдонмо <xliff:g id="DEVICE_NAME">%1$s</xliff:g> түзмөгүңүздү башкаруу үчүн керек. <xliff:g id="APP_NAME">%2$s</xliff:g> билдирмелериңизди көрүп, телефонуңуз, SMS билдирүүлөр, байланыштар, жылнаама, чалуулар тизмеси жана жакын жердеги түзмөктөргө болгон уруксаттарды пайдалана алат."</string>
<string name="permission_apps" msgid="6142133265286656158">"Колдонмолор"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Телефондогу колдонмолорду алып ойнотуу"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> колдонмосуна телефонуңуздагы ушул маалыматты көрүүгө уруксат бериңиз"</string>
diff --git a/packages/CompanionDeviceManager/res/values-lo/strings.xml b/packages/CompanionDeviceManager/res/values-lo/strings.xml
index 9b7e928..f9d65fa 100644
--- a/packages/CompanionDeviceManager/res/values-lo/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-lo/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"ຕົວຈັດການອຸປະກອນປະກອບ"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"ອະນຸຍາດ <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ໃຫ້ເຂົ້າເຖິງ <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> ຂອງທ່ານໄດ້"</string>
<string name="profile_name_watch" msgid="576290739483672360">"ໂມງ"</string>
<string name="chooser_title" msgid="2262294130493605839">"ເລືອກ <xliff:g id="PROFILE_NAME">%1$s</xliff:g> ເພື່ອໃຫ້ຖືກຈັດການໂດຍ <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"ຕ້ອງໃຊ້ແອັບນີ້ເພື່ອຈັດການ <xliff:g id="DEVICE_NAME">%1$s</xliff:g> ຂອງທ່ານ. <xliff:g id="APP_NAME">%2$s</xliff:g> ຈະໄດ້ຮັບອະນຸຍາດໃຫ້ໂຕ້ຕອບກັບການແຈ້ງເຕືອນຂອງທ່ານ ແລະ ເຂົ້າເຖິງການອະນຸຍາດໂທລະສັບ, SMS, ລາຍຊື່ຜູ້ຕິດຕໍ່, ປະຕິທິນ, ບັນທຶກການໂທ ແລະ ອຸປະກອນທີ່ຢູ່ໃກ້ຄຽງຂອງທ່ານ."</string>
<string name="permission_apps" msgid="6142133265286656158">"ແອັບ"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"ສະຕຣີມແອັບຂອງໂທລະສັບທ່ານ"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"ອະນຸຍາດ <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ໃຫ້ເຂົ້າເຖິງຂໍ້ມູນນີ້ຈາກໂທລະສັບຂອງທ່ານໄດ້"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"ກັບຄືນ"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"ໂອນຍ້າຍການອະນຸຍາດແອັບໄປຫາໂມງຂອງທ່ານ"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"ເພື່ອເຮັດໃຫ້ຕັ້ງຄ່າໂມງຂອງທ່ານໄດ້ງ່າຍຂຶ້ນ, ແອັບທີ່ຕິດຕັ້ງຢູ່ໂມງຂອງທ່ານໃນລະຫວ່າງການຕັ້ງຄ່າຈະໃຊ້ການອະນຸຍາດດຽວກັນກັບໂທລະສັບຂອງທ່ານ.\n\n ການອະນຸຍາດເຫຼົ່ານີ້ອາດຮວມສິດເຂົ້າເຖິງໄມໂຄຣໂຟນ ແລະ ສະຖານທີ່ຂອງທ່ານນຳ."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"ໄອຄອນແອັບ"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"ປຸ່ມຂໍ້ມູນເພີ່ມເຕີມ"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-lt/strings.xml b/packages/CompanionDeviceManager/res/values-lt/strings.xml
index 34f86d2..6e7b007 100644
--- a/packages/CompanionDeviceManager/res/values-lt/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-lt/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Companion Device Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Leisti <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> pasiekti jūsų <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"laikrodį"</string>
<string name="chooser_title" msgid="2262294130493605839">"Jūsų <xliff:g id="PROFILE_NAME">%1$s</xliff:g>, kurį valdys <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> (pasirinkite)"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Ši programa reikalinga norint tvarkyti jūsų „<xliff:g id="DEVICE_NAME">%1$s</xliff:g>“. „<xliff:g id="APP_NAME">%2$s</xliff:g>“ bus leidžiama sąveikauti su pranešimų funkcija ir pasiekti telefono, SMS, Kontaktų, Kalendoriaus, Skambučių žurnalų ir įrenginių netoliese leidimus."</string>
<string name="permission_apps" msgid="6142133265286656158">"Programos"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Telefono programų perdavimas srautu"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Leisti <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> pasiekti šią informaciją iš jūsų telefono"</string>
diff --git a/packages/CompanionDeviceManager/res/values-lv/strings.xml b/packages/CompanionDeviceManager/res/values-lv/strings.xml
index 00a305c..1fdc99d 100644
--- a/packages/CompanionDeviceManager/res/values-lv/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-lv/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Palīgierīču pārzinis"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Atļauja lietotnei <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> piekļūt jūsu ierīcei <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"pulkstenis"</string>
<string name="chooser_title" msgid="2262294130493605839">"Profila (<xliff:g id="PROFILE_NAME">%1$s</xliff:g>) izvēle, ko pārvaldīt lietotnē <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Šī lietotne ir nepieciešama jūsu ierīces (<xliff:g id="DEVICE_NAME">%1$s</xliff:g>) pārvaldībai. Lietotnei <xliff:g id="APP_NAME">%2$s</xliff:g> tiks atļauts mijiedarboties ar jūsu paziņojumiem un piekļūt šādām atļaujām: Tālrunis, Īsziņas, Kontaktpersonas, Kalendārs, Zvanu žurnāli un Tuvumā esošas ierīces."</string>
<string name="permission_apps" msgid="6142133265286656158">"Lietotnes"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Var straumēt jūsu tālruņa lietotnes"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Atļaut lietotnei <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> piekļūt šai informācijai no jūsu tālruņa"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Atpakaļ"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Lietotņu atļauju pārsūtīšana uz pulksteni"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Lai atvieglotu pulksteņa iestatīšanu, iestatīšanas laikā pulkstenī instalētās lietotnes saņems tādas pašas atļaujas, kādas tām ir tālrunī.\n\n Tostarp lietotnes var saņemt atļauju piekļūt pulksteņa mikrofonam un atrašanās vietai."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Lietotnes ikona"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Plašākas informācijas poga"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-ms/strings.xml b/packages/CompanionDeviceManager/res/values-ms/strings.xml
index 11a619a..e6932e1 100644
--- a/packages/CompanionDeviceManager/res/values-ms/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ms/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Pengurus Peranti Rakan"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Benarkan <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> mengakses <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> anda"</string>
<string name="profile_name_watch" msgid="576290739483672360">"jam tangan"</string>
<string name="chooser_title" msgid="2262294130493605839">"Pilih <xliff:g id="PROFILE_NAME">%1$s</xliff:g> untuk diurus oleh <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Apl ini diperlukan untuk mengurus <xliff:g id="DEVICE_NAME">%1$s</xliff:g> anda. <xliff:g id="APP_NAME">%2$s</xliff:g> akan dibenarkan berinteraksi dengan pemberitahuan anda dan mengakses kebenaran Telefon, SMS, Kenalan, Kalendar, Log panggilan dan Peranti berdekatan anda."</string>
<string name="permission_apps" msgid="6142133265286656158">"Apl"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Strim apl telefon anda"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Benarkan <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> mengakses maklumat ini daripada telefon anda"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Kembali"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Pindahkan kebenaran apl pada jam tangan anda"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Untuk memudahkan penyediaan jam tangan anda, apl yang dipasang pada jam tangan anda semasa persediaan akan menggunakan kebenaran yang sama seperti telefon anda.\n\n Kebenaran ini mungkin termasuk akses kepada mikrofon dan lokasi jam tangan anda."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Ikon Apl"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Butang Maklumat Lagi"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-nb/strings.xml b/packages/CompanionDeviceManager/res/values-nb/strings.xml
index dc0521f..274b1a9 100644
--- a/packages/CompanionDeviceManager/res/values-nb/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-nb/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Companion Device Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Tillat at <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> bruker <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"klokke"</string>
<string name="chooser_title" msgid="2262294130493605839">"Velg <xliff:g id="PROFILE_NAME">%1$s</xliff:g> som skal administreres av <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Denne appen kreves for å administrere <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> får tillatelse til å samhandle med varslene dine og får tilgang til tillatelser for telefon, SMS, kontakter, kalender, samtalelogger og enheter i nærheten."</string>
<string name="permission_apps" msgid="6142133265286656158">"Apper"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Strøm appene på telefonen"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Gi <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> tilgang til denne informasjonen fra telefonen din"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Tilbake"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Overfør apptillatelser til klokken din"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"For å gjøre det enklere å konfigurere klokken din bruker apper som installeres på klokken under konfigureringen, samme tillatelser som på telefonen.\n\n Disse tillatelsene kan inkludere tilgang til mikrofonen på klokken og posisjon."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Appikon"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Mer informasjon-knapp"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-ne/strings.xml b/packages/CompanionDeviceManager/res/values-ne/strings.xml
index 21b7be7..ac3338e 100644
--- a/packages/CompanionDeviceManager/res/values-ne/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ne/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"सहयोगी डिभाइसको प्रबन्धक"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"आफ्नो <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> लाई <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> प्रयोग गर्ने अनुमति दिनुहोस्"</string>
<string name="profile_name_watch" msgid="576290739483672360">"घडी"</string>
<string name="chooser_title" msgid="2262294130493605839">"आफूले <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> प्रयोग गरी व्यवस्थापन गर्न चाहेको <xliff:g id="PROFILE_NAME">%1$s</xliff:g> चयन गर्नुहोस्"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"तपाईंको <xliff:g id="DEVICE_NAME">%1$s</xliff:g> व्यवस्थापन गर्न यो एपलाई अनुमति दिनु पर्ने हुन्छ। <xliff:g id="APP_NAME">%2$s</xliff:g> लाई तपाईंका सूचना हेर्ने र फोन, SMS, कन्ट्याक्ट, पात्रो, कल लग तथा नजिकैका डिभाइससम्बन्धी अनुमतिहरू हेर्ने तथा प्रयोग गर्ने अनुमति दिइने छ।"</string>
<string name="permission_apps" msgid="6142133265286656158">"एपहरू"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"आफ्नो फोनका एपहरू प्रयोग गर्नुहोस्"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> लाई तपाईंको फोनमा भएको यो जानकारी हेर्ने तथा प्रयोग गर्ने अनुमति दिनुहोस्"</string>
diff --git a/packages/CompanionDeviceManager/res/values-or/strings.xml b/packages/CompanionDeviceManager/res/values-or/strings.xml
index ae91eae..b9c5434 100644
--- a/packages/CompanionDeviceManager/res/values-or/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-or/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"ସହଯୋଗୀ ଡିଭାଇସ୍ ପରିଚାଳକ"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"ଆପଣଙ୍କ <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>କୁ ଆକ୍ସେସ କରିବା ପାଇଁ <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong>କୁ ଅନୁମତି ଦିଅନ୍ତୁ"</string>
<string name="profile_name_watch" msgid="576290739483672360">"ୱାଚ୍"</string>
<string name="chooser_title" msgid="2262294130493605839">"<strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> ଦ୍ୱାରା ପରିଚାଳିତ ହେବା ପାଇଁ ଏକ <xliff:g id="PROFILE_NAME">%1$s</xliff:g>କୁ ବାଛନ୍ତୁ"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"ଆପଣଙ୍କ <xliff:g id="DEVICE_NAME">%1$s</xliff:g>କୁ ପରିଚାଳନା କରିବା ପାଇଁ ଏହି ଆପ ଆବଶ୍ୟକ। ଆପଣଙ୍କ ବିଜ୍ଞପ୍ତିଗୁଡ଼ିକ ସହ ଇଣ୍ଟରାକ୍ଟ କରିବା ଏବଂ ଆପଣଙ୍କ ଫୋନ, SMS, ଯୋଗାଯୋଗ, କ୍ୟାଲେଣ୍ଡର, କଲ ଲଗ ଏବଂ ଆଖପାଖର ଡିଭାଇସ ଅନୁମତିଗୁଡ଼ିକୁ ଆକ୍ସେସ କରିବା ପାଇଁ <xliff:g id="APP_NAME">%2$s</xliff:g>କୁ ଅନୁମତି ଦିଆଯିବ।"</string>
<string name="permission_apps" msgid="6142133265286656158">"ଆପ୍ସ"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"ଆପଣଙ୍କ ଫୋନର ଆପ୍ସକୁ ଷ୍ଟ୍ରିମ କରନ୍ତୁ"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"ଆପଣଙ୍କ ଫୋନରୁ ଏହି ସୂଚନାକୁ ଆକ୍ସେସ କରିବା ପାଇଁ <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong>କୁ ଅନୁମତି ଦିଅନ୍ତୁ"</string>
diff --git a/packages/CompanionDeviceManager/res/values-pa/strings.xml b/packages/CompanionDeviceManager/res/values-pa/strings.xml
index f60e267..fc449d5 100644
--- a/packages/CompanionDeviceManager/res/values-pa/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-pa/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"ਸੰਬੰਧੀ ਡੀਵਾਈਸ ਪ੍ਰਬੰਧਕ"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ਨੂੰ ਤੁਹਾਡੇ <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿਓ"</string>
<string name="profile_name_watch" msgid="576290739483672360">"ਸਮਾਰਟ-ਵਾਚ"</string>
<string name="chooser_title" msgid="2262294130493605839">"<strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> ਵੱਲੋਂ ਪ੍ਰਬੰਧਿਤ ਕੀਤੇ ਜਾਣ ਲਈ <xliff:g id="PROFILE_NAME">%1$s</xliff:g> ਚੁਣੋ"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"ਤੁਹਾਡੇ <xliff:g id="DEVICE_NAME">%1$s</xliff:g> ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਨ ਲਈ ਇਹ ਐਪ ਲੋੜੀਂਦੀ ਹੈ। <xliff:g id="APP_NAME">%2$s</xliff:g> ਨੂੰ ਤੁਹਾਡੀਆਂ ਸੂਚਨਾਵਾਂ ਨਾਲ ਅੰਤਰਕਿਰਿਆ ਕਰਨ ਅਤੇ ਤੁਹਾਡੇ ਫ਼ੋਨ, SMS, ਸੰਪਰਕਾਂ, ਕੈਲੰਡਰ, ਕਾਲ ਲੌਗਾਂ ਅਤੇ ਨਜ਼ਦੀਕੀ ਡੀਵਾਈਸਾਂ ਸੰਬੰਧੀ ਇਜਾਜ਼ਤਾਂ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਦੀ ਆਗਿਆ ਹੋਵੇਗੀ।"</string>
<string name="permission_apps" msgid="6142133265286656158">"ਐਪਾਂ"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"ਆਪਣੇ ਫ਼ੋਨ ਦੀਆਂ ਐਪਾਂ ਨੂੰ ਸਟ੍ਰੀਮ ਕਰੋ"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ਨੂੰ ਤੁਹਾਡੇ ਫ਼ੋਨ ਤੋਂ ਇਸ ਜਾਣਕਾਰੀ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿਓ"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"ਪਿੱਛੇ"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"ਐਪ ਇਜਾਜ਼ਤਾਂ ਨੂੰ ਆਪਣੀ ਘੜੀ \'ਤੇ ਟ੍ਰਾਂਸਫ਼ਰ ਕਰੋ"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"ਤੁਹਾਡੀ ਘੜੀ ਦਾ ਸੈੱਟਅੱਪ ਕਰਨਾ ਆਸਾਨ ਬਣਾਉਣ ਲਈ, ਤੁਹਾਡੀ ਘੜੀ \'ਤੇ ਸਥਾਪਤ ਐਪਾਂ ਸੈੱਟਅੱਪ ਦੌਰਾਨ ਉਹੀ ਇਜਾਜ਼ਤਾਂ ਵਰਤਣਗੀਆਂ ਜੋ ਤੁਹਾਡਾ ਫ਼ੋਨ ਵਰਤਦਾ ਹੈ।\n\n ਇਨ੍ਹਾਂ ਇਜਾਜ਼ਤਾਂ ਵਿੱਚ ਤੁਹਾਡੀ ਘੜੀ ਦੇ ਮਾਈਕ੍ਰੋਫ਼ੋਨ ਅਤੇ ਟਿਕਾਣੇ ਤੱਕ ਪਹੁੰਚ ਸ਼ਾਮਲ ਹੋ ਸਕਦੀ ਹੈ।"</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"ਐਪ ਪ੍ਰਤੀਕ"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"ਹੋਰ ਜਾਣਕਾਰੀ ਬਟਨ"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-pl/strings.xml b/packages/CompanionDeviceManager/res/values-pl/strings.xml
index b361f90..08f6880 100644
--- a/packages/CompanionDeviceManager/res/values-pl/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-pl/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Menedżer urządzeń towarzyszących"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Zezwól na dostęp aplikacji <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> do urządzenia <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"zegarek"</string>
<string name="chooser_title" msgid="2262294130493605839">"Wybierz profil <xliff:g id="PROFILE_NAME">%1$s</xliff:g>, którym ma zarządzać aplikacja <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Ta aplikacja jest niezbędna do zarządzania profilem <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. Aplikacja <xliff:g id="APP_NAME">%2$s</xliff:g> będzie mogła korzystać z powiadomień oraz uprawnień dotyczących telefonu, SMS-ów, kontaktów, kalendarza, rejestrów połączeń i urządzeń w pobliżu."</string>
<string name="permission_apps" msgid="6142133265286656158">"Aplikacje"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Odtwarzaj strumieniowo aplikacje z telefonu"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Zezwól aplikacji <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> na dostęp do tych informacji na Twoim telefonie"</string>
diff --git a/packages/CompanionDeviceManager/res/values-pt-rBR/strings.xml b/packages/CompanionDeviceManager/res/values-pt-rBR/strings.xml
index 39a70cb..ce83bff 100644
--- a/packages/CompanionDeviceManager/res/values-pt-rBR/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-pt-rBR/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Gerenciador de dispositivos complementar"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Permitir que o app <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> acesse o dispositivo <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"relógio"</string>
<string name="chooser_title" msgid="2262294130493605839">"Escolha um <xliff:g id="PROFILE_NAME">%1$s</xliff:g> para ser gerenciado pelo app <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Esse app é necessário para gerenciar seu <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. O <xliff:g id="APP_NAME">%2$s</xliff:g> vai poder interagir com suas notificações e acessar os apps Telefone, SMS, Contatos, Google Agenda, registros de chamadas e as permissões de dispositivos por perto."</string>
<string name="permission_apps" msgid="6142133265286656158">"Apps"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Faça streaming dos apps do seu smartphone"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Permitir que o app <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> acesse estas informações do smartphone"</string>
diff --git a/packages/CompanionDeviceManager/res/values-pt-rPT/strings.xml b/packages/CompanionDeviceManager/res/values-pt-rPT/strings.xml
index 4d4cf4c..8d84eb7 100644
--- a/packages/CompanionDeviceManager/res/values-pt-rPT/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-pt-rPT/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Gestor de dispositivos associados"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Permita que a app <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> aceda ao seu <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"relógio"</string>
<string name="chooser_title" msgid="2262294130493605839">"Escolha um <xliff:g id="PROFILE_NAME">%1$s</xliff:g> para ser gerido pela app <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Esta app é necessária para gerir o seu <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. A app <xliff:g id="APP_NAME">%2$s</xliff:g> vai poder interagir com as suas notificações e aceder às autorizações do Telefone, SMS, Contactos, Calendário, Registos de chamadas e Dispositivos próximos."</string>
<string name="permission_apps" msgid="6142133265286656158">"Apps"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Faça stream das apps do telemóvel"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Permita que a app <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> aceda a estas informações do seu telemóvel"</string>
diff --git a/packages/CompanionDeviceManager/res/values-pt/strings.xml b/packages/CompanionDeviceManager/res/values-pt/strings.xml
index 39a70cb..ce83bff 100644
--- a/packages/CompanionDeviceManager/res/values-pt/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-pt/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Gerenciador de dispositivos complementar"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Permitir que o app <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> acesse o dispositivo <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"relógio"</string>
<string name="chooser_title" msgid="2262294130493605839">"Escolha um <xliff:g id="PROFILE_NAME">%1$s</xliff:g> para ser gerenciado pelo app <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Esse app é necessário para gerenciar seu <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. O <xliff:g id="APP_NAME">%2$s</xliff:g> vai poder interagir com suas notificações e acessar os apps Telefone, SMS, Contatos, Google Agenda, registros de chamadas e as permissões de dispositivos por perto."</string>
<string name="permission_apps" msgid="6142133265286656158">"Apps"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Faça streaming dos apps do seu smartphone"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Permitir que o app <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> acesse estas informações do smartphone"</string>
diff --git a/packages/CompanionDeviceManager/res/values-ro/strings.xml b/packages/CompanionDeviceManager/res/values-ro/strings.xml
index bc21152..b6f8ff7 100644
--- a/packages/CompanionDeviceManager/res/values-ro/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ro/strings.xml
@@ -43,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Înapoi"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Transferați permisiunile pentru aplicații pe ceas"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Ca să configurați mai ușor ceasul, aplicațiile instalate pe ceas în timpul procesului de configurare vor folosi aceleași permisiuni ca telefonul.\n\n Între acestea se poate număra accesul la microfonul și locația ceasului."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Pictograma aplicației"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Butonul Mai multe informații"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-ru/strings.xml b/packages/CompanionDeviceManager/res/values-ru/strings.xml
index 579ff2d..492e345 100644
--- a/packages/CompanionDeviceManager/res/values-ru/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ru/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Управление подключенными устройствами"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Разрешите приложению <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> доступ к устройству <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"часы"</string>
<string name="chooser_title" msgid="2262294130493605839">"Выберите устройство (<xliff:g id="PROFILE_NAME">%1$s</xliff:g>), которым будет управлять приложение <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Это приложение необходимо для управления устройством \"<xliff:g id="DEVICE_NAME">%1$s</xliff:g>\". Приложение \"<xliff:g id="APP_NAME">%2$s</xliff:g>\" получит доступ к уведомлениям, а также следующие разрешения: телефон, SMS, контакты, календарь, список вызовов и устройства поблизости."</string>
<string name="permission_apps" msgid="6142133265286656158">"Приложения"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Трансляция приложений с телефона."</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Разрешите приложению <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> получать эту информацию с вашего телефона"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Назад"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Перенос разрешений для приложений на часы"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Для приложений, установленных на часы во время настройки, будут использоваться те же разрешения, что и на телефоне.\n\n Например, может быть включен доступ к микрофону на часах или сведениям о местоположении."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Значок приложения"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Кнопка информации"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-si/strings.xml b/packages/CompanionDeviceManager/res/values-si/strings.xml
index 282bb3e..79c3651 100644
--- a/packages/CompanionDeviceManager/res/values-si/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-si/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"සහායක උපාංග කළමනාකරු"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> හට ඔබගේ <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> කළමනාකරණය කිරීමට ඉඩ දෙන්න"</string>
<string name="profile_name_watch" msgid="576290739483672360">"ඔරලෝසුව"</string>
<string name="chooser_title" msgid="2262294130493605839">"<strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> මගින් කළමනාකරණය කරනු ලැබීමට <xliff:g id="PROFILE_NAME">%1$s</xliff:g>ක් තෝරන්න"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"මෙම යෙදුමට ඔබගේ <xliff:g id="DEVICE_NAME">%1$s</xliff:g> කළමනාකරණය කිරීමට අවශ්යයි. <xliff:g id="APP_NAME">%2$s</xliff:g> ඔබගේ දැනුම්දීම් සමඟ අන්තර්ක්රියා කිරීමට සහ ඔබගේ දුරකථනය, SMS, සම්බන්ධතා, දින දර්ශනය, ඇමතුම් ලොග සහ අවට උපාංග අවසර වෙත ප්රවේශ වීමට ඉඩ දෙනු ඇත."</string>
<string name="permission_apps" msgid="6142133265286656158">"යෙදුම්"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"ඔබගේ දුරකථනයේ යෙදුම් ප්රවාහ කරන්න"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> හට ඔබගේ දුරකථනයෙන් මෙම තොරතුරුවලට ප්රවේශ වීමට ඉඩ දෙන්න"</string>
diff --git a/packages/CompanionDeviceManager/res/values-sk/strings.xml b/packages/CompanionDeviceManager/res/values-sk/strings.xml
index 5f45d63..54b6ce6 100644
--- a/packages/CompanionDeviceManager/res/values-sk/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sk/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Správca sprievodných zariadení"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Povoľte aplikácii <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> prístup k zariadeniu <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"hodinky"</string>
<string name="chooser_title" msgid="2262294130493605839">"Vyberte profil <xliff:g id="PROFILE_NAME">%1$s</xliff:g>, ktorý bude spravovať aplikácia <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Táto aplikácia sa vyžaduje na správu zariadenia <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> bude môcť interagovať s vašimi upozorneniami a získa prístup k povoleniam telefónu, SMS, kontaktov, kalendára, zoznamu hovorov a zariadení v okolí."</string>
<string name="permission_apps" msgid="6142133265286656158">"Aplikácie"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Streamovanie aplikácií v telefóne"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Povoľte aplikácii <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> prístup k týmto informáciám z vášho telefónu"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Späť"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Presun povolení aplikácie do hodiniek"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"V rámci zjednodušenia nastavenia hodiniek budú aplikácie nainštalované do hodiniek pri nastavovaní používať rovnaké povolenia ako váš telefón.\n\n Tieto povolenia môžu zahrnovať prístup k mikrofónu a polohe hodiniek."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Ikona aplikácie"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Tlačidlo Ďalšie informácie"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-sl/strings.xml b/packages/CompanionDeviceManager/res/values-sl/strings.xml
index b567892..883bd0b 100644
--- a/packages/CompanionDeviceManager/res/values-sl/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sl/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Upravitelj spremljevalnih naprav"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Aplikaciji <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> dovolite dostop do naprave <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"ura"</string>
<string name="chooser_title" msgid="2262294130493605839">"Izbira naprave <xliff:g id="PROFILE_NAME">%1$s</xliff:g>, ki jo bo upravljala aplikacija <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Ta aplikacija je potrebna za upravljanje naprave »<xliff:g id="DEVICE_NAME">%1$s</xliff:g>«. Aplikaciji <xliff:g id="APP_NAME">%2$s</xliff:g> bosta omogočena interakcija z obvestili in uporaba dovoljenj Telefon, SMS, Stiki, Koledar, Dnevniki klicev in Naprave v bližini."</string>
<string name="permission_apps" msgid="6142133265286656158">"Aplikacije"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Pretočno predvajanje aplikacij telefona"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Dovolite, da <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> dostopa do teh podatkov v vašem telefonu"</string>
diff --git a/packages/CompanionDeviceManager/res/values-sq/strings.xml b/packages/CompanionDeviceManager/res/values-sq/strings.xml
index 641a2e3..3e6933c 100644
--- a/packages/CompanionDeviceManager/res/values-sq/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sq/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Menaxheri i pajisjes shoqëruese"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Lejo që <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> të ketë qasje te <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"ora inteligjente"</string>
<string name="chooser_title" msgid="2262294130493605839">"Zgjidh një profil <xliff:g id="PROFILE_NAME">%1$s</xliff:g> që do të menaxhohet nga <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Ky aplikacion nevojitet për të menaxhuar profilin tënd të <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> do të lejohet të ndërveprojë me njoftimet e tua dhe të ketë qasje te lejet e \"Telefonit\", \"SMS-ve\", \"Kontakteve\", \"Kalendarit\", \"Evidencave të telefonatave\" dhe \"Pajisjeve në afërsi\"."</string>
<string name="permission_apps" msgid="6142133265286656158">"Aplikacionet"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Transmeto aplikacionet e telefonit tënd"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Lejo që <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> të ketë qasje në këtë informacion nga telefoni yt"</string>
diff --git a/packages/CompanionDeviceManager/res/values-sr/strings.xml b/packages/CompanionDeviceManager/res/values-sr/strings.xml
index 0060efe..f9a1e02 100644
--- a/packages/CompanionDeviceManager/res/values-sr/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sr/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Менаџер придруженог уређаја"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Дозволите да <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> приступа уређају <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"сат"</string>
<string name="chooser_title" msgid="2262294130493605839">"Одаберите профил <xliff:g id="PROFILE_NAME">%1$s</xliff:g> којим ће управљати апликација <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Ова апликација је потребна за управљање уређајем <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> ће добити дозволу за интеракцију са обавештењима и приступ дозволама за телефон, SMS, контакте, календар, евиденције позива и уређаје у близини."</string>
<string name="permission_apps" msgid="6142133265286656158">"Апликације"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Стримујте апликације на телефону"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Дозволите да <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> приступа овим информацијама са телефона"</string>
diff --git a/packages/CompanionDeviceManager/res/values-sv/strings.xml b/packages/CompanionDeviceManager/res/values-sv/strings.xml
index 272c742..b4df616 100644
--- a/packages/CompanionDeviceManager/res/values-sv/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sv/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Companion Device Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Tillåt att <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> får åtkomst till din <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"klocka"</string>
<string name="chooser_title" msgid="2262294130493605839">"Välj en <xliff:g id="PROFILE_NAME">%1$s</xliff:g> för hantering av <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Appen behövs för att hantera <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> får tillåtelse att interagera med dina aviseringar och får åtkomst till behörigheterna Telefon, Sms, Kontakter, Kalender, Samtalsloggar och Enheter i närheten."</string>
<string name="permission_apps" msgid="6142133265286656158">"Appar"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Streama telefonens appar"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Ge <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> åtkomstbehörighet till denna information på telefonen"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Tillbaka"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Överför appbehörigheter till klockan"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Appar som installeras på klockan under konfigureringen får samma behörigheter som de har på telefonen så att konfigureringen ska bli enklare.\n\n Behörigheterna kan omfatta åtkomst till klockans mikrofon och plats."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Appikon"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Knappen Mer information"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-sw/strings.xml b/packages/CompanionDeviceManager/res/values-sw/strings.xml
index 5535c52..6b5ca21 100644
--- a/packages/CompanionDeviceManager/res/values-sw/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-sw/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Kidhibiti cha Vifaa Visaidizi"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Ruhusu <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ifikie <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> yako"</string>
<string name="profile_name_watch" msgid="576290739483672360">"saa"</string>
<string name="chooser_title" msgid="2262294130493605839">"Chagua <xliff:g id="PROFILE_NAME">%1$s</xliff:g> ili idhibitiwe na <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Programu hii inahitajika ili udhibiti wasifu wako wa <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. <xliff:g id="APP_NAME">%2$s</xliff:g> itaruhusiwa kufikia arifa zako na kufikia ruhusa zako za Simu, SMS, Anwani, Kalenda, Rekodi za nambari za simu na Vifaa vilivyo karibu."</string>
<string name="permission_apps" msgid="6142133265286656158">"Programu"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Tiririsha programu za simu yako"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Ruhusu <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ifikie maelezo haya kutoka kwenye simu yako"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Nyuma"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Hamishia idhini za programu kwenye saa yako"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Ili kurahisisha kuweka mipangilio ya saa yako, programu ambazo zimesakinishwa kwenye saa yako wakati wa kuweka mipangilio zitatumia ruhusa sawa na zinazotumika kwenye simu yako.\n\n Ruhusa hizi huenda zikajumuisha ufikiaji wa maikrofoni ya saa yako na maelezo ya mahali ilipo saa yako."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Aikoni ya Programu"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Kitufe cha Maelezo Zaidi"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-ta/strings.xml b/packages/CompanionDeviceManager/res/values-ta/strings.xml
index ebee21d..4408e65 100644
--- a/packages/CompanionDeviceManager/res/values-ta/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ta/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"கம்பேனியன் சாதன நிர்வாகி"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"உங்கள் <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> சாதனத்தை அணுக <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ஆப்ஸை அனுமதியுங்கள்"</string>
<string name="profile_name_watch" msgid="576290739483672360">"வாட்ச்"</string>
<string name="chooser_title" msgid="2262294130493605839">"<strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> ஆப்ஸ் நிர்வகிக்கக்கூடிய <xliff:g id="PROFILE_NAME">%1$s</xliff:g> ஐத் தேர்ந்தெடுங்கள்"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"உங்கள் <xliff:g id="DEVICE_NAME">%1$s</xliff:g> சாதனத்தை நிர்வகிக்க இந்த ஆப்ஸ் தேவைப்படுகிறது. உங்கள் அறிவிப்புகளைப் பயன்படுத்துவதற்கான அனுமதியையும் மொபைல், மெசேஜ், தொடர்புகள், கேலெண்டர், அழைப்புப் பதிவுகள், அருகிலுள்ள சாதனங்கள் ஆகியவற்றின் அனுமதிகளுக்கான அணுகலையும் <xliff:g id="APP_NAME">%2$s</xliff:g> ஆப்ஸ் பெறும்."</string>
<string name="permission_apps" msgid="6142133265286656158">"ஆப்ஸ்"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"உங்கள் மொபைலின் ஆப்ஸை ஸ்ட்ரீம் செய்யலாம்"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"மொபைலில் உள்ள இந்தத் தகவல்களை அணுக, <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ஆப்ஸை அனுமதிக்கவும்"</string>
diff --git a/packages/CompanionDeviceManager/res/values-te/strings.xml b/packages/CompanionDeviceManager/res/values-te/strings.xml
index 2d33f06..7bb383f 100644
--- a/packages/CompanionDeviceManager/res/values-te/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-te/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"సహచర పరికర మేనేజర్"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"మీ <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>ను యాక్సెస్ చేయడానికి <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong>ను అనుమతించండి"</string>
<string name="profile_name_watch" msgid="576290739483672360">"వాచ్"</string>
<string name="chooser_title" msgid="2262294130493605839">"<strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> ద్వారా మేనేజ్ చేయబడటానికి ఒక <xliff:g id="PROFILE_NAME">%1$s</xliff:g>ను ఎంచుకోండి"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"మీ <xliff:g id="DEVICE_NAME">%1$s</xliff:g>ను మేనేజ్ చేయడానికి ఈ యాప్ అవసరం. మీ నోటిఫికేషన్లతో ఇంటరాక్ట్ అవ్వడానికి అలాగే మీ ఫోన్, SMS, కాంటాక్ట్లు, Calendar కాల్ లాగ్లు, సమీపంలోని పరికరాల అనుమతులను యాక్సెస్ చేయడానికి <xliff:g id="APP_NAME">%2$s</xliff:g> అనుమతించబడుతుంది."</string>
<string name="permission_apps" msgid="6142133265286656158">"యాప్లు"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"మీ ఫోన్ యాప్లను స్ట్రీమ్ చేయండి"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"మీ ఫోన్ నుండి ఈ సమాచారాన్ని యాక్సెస్ చేయడానికి <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> యాప్ను అనుమతించండి"</string>
diff --git a/packages/CompanionDeviceManager/res/values-th/strings.xml b/packages/CompanionDeviceManager/res/values-th/strings.xml
index 95539dd..e3174f8 100644
--- a/packages/CompanionDeviceManager/res/values-th/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-th/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Companion Device Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"อนุญาตให้ <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> เข้าถึง <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> ของคุณ"</string>
<string name="profile_name_watch" msgid="576290739483672360">"นาฬิกา"</string>
<string name="chooser_title" msgid="2262294130493605839">"เลือก<xliff:g id="PROFILE_NAME">%1$s</xliff:g>ที่จะให้มีการจัดการโดย <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"ต้องใช้แอปนี้ในการจัดการ<xliff:g id="DEVICE_NAME">%1$s</xliff:g> <xliff:g id="APP_NAME">%2$s</xliff:g> จะได้รับอนุญาตให้โต้ตอบกับการแจ้งเตือนและได้รับสิทธิ์เข้าถึงโทรศัพท์, SMS, รายชื่อติดต่อ, ปฏิทิน, บันทึกการโทร และอุปกรณ์ที่อยู่ใกล้เคียง"</string>
<string name="permission_apps" msgid="6142133265286656158">"แอป"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"สตรีมแอปของโทรศัพท์คุณ"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"อนุญาตให้ <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> เข้าถึงข้อมูลนี้จากโทรศัพท์ของคุณ"</string>
diff --git a/packages/CompanionDeviceManager/res/values-tl/strings.xml b/packages/CompanionDeviceManager/res/values-tl/strings.xml
index 5a73221..9c49c5c 100644
--- a/packages/CompanionDeviceManager/res/values-tl/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-tl/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Kasamang Device Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Payagan ang <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> na i-access ang iyong <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"relo"</string>
<string name="chooser_title" msgid="2262294130493605839">"Pumili ng <xliff:g id="PROFILE_NAME">%1$s</xliff:g> para pamahalaan ng <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Kailangan ang app na ito para mapamahalaan ang iyong <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. Papayagan ang <xliff:g id="APP_NAME">%2$s</xliff:g> na makipag-ugnayan sa mga notification mo at i-access ang iyong pahintulot sa Telepono, SMS, Mga Contact, Kalendaryo, Log ng mga tawag, at Mga kalapit na device."</string>
<string name="permission_apps" msgid="6142133265286656158">"Mga App"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"I-stream ang mga app ng iyong telepono"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Payagan ang <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> na i-access ang impormasyong ito sa iyong telepono"</string>
diff --git a/packages/CompanionDeviceManager/res/values-tr/strings.xml b/packages/CompanionDeviceManager/res/values-tr/strings.xml
index 71da675..bdad641 100644
--- a/packages/CompanionDeviceManager/res/values-tr/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-tr/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Companion Device Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"<strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> cihazınıza erişmesi için <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> uygulamasına izin verin"</string>
<string name="profile_name_watch" msgid="576290739483672360">"saat"</string>
<string name="chooser_title" msgid="2262294130493605839">"<strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> tarafından yönetilecek bir <xliff:g id="PROFILE_NAME">%1$s</xliff:g> seçin"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Bu uygulama, <xliff:g id="DEVICE_NAME">%1$s</xliff:g> cihazınızın yönetilmesi için gereklidir. <xliff:g id="APP_NAME">%2$s</xliff:g> adlı uygulamanın bildirimlerinizle etkileşimde bulunup Telefon, SMS, Kişiler, Takvim, Arama kayıtları ve Yakındaki cihazlar izinlerinize erişmesine izin verilir."</string>
<string name="permission_apps" msgid="6142133265286656158">"Uygulamalar"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Telefonunuzun uygulamalarını yayınlama"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> uygulamasının, telefonunuzdaki bu bilgilere erişmesine izin verin"</string>
diff --git a/packages/CompanionDeviceManager/res/values-uk/strings.xml b/packages/CompanionDeviceManager/res/values-uk/strings.xml
index 0681b9f..760255b 100644
--- a/packages/CompanionDeviceManager/res/values-uk/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-uk/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Диспетчер супутніх пристроїв"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Надати додатку <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> доступ до пристрою <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"годинник"</string>
<string name="chooser_title" msgid="2262294130493605839">"Виберіть <xliff:g id="PROFILE_NAME">%1$s</xliff:g>, яким керуватиме додаток <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Цей додаток потрібен, щоб керувати пристроєм <xliff:g id="DEVICE_NAME">%1$s</xliff:g>. Додаток <xliff:g id="APP_NAME">%2$s</xliff:g> зможе взаємодіяти з вашими сповіщеннями й отримає дозволи \"Телефон\", \"SMS\", \"Контакти\", \"Календар\", \"Журнали викликів\" і \"Пристрої поблизу\"."</string>
<string name="permission_apps" msgid="6142133265286656158">"Додатки"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Транслювати додатки телефона"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Надайте додатку <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> доступ до цієї інформації з телефона"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Назад"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Перенести дозволи для додатків на годинник"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Задля зручності додатки, установлені на годиннику протягом налаштування, використовуватимуть ті самі дозволи, що й на телефоні.\n\n До таких дозволів може належати доступ до мікрофона й геоданих годинника."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Значок додатка"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Кнопка \"Докладніше\""</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-ur/strings.xml b/packages/CompanionDeviceManager/res/values-ur/strings.xml
index f815b03..a311bd4 100644
--- a/packages/CompanionDeviceManager/res/values-ur/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-ur/strings.xml
@@ -17,16 +17,14 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"ساتھی آلہ مینیجر"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> کو اپنے <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> تک رسائی کی اجازت دیں"</string>
<string name="profile_name_watch" msgid="576290739483672360">"دیکھیں"</string>
<string name="chooser_title" msgid="2262294130493605839">"<strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> کے ذریعے نظم کئے جانے کیلئے <xliff:g id="PROFILE_NAME">%1$s</xliff:g> کو منتخب کریں"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"آپ کے <xliff:g id="DEVICE_NAME">%1$s</xliff:g> کا نظم کرنے کے لئے اس ایپ کی ضرورت ہے۔ <xliff:g id="APP_NAME">%2$s</xliff:g> کو آپ کی اطلاعات کے ساتھ تعامل کرنے اور آپ کے فون، SMS، رابطوں، کیلنڈر، کال لاگز اور قریبی آلات کی اجازتوں تک رسائی کی اجازت ہوگی۔"</string>
<string name="permission_apps" msgid="6142133265286656158">"ایپس"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"اپنے فون کی ایپس کی سلسلہ بندی کریں"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> کو اپنے فون سے ان معلومات تک رسائی حاصل کرنے کی اجازت دیں"</string>
- <string name="helper_title_app_streaming" msgid="4151687003439969765">"کراس آلے کی سروس"</string>
+ <string name="helper_title_app_streaming" msgid="4151687003439969765">"کراس ڈیوائس سروسز"</string>
<string name="helper_summary_app_streaming" msgid="7380294597268573523">"<xliff:g id="APP_NAME">%1$s</xliff:g> ایپ آپ کے <xliff:g id="DEVICE_TYPE">%2$s</xliff:g> کی جانب سے آپ کے فون کی تصاویر، میڈیا اور اطلاعات تک رسائی کی اجازت طلب کر رہی ہے"</string>
<string name="title_automotive_projection" msgid="3296005598978412847"></string>
<string name="summary_automotive_projection" msgid="8683801274662496164"></string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"پیچھے"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"اپنی گھڑی پر ایپ کی اجازتیں منتقل کریں"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"آپ کی گھڑی کو سیٹ اپ کرنے کے عمل کو زیادہ آسان بنانے کے لیے، سیٹ اپ کے دوران آپ کی گھڑی پر انسٹال کردہ ایپس انہیں اجازتوں کا استعمال کریں گی جن کا استعمال آپ کا فون کرتا ہے۔\n\n ان اجازتوں میں آپ کی گھڑی کے مائیکروفون اور مقام تک کی رسائی شامل ہو سکتی ہے۔"</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"ایپ کا آئیکن"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"مزید معلومات کا بٹن"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-uz/strings.xml b/packages/CompanionDeviceManager/res/values-uz/strings.xml
index 9a28c2e..f1c162a 100644
--- a/packages/CompanionDeviceManager/res/values-uz/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-uz/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Companion Device Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"<strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> qurilmasiga kirish uchun <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ilovasiga ruxsat bering"</string>
<string name="profile_name_watch" msgid="576290739483672360">"soat"</string>
<string name="chooser_title" msgid="2262294130493605839">"<strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> boshqaradigan <xliff:g id="PROFILE_NAME">%1$s</xliff:g> qurilmasini tanlang"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Bu ilova <xliff:g id="DEVICE_NAME">%1$s</xliff:g> profilini boshqarish uchun kerak. <xliff:g id="APP_NAME">%2$s</xliff:g> ilovasiga bildirishnomalar bilan ishlash va telefon, SMS, kontaktlar, taqvim, chaqiruvlar jurnali va yaqin-atrofdagi qurilmalarga kirishga ruxsat beriladi."</string>
<string name="permission_apps" msgid="6142133265286656158">"Ilovalar"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Telefondagi ilovalarni translatsiya qilish"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> ilovasiga telefondagi ushbu maʼlumot uchun ruxsat bering"</string>
@@ -45,8 +43,6 @@
<string name="consent_back" msgid="2560683030046918882">"Orqaga"</string>
<string name="permission_sync_confirmation_title" msgid="667074294393493186">"Ilova uchun ruxsatlarni soatingizga uzating"</string>
<string name="permission_sync_summary" msgid="8873391306499120778">"Soatingizni sozlashni qulaylashtirish maqsadida sozlash paytida soatingizga oʻrnatilgan ilovalar telefoningiz bilan bir xil ruxsatlardan foydalanadi.\n\n Bunday ruxsatlarga soatingiz mikrofoni va joylashuv axborotiga ruxsatlar kirishi mumkin."</string>
- <!-- no translation found for vendor_icon_description (4445875290032225965) -->
- <skip />
- <!-- no translation found for vendor_header_button_description (6566660389500630608) -->
- <skip />
+ <string name="vendor_icon_description" msgid="4445875290032225965">"Ilova belgisi"</string>
+ <string name="vendor_header_button_description" msgid="6566660389500630608">"Batafsil axborot tugmasi"</string>
</resources>
diff --git a/packages/CompanionDeviceManager/res/values-vi/strings.xml b/packages/CompanionDeviceManager/res/values-vi/strings.xml
index 94fbdac..5c7d600 100644
--- a/packages/CompanionDeviceManager/res/values-vi/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-vi/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"Companion Device Manager"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"Cho phép <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> truy cập <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong> của bạn"</string>
<string name="profile_name_watch" msgid="576290739483672360">"đồng hồ"</string>
<string name="chooser_title" msgid="2262294130493605839">"Chọn một <xliff:g id="PROFILE_NAME">%1$s</xliff:g> sẽ do <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> quản lý"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"Cần có ứng dụng này để quản lý <xliff:g id="DEVICE_NAME">%1$s</xliff:g> của bạn. <xliff:g id="APP_NAME">%2$s</xliff:g> sẽ được phép tương tác với các thông báo và truy cập vào Điện thoại, SMS, Danh bạ, Lịch, Nhật ký cuộc gọi và quyền đối với Thiết bị ở gần."</string>
<string name="permission_apps" msgid="6142133265286656158">"Ứng dụng"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"Truyền các ứng dụng trên điện thoại của bạn"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"Cho phép <strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> truy cập vào thông tin này trên điện thoại của bạn"</string>
diff --git a/packages/CompanionDeviceManager/res/values-zh-rHK/strings.xml b/packages/CompanionDeviceManager/res/values-zh-rHK/strings.xml
index 6a19054..4748ece 100644
--- a/packages/CompanionDeviceManager/res/values-zh-rHK/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-zh-rHK/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"隨附裝置管理工具"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"允許<strong><xliff:g id="APP_NAME">%1$s</xliff:g></strong> 存取您的 <strong><xliff:g id="DEVICE_NAME">%2$s</xliff:g></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"手錶"</string>
<string name="chooser_title" msgid="2262294130493605839">"選擇由 <strong><xliff:g id="APP_NAME">%2$s</xliff:g></strong> 管理的<xliff:g id="PROFILE_NAME">%1$s</xliff:g>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"必須使用此應用程式,才能管理<xliff:g id="DEVICE_NAME">%1$s</xliff:g>。<xliff:g id="APP_NAME">%2$s</xliff:g> 將可存取通知、電話、短訊、通訊錄和日曆、通話記錄和附近的裝置權限。"</string>
<string name="permission_apps" msgid="6142133265286656158">"應用程式"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"串流播放手機應用程式內容"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"允許「<xliff:g id="APP_NAME">%1$s</xliff:g>」<strong></strong>存取您手機中的這項資料"</string>
diff --git a/packages/CompanionDeviceManager/res/values-zh-rTW/strings.xml b/packages/CompanionDeviceManager/res/values-zh-rTW/strings.xml
index 54aa231..f41896f 100644
--- a/packages/CompanionDeviceManager/res/values-zh-rTW/strings.xml
+++ b/packages/CompanionDeviceManager/res/values-zh-rTW/strings.xml
@@ -17,12 +17,10 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_label" msgid="4470785958457506021">"隨附裝置管理員"</string>
- <!-- no translation found for confirmation_title (3785000297483688997) -->
- <skip />
+ <string name="confirmation_title" msgid="3785000297483688997">"允許「<xliff:g id="APP_NAME">%1$s</xliff:g>」<strong></strong>存取「<xliff:g id="DEVICE_NAME">%2$s</xliff:g>」<strong></strong>"</string>
<string name="profile_name_watch" msgid="576290739483672360">"手錶"</string>
<string name="chooser_title" msgid="2262294130493605839">"選擇要讓「<xliff:g id="APP_NAME">%2$s</xliff:g>」<strong></strong>管理的<xliff:g id="PROFILE_NAME">%1$s</xliff:g>"</string>
- <!-- no translation found for summary_watch (3002344206574997652) -->
- <skip />
+ <string name="summary_watch" msgid="3002344206574997652">"你必須使用這個應用程式,才能管理「<xliff:g id="DEVICE_NAME">%1$s</xliff:g>」。「<xliff:g id="APP_NAME">%2$s</xliff:g>」將可存取通知、電話、簡訊、聯絡人和日曆、通話記錄和鄰近裝置的權限。"</string>
<string name="permission_apps" msgid="6142133265286656158">"應用程式"</string>
<string name="permission_apps_summary" msgid="798718816711515431">"串流傳輸手機應用程式內容"</string>
<string name="title_app_streaming" msgid="2270331024626446950">"允許「<xliff:g id="APP_NAME">%1$s</xliff:g>」<strong></strong>存取手機中的這項資訊"</string>
diff --git a/packages/InputDevices/res/values-in/strings.xml b/packages/InputDevices/res/values-in/strings.xml
index 41bf2de..92bd24d 100644
--- a/packages/InputDevices/res/values-in/strings.xml
+++ b/packages/InputDevices/res/values-in/strings.xml
@@ -41,7 +41,7 @@
<string name="keyboard_layout_arabic" msgid="5671970465174968712">"Arab"</string>
<string name="keyboard_layout_greek" msgid="7289253560162386040">"Yunani"</string>
<string name="keyboard_layout_hebrew" msgid="7241473985890173812">"Ibrani"</string>
- <string name="keyboard_layout_lithuanian" msgid="6943110873053106534">"Lithuania"</string>
+ <string name="keyboard_layout_lithuanian" msgid="6943110873053106534">"Lituania"</string>
<string name="keyboard_layout_spanish_latin" msgid="5690539836069535697">"Spanyol (Latin)"</string>
<string name="keyboard_layout_latvian" msgid="4405417142306250595">"Latvia"</string>
<string name="keyboard_layout_persian" msgid="3920643161015888527">"Persia"</string>
diff --git a/packages/SettingsLib/FooterPreference/src/com/android/settingslib/widget/FooterPreference.java b/packages/SettingsLib/FooterPreference/src/com/android/settingslib/widget/FooterPreference.java
index 6766cdd..8cda376 100644
--- a/packages/SettingsLib/FooterPreference/src/com/android/settingslib/widget/FooterPreference.java
+++ b/packages/SettingsLib/FooterPreference/src/com/android/settingslib/widget/FooterPreference.java
@@ -44,7 +44,6 @@
int mIconVisibility = View.VISIBLE;
private CharSequence mContentDescription;
private CharSequence mLearnMoreText;
- private CharSequence mLearnMoreContentDescription;
private FooterLearnMoreSpan mLearnMoreSpan;
public FooterPreference(Context context, AttributeSet attrs) {
@@ -80,9 +79,6 @@
learnMoreText.setSpan(mLearnMoreSpan, 0,
learnMoreText.length(), 0);
learnMore.setText(learnMoreText);
- if (!TextUtils.isEmpty(mLearnMoreContentDescription)) {
- learnMore.setContentDescription(mLearnMoreContentDescription);
- }
} else {
learnMore.setVisibility(View.GONE);
}
@@ -140,27 +136,6 @@
}
/**
- * To set content description of the learn more text. This can use for talkback
- * environment if developer wants to have a customization content.
- *
- * @param learnMoreContentDescription The resource id of the content description.
- */
- public void setLearnMoreContentDescription(CharSequence learnMoreContentDescription) {
- if (!TextUtils.equals(mContentDescription, learnMoreContentDescription)) {
- mLearnMoreContentDescription = learnMoreContentDescription;
- notifyChanged();
- }
- }
-
- /**
- * Return the content description of learn more link.
- */
- @VisibleForTesting
- CharSequence getLearnMoreContentDescription() {
- return mLearnMoreContentDescription;
- }
-
- /**
* Assign an action for the learn more link.
*/
public void setLearnMoreAction(View.OnClickListener listener) {
@@ -201,7 +176,7 @@
private String mKey;
private CharSequence mTitle;
private CharSequence mContentDescription;
- private CharSequence mLearnMoreContentDescription;
+ private CharSequence mLearnMoreText;
public Builder(@NonNull Context context) {
mContext = context;
@@ -260,25 +235,24 @@
}
/**
- * To set content description of the learn more text. This can use for talkback
+ * To set learn more string of the learn more text. This can use for talkback
* environment if developer wants to have a customization content.
*
- * @param learnMoreContentDescription The resource id of the content description.
+ * @param learnMoreText The resource id of the learn more string.
*/
- public Builder setLearnMoreContentDescription(CharSequence learnMoreContentDescription) {
- mLearnMoreContentDescription = learnMoreContentDescription;
+ public Builder setLearnMoreText(CharSequence learnMoreText) {
+ mLearnMoreText = learnMoreText;
return this;
}
/**
- * To set content description of the {@link FooterPreference}. This can use for talkback
+ * To set learn more string of the {@link FooterPreference}. This can use for talkback
* environment if developer wants to have a customization content.
*
- * @param learnMoreContentDescriptionResId The resource id of the content description.
+ * @param learnMoreTextResId The resource id of the learn more string.
*/
- public Builder setLearnMoreContentDescription(
- @StringRes int learnMoreContentDescriptionResId) {
- mLearnMoreContentDescription = mContext.getText(learnMoreContentDescriptionResId);
+ public Builder setLearnMoreText(@StringRes int learnMoreTextResId) {
+ mLearnMoreText = mContext.getText(learnMoreTextResId);
return this;
}
@@ -301,8 +275,8 @@
footerPreference.setContentDescription(mContentDescription);
}
- if (!TextUtils.isEmpty(mLearnMoreContentDescription)) {
- footerPreference.setLearnMoreContentDescription(mLearnMoreContentDescription);
+ if (!TextUtils.isEmpty(mLearnMoreText)) {
+ footerPreference.setLearnMoreText(mLearnMoreText);
}
return footerPreference;
}
diff --git a/packages/SettingsLib/SettingsTheme/res/values-night-v31/colors.xml b/packages/SettingsLib/SettingsTheme/res/values-night-v31/colors.xml
index 5e3907c..5411591 100644
--- a/packages/SettingsLib/SettingsTheme/res/values-night-v31/colors.xml
+++ b/packages/SettingsLib/SettingsTheme/res/values-night-v31/colors.xml
@@ -48,8 +48,6 @@
<color name="settingslib_text_color_preference_category_title">@android:color/system_accent1_100</color>
- <color name="settingslib_ripple_color">@color/settingslib_material_grey_900</color>
-
<color name="settingslib_surface_dark">@android:color/system_neutral1_800</color>
<color name="settingslib_colorSurface">@color/settingslib_surface_dark</color>
diff --git a/packages/SettingsLib/src/com/android/settingslib/PrimarySwitchPreference.java b/packages/SettingsLib/src/com/android/settingslib/PrimarySwitchPreference.java
index b43b444..fb06976 100644
--- a/packages/SettingsLib/src/com/android/settingslib/PrimarySwitchPreference.java
+++ b/packages/SettingsLib/src/com/android/settingslib/PrimarySwitchPreference.java
@@ -19,8 +19,6 @@
import android.content.Context;
import android.util.AttributeSet;
import android.view.MotionEvent;
-import android.view.View;
-import android.view.View.OnClickListener;
import android.widget.Switch;
import androidx.annotation.Keep;
@@ -28,6 +26,7 @@
import androidx.preference.PreferenceViewHolder;
import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
+import com.android.settingslib.core.instrumentation.SettingsJankMonitor;
/**
* A custom preference that provides inline switch toggle. It has a mandatory field for title, and
@@ -65,31 +64,25 @@
@Override
public void onBindViewHolder(PreferenceViewHolder holder) {
super.onBindViewHolder(holder);
- final View switchWidget = holder.findViewById(R.id.switchWidget);
- if (switchWidget != null) {
- switchWidget.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View v) {
- if (mSwitch != null && !mSwitch.isEnabled()) {
- return;
- }
- setChecked(!mChecked);
- if (!callChangeListener(mChecked)) {
- setChecked(!mChecked);
- } else {
- persistBoolean(mChecked);
- }
+ mSwitch = (Switch) holder.findViewById(R.id.switchWidget);
+ if (mSwitch != null) {
+ mSwitch.setOnClickListener(v -> {
+ if (mSwitch != null && !mSwitch.isEnabled()) {
+ return;
+ }
+ final boolean newChecked = !mChecked;
+ if (callChangeListener(newChecked)) {
+ SettingsJankMonitor.detectToggleJank(getKey(), mSwitch);
+ setChecked(newChecked);
+ persistBoolean(newChecked);
}
});
// Consumes move events to ignore drag actions.
- switchWidget.setOnTouchListener((v, event) -> {
+ mSwitch.setOnTouchListener((v, event) -> {
return event.getActionMasked() == MotionEvent.ACTION_MOVE;
});
- }
- mSwitch = (Switch) holder.findViewById(R.id.switchWidget);
- if (mSwitch != null) {
mSwitch.setContentDescription(getTitle());
mSwitch.setChecked(mChecked);
mSwitch.setEnabled(mEnableSwitch);
diff --git a/packages/SettingsLib/src/com/android/settingslib/RestrictedPreferenceHelper.java b/packages/SettingsLib/src/com/android/settingslib/RestrictedPreferenceHelper.java
index 2f30baa..cb8e7e8 100644
--- a/packages/SettingsLib/src/com/android/settingslib/RestrictedPreferenceHelper.java
+++ b/packages/SettingsLib/src/com/android/settingslib/RestrictedPreferenceHelper.java
@@ -198,10 +198,9 @@
if (mDisabledByAdmin != disabled) {
mDisabledByAdmin = disabled;
changed = true;
+ updateDisabledState();
}
- updateDisabledState();
-
return changed;
}
@@ -210,10 +209,9 @@
if (mDisabledByAppOps != disabled) {
mDisabledByAppOps = disabled;
changed = true;
+ updateDisabledState();
}
- updateDisabledState();
-
return changed;
}
diff --git a/packages/SettingsLib/src/com/android/settingslib/RestrictedSwitchPreference.java b/packages/SettingsLib/src/com/android/settingslib/RestrictedSwitchPreference.java
index e6160bb..b5e4fa3 100644
--- a/packages/SettingsLib/src/com/android/settingslib/RestrictedSwitchPreference.java
+++ b/packages/SettingsLib/src/com/android/settingslib/RestrictedSwitchPreference.java
@@ -254,9 +254,11 @@
final boolean ecmEnabled = getContext().getResources().getBoolean(
com.android.internal.R.bool.config_enhancedConfirmationModeEnabled);
final boolean appOpsAllowed = !ecmEnabled || mode == AppOpsManager.MODE_ALLOWED;
- if (appOpsAllowed || isEnabled) {
+ if (isEnabled) {
setEnabled(true);
- } else {
+ } else if (appOpsAllowed && isDisabledByAppOps()) {
+ setEnabled(true);
+ } else if (!appOpsAllowed){
setDisabledByAppOps(true);
}
}
diff --git a/packages/SettingsLib/src/com/android/settingslib/core/instrumentation/SettingsJankMonitor.kt b/packages/SettingsLib/src/com/android/settingslib/core/instrumentation/SettingsJankMonitor.kt
new file mode 100644
index 0000000..a5f69ff
--- /dev/null
+++ b/packages/SettingsLib/src/com/android/settingslib/core/instrumentation/SettingsJankMonitor.kt
@@ -0,0 +1,74 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.settingslib.core.instrumentation
+
+import android.view.View
+import androidx.annotation.VisibleForTesting
+import androidx.preference.PreferenceGroupAdapter
+import androidx.preference.SwitchPreference
+import androidx.recyclerview.widget.RecyclerView
+import com.android.internal.jank.InteractionJankMonitor
+import java.util.concurrent.Executors
+import java.util.concurrent.TimeUnit
+
+/**
+ * Helper class for Settings library to trace jank.
+ */
+object SettingsJankMonitor {
+ private val jankMonitor = InteractionJankMonitor.getInstance()
+ private val scheduledExecutorService = Executors.newSingleThreadScheduledExecutor()
+
+ // Switch toggle animation duration is 250ms, and there is also a ripple effect animation when
+ // clicks, which duration is variable. Use 300ms here to cover.
+ @VisibleForTesting
+ const val MONITORED_ANIMATION_DURATION_MS = 300L
+
+ /**
+ * Detects the jank when click on a SwitchPreference.
+ *
+ * @param recyclerView the recyclerView contains the preference
+ * @param preference the clicked preference
+ */
+ @JvmStatic
+ fun detectSwitchPreferenceClickJank(recyclerView: RecyclerView, preference: SwitchPreference) {
+ val adapter = recyclerView.adapter as? PreferenceGroupAdapter ?: return
+ val adapterPosition = adapter.getPreferenceAdapterPosition(preference)
+ val viewHolder = recyclerView.findViewHolderForAdapterPosition(adapterPosition) ?: return
+ detectToggleJank(preference.key, viewHolder.itemView)
+ }
+
+ /**
+ * Detects the animation jank on the given view.
+ *
+ * @param tag the tag for jank monitor
+ * @param view the instrumented view
+ */
+ @JvmStatic
+ fun detectToggleJank(tag: String?, view: View) {
+ val builder = InteractionJankMonitor.Configuration.Builder.withView(
+ InteractionJankMonitor.CUJ_SETTINGS_TOGGLE,
+ view
+ )
+ if (tag != null) {
+ builder.setTag(tag)
+ }
+ if (jankMonitor.begin(builder)) {
+ scheduledExecutorService.schedule({
+ jankMonitor.end(InteractionJankMonitor.CUJ_SETTINGS_TOGGLE)
+ }, MONITORED_ANIMATION_DURATION_MS, TimeUnit.MILLISECONDS)
+ }
+ }
+}
\ No newline at end of file
diff --git a/packages/SettingsLib/tests/robotests/Android.bp b/packages/SettingsLib/tests/robotests/Android.bp
index 2d1a516..5c55a43 100644
--- a/packages/SettingsLib/tests/robotests/Android.bp
+++ b/packages/SettingsLib/tests/robotests/Android.bp
@@ -63,6 +63,7 @@
libs: [
"Robolectric_all-target",
+ "mockito-robolectric-prebuilt",
"truth-prebuilt",
],
}
diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/PrimarySwitchPreferenceTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/PrimarySwitchPreferenceTest.java
index 9c16740..74c2fc8 100644
--- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/PrimarySwitchPreferenceTest.java
+++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/PrimarySwitchPreferenceTest.java
@@ -30,14 +30,17 @@
import androidx.preference.PreferenceViewHolder;
import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
+import com.android.settingslib.testutils.shadow.ShadowInteractionJankMonitor;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
@RunWith(RobolectricTestRunner.class)
+@Config(shadows = {ShadowInteractionJankMonitor.class})
public class PrimarySwitchPreferenceTest {
private Context mContext;
diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/core/instrumentation/SettingsJankMonitorTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/core/instrumentation/SettingsJankMonitorTest.java
new file mode 100644
index 0000000..d67d44b
--- /dev/null
+++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/core/instrumentation/SettingsJankMonitorTest.java
@@ -0,0 +1,144 @@
+/*
+ * Copyright (C) 2022 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settingslib.core.instrumentation;
+
+import static com.android.internal.jank.InteractionJankMonitor.CUJ_SETTINGS_TOGGLE;
+import static com.android.settingslib.core.instrumentation.SettingsJankMonitor.MONITORED_ANIMATION_DURATION_MS;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.annotation.NonNull;
+import android.view.View;
+
+import androidx.preference.PreferenceGroupAdapter;
+import androidx.preference.SwitchPreference;
+import androidx.recyclerview.widget.RecyclerView;
+
+import com.android.internal.jank.InteractionJankMonitor;
+import com.android.internal.jank.InteractionJankMonitor.CujType;
+import com.android.settingslib.testutils.shadow.ShadowInteractionJankMonitor;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.ArgumentCaptor;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnit;
+import org.mockito.junit.MockitoRule;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
+import org.robolectric.annotation.Implementation;
+import org.robolectric.annotation.Implements;
+import org.robolectric.annotation.Resetter;
+import org.robolectric.util.ReflectionHelpers;
+
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.TimeUnit;
+
+@RunWith(RobolectricTestRunner.class)
+@Config(shadows = {ShadowInteractionJankMonitor.class, SettingsJankMonitorTest.ShadowBuilder.class})
+public class SettingsJankMonitorTest {
+ private static final String TEST_KEY = "key";
+
+ @Rule
+ public MockitoRule mocks = MockitoJUnit.rule();
+
+ @Mock
+ private View mView;
+
+ @Mock
+ private RecyclerView mRecyclerView;
+
+ @Mock
+ private PreferenceGroupAdapter mPreferenceGroupAdapter;
+
+ @Mock
+ private SwitchPreference mSwitchPreference;
+
+ @Mock
+ private ScheduledExecutorService mScheduledExecutorService;
+
+ @Before
+ public void setUp() {
+ ShadowInteractionJankMonitor.reset();
+ when(ShadowInteractionJankMonitor.MOCK_INSTANCE.begin(any())).thenReturn(true);
+ ReflectionHelpers.setStaticField(SettingsJankMonitor.class, "scheduledExecutorService",
+ mScheduledExecutorService);
+ }
+
+ @Test
+ public void detectToggleJank() {
+ SettingsJankMonitor.detectToggleJank(TEST_KEY, mView);
+
+ verifyToggleJankMonitored();
+ }
+
+ @Test
+ public void detectSwitchPreferenceClickJank() {
+ int adapterPosition = 7;
+ when(mRecyclerView.getAdapter()).thenReturn(mPreferenceGroupAdapter);
+ when(mPreferenceGroupAdapter.getPreferenceAdapterPosition(mSwitchPreference))
+ .thenReturn(adapterPosition);
+ when(mRecyclerView.findViewHolderForAdapterPosition(adapterPosition))
+ .thenReturn(new RecyclerView.ViewHolder(mView) {
+ });
+ when(mSwitchPreference.getKey()).thenReturn(TEST_KEY);
+
+ SettingsJankMonitor.detectSwitchPreferenceClickJank(mRecyclerView, mSwitchPreference);
+
+ verifyToggleJankMonitored();
+ }
+
+ private void verifyToggleJankMonitored() {
+ verify(ShadowInteractionJankMonitor.MOCK_INSTANCE).begin(ShadowBuilder.sBuilder);
+ assertThat(ShadowBuilder.sView).isSameInstanceAs(mView);
+ ArgumentCaptor<Runnable> runnableCaptor = ArgumentCaptor.forClass(Runnable.class);
+ verify(mScheduledExecutorService).schedule(runnableCaptor.capture(),
+ eq(MONITORED_ANIMATION_DURATION_MS), eq(TimeUnit.MILLISECONDS));
+ runnableCaptor.getValue().run();
+ verify(ShadowInteractionJankMonitor.MOCK_INSTANCE).end(CUJ_SETTINGS_TOGGLE);
+ }
+
+ @Implements(InteractionJankMonitor.Configuration.Builder.class)
+ static class ShadowBuilder {
+ private static InteractionJankMonitor.Configuration.Builder sBuilder;
+ private static View sView;
+
+ @Resetter
+ public static void reset() {
+ sBuilder = null;
+ sView = null;
+ }
+
+ @Implementation
+ public static InteractionJankMonitor.Configuration.Builder withView(
+ @CujType int cuj, @NonNull View view) {
+ assertThat(cuj).isEqualTo(CUJ_SETTINGS_TOGGLE);
+ sView = view;
+ sBuilder = mock(InteractionJankMonitor.Configuration.Builder.class);
+ when(sBuilder.setTag(TEST_KEY)).thenReturn(sBuilder);
+ return sBuilder;
+ }
+ }
+}
diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/widget/FooterPreferenceTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/widget/FooterPreferenceTest.java
index 9abb27e..55125c5 100644
--- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/widget/FooterPreferenceTest.java
+++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/widget/FooterPreferenceTest.java
@@ -74,13 +74,6 @@
}
@Test
- public void setLearnMoreContentDescription_contentSet_shouldGetSameContentDescription() {
- mFooterPreference.setLearnMoreContentDescription("test");
-
- assertThat(mFooterPreference.getLearnMoreContentDescription()).isEqualTo("test");
- }
-
- @Test
public void setLearnMoreAction_actionSet_shouldGetAction() {
mFooterPreference.setLearnMoreAction(v -> {
});
diff --git a/packages/SettingsLib/tests/robotests/testutils/com/android/settingslib/testutils/shadow/ShadowInteractionJankMonitor.java b/packages/SettingsLib/tests/robotests/testutils/com/android/settingslib/testutils/shadow/ShadowInteractionJankMonitor.java
new file mode 100644
index 0000000..855da16
--- /dev/null
+++ b/packages/SettingsLib/tests/robotests/testutils/com/android/settingslib/testutils/shadow/ShadowInteractionJankMonitor.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settingslib.testutils.shadow;
+
+import static org.mockito.Mockito.mock;
+
+import com.android.internal.jank.InteractionJankMonitor;
+
+import org.mockito.Mockito;
+import org.robolectric.annotation.Implementation;
+import org.robolectric.annotation.Implements;
+import org.robolectric.annotation.Resetter;
+
+@Implements(InteractionJankMonitor.class)
+public class ShadowInteractionJankMonitor {
+ public static final InteractionJankMonitor MOCK_INSTANCE = mock(InteractionJankMonitor.class);
+
+ @Resetter
+ public static void reset() {
+ Mockito.reset(MOCK_INSTANCE);
+ }
+
+ @Implementation
+ public static InteractionJankMonitor getInstance() {
+ return MOCK_INSTANCE;
+ }
+}
diff --git a/packages/SystemUI/TEST_MAPPING b/packages/SystemUI/TEST_MAPPING
index d146fc9..b01fd6d 100644
--- a/packages/SystemUI/TEST_MAPPING
+++ b/packages/SystemUI/TEST_MAPPING
@@ -124,49 +124,5 @@
}
]
}
- ],
- "hubui-postsubmit": [
- {
- "name": "PlatformScenarioTests",
- "options": [
- {
- "include-filter": "android.platform.test.scenario.hubui"
- },
- {
- "include-annotation": "android.platform.test.scenario.annotation.HubUi"
- },
- {
- "exclude-annotation": "org.junit.Ignore"
- },
- {
- "exclude-annotation": "androidx.test.filters.FlakyTest"
- }
- ]
- }
- ],
- "hubui-presubmit": [
- {
- "name": "PlatformScenarioTests",
- "options": [
- {
- "include-annotation": "android.platform.test.annotations.Presubmit"
- },
- {
- "include-annotation": "android.platform.test.scenario.annotation.HubUi"
- },
- {
- "include-filter": "android.platform.test.scenario.hubui"
- },
- {
- "exclude-annotation": "org.junit.Ignore"
- },
- {
- "exclude-annotation": "androidx.test.filters.FlakyTest"
- },
- {
- "exclude-annotation": "android.platform.test.annotations.Postsubmit"
- }
- ]
- }
]
}
diff --git a/packages/SystemUI/plugin/bcsmartspace/src/com/android/systemui/plugins/BcSmartspaceDataPlugin.java b/packages/SystemUI/plugin/bcsmartspace/src/com/android/systemui/plugins/BcSmartspaceDataPlugin.java
index f492c06..3cf7645 100644
--- a/packages/SystemUI/plugin/bcsmartspace/src/com/android/systemui/plugins/BcSmartspaceDataPlugin.java
+++ b/packages/SystemUI/plugin/bcsmartspace/src/com/android/systemui/plugins/BcSmartspaceDataPlugin.java
@@ -134,6 +134,12 @@
* Get the index of the currently selected page.
*/
int getSelectedPage();
+
+ /**
+ * Return the top padding value from the currently visible card, or 0 if there is no current
+ * card.
+ */
+ int getCurrentCardTopPadding();
}
/** Interface for launching Intents, which can differ on the lockscreen */
diff --git a/packages/SystemUI/res/layout/clipboard_edit_text_activity.xml b/packages/SystemUI/res/layout/clipboard_edit_text_activity.xml
index 1c09e81f..18f870d 100644
--- a/packages/SystemUI/res/layout/clipboard_edit_text_activity.xml
+++ b/packages/SystemUI/res/layout/clipboard_edit_text_activity.xml
@@ -58,6 +58,7 @@
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
+ android:minHeight="48dp"
android:background="@null"
android:gravity="start|top"
android:textSize="24sp" />
diff --git a/packages/SystemUI/res/layout/clipboard_overlay.xml b/packages/SystemUI/res/layout/clipboard_overlay.xml
index 0ba11e9..6b9d963 100644
--- a/packages/SystemUI/res/layout/clipboard_overlay.xml
+++ b/packages/SystemUI/res/layout/clipboard_overlay.xml
@@ -111,8 +111,8 @@
android:gravity="center|start"
android:ellipsize="end"
android:autoSizeTextType="uniform"
- android:autoSizeMinTextSize="10sp"
- android:autoSizeMaxTextSize="200sp"
+ android:autoSizeMinTextSize="@dimen/clipboard_overlay_min_font"
+ android:autoSizeMaxTextSize="@dimen/clipboard_overlay_max_font"
android:textColor="?attr/overlayButtonTextColor"
android:background="?androidprv:attr/colorAccentSecondary"
android:layout_width="@dimen/clipboard_preview_size"
@@ -124,13 +124,12 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<TextView
- android:id="@+id/hidden_text_preview"
+ android:id="@+id/hidden_preview"
android:visibility="gone"
android:textFontWeight="500"
android:padding="8dp"
android:gravity="center"
android:textSize="14sp"
- android:text="@string/clipboard_text_hidden"
android:textColor="?attr/overlayButtonTextColor"
android:background="?androidprv:attr/colorAccentSecondary"
android:layout_width="@dimen/clipboard_preview_size"
diff --git a/packages/SystemUI/res/values-af/strings.xml b/packages/SystemUI/res/values-af/strings.xml
index 84fdeb0..e4633c8 100644
--- a/packages/SystemUI/res/values-af/strings.xml
+++ b/packages/SystemUI/res/values-af/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Swiep op om oop te maak"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Druk die onsluitikoon om oop te maak"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Ontsluit met gesig. Druk die ontsluitikoon om oop te maak."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Beweeg links"</item>
+ <item msgid="5558598599408514296">"Beweeg af"</item>
+ <item msgid="4844142668312841831">"Beweeg regs"</item>
+ <item msgid="5640521437931460125">"Beweeg op"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Swiep op om weer te probeer"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Ontsluit om NFC te gebruik"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Hierdie toestel behoort aan jou organisasie"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Maak die program oop om hierdie sessie uit te saai."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Onbekende program"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Hou op uitsaai"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Beskikbare toestelle vir oudio-uitsette."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Hoe uitsaai werk"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Saai uit"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Mense in jou omtrek met versoenbare Bluetooth-toestelle kan na die media luister wat jy uitsaai"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Wysig gekopieerde prent"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Stuur na toestel in die omtrek"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Tik om te bekyk"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Teks is gekopieer"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Prent is gekopieer"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Inhoud is gekopieer"</string>
<string name="add" msgid="81036585205287996">"Voeg by"</string>
<string name="manage_users" msgid="1823875311934643849">"Bestuur gebruikers"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Sleep na verdeelde skerm word nie vir hierdie kennisgewing gesteun nie."</string>
diff --git a/packages/SystemUI/res/values-am/strings.xml b/packages/SystemUI/res/values-am/strings.xml
index 0ade95d..80d194f 100644
--- a/packages/SystemUI/res/values-am/strings.xml
+++ b/packages/SystemUI/res/values-am/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"ለመክፈት በጣት ወደ ላይ ጠረግ ያድርጉ"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"ለመክፈት የመክፈቻ አዶውን ይጫኑ"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"በመልክ ተከፍቷል። ለመክፈት የመክፈቻ አዶውን ይጫኑ።"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"ወደ ግራ ውሰድ"</item>
+ <item msgid="5558598599408514296">"ወደ ታች ውሰድ"</item>
+ <item msgid="4844142668312841831">"ወደ ቀኝ ውሰድ"</item>
+ <item msgid="5640521437931460125">"ወደ ላይ ውሰድ"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"እንደገና ለመሞከር ወደ ላይ ይጥረጉ"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFCን ለመጠቀም ይክፈቱ"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"ይህ መሣሪያ የድርጅትዎ ነው"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"ይህን ክፍለ ጊዜ cast ለማድረግ፣ እባክዎ መተግበሪያውን ይክፈቱ።"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"የማይታወቅ መተግበሪያ"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Cast ማድረግ አቁም"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"ለኦዲዮ ውጽዓት ተገኚ የሆኑ መሣሪያዎች"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ማሰራጨት እንዴት እንደሚሠራ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ስርጭት"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"ተኳሃኝ የብሉቱዝ መሣሪያዎች ያላቸው በአቅራቢያዎ ያሉ ሰዎች እርስዎ እያሰራጩት ያሉትን ሚዲያ ማዳመጥ ይችላሉ"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"የተቀዳ ምስል አርትዕ ያድርጉ"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"በአቅራቢያ ወዳለ መሳሪያ ይላኩ"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"ለመመልከት መታ ያድርጉ"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"ጽሁፍ ተቀድቷል"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"ምስል ተቀድቷል"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"ይዘት ተቀድቷል"</string>
<string name="add" msgid="81036585205287996">"አክል"</string>
<string name="manage_users" msgid="1823875311934643849">"ተጠቃሚዎችን ያስተዳድሩ"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"ይህ ማሳወቂያ ወደ Splitscreen መጎተትን አይደግፍም።"</string>
diff --git a/packages/SystemUI/res/values-ar/strings.xml b/packages/SystemUI/res/values-ar/strings.xml
index 0757205..ac644ce 100644
--- a/packages/SystemUI/res/values-ar/strings.xml
+++ b/packages/SystemUI/res/values-ar/strings.xml
@@ -321,10 +321,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"يمكنك الفتح بالتمرير سريعًا لأعلى."</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"اضغط على رمز فتح القفل لفتح قفل الشاشة."</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"فُتح القفل عندما تمّ التعرّف على وجهك. اضغط على رمز فتح القفل لفتحه."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"نقل لليسار"</item>
+ <item msgid="5558598599408514296">"نقل للأسفل"</item>
+ <item msgid="4844142668312841831">"نقل لليمين"</item>
+ <item msgid="5640521437931460125">"نقل للأعلى"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"مرِّر سريعًا للأعلى لإعادة المحاولة."</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"افتح قفل الشاشة لاستخدام تقنية NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"هذا الجهاز يخص مؤسستك."</string>
@@ -865,8 +867,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"لبث هذه الجلسة، يُرجى فتح التطبيق"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"تطبيق غير معروف"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"إيقاف البث"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"الأجهزة المتاحة لإخراج الصوت"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"كيفية عمل البث"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"البث"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"يمكن للأشخاص القريبين منك الذين لديهم أجهزة متوافقة تتضمّن بلوتوث الاستماع إلى الوسائط التي تبثها."</string>
@@ -967,12 +968,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"تعديل الصورة المنسوخة"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"الإرسال إلى جهاز مجاور"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"انقر لعرض المحتوى."</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"تم نسخ النص."</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"تم نسخ الصورة."</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"تم نسخ المحتوى."</string>
<string name="add" msgid="81036585205287996">"إضافة"</string>
<string name="manage_users" msgid="1823875311934643849">"إدارة المستخدمين"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"لا يتيح هذا الإشعار السحب لتقسيم الشاشة."</string>
diff --git a/packages/SystemUI/res/values-as/strings.xml b/packages/SystemUI/res/values-as/strings.xml
index 71ae4e3..b92879a 100644
--- a/packages/SystemUI/res/values-as/strings.xml
+++ b/packages/SystemUI/res/values-as/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"খুলিবলৈ ওপৰলৈ ছোৱাইপ কৰক"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"খুলিবলৈ আনলক কৰক চিহ্নটোত টিপক"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"মুখাৱয়বৰ জৰিয়তে আনলক কৰা হৈছে। খুলিবলৈ আনলক কৰক চিহ্নটোত টিপক।"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"বাওঁফাললৈ নিয়ক"</item>
+ <item msgid="5558598599408514296">"তললৈ নিয়ক"</item>
+ <item msgid="4844142668312841831">"সোঁফাললৈ নিয়ক"</item>
+ <item msgid="5640521437931460125">"ওপৰলৈ নিয়ক"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"পুনৰ চেষ্টা কৰিবলৈ ওপৰলৈ ছোৱাইপ কৰক"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC ব্যৱহাৰ কৰিবলৈ আনলক কৰক"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"এই ডিভাইচটো আপোনাৰ প্ৰতিষ্ঠানৰ"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"এই ছেশ্বনটো কাষ্ট কৰিবলৈ, অনুগ্ৰহ কৰি এপ্টো খোলক"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"অজ্ঞাত এপ্"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"কাষ্ট বন্ধ কৰক"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"অডিঅ\' আউটপুটৰ বাবে উপলব্ধ ডিভাইচ।"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"সম্প্ৰচাৰ কৰাটোৱে কেনেকৈ কাম কৰে"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"সম্প্ৰচাৰ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"সমিল ব্লুটুথ ডিভাইচৰ সৈতে আপোনাৰ নিকটৱৰ্তী স্থানত থকা লোকসকলে আপুনি সম্প্ৰচাৰ কৰা মিডিয়াটো শুনিব পাৰে"</string>
diff --git a/packages/SystemUI/res/values-az/strings.xml b/packages/SystemUI/res/values-az/strings.xml
index 2a400c5..90329ff 100644
--- a/packages/SystemUI/res/values-az/strings.xml
+++ b/packages/SystemUI/res/values-az/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Açmaq üçün yuxarı sürüşdürün"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"\"Kilidi aç\" ikonasına basıb açın"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Üzlə kilidi açılıb. \"Kilidi aç\" ikonasına basıb açın."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Sola köçürün"</item>
+ <item msgid="5558598599408514296">"Aşağı köçürün"</item>
+ <item msgid="4844142668312841831">"Sağa köçürün"</item>
+ <item msgid="5640521437931460125">"Yuxarı köçürün"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Yenidən cəhd etmək üçün yuxarı sürüşdürün"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC istifadə etmək üçün kiliddən çıxarın"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Bu cihaz təşkilatınıza məxsusdur"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Bu sessiyanı yayımlamaq üçün tətbiqi açın."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Naməlum tətbiq"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Yayımı dayandırın"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Audio çıxış üçün əlçatan cihazlar."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Yayım necə işləyir"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Yayım"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Uyğun Bluetooth cihazları olan yaxınlığınızdakı insanlar yayımladığınız medianı dinləyə bilər"</string>
diff --git a/packages/SystemUI/res/values-b+sr+Latn/strings.xml b/packages/SystemUI/res/values-b+sr+Latn/strings.xml
index 1580dc4..789ac8f 100644
--- a/packages/SystemUI/res/values-b+sr+Latn/strings.xml
+++ b/packages/SystemUI/res/values-b+sr+Latn/strings.xml
@@ -315,10 +315,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Prevucite nagore da biste otvorili"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Pritisnite ikonu otključavanja za otvaranje"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Otključano je licem. Pritisnite ikonu otključavanja za otvaranje"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Pomerite nalevo"</item>
+ <item msgid="5558598599408514296">"Pomerite nadole"</item>
+ <item msgid="4844142668312841831">"Pomerite nadesno"</item>
+ <item msgid="5640521437931460125">"Pomerite nagore"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Prevucite nagore da biste probali ponovo"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Otključajte da biste koristili NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Ovaj uređaj pripada organizaciji"</string>
@@ -847,8 +849,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Da biste prebacivali ovu sesiju, otvorite aplikaciju."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Nepoznata aplikacija"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Zaustavi prebacivanje"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Dostupni uređaji za audio izlaz."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Kako funkcioniše emitovanje"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Emitovanje"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Ljudi u blizini sa kompatibilnim Bluetooth uređajima mogu da slušaju medijski sadržaj koji emitujete"</string>
@@ -940,18 +941,15 @@
<string name="fgs_manager_app_item_stop_button_stopped_label" msgid="6950382004441263922">"Zaustavljeno"</string>
<string name="clipboard_edit_text_done" msgid="4551887727694022409">"Gotovo"</string>
<string name="clipboard_overlay_text_copied" msgid="1872624400464891363">"Kopirano je"</string>
- <string name="clipboard_edit_source" msgid="9156488177277788029">"Iz: <xliff:g id="APPNAME">%1$s</xliff:g>"</string>
+ <string name="clipboard_edit_source" msgid="9156488177277788029">"Od: <xliff:g id="APPNAME">%1$s</xliff:g>"</string>
<string name="clipboard_dismiss_description" msgid="7544573092766945657">"Odbaci kopiranje korisničkog interfejsa"</string>
<string name="clipboard_edit_text_description" msgid="805254383912962103">"Izmenite kopirani tekst"</string>
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Izmenite kopiranu sliku"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Pošalji na uređaj u blizini"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Dodirnite da biste pregledali"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Tekst je kopiran"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Slika je kopirana"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Sadržaj je kopiran"</string>
<string name="add" msgid="81036585205287996">"Dodaj"</string>
<string name="manage_users" msgid="1823875311934643849">"Upravljajte korisnicima"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Ovo obaveštenje ne podržava prevlačenje na podeljeni ekran."</string>
diff --git a/packages/SystemUI/res/values-be/strings.xml b/packages/SystemUI/res/values-be/strings.xml
index 758a2cc..07dbcc3 100644
--- a/packages/SystemUI/res/values-be/strings.xml
+++ b/packages/SystemUI/res/values-be/strings.xml
@@ -317,10 +317,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Каб адкрыць, прагарніце ўверх"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Каб адкрыць, націсніце значок разблакіроўкі"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Твар распазнаны. Для адкрыцця націсніце значок разблакіроўкі"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Перамясціце палец улева"</item>
+ <item msgid="5558598599408514296">"Перамясціце палец ніжэй"</item>
+ <item msgid="4844142668312841831">"Перамясціце палец управа"</item>
+ <item msgid="5640521437931460125">"Перамясціце палец уверх"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Прагартайце ўверх, каб паўтарыць спробу"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Разблакіруйце, каб выкарыстоўваць NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Гэта прылада належыць вашай арганізацыі"</string>
@@ -853,8 +855,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Для трансляцыі гэтага сеанса адкрыйце праграму."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Невядомая праграма"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Спыніць трансляцыю"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Даступныя прылады для вываду аўдыя."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Як адбываецца трансляцыя"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Трансляцыя"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Людзі паблізу, у якіх ёсць прылады з Bluetooth, змогуць праслухваць мультымедыйнае змесціва, якое вы трансліруеце"</string>
@@ -953,12 +954,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Змяніць скапіраваны відарыс"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Адправіць на прыладу паблізу"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Націсніце для прагляду"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Тэкст скапіраваны"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Відарыс скапіраваны"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Змесціва скапіравана"</string>
<string name="add" msgid="81036585205287996">"Дадаць"</string>
<string name="manage_users" msgid="1823875311934643849">"Кіраванне карыстальнікамі"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Гэта апавяшчэнне нельга перацягнуць на падзелены экран."</string>
diff --git a/packages/SystemUI/res/values-bg/strings.xml b/packages/SystemUI/res/values-bg/strings.xml
index 614f5dd..b67b9fc 100644
--- a/packages/SystemUI/res/values-bg/strings.xml
+++ b/packages/SystemUI/res/values-bg/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Прекарайте пръст нагоре, за да отключите"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Натиснете иконата за отключване, за да отворите"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Отключено с лице. Натиснете иконата за отключване, за да отворите."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Преместване наляво"</item>
+ <item msgid="5558598599408514296">"Преместване надолу"</item>
+ <item msgid="4844142668312841831">"Преместване надясно"</item>
+ <item msgid="5640521437931460125">"Преместване нагоре"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Плъзнете бързо нагоре, за да опитате отново"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Отключете, за да използвате NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Това устройство принадлежи на организацията ви"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"За да предавате тази сесия, моля, отворете приложението."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Неизвестно приложение"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Спиране на предаването"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Налични устройства за аудиоизход."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Как работи предаването"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Предаване"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Хората в близост със съвместими устройства с Bluetooth могат да слушат мултимедията, която предавате"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Редактиране на копираното изображение"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Изпращане до устройство в близост"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Докоснете за преглед"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Текстът е копиран"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Изображението е копирано"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Съдържанието е копирано"</string>
<string name="add" msgid="81036585205287996">"Добавяне"</string>
<string name="manage_users" msgid="1823875311934643849">"Управление на потребителите"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Това известие не поддържа плъзгане за разделяне на екрана."</string>
diff --git a/packages/SystemUI/res/values-bn/strings.xml b/packages/SystemUI/res/values-bn/strings.xml
index a8dc6cf..0597ca9 100644
--- a/packages/SystemUI/res/values-bn/strings.xml
+++ b/packages/SystemUI/res/values-bn/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"খোলার জন্য উপরে সোয়াইপ করুন"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"খোলার জন্য আনলক আইকন প্রেস করুন"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"ফেসের সাহায্যে আনলক করা হয়েছে। খোলার জন্য আনলক আইকন প্রেস করুন।"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"বাঁদিকে সরান"</item>
+ <item msgid="5558598599408514296">"নিচে নামান"</item>
+ <item msgid="4844142668312841831">"ডানদিকে সরান"</item>
+ <item msgid="5640521437931460125">"উপরে তুলুন"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"আবার চেষ্টা করতে উপরের দিকে সোয়াইপ করুন"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC ব্যবহার করতে আনলক করুন"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"এই ডিভাইসটি আপনার প্রতিষ্ঠানের"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"এই সেশন কাস্ট করার জন্য, অ্যাপ খুলুন।"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"অজানা অ্যাপ"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"কাস্ট করা বন্ধ করুন"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"অডিও আউটপুটের জন্য উপলভ্য ডিভাইস।"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ব্রডকাস্ট কীভাবে কাজ করে"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"সম্প্রচার করুন"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"আশপাশে লোকজন যাদের মানানসই ব্লুটুথ ডিভাইস আছে, তারা আপনার ব্রডকাস্ট করা মিডিয়া শুনতে পারবেন"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"কপি করা ছবি এডিট করুন"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"আশেপাশের ডিভাইসে পাঠান"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"দেখতে ট্যাপ করুন"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"টেক্সট কপি করা হয়েছে"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"ছবি কপি করা হয়েছে"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"কন্টেন্ট কপি করা হয়েছে"</string>
<string name="add" msgid="81036585205287996">"যোগ করুন"</string>
<string name="manage_users" msgid="1823875311934643849">"ব্যবহারকারীদের ম্যানেজ করুন"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"স্প্লিটস্ক্রিন মোডে এই বিজ্ঞপ্তি টেনে আনা যাবে না।"</string>
diff --git a/packages/SystemUI/res/values-bs/strings.xml b/packages/SystemUI/res/values-bs/strings.xml
index 1ed4d17..4903a3f 100644
--- a/packages/SystemUI/res/values-bs/strings.xml
+++ b/packages/SystemUI/res/values-bs/strings.xml
@@ -315,10 +315,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Prevucite da otvorite"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Pritisnite ikonu za otključavanje da otvorite."</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Otključano licem. Pritisnite ikonu za otklj. da otvorite."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Pomicanje ulijevo"</item>
+ <item msgid="5558598599408514296">"Pomicanje prema dolje"</item>
+ <item msgid="4844142668312841831">"Pomicanje udesno"</item>
+ <item msgid="5640521437931460125">"Pomicanje prema gore"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Prevucite prema gore da pokušate ponovo"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Otključajte da koristite NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Ovaj uređaj pripada vašoj organizaciji"</string>
@@ -847,8 +849,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Da emitirate ovu sesiju, otvorite aplikaciju."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Nepoznata aplikacija"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Zaustavi emitiranje"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Dostupni uređaji za audioizlaz."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Kako funkcionira emitiranje"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Emitirajte"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Osobe u vašoj blizini s kompatibilnim Bluetooth uređajima mogu slušati medijske sadržaje koje emitirate"</string>
diff --git a/packages/SystemUI/res/values-ca/strings.xml b/packages/SystemUI/res/values-ca/strings.xml
index 64eb8b0..8694800 100644
--- a/packages/SystemUI/res/values-ca/strings.xml
+++ b/packages/SystemUI/res/values-ca/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Llisca cap amunt per obrir"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Prem la icona de desbloqueig per obrir"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"S\'ha desbloquejat amb la cara. Prem la icona per obrir."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Mou cap a l\'esquerra"</item>
+ <item msgid="5558598599408514296">"Mou cap avall"</item>
+ <item msgid="4844142668312841831">"Mou cap a la dreta"</item>
+ <item msgid="5640521437931460125">"Mou cap amunt"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Llisca cap a dalt per tornar-ho a provar"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Desbloqueja per utilitzar l\'NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Aquest dispositiu pertany a la teva organització"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Per emetre aquesta sessió, obre l\'aplicació."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Aplicació desconeguda"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Atura l\'emissió"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Dispositius disponibles per a la sortida d\'àudio."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Com funciona l\'emissió"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Emet"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Les persones properes amb dispositius Bluetooth compatibles poden escoltar el contingut multimèdia que emets"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Edita la imatge que has copiat"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Envia a un dispositiu proper"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Toca per veure"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"El text s\'ha copiat"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"La imatge s\'ha copiat"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"El contingut s\'ha copiat"</string>
<string name="add" msgid="81036585205287996">"Afegeix"</string>
<string name="manage_users" msgid="1823875311934643849">"Gestiona els usuaris"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Aquesta notificació no es pot arrossegar a la pantalla dividida."</string>
diff --git a/packages/SystemUI/res/values-cs/strings.xml b/packages/SystemUI/res/values-cs/strings.xml
index 5560dbe..8ca6248 100644
--- a/packages/SystemUI/res/values-cs/strings.xml
+++ b/packages/SystemUI/res/values-cs/strings.xml
@@ -317,10 +317,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Otevřete přejetím prstem nahoru"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Otevřete klepnutím na ikonu odemknutí"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Odemknuto obličejem. Klepněte na ikonu odemknutí."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Přesunout doleva"</item>
+ <item msgid="5558598599408514296">"Přesunout dolů"</item>
+ <item msgid="4844142668312841831">"Přesunout doprava"</item>
+ <item msgid="5640521437931460125">"Přesunout nahoru"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Přejetím nahoru to zkusíte znovu"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC vyžaduje odemknutou obrazovku"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Toto zařízení patří vaší organizaci"</string>
@@ -853,8 +855,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Pokud chcete odesílat relaci, otevřete aplikaci."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Neznámá aplikace"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Zastavit odesílání"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Dostupná zařízení pro zvukový výstup."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Jak vysílání funguje"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Vysílání"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Lidé ve vašem okolí s kompatibilními zařízeními Bluetooth mohou poslouchat média, která vysíláte"</string>
@@ -953,12 +954,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Upravit zkopírovaný obrázek"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Odeslat do zařízení v okolí"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Zobrazíte klepnutím"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Text byl zkopírován"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Obrázek byl zkopírován"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Obsah byl zkopírován"</string>
<string name="add" msgid="81036585205287996">"Přidat"</string>
<string name="manage_users" msgid="1823875311934643849">"Správa uživatelů"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Toto oznámení nepodporuje přetažení na rozdělenou obrazovku."</string>
diff --git a/packages/SystemUI/res/values-da/strings.xml b/packages/SystemUI/res/values-da/strings.xml
index 810689f..a43d7bb 100644
--- a/packages/SystemUI/res/values-da/strings.xml
+++ b/packages/SystemUI/res/values-da/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Stryg opad for at åbne"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Tryk på oplåsningsikonet for at åbne"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Låst op vha. ansigt. Tryk på oplåsningsikonet for at åbne."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Flyt til venstre"</item>
+ <item msgid="5558598599408514296">"Flyt ned"</item>
+ <item msgid="4844142668312841831">"Flyt til højre"</item>
+ <item msgid="5640521437931460125">"Flyt op"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Stryg opad for at prøve igen"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Lås op for at bruge NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Denne enhed tilhører din organisation"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Åbn appen for at caste denne session."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Ukendt app"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Stop med at caste"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Enheder, der er tilgængelige for lydoutput."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Sådan fungerer udsendelser"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Udsendelse"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Personer i nærheden, som har kompatible Bluetooth-enheder, kan lytte til det medie, du udsender"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Rediger kopieret billede"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Send til enhed i nærheden"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Tryk for at se"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Teksten blev kopieret"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Billedet blev kopieret"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Indholdet blev kopieret"</string>
<string name="add" msgid="81036585205287996">"Tilføj"</string>
<string name="manage_users" msgid="1823875311934643849">"Administrer brugere"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Denne notifikation kan ikke trækkes til en opdelt skærm."</string>
diff --git a/packages/SystemUI/res/values-de/strings.xml b/packages/SystemUI/res/values-de/strings.xml
index f2f9142..65025f5 100644
--- a/packages/SystemUI/res/values-de/strings.xml
+++ b/packages/SystemUI/res/values-de/strings.xml
@@ -220,7 +220,7 @@
<string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Eingabe"</string>
<string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="3003338571871392293">"Hörhilfen"</string>
<string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Wird aktiviert…"</string>
- <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Automatisch drehen"</string>
+ <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Autom. drehen"</string>
<string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Bildschirm automatisch drehen"</string>
<string name="quick_settings_location_label" msgid="2621868789013389163">"Standort"</string>
<string name="quick_settings_camera_label" msgid="5612076679385269339">"Kamerazugriff"</string>
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Zum Öffnen nach oben wischen"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Tippe zum Öffnen auf das Symbol „Entsperren“"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Gerät mit dem Gesicht entsperrt. Tippe zum Öffnen auf das Symbol „Entsperren“."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Nach links bewegen"</item>
+ <item msgid="5558598599408514296">"Nach unten bewegen"</item>
+ <item msgid="4844142668312841831">"Nach rechts bewegen"</item>
+ <item msgid="5640521437931460125">"Nach oben bewegen"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Zum Wiederholen nach oben wischen"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Zur Verwendung von NFC entsperren"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Dieses Gerät gehört deiner Organisation"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Öffne zum Streamen dieser Sitzung die App."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Unbekannte App"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Streaming beenden"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Für die Audioausgabe verfügbare Geräte."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Funktionsweise von Nachrichten an alle"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Nachricht an alle"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Personen, die in der Nähe sind und kompatible Bluetooth-Geräten haben, können sich die Medien anhören, die du per Nachricht an alle sendest"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Kopiertes Bild bearbeiten"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"An Gerät in der Nähe senden"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Zum Ansehen tippen"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Text kopiert"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Bild kopiert"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Inhalt kopiert"</string>
<string name="add" msgid="81036585205287996">"Hinzufügen"</string>
<string name="manage_users" msgid="1823875311934643849">"Nutzer verwalten"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Diese Benachrichtigung lässt sich nicht auf einen geteilten Bildschirm ziehen."</string>
diff --git a/packages/SystemUI/res/values-el/strings.xml b/packages/SystemUI/res/values-el/strings.xml
index bd14989..aa3dccb 100644
--- a/packages/SystemUI/res/values-el/strings.xml
+++ b/packages/SystemUI/res/values-el/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Σύρετε προς τα επάνω για άνοιγμα"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Πατήστε το εικονίδιο ξεκλειδώματος για άνοιγμα"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Ξεκλ. με αναγν. προσώπου. Πατ. το εικον. ξεκλ. για άνοιγμα."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Μετακίνηση αριστερά"</item>
+ <item msgid="5558598599408514296">"Μετακίνηση κάτω"</item>
+ <item msgid="4844142668312841831">"Μετακίνηση δεξιά"</item>
+ <item msgid="5640521437931460125">"Μετακίνηση επάνω"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Σύρετε προς τα πάνω για να δοκιμάσετε ξανά"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Ξεκλείδωμα για χρήση του NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Αυτή η συσκευή ανήκει στον οργανισμό σας."</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Για μετάδοση της περιόδου σύνδεσης, ανοίξτε την εφαρμογή."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Άγνωστη εφαρμογή"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Διακοπή μετάδοσης"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Διαθέσιμες συσκευές για έξοδο ήχου."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Πώς λειτουργεί η μετάδοση"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Μετάδοση"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Οι άνθρωποι με συμβατές συσκευές Bluetooth που βρίσκονται κοντά σας μπορούν να ακούσουν το μέσο που μεταδίδετε."</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Επεξεργασία αντιγραμμένης εικόνας"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Αποστολή σε κοντινή συσκευή"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Πατήστε για προβολή"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Το κείμενο αντιγράφηκε"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Η εικόνα αντιγράφηκε"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Το περιεχόμενο αντιγράφηκε"</string>
<string name="add" msgid="81036585205287996">"Προσθήκη"</string>
<string name="manage_users" msgid="1823875311934643849">"Διαχείριση χρηστών"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Αυτή η ειδοποίηση δεν υποστηρίζει τη μεταφορά με σύρσιμο για χρήση του διαχωρισμού οθόνης."</string>
diff --git a/packages/SystemUI/res/values-en-rAU/strings.xml b/packages/SystemUI/res/values-en-rAU/strings.xml
index 747b374..c197acf 100644
--- a/packages/SystemUI/res/values-en-rAU/strings.xml
+++ b/packages/SystemUI/res/values-en-rAU/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Swipe up to open"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Press the unlock icon to open"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Unlocked by face. Press the unlock icon to open."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Move left"</item>
+ <item msgid="5558598599408514296">"Move down"</item>
+ <item msgid="4844142668312841831">"Move right"</item>
+ <item msgid="5640521437931460125">"Move up"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Swipe up to try again"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Unlock to use NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"This device belongs to your organisation"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"To cast this session, please open the app."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Unknown app"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Stop casting"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Available devices for audio output."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"How broadcasting works"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Broadcast"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"People near you with compatible Bluetooth devices can listen to the media that you\'re broadcasting"</string>
diff --git a/packages/SystemUI/res/values-en-rCA/strings.xml b/packages/SystemUI/res/values-en-rCA/strings.xml
index 2035b61..5116a23 100644
--- a/packages/SystemUI/res/values-en-rCA/strings.xml
+++ b/packages/SystemUI/res/values-en-rCA/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Swipe up to open"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Press the unlock icon to open"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Unlocked by face. Press the unlock icon to open."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Move left"</item>
+ <item msgid="5558598599408514296">"Move down"</item>
+ <item msgid="4844142668312841831">"Move right"</item>
+ <item msgid="5640521437931460125">"Move up"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Swipe up to try again"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Unlock to use NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"This device belongs to your organisation"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"To cast this session, please open the app."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Unknown app"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Stop casting"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Available devices for audio output."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"How broadcasting works"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Broadcast"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"People near you with compatible Bluetooth devices can listen to the media that you\'re broadcasting"</string>
diff --git a/packages/SystemUI/res/values-en-rGB/strings.xml b/packages/SystemUI/res/values-en-rGB/strings.xml
index 747b374..c197acf 100644
--- a/packages/SystemUI/res/values-en-rGB/strings.xml
+++ b/packages/SystemUI/res/values-en-rGB/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Swipe up to open"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Press the unlock icon to open"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Unlocked by face. Press the unlock icon to open."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Move left"</item>
+ <item msgid="5558598599408514296">"Move down"</item>
+ <item msgid="4844142668312841831">"Move right"</item>
+ <item msgid="5640521437931460125">"Move up"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Swipe up to try again"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Unlock to use NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"This device belongs to your organisation"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"To cast this session, please open the app."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Unknown app"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Stop casting"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Available devices for audio output."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"How broadcasting works"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Broadcast"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"People near you with compatible Bluetooth devices can listen to the media that you\'re broadcasting"</string>
diff --git a/packages/SystemUI/res/values-en-rIN/strings.xml b/packages/SystemUI/res/values-en-rIN/strings.xml
index 747b374..c197acf 100644
--- a/packages/SystemUI/res/values-en-rIN/strings.xml
+++ b/packages/SystemUI/res/values-en-rIN/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Swipe up to open"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Press the unlock icon to open"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Unlocked by face. Press the unlock icon to open."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Move left"</item>
+ <item msgid="5558598599408514296">"Move down"</item>
+ <item msgid="4844142668312841831">"Move right"</item>
+ <item msgid="5640521437931460125">"Move up"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Swipe up to try again"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Unlock to use NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"This device belongs to your organisation"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"To cast this session, please open the app."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Unknown app"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Stop casting"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Available devices for audio output."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"How broadcasting works"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Broadcast"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"People near you with compatible Bluetooth devices can listen to the media that you\'re broadcasting"</string>
diff --git a/packages/SystemUI/res/values-es-rUS/strings.xml b/packages/SystemUI/res/values-es-rUS/strings.xml
index fa2f6dc..73fbfd3 100644
--- a/packages/SystemUI/res/values-es-rUS/strings.xml
+++ b/packages/SystemUI/res/values-es-rUS/strings.xml
@@ -220,7 +220,7 @@
<string name="quick_settings_bluetooth_secondary_label_input" msgid="3887552721233148132">"Entrada"</string>
<string name="quick_settings_bluetooth_secondary_label_hearing_aids" msgid="3003338571871392293">"Audífonos"</string>
<string name="quick_settings_bluetooth_secondary_label_transient" msgid="3882884317600669650">"Activando…"</string>
- <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Girar automáticamente"</string>
+ <string name="quick_settings_rotation_unlocked_label" msgid="2359922767950346112">"Giro automático"</string>
<string name="accessibility_quick_settings_rotation" msgid="4800050198392260738">"Girar la pantalla automáticamente"</string>
<string name="quick_settings_location_label" msgid="2621868789013389163">"Ubicación"</string>
<string name="quick_settings_camera_label" msgid="5612076679385269339">"Acceso a la cámara"</string>
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Desliza el dedo hacia arriba para abrir"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Presiona el ícono de desbloquear para abrir"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Desbloqueo con rostro. Presiona ícono desbloq. para abrir."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Mover hacia la izquierda"</item>
+ <item msgid="5558598599408514296">"Mover hacia abajo"</item>
+ <item msgid="4844142668312841831">"Mover hacia la derecha"</item>
+ <item msgid="5640521437931460125">"Mover hacia arriba"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Desliza el dedo hacia arriba para volver a intentarlo"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Desbloquea el dispositivo para usar NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Este dispositivo pertenece a tu organización"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Para transmitir esta sesión, abre la app"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"App desconocida"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Detener transmisión"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Dispositivos disponibles para salida de audio."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Cómo funciona la transmisión"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transmisión"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Las personas cercanas con dispositivos Bluetooth compatibles pueden escuchar el contenido multimedia que transmites"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Editar la imagen copiada"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Enviar a dispositivos cercanos"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Presiona para ver"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Se copió el texto"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Se copió la imagen"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Se copió el contenido"</string>
<string name="add" msgid="81036585205287996">"Agregar"</string>
<string name="manage_users" msgid="1823875311934643849">"Administrar usuarios"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Esta notificación no admite arrastrar entre pantallas divididas."</string>
diff --git a/packages/SystemUI/res/values-es-rUS/tiles_states_strings.xml b/packages/SystemUI/res/values-es-rUS/tiles_states_strings.xml
index f7eaba6..6b572e49 100644
--- a/packages/SystemUI/res/values-es-rUS/tiles_states_strings.xml
+++ b/packages/SystemUI/res/values-es-rUS/tiles_states_strings.xml
@@ -168,7 +168,7 @@
</string-array>
<string-array name="tile_states_onehanded">
<item msgid="8189342855739930015">"No disponible"</item>
- <item msgid="146088982397753810">"No"</item>
+ <item msgid="146088982397753810">"Desactivado"</item>
<item msgid="460891964396502657">"Sí"</item>
</string-array>
</resources>
diff --git a/packages/SystemUI/res/values-es/strings.xml b/packages/SystemUI/res/values-es/strings.xml
index 2e0054c..c8cbca5 100644
--- a/packages/SystemUI/res/values-es/strings.xml
+++ b/packages/SystemUI/res/values-es/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Desliza el dedo hacia arriba para abrir"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Pulsa el icono desbloquear para abrir"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Desbloqueado con datos faciales. Pulsa el icono desbloquear para abrir."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Mover hacia la izquierda"</item>
+ <item msgid="5558598599408514296">"Mover hacia abajo"</item>
+ <item msgid="4844142668312841831">"Mover hacia la derecha"</item>
+ <item msgid="5640521437931460125">"Mover hacia arriba"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Desliza el dedo hacia arriba para volverlo a intentar"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Desbloquea para usar el NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Este dispositivo pertenece a tu organización"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Para enviar esta sesión, abre la aplicación."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Aplicación desconocida"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Dejar de enviar contenido"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Dispositivos disponibles para la salida de audio."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Cómo funciona la emisión"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Emisión"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Las personas cercanas con dispositivos Bluetooth compatibles pueden escuchar el contenido multimedia que emites"</string>
@@ -933,18 +934,15 @@
<string name="fgs_manager_app_item_stop_button_stopped_label" msgid="6950382004441263922">"Detenida"</string>
<string name="clipboard_edit_text_done" msgid="4551887727694022409">"Hecho"</string>
<string name="clipboard_overlay_text_copied" msgid="1872624400464891363">"Copiado"</string>
- <string name="clipboard_edit_source" msgid="9156488177277788029">"<xliff:g id="APPNAME">%1$s</xliff:g>"</string>
+ <string name="clipboard_edit_source" msgid="9156488177277788029">"De <xliff:g id="APPNAME">%1$s</xliff:g>"</string>
<string name="clipboard_dismiss_description" msgid="7544573092766945657">"Cerrar la interfaz de copia"</string>
<string name="clipboard_edit_text_description" msgid="805254383912962103">"Editar texto copiado"</string>
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Editar imagen copiada"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Enviar a dispositivo cercano"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Toca para ver"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Texto copiado"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Imagen copiada"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Contenido copiado"</string>
<string name="add" msgid="81036585205287996">"Añadir"</string>
<string name="manage_users" msgid="1823875311934643849">"Gestionar usuarios"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Esta notificación no se puede arrastrar a la pantalla dividida."</string>
diff --git a/packages/SystemUI/res/values-et/strings.xml b/packages/SystemUI/res/values-et/strings.xml
index f5d525d..a99b24a 100644
--- a/packages/SystemUI/res/values-et/strings.xml
+++ b/packages/SystemUI/res/values-et/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Pühkige avamiseks üles"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Avamiseks vajutage avamise ikooni"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Avati näoga. Avamiseks vajutage avamise ikooni."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Teisalda vasakule"</item>
+ <item msgid="5558598599408514296">"Teisalda alla"</item>
+ <item msgid="4844142668312841831">"Teisalda paremale"</item>
+ <item msgid="5640521437931460125">"Teisalda üles"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Uuesti proovimiseks pühkige üles"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC kasutamiseks avage."</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"See seade kuulub teie organisatsioonile"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Selle seansi ülekandmiseks avage rakendus."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Tundmatu rakendus"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Lõpeta ülekanne"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Saadaolevad seadmed heli esitamiseks."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Kuidas ülekandmine toimib?"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Ülekanne"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Teie läheduses olevad inimesed, kellel on ühilduvad Bluetooth-seadmed, saavad kuulata teie ülekantavat meediat"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Muuda kopeeritud pilti"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Saada läheduses olevasse seadmesse"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Puudutage kuvamiseks"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Tekst kopeeriti"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Pilt kopeeriti"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Sisu kopeeriti"</string>
<string name="add" msgid="81036585205287996">"Lisa"</string>
<string name="manage_users" msgid="1823875311934643849">"Kasutajate haldamine"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"See märguanne ei toeta jagatud ekraanikuvale lohistamist."</string>
diff --git a/packages/SystemUI/res/values-eu/strings.xml b/packages/SystemUI/res/values-eu/strings.xml
index 09af1f3..8e45bfb 100644
--- a/packages/SystemUI/res/values-eu/strings.xml
+++ b/packages/SystemUI/res/values-eu/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Pasatu hatza gora irekitzeko"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Irekitzeko, sakatu desblokeatzeko ikonoa"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Aurpegiaren bidez desblokeatu da. Irekitzeko, sakatu desblokeatzeko ikonoa."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Eraman ezkerrera"</item>
+ <item msgid="5558598599408514296">"Eraman behera"</item>
+ <item msgid="4844142668312841831">"Eraman eskuinera"</item>
+ <item msgid="5640521437931460125">"Eraman gora"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Berriro saiatzeko, pasatu hatza gora"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Desblokea ezazu NFCa erabiltzeko"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Gailu hau zure erakundearena da"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Saioa ireki nahi baduzu, ireki aplikazioa."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Aplikazio ezezaguna"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Gelditu igorpena"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Audio-irteerarako gailu erabilgarriak."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Nola funtzionatzen dute iragarpenek?"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Iragarri"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Bluetooth bidezko gailu bateragarriak dituzten inguruko pertsonek iragartzen ari zaren multimedia-edukia entzun dezakete"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Editatu kopiatutako irudia"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Bidali inguruko gailu batera"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Ikusteko, sakatu hau"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Kopiatu da testua"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Kopiatu da irudia"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Kopiatu da edukia"</string>
<string name="add" msgid="81036585205287996">"Gehitu"</string>
<string name="manage_users" msgid="1823875311934643849">"Kudeatu erabiltzaileak"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Jakinarazpen hau ezin da arrastatu pantaila zatitura."</string>
diff --git a/packages/SystemUI/res/values-fa/strings.xml b/packages/SystemUI/res/values-fa/strings.xml
index 36b735c..3f19321 100644
--- a/packages/SystemUI/res/values-fa/strings.xml
+++ b/packages/SystemUI/res/values-fa/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"برای باز کردن، انگشتتان را تند بهبالا بکشید"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"برای باز کردن، نماد قفلگشایی را فشار دهید"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"قفلْ با چهره باز شد. برای باز کردن، نماد قفلگشایی را فشار دهید."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"انتقال بهچپ"</item>
+ <item msgid="5558598599408514296">"انتقال بهپایین"</item>
+ <item msgid="4844142668312841831">"انتقال بهراست"</item>
+ <item msgid="5640521437931460125">"انتقال بهبالا"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"برای امتحان مجدد، انگشتتان را تند بهبالا بکشید"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"برای استفاده از NFC، قفل را باز کنید"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"این دستگاه به سازمان شما تعلق دارد"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"برای ارسال محتوای این جلسه، لطفاً برنامه را باز کنید."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"برنامه ناشناس"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"توقف ارسال محتوا"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"دستگاههای دردسترس برای خروجی صدا."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"همهفرتستی چطور کار میکند"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"همهفرستی"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"افرادی که در اطرافتان دستگاههای Bluetooth سازگار دارند میتوانند به رسانهای که همهفرستی میکنید گوش کنند"</string>
diff --git a/packages/SystemUI/res/values-fi/strings.xml b/packages/SystemUI/res/values-fi/strings.xml
index eec7066..244c8a7 100644
--- a/packages/SystemUI/res/values-fi/strings.xml
+++ b/packages/SystemUI/res/values-fi/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Avaa pyyhkäisemällä ylös"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Jatka painamalla lukituksen avauskuvaketta."</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Avattu kasvojen avulla. Jatka lukituksen avauskuvakkeella."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Siirrä vasemmalle"</item>
+ <item msgid="5558598599408514296">"Siirrä alas"</item>
+ <item msgid="4844142668312841831">"Siirrä oikealle"</item>
+ <item msgid="5640521437931460125">"Siirrä ylös"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Yritä uudelleen pyyhkäisemällä ylös"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Avaa lukitus, jotta voit käyttää NFC:tä"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Organisaatiosi omistaa tämän laitteen"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Jos haluat striimata tämän käyttökerran, avaa sovellus."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Tuntematon sovellus"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Lopeta striimaus"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Käytettävissä olevat audiolaitteet"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Miten lähetys toimii"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Lähetys"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Lähistöllä olevat ihmiset, joilla on yhteensopiva Bluetooth-laite, voivat kuunnella lähettämääsi mediaa"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Muokkaa kopioitua kuvaa"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Lähetä lähellä olevaan laitteeseen"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Katso napauttamalla"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Teksti kopioitu"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Kuva kopioitu"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Sisältö kopioitu"</string>
<string name="add" msgid="81036585205287996">"Lisää"</string>
<string name="manage_users" msgid="1823875311934643849">"Ylläpidä käyttäjiä"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Ilmoitus ei tue jaetulle näytölle vetämistä."</string>
diff --git a/packages/SystemUI/res/values-fr-rCA/strings.xml b/packages/SystemUI/res/values-fr-rCA/strings.xml
index bb0c2b1..77ad833 100644
--- a/packages/SystemUI/res/values-fr-rCA/strings.xml
+++ b/packages/SystemUI/res/values-fr-rCA/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Balayez l\'écran vers le haut pour ouvrir"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Appuyez sur l\'icône Déverrouiller pour ouvrir"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Déverrouillé avec le visage. Appuyez Déverrouiller pour ouvrir"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Déplacer vers la gauche"</item>
+ <item msgid="5558598599408514296">"Déplacer vers le bas"</item>
+ <item msgid="4844142668312841831">"Déplacer vers la droite"</item>
+ <item msgid="5640521437931460125">"Déplacer vers le haut"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Balayez l\'écran vers le haut pour réessayer"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Déverrouillez l\'écran pour utiliser la CCP"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Cet appareil appartient à votre organisation"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Pour diffuser cette session, veuillez ouvrir l\'application."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Application inconnue"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Arrêter la diffusion"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Appareils disponibles pour la sortie audio."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Fonctionnement de la diffusion"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Diffusion"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Les personnes à proximité disposant d\'appareils Bluetooth compatibles peuvent écouter le contenu multimédia que vous diffusez"</string>
@@ -921,7 +922,7 @@
<string name="qs_tile_request_dialog_text" msgid="3501359944139877694">"L\'application <xliff:g id="APPNAME">%1$s</xliff:g> veut ajouter la tuile suivante au menu Paramètres rapides"</string>
<string name="qs_tile_request_dialog_add" msgid="4888460910694986304">"Ajouter la tuile"</string>
<string name="qs_tile_request_dialog_not_add" msgid="4168716573114067296">"Ne pas ajouter de tuile"</string>
- <string name="qs_user_switch_dialog_title" msgid="3045189293587781366">"Choisir utilisateur"</string>
+ <string name="qs_user_switch_dialog_title" msgid="3045189293587781366">"Choisir l\'utilisateur"</string>
<plurals name="fgs_manager_footer_label" formatted="false" msgid="790443735462280164">
<item quantity="one"><xliff:g id="COUNT_1">%s</xliff:g> application est active</item>
<item quantity="other"><xliff:g id="COUNT_1">%s</xliff:g> applications sont actives</item>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Modifier l\'image copiée"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Envoyer à un appareil à proximité"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Touchez pour afficher"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Texte copié"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Image copiée"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Contenu copié"</string>
<string name="add" msgid="81036585205287996">"Ajouter"</string>
<string name="manage_users" msgid="1823875311934643849">"Gérer les utilisateurs"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Cette notification ne prend pas en charge le partage d\'écran par glissement."</string>
diff --git a/packages/SystemUI/res/values-fr/strings.xml b/packages/SystemUI/res/values-fr/strings.xml
index 43cbc32..3a25f4f 100644
--- a/packages/SystemUI/res/values-fr/strings.xml
+++ b/packages/SystemUI/res/values-fr/strings.xml
@@ -939,12 +939,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Modifier l\'image copiée"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Envoyer à un appareil à proximité"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Appuyez pour afficher"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Texte copié"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Image copiée"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Contenu copié"</string>
<string name="add" msgid="81036585205287996">"Ajouter"</string>
<string name="manage_users" msgid="1823875311934643849">"Gérer les utilisateurs"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Impossible de faire glisser cette notification vers l\'écran partagé."</string>
diff --git a/packages/SystemUI/res/values-gl/strings.xml b/packages/SystemUI/res/values-gl/strings.xml
index 9c9f60b..eef4f90 100644
--- a/packages/SystemUI/res/values-gl/strings.xml
+++ b/packages/SystemUI/res/values-gl/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Pasa o dedo cara arriba para abrir"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Preme a icona de desbloquear para abrir a porta"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Usouse o desbloqueo facial. Preme a icona de desbloquear."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Mover cara á esquerda"</item>
+ <item msgid="5558598599408514296">"Mover cara abaixo"</item>
+ <item msgid="4844142668312841831">"Mover cara á dereita"</item>
+ <item msgid="5640521437931460125">"Mover cara arriba"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Pasa o dedo cara arriba para tentalo de novo"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Desbloquea o dispositivo para utilizar a NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Este dispositivo pertence á túa organización."</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Para emitir esta sesión, abre a aplicación."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Aplicación descoñecida"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Deter emisión"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Dispositivos dispoñibles para a saída de audio."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Como funcionan as difusións?"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Difusión"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"As persoas que estean preto de ti e que dispoñan de dispositivos Bluetooth compatibles poden escoitar o contido multimedia que difundas"</string>
@@ -923,8 +924,8 @@
<string name="qs_tile_request_dialog_not_add" msgid="4168716573114067296">"Non engadir atallo"</string>
<string name="qs_user_switch_dialog_title" msgid="3045189293587781366">"Seleccionar usuario"</string>
<plurals name="fgs_manager_footer_label" formatted="false" msgid="790443735462280164">
- <item quantity="other">Hai <xliff:g id="COUNT_1">%s</xliff:g> aplicacións activas</item>
- <item quantity="one">Hai <xliff:g id="COUNT_0">%s</xliff:g> aplicación activa</item>
+ <item quantity="other"><xliff:g id="COUNT_1">%s</xliff:g> aplicacións activas</item>
+ <item quantity="one"><xliff:g id="COUNT_0">%s</xliff:g> aplicación activa</item>
</plurals>
<string name="fgs_dot_content_description" msgid="2865071539464777240">"Nova información"</string>
<string name="fgs_manager_dialog_title" msgid="5879184257257718677">"Aplicacións activas"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Editar imaxe copiada"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Enviar a dispositivo próximo"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Toca para ver o contido"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Texto copiado"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Imaxe copiada"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Contido copiado"</string>
<string name="add" msgid="81036585205287996">"Engadir"</string>
<string name="manage_users" msgid="1823875311934643849">"Xestionar usuarios"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Esta notificación non pode arrastrarse á pantalla dividida."</string>
diff --git a/packages/SystemUI/res/values-gu/strings.xml b/packages/SystemUI/res/values-gu/strings.xml
index f9167d2..1ac63466 100644
--- a/packages/SystemUI/res/values-gu/strings.xml
+++ b/packages/SystemUI/res/values-gu/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"ખોલવા માટે ઉપરની તરફ સ્વાઇપ કરો"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"ખોલવા માટે \'અનલૉક કરો\' આઇકન દબાવો"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"ચહેરા દ્વારા અનલૉક કર્યું. ખોલવા \'અનલૉક કરો\' આઇકન દબાવો."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"ડાબે ખસેડો"</item>
+ <item msgid="5558598599408514296">"નીચે ખસેડો"</item>
+ <item msgid="4844142668312841831">"જમણે ખસેડો"</item>
+ <item msgid="5640521437931460125">"ઉપર ખસેડો"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"ફરી પ્રયાસ કરવા માટે ઉપરની તરફ સ્વાઇપ કરો"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFCનો ઉપયોગ કરવા માટે અનલૉક કરો"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"આ ડિવાઇસ તમારી સંસ્થાની માલિકીનું છે"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"આ સત્ર કાસ્ટ કરવા માટે, કૃપા કરીને ઍપ ખોલો."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"અજાણી ઍપ"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"કાસ્ટ કરવાનું રોકો"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"ઑડિયો આઉટપુટ માટે ઉપલબ્ધ ડિવાઇસ."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"બ્રોડકાસ્ટ પ્રક્રિયાની કામ કરવાની રીત"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"બ્રોડકાસ્ટ કરો"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"સુસંગત બ્લૂટૂથ ડિવાઇસ ધરાવતા નજીકના લોકો તમે જે મીડિયા બ્રોડકાસ્ટ કરી રહ્યાં છો તે સાંભળી શકે છે"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"કૉપિ કરેલી છબીમાં ફેરફાર કરો"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"નજીકના ડિવાઇસને મોકલો"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"જોવા માટે ટૅપ કરો"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"ટેક્સ્ટ કૉપિ કરી"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"છબી કૉપિ કરી"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"કન્ટેન્ટ કૉપિ કર્યું"</string>
<string name="add" msgid="81036585205287996">"ઉમેરો"</string>
<string name="manage_users" msgid="1823875311934643849">"વપરાશકર્તાઓને મેનેજ કરો"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"આ નોટિફિકેશન તેને સ્પ્લિટસ્ક્રીનમાં ખેંચવાની સુવિધાને સપોર્ટ કરતું નથી."</string>
diff --git a/packages/SystemUI/res/values-hi/strings.xml b/packages/SystemUI/res/values-hi/strings.xml
index 2ed1d43..adbee78 100644
--- a/packages/SystemUI/res/values-hi/strings.xml
+++ b/packages/SystemUI/res/values-hi/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"खोलने के लिए ऊपर स्वाइप करें"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"डिवाइस अनलॉक करने के लिए, अनलॉक आइकॉन को दबाएं"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"चेहरे से अनलॉक किया. डिवाइस अनलॉक करने के लिए, अनलॉक आइकॉन को दबाएं."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"बाईं ओर ले जाएं"</item>
+ <item msgid="5558598599408514296">"नीचे ले जाएं"</item>
+ <item msgid="4844142668312841831">"दाईं ओर ले जाएं"</item>
+ <item msgid="5640521437931460125">"ऊपर ले जाएं"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"फिर से कोशिश करने के लिए ऊपर की ओर स्वाइप करें"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"एनएफ़सी इस्तेमाल करने के लिए स्क्रीन को अनलॉक करें"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"इस डिवाइस का मालिकाना हक आपके संगठन के पास है"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"इस सेशन को कास्ट करने के लिए, कृपया ऐप्लिकेशन खोलें."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"अनजान ऐप्लिकेशन"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"कास्टिंग करना रोकें"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"ऑडियो आउटपुट के लिए उपलब्ध डिवाइस."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ब्रॉडकास्ट करने की सुविधा कैसे काम करती है"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ब्रॉडकास्ट करें"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"आपके आस-पास मौजूद लोग, ब्रॉडकास्ट किए जा रहे मीडिया को सुन सकते हैं. हालांकि, इसके लिए उनके पास ऐसे ब्लूटूथ डिवाइस होने चाहिए जिन पर मीडिया चलाया जा सके"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"कॉपी की गई इमेज में बदलाव करें"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"कॉन्टेंट को आस-पास मौजूद डिवाइस पर भेजें"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"देखने के लिए टैप करें"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"टेक्स्ट कॉपी किया गया"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"इमेज कॉपी की गई"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"कॉन्टेंट कॉपी किया गया"</string>
<string name="add" msgid="81036585205287996">"जोड़ें"</string>
<string name="manage_users" msgid="1823875311934643849">"उपयोगकर्ताओं को मैनेज करें"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"इस सूचना को स्प्लिट स्क्रीन मोड में, खींचा और छोड़ा नहीं जा सकता."</string>
diff --git a/packages/SystemUI/res/values-hr/strings.xml b/packages/SystemUI/res/values-hr/strings.xml
index f1bad88..f04b34d 100644
--- a/packages/SystemUI/res/values-hr/strings.xml
+++ b/packages/SystemUI/res/values-hr/strings.xml
@@ -315,10 +315,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Prijeđite prstom prema gore da biste otvorili"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Pritisnite ikonu otključavanja da biste otvorili"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Otključano pomoću lica. Pritisnite ikonu otključavanja da biste otvorili."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Pomicanje ulijevo"</item>
+ <item msgid="5558598599408514296">"Pomicanje prema dolje"</item>
+ <item msgid="4844142668312841831">"Pomicanje udesno"</item>
+ <item msgid="5640521437931460125">"Pomicanje prema gore"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Prijeđite prstom prema gore za ponovni pokušaj"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Otključajte da biste upotrijebili NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Ovaj uređaj pripada vašoj organizaciji"</string>
@@ -847,8 +849,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Da biste emitirali ovu sesiju, otvorite aplikaciju."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Nepoznata aplikacija"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Zaustavi emitiranje"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Dostupni uređaji za audioizlaz."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Kako emitiranje funkcionira"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Emitiranje"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Osobe u blizini s kompatibilnim Bluetooth uređajima mogu slušati medije koje emitirate"</string>
diff --git a/packages/SystemUI/res/values-hu/strings.xml b/packages/SystemUI/res/values-hu/strings.xml
index c1166a3..7e8ba00 100644
--- a/packages/SystemUI/res/values-hu/strings.xml
+++ b/packages/SystemUI/res/values-hu/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Csúsztasson felfelé a megnyitáshoz"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Az eszköz használatához nyomja meg a feloldás ikonját"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Zárolás arccal feloldva. Eszköz használata: Feloldás ikon."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Mozgatás balra"</item>
+ <item msgid="5558598599408514296">"Mozgatás lefelé"</item>
+ <item msgid="4844142668312841831">"Mozgatás jobbra"</item>
+ <item msgid="5640521437931460125">"Mozgatás felfelé"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Az újrapróbálkozáshoz csúsztassa felfelé az ujját"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Az NFC használatához oldja fel a képernyőzárat"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Ez az eszköz az Ön szervezetének tulajdonában van"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"A munkamenet átküldéséhez nyissa meg az alkalmazást."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Ismeretlen alkalmazás"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Átküldés leállítása"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Rendelkezésre álló eszközök a hangkimenethez."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"A közvetítés működése"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Közvetítés"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"A közelben tartózkodó, kompatibilis Bluetooth-eszközzel rendelkező személyek meghallgathatják az Ön közvetített médiatartalmait"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Vágólapra másolt kép szerkesztése"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Küldés közeli eszközre"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Koppintson a megtekintéshez"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Szöveg másolva"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Kép másolva"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Tartalom másolva"</string>
<string name="add" msgid="81036585205287996">"Hozzáadás"</string>
<string name="manage_users" msgid="1823875311934643849">"Felhasználók kezelése"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Az értesítés nem támogatja a megosztott képernyőre való áthúzást."</string>
diff --git a/packages/SystemUI/res/values-hy/strings.xml b/packages/SystemUI/res/values-hy/strings.xml
index aa9194a..227fbf3 100644
--- a/packages/SystemUI/res/values-hy/strings.xml
+++ b/packages/SystemUI/res/values-hy/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Բացելու համար սահեցրեք վերև"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Բացեք՝ սեղմելով ապակողպման պատկերակը"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Ապակողպվել է դեմքով։ Բացեք՝ սեղմելով ապակողպման պատկերակը։"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Տեղափոխել ձախ"</item>
+ <item msgid="5558598599408514296">"Տեղափոխել ներքև"</item>
+ <item msgid="4844142668312841831">"Տեղափոխել աջ"</item>
+ <item msgid="5640521437931460125">"Տեղափոխել վերև"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Սահեցրեք վերև՝ նորից փորձելու համար"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Ապակողպեք՝ NFC-ն օգտագործելու համար"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Այս սարքը պատկանում է ձեր կազմակերպությանը"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Այս աշխատաշրջանը հեռարձակելու համար բացեք հավելվածը"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Անհայտ հավելված"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Կանգնեցնել հեռարձակումը"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Հասանելի սարքեր ձայնի արտածման համար։"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Ինչպես է աշխատում հեռարձակումը"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Հեռարձակում"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Ձեր մոտակայքում գտնվող՝ համատեղելի Bluetooth սարքերով մարդիկ կարող են լսել մեդիա ֆայլերը, որոնք դուք հեռարձակում եք։"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Փոփոխել պատճենված պատկերը"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Ուղարկել մոտակա սարքի"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Հպեք դիտելու համար"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Տեքստը պատճենվեց"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Պատկերը պատճենվեց"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Բովանդակությունը պատճենվեց"</string>
<string name="add" msgid="81036585205287996">"Ավելացնել"</string>
<string name="manage_users" msgid="1823875311934643849">"Օգտատերերի կառավարում"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Այս ծանուցումը հնարավոր չէ քաշել տրոհված էկրանի մեկ հատվածից մյուսը։"</string>
diff --git a/packages/SystemUI/res/values-in/strings.xml b/packages/SystemUI/res/values-in/strings.xml
index 50bc5d4..001e8ff 100644
--- a/packages/SystemUI/res/values-in/strings.xml
+++ b/packages/SystemUI/res/values-in/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Geser ke atas untuk membuka"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Tekan ikon buka kunci untuk membuka"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Kunci dibuka dengan wajah. Tekan ikon buka kunci untuk membuka."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Pindah ke kiri"</item>
+ <item msgid="5558598599408514296">"Pindah ke bawah"</item>
+ <item msgid="4844142668312841831">"Pindah ke kanan"</item>
+ <item msgid="5640521437931460125">"Pindah ke atas"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Geser ke atas untuk mencoba lagi"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Buka kunci untuk menggunakan NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Perangkat ini milik organisasi Anda"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Buka aplikasi untuk mentransmisikan sesi ini."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Aplikasi tidak dikenal"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Hentikan transmisi"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Perangkat yang tersedia untuk output audio."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Cara kerja siaran"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Siaran"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Orang di dekat Anda dengan perangkat Bluetooth yang kompatibel dapat mendengarkan media yang sedang Anda siarkan"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Edit gambar yang disalin"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Kirim ke perangkat di sekitar"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Ketuk untuk melihat"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Teks disalin"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Gambar disalin"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Konten disalin"</string>
<string name="add" msgid="81036585205287996">"Tambahkan"</string>
<string name="manage_users" msgid="1823875311934643849">"Kelola pengguna"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Notifikasi ini tidak mendukung fitur tarik ke Layar terpisah."</string>
diff --git a/packages/SystemUI/res/values-is/strings.xml b/packages/SystemUI/res/values-is/strings.xml
index 5050d018..c3d3b75 100644
--- a/packages/SystemUI/res/values-is/strings.xml
+++ b/packages/SystemUI/res/values-is/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Strjúktu upp til að opna"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Ýttu á táknið til að taka úr lás til að opna"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Opnað með andliti. Ýttu á táknið taka úr lás til að opna."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Færa til vinstri"</item>
+ <item msgid="5558598599408514296">"Færa niður"</item>
+ <item msgid="4844142668312841831">"Færa til hægri"</item>
+ <item msgid="5640521437931460125">"Færa upp"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Strjúktu upp til að reyna aftur"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Taktu úr lás til að nota NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Þetta tæki tilheyrir fyrirtækinu þínu"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Opnaðu forritið til að senda þessa lotu út."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Óþekkt forrit"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Stöðva útsendingu"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Tæki í boði fyrir hljóðúttak."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Svona virkar útsending"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Útsending"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Fólk nálægt þér með samhæf Bluetooth-tæki getur hlustað á efnið sem þú sendir út"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Breyta afritaðri mynd"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Senda í nálægt tæki"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Ýttu til að skoða"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Texti afritaður"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Mynd afrituð"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Efni afritað"</string>
<string name="add" msgid="81036585205287996">"Bæta við"</string>
<string name="manage_users" msgid="1823875311934643849">"Stjórna notendum"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Þessi tilkynning styður ekki að draga yfir á skiptan skjá."</string>
diff --git a/packages/SystemUI/res/values-it/strings.xml b/packages/SystemUI/res/values-it/strings.xml
index 032ae05..eecc2d2 100644
--- a/packages/SystemUI/res/values-it/strings.xml
+++ b/packages/SystemUI/res/values-it/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Scorri verso l\'alto per aprire"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Premi l\'icona Sblocca per aprire"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Sbloccato con il volto. Premi l\'icona Sblocca per aprire."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Sposta a sinistra"</item>
+ <item msgid="5558598599408514296">"Sposta giù"</item>
+ <item msgid="4844142668312841831">"Sposta a destra"</item>
+ <item msgid="5640521437931460125">"Sposta su"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Scorri verso l\'alto per riprovare"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Sblocca per usare NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Questo dispositivo appartiene alla tua organizzazione"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Per trasmettere questa sessione devi aprire l\'app."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"App sconosciuta"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Interrompi trasmissione"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Dispositivi disponibili per l\'uscita audio."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Come funziona la trasmissione"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Annuncio"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Le persone vicine a te che hanno dispositivi Bluetooth compatibili possono ascoltare i contenuti multimediali che stai trasmettendo"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Modifica immagine copiata"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Invia a dispositivo nelle vicinanze"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Tocca per visualizzare"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Testo copiato"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Immagine copiata"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Contenuti copiati"</string>
<string name="add" msgid="81036585205287996">"Aggiungi"</string>
<string name="manage_users" msgid="1823875311934643849">"Gestisci utenti"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Non è possibile trascinare questa notifica tra le due parti dello schermo diviso."</string>
diff --git a/packages/SystemUI/res/values-iw/strings.xml b/packages/SystemUI/res/values-iw/strings.xml
index 2487539..b4eccc4 100644
--- a/packages/SystemUI/res/values-iw/strings.xml
+++ b/packages/SystemUI/res/values-iw/strings.xml
@@ -317,10 +317,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"צריך להחליק כדי לפתוח"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"לפתיחה, לוחצים על סמל ביטול הנעילה"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"הנעילה בוטלה בזיהוי פנים. פותחים בלחיצה על סמל ביטול הנעילה."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"הזזה שמאלה"</item>
+ <item msgid="5558598599408514296">"הזזה למטה"</item>
+ <item msgid="4844142668312841831">"הזזה ימינה"</item>
+ <item msgid="5640521437931460125">"הזזה למעלה"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"יש להחליק למעלה כדי לנסות שוב"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"יש לבטל את הנעילה כדי להשתמש ב-NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"המכשיר הזה שייך לארגון שלך"</string>
@@ -853,8 +855,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"כדי להעביר (cast) את הסשן הזה, צריך לפתוח את האפליקציה."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"אפליקציה לא ידועה"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"עצירת ההעברה (casting)"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"מכשירים זמינים לפלט אודיו."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"הסבר על שידורים"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"שידור"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"אנשים בקרבת מקום עם מכשירי Bluetooth תואמים יכולים להאזין למדיה שמשודרת על ידך"</string>
@@ -953,12 +954,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"עריכת התמונה שהועתקה"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"שליחה למכשיר בקרבת מקום"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"יש להקיש כדי להציג"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"הטקסט הועתק"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"התמונה הועתקה"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"התוכן הועתק"</string>
<string name="add" msgid="81036585205287996">"הוספה"</string>
<string name="manage_users" msgid="1823875311934643849">"ניהול משתמשים"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"ההתראה הזו לא תומכת בגרירה למסך מפוצל."</string>
diff --git a/packages/SystemUI/res/values-ja/strings.xml b/packages/SystemUI/res/values-ja/strings.xml
index 9de7bd5..eb9774c 100644
--- a/packages/SystemUI/res/values-ja/strings.xml
+++ b/packages/SystemUI/res/values-ja/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"開くには上にスワイプします"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"ロック解除アイコンを押して開きます"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"顔でロック解除しました。ロック解除アイコンを押して開きます。"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"左に移動"</item>
+ <item msgid="5558598599408514296">"下に移動"</item>
+ <item msgid="4844142668312841831">"右に移動"</item>
+ <item msgid="5640521437931460125">"上に移動"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"上にスワイプしてもう一度お試しください"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC を使用するには、ロックを解除してください"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"これは組織が所有するデバイスです"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"このセッションをキャストするには、アプリを開いてください。"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"不明なアプリ"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"キャストを停止"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"音声出力ができるデバイスです。"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ブロードキャストの仕組み"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ブロードキャスト"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Bluetooth 対応デバイスを持っている付近のユーザーは、あなたがブロードキャストしているメディアを聴けます"</string>
diff --git a/packages/SystemUI/res/values-ka/strings.xml b/packages/SystemUI/res/values-ka/strings.xml
index ded0dde..c68cb05 100644
--- a/packages/SystemUI/res/values-ka/strings.xml
+++ b/packages/SystemUI/res/values-ka/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"გასახსნელად გადაფურცლეთ ზემოთ"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"გასახსნელად დააჭირეთ განბლოკვის ხატულას"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"განიბლოკა სახით. გასახსნელად დააჭირეთ განბლოკვის ხატულას."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"მარცხნივ გადატანა"</item>
+ <item msgid="5558598599408514296">"ქვემოთ გადატანა"</item>
+ <item msgid="4844142668312841831">"მარჯვნივ გადატანა"</item>
+ <item msgid="5640521437931460125">"ზემოთ გადატანა"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"ხელახლა საცდელად გადაფურცლეთ ზემოთ"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"განბლოკეთ NFC-ის გამოსაყენებლად"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"ამ მოწყობილობას ფლობს თქვენი ორგანიზაცია"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"ამ სესიის ტრანსლირებისთვის გახსენით აპი."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"უცნობი აპი"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"ტრანსლირების შეწყვეტა"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"ხელმისაწვდომი მოწყობილობები გამომავალი აუდიოსთვის."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ტრანსლირების მუშაობის პრინციპი"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ტრანსლაცია"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"თქვენთან ახლოს მყოფ ხალხს თავსებადი Bluetooth მოწყობილობით შეუძლიათ თქვენ მიერ ტრანსლირებული მედიის მოსმენა"</string>
diff --git a/packages/SystemUI/res/values-kk/strings.xml b/packages/SystemUI/res/values-kk/strings.xml
index 7dbe8e9..adf1482 100644
--- a/packages/SystemUI/res/values-kk/strings.xml
+++ b/packages/SystemUI/res/values-kk/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Ашу үшін жоғары қарай сырғытыңыз."</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Ашу үшін құлыпты ашу белгішесін басыңыз."</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Бет үлгісі арқылы ашылды. Ашу үшін құлыпты ашу белгішесін басыңыз."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Солға жылжыту"</item>
+ <item msgid="5558598599408514296">"Төмен жылжыту"</item>
+ <item msgid="4844142668312841831">"Оңға жылжыту"</item>
+ <item msgid="5640521437931460125">"Жоғары жылжыту"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Әрекетті қайталау үшін жоғары сырғытыңыз."</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC пайдалану үшін құлыпты ашыңыз."</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Бұл құрылғы ұйымыңызға тиесілі."</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Бұл сеансты трансляциялау үшін қолданбаны ашыңыз."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Белгісіз қолданба"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Трансляцияны тоқтату"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Аудио шығыс үшін қолжетімді құрылғылар бар."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Тарату қалай жүзеге асады"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Тарату"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Үйлесімді Bluetooth құрылғылары бар маңайдағы адамдар сіз таратып жатқан медиамазмұнды тыңдай алады."</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Көшірілген суретті өңдеу"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Маңайдағы құрылғыға жіберу"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Көру үшін түртіңіз."</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Мәтін көшірілді."</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Сурет көшірілді."</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Мазмұн көшірілді."</string>
<string name="add" msgid="81036585205287996">"Қосу"</string>
<string name="manage_users" msgid="1823875311934643849">"Пайдаланушыларды басқару"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Бұл хабарландыруды бөлінген экранға сүйреп апару мүмкін емес."</string>
diff --git a/packages/SystemUI/res/values-km/strings.xml b/packages/SystemUI/res/values-km/strings.xml
index b0eb861..e7c0b7a 100644
--- a/packages/SystemUI/res/values-km/strings.xml
+++ b/packages/SystemUI/res/values-km/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"អូសឡើងលើដើម្បីបើក"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"ចុចរូបដោះសោ ដើម្បីបើក"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"បានដោះសោដោយប្រើមុខ។ សូមចុចរូបដោះសោ ដើម្បីបើក។"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"ផ្លាស់ទីទៅឆ្វេង"</item>
+ <item msgid="5558598599408514296">"ផ្លាស់ទីចុះក្រោម"</item>
+ <item msgid="4844142668312841831">"ផ្លាស់ទីទៅស្តាំ"</item>
+ <item msgid="5640521437931460125">"ផ្លាស់ទីឡើងលើ"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"អូសឡើងលើ ដើម្បីព្យាយាមម្ដងទៀត"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"ដោះសោ ដើម្បីប្រើ NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"ឧបករណ៍នេះគឺជាកម្មសិទ្ធិរបស់ស្ថាប័នអ្នក"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"ដើម្បីភ្ជាប់វគ្គនេះ សូមបើកកម្មវិធី។"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"កម្មវិធីដែលមិនស្គាល់"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"បញ្ឈប់ការភ្ជាប់"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"ឧបករណ៍ដែលអាចប្រើបានសម្រាប់ឧបករណ៍បញ្ចេញសំឡេង។"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"របៀបដែលការផ្សាយដំណើរការ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ការផ្សាយ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"មនុស្សនៅជិតអ្នកដែលមានឧបករណ៍ប៊្លូធូសត្រូវគ្នាអាចស្តាប់មេឌៀដែលអ្នកកំពុងផ្សាយបាន"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"កែរូបភាពដែលបានចម្លង"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"ផ្ញើទៅឧបករណ៍នៅជិត"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"ចុចដើម្បីមើល"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"បានចម្លងអត្ថបទ"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"បានចម្លងរូបភាព"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"បានចម្លងខ្លឹមសារ"</string>
<string name="add" msgid="81036585205287996">"បញ្ចូល"</string>
<string name="manage_users" msgid="1823875311934643849">"គ្រប់គ្រងអ្នកប្រើប្រាស់"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"ការជូនដំណឹងនេះមិនអាចឱ្យអូសដើម្បីបំបែកអេក្រង់បានទេ។"</string>
diff --git a/packages/SystemUI/res/values-kn/strings.xml b/packages/SystemUI/res/values-kn/strings.xml
index 6cd2871..25e0d88 100644
--- a/packages/SystemUI/res/values-kn/strings.xml
+++ b/packages/SystemUI/res/values-kn/strings.xml
@@ -101,7 +101,7 @@
<string name="screenrecord_device_audio_and_mic_label" msgid="1831323771978646841">"ಸಾಧನ ಆಡಿಯೋ ಮತ್ತು ಮೈಕ್ರೊಫೋನ್"</string>
<string name="screenrecord_start" msgid="330991441575775004">"ಪ್ರಾರಂಭಿಸಿ"</string>
<string name="screenrecord_ongoing_screen_only" msgid="4459670242451527727">"ಸ್ಕ್ರೀನ್ ರೆಕಾರ್ಡಿಂಗ್"</string>
- <string name="screenrecord_ongoing_screen_and_audio" msgid="5351133763125180920">"ಸ್ಕ್ರೀನ್ ಮತ್ತು ಆಡಿಯೊ ರೆಕಾರ್ಡಿಂಗ್"</string>
+ <string name="screenrecord_ongoing_screen_and_audio" msgid="5351133763125180920">"ಸ್ಕ್ರೀನ್ ಮತ್ತು ಆಡಿಯೋ ರೆಕಾರ್ಡಿಂಗ್"</string>
<string name="screenrecord_taps_label" msgid="1595690528298857649">"ಸ್ಪರ್ಶಗಳನ್ನು ಸ್ಕ್ರೀನ್ ಮೇಲೆ ತೋರಿಸಿ"</string>
<string name="screenrecord_stop_label" msgid="72699670052087989">"ನಿಲ್ಲಿಸಿ"</string>
<string name="screenrecord_share_label" msgid="5025590804030086930">"ಹಂಚಿಕೊಳ್ಳಿ"</string>
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"ತೆರೆಯಲು ಮೇಲಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"ತೆರೆಯಲು ಅನ್ಲಾಕ್ ಐಕಾನ್ ಅನ್ನು ಒತ್ತಿ"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"ಮುಖವನ್ನು ಬಳಸಿ ಅನ್ಲಾಕ್ ಮಾಡಲಾಗಿದೆ. ತೆರೆಯಲು ಅನ್ಲಾಕ್ ಐಕಾನ್ ಅನ್ನು ಒತ್ತಿ."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"ಎಡಕ್ಕೆ ಸರಿಸಿ"</item>
+ <item msgid="5558598599408514296">"ಕೆಳಗೆ ಸರಿಸಿ"</item>
+ <item msgid="4844142668312841831">"ಬಲಕ್ಕೆ ಸರಿಸಿ"</item>
+ <item msgid="5640521437931460125">"ಮೇಲಕ್ಕೆ ಸರಿಸಿ"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಲು ಮೇಲಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC ಬಳಸಲು ಅನ್ಲಾಕ್ ಮಾಡಿ"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"ಈ ಸಾಧನವು ನಿಮ್ಮ ಸಂಸ್ಥೆಗೆ ಸೇರಿದೆ"</string>
@@ -351,8 +353,8 @@
<string name="user_remove_user_title" msgid="9124124694835811874">"ಬಳಕೆದಾರರನ್ನು ತೆಗೆದುಹಾಕುವುದೇ?"</string>
<string name="user_remove_user_message" msgid="6702834122128031833">"ಈ ಬಳಕೆದಾರರ ಎಲ್ಲಾ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಮತ್ತು ಡೇಟಾವನ್ನು ಅಳಿಸಲಾಗುವುದು."</string>
<string name="user_remove_user_remove" msgid="8387386066949061256">"ತೆಗೆದುಹಾಕಿ"</string>
- <string name="media_projection_dialog_text" msgid="1755705274910034772">"ರೆಕಾರ್ಡ್ ಮಾಡುವಾಗ ಅಥವಾ ಬಿತ್ತರಿಸುವಾಗ ಸ್ಕ್ರೀನ್ ಮೇಲೆ ಕಾಣಿಸುವ ಸಕಲ ಮಾಹಿತಿಗೂ <xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g> ಪ್ರವೇಶ ಹೊಂದಿರುತ್ತದೆ. ಇದು ಪಾಸ್ವರ್ಡ್ಗಳು, ಪಾವತಿ ವಿವರಗಳು, ಫೋಟೋಗಳು, ಸಂದೇಶಗಳು ಮತ್ತು ಆಡಿಯೊ ಪ್ಲೇಬ್ಯಾಕ್ನಂತಹ ಮಾಹಿತಿಯನ್ನು ಕೂಡ ಒಳಗೊಂಡಿರುತ್ತದೆ."</string>
- <string name="media_projection_dialog_service_text" msgid="958000992162214611">"ಈ ವೈಶಿಷ್ಟ್ಯವು ಒದಗಿಸುವ ಸೇವೆಗಳು, ಸ್ಕ್ರೀನ್ ಮೇಲೆ ಗೋಚರಿಸುವ ಅಥವಾ ರೆಕಾರ್ಡಿಂಗ್ ಅಥವಾ ಬಿತ್ತರಿಸುವಾಗ ಸಾಧನದಲ್ಲಿ ಪ್ಲೇ ಆಗುವ ಎಲ್ಲಾ ಮಾಹಿತಿಗಳಿಗೆ ಪ್ರವೇಶವನ್ನು ಹೊಂದಿರುತ್ತವೆ. ಪಾಸ್ವರ್ಡ್ಗಳು, ಪಾವತಿ ವಿವರಗಳು, ಫೋಟೋಗಳು, ಸಂದೇಶಗಳು ಮತ್ತು ಆಡಿಯೊ ಪ್ಲೇಬ್ಯಾಕ್ನಂತಹ ಮಾಹಿತಿಯನ್ನು ಇದು ಒಳಗೊಂಡಿದೆ."</string>
+ <string name="media_projection_dialog_text" msgid="1755705274910034772">"ರೆಕಾರ್ಡ್ ಮಾಡುವಾಗ ಅಥವಾ ಬಿತ್ತರಿಸುವಾಗ ಸ್ಕ್ರೀನ್ ಮೇಲೆ ಕಾಣಿಸುವ ಸಕಲ ಮಾಹಿತಿಗೂ <xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g> ಪ್ರವೇಶ ಹೊಂದಿರುತ್ತದೆ. ಇದು ಪಾಸ್ವರ್ಡ್ಗಳು, ಪಾವತಿ ವಿವರಗಳು, ಫೋಟೋಗಳು, ಸಂದೇಶಗಳು ಮತ್ತು ಆಡಿಯೋ ಪ್ಲೇಬ್ಯಾಕ್ನಂತಹ ಮಾಹಿತಿಯನ್ನು ಕೂಡ ಒಳಗೊಂಡಿರುತ್ತದೆ."</string>
+ <string name="media_projection_dialog_service_text" msgid="958000992162214611">"ಈ ವೈಶಿಷ್ಟ್ಯವು ಒದಗಿಸುವ ಸೇವೆಗಳು, ಸ್ಕ್ರೀನ್ ಮೇಲೆ ಗೋಚರಿಸುವ ಅಥವಾ ರೆಕಾರ್ಡಿಂಗ್ ಅಥವಾ ಬಿತ್ತರಿಸುವಾಗ ಸಾಧನದಲ್ಲಿ ಪ್ಲೇ ಆಗುವ ಎಲ್ಲಾ ಮಾಹಿತಿಗಳಿಗೆ ಪ್ರವೇಶವನ್ನು ಹೊಂದಿರುತ್ತವೆ. ಪಾಸ್ವರ್ಡ್ಗಳು, ಪಾವತಿ ವಿವರಗಳು, ಫೋಟೋಗಳು, ಸಂದೇಶಗಳು ಮತ್ತು ಆಡಿಯೋ ಪ್ಲೇಬ್ಯಾಕ್ನಂತಹ ಮಾಹಿತಿಯನ್ನು ಇದು ಒಳಗೊಂಡಿದೆ."</string>
<string name="media_projection_dialog_service_title" msgid="2888507074107884040">"ರೆಕಾರ್ಡಿಂಗ್ ಅಥವಾ ಬಿತ್ತರಿಸುವಿಕೆಯನ್ನು ಪ್ರಾರಂಭಿಸಬೇಕೆ?"</string>
<string name="media_projection_dialog_title" msgid="3316063622495360646">"<xliff:g id="APP_SEEKING_PERMISSION">%s</xliff:g> ಮೂಲಕ ರೆಕಾರ್ಡಿಂಗ್, ಬಿತ್ತರಿಸುವುದನ್ನು ಪ್ರಾರಂಭಿಸುವುದೇ?"</string>
<string name="clear_all_notifications_text" msgid="348312370303046130">"ಎಲ್ಲವನ್ನೂ ತೆರವುಗೊಳಿಸಿ"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"ಈ ಸೆಶನ್ ಕಾಸ್ಟ್ ಮಾಡಲು, ಆ್ಯಪ್ ಅನ್ನು ತೆರೆಯಿರಿ."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"ಅಪರಿಚಿತ ಆ್ಯಪ್"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"ಬಿತ್ತರಿಸುವುದನ್ನು ನಿಲ್ಲಿಸಿ"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"ಆಡಿಯೋ ಔಟ್ಪುಟ್ಗಾಗಿ ಲಭ್ಯವಿರುವ ಸಾಧನಗಳು."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ಪ್ರಸಾರವು ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ಪ್ರಸಾರ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"ಹೊಂದಾಣಿಕೆಯಾಗುವ ಬ್ಲೂಟೂತ್ ಸಾಧನಗಳನ್ನು ಹೊಂದಿರುವ ಸಮೀಪದಲ್ಲಿರುವ ಜನರು ನೀವು ಪ್ರಸಾರ ಮಾಡುತ್ತಿರುವ ಮಾಧ್ಯಮವನ್ನು ಆಲಿಸಬಹುದು"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"ನಕಲಿಸಿದ ಚಿತ್ರವನ್ನು ಎಡಿಟ್ ಮಾಡಿ"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"ಸಮೀಪದಲ್ಲಿರುವ ಸಾಧನಕ್ಕೆ ಕಳುಹಿಸಿ"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"ವೀಕ್ಷಿಸಲು ಟ್ಯಾಪ್ ಮಾಡಿ"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"ಪಠ್ಯವನ್ನು ನಕಲಿಸಲಾಗಿದೆ"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"ಚಿತ್ರವನ್ನು ನಕಲಿಸಲಾಗಿದೆ"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"ವಿಷಯವನ್ನು ನಕಲಿಸಲಾಗಿದೆ"</string>
<string name="add" msgid="81036585205287996">"ಸೇರಿಸಿ"</string>
<string name="manage_users" msgid="1823875311934643849">"ಬಳಕೆದಾರರನ್ನು ನಿರ್ವಹಿಸಿ"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"ಸ್ಪ್ಲಿಟ್ ಸ್ಕ್ರೀನ್ಗೆ ಡ್ರ್ಯಾಗ್ ಮಾಡುವುದನ್ನು ಈ ಅಧಿಸೂಚನೆಯು ಬೆಂಬಲಿಸುವುದಿಲ್ಲ."</string>
diff --git a/packages/SystemUI/res/values-ko/strings.xml b/packages/SystemUI/res/values-ko/strings.xml
index 7337041..0881e41 100644
--- a/packages/SystemUI/res/values-ko/strings.xml
+++ b/packages/SystemUI/res/values-ko/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"위로 스와이프하여 열기"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"기기를 열려면 잠금 해제 아이콘을 누르세요."</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"얼굴 인식으로 잠금 해제되었습니다. 기기를 열려면 잠금 해제 아이콘을 누르세요."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"왼쪽으로 이동"</item>
+ <item msgid="5558598599408514296">"아래로 이동"</item>
+ <item msgid="4844142668312841831">"오른쪽으로 이동"</item>
+ <item msgid="5640521437931460125">"위로 이동"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"위로 스와이프하여 다시 시도해 주세요"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"잠금 해제하여 NFC 사용"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"내 조직에 속한 기기입니다."</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"세션을 전송하려면 앱을 열어 주세요"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"알 수 없는 앱"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"전송 중지"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"오디오 출력에 사용 가능한 기기입니다."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"브로드캐스팅 작동 원리"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"브로드캐스트"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"호환되는 블루투스 기기를 가진 근처의 사용자가 내가 브로드캐스트 중인 미디어를 수신 대기할 수 있습니다."</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"복사된 이미지 편집"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"근처 기기에 전송"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"탭하여 보기"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"텍스트 복사됨"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"이미지 복사됨"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"콘텐츠 복사됨"</string>
<string name="add" msgid="81036585205287996">"추가"</string>
<string name="manage_users" msgid="1823875311934643849">"사용자 관리"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"드래그하여 화면을 분할하는 기능이 지원되지 않는 알림입니다."</string>
diff --git a/packages/SystemUI/res/values-ky/strings.xml b/packages/SystemUI/res/values-ky/strings.xml
index 9efd495c..9dc516c 100644
--- a/packages/SystemUI/res/values-ky/strings.xml
+++ b/packages/SystemUI/res/values-ky/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Ачуу үчүн өйдө сүрүңүз"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Ачуу үчүн кулпусун ачуу сүрөтчөсүн басыңыз"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Кулпусун жүзүңүз менен ачтыңыз. Ачуу үчүн кулпусун ачуу сүрөтчөсүн басыңыз."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Солго жылдыруу"</item>
+ <item msgid="5558598599408514296">"Төмөн жылдыруу"</item>
+ <item msgid="4844142668312841831">"Оңго жылдыруу"</item>
+ <item msgid="5640521437931460125">"Жогору жылдыруу"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Кайталоо үчүн экранды өйдө сүрүңүз"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC колдонуу үчүн түзмөктүн кулпусун ачыңыз"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Бул түзмөк уюмуңузга таандык"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Бул сеансты тышкы экранга чыгаруу үчүн колдонмону ачыңыз."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Белгисиз колдонмо"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Тышкы экранга чыгарууну токтотуу"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Аудио чыгаруу үчүн жеткиликтүү түзмөктөр."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Кабарлоо кантип иштейт"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Кабарлоо"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Шайкеш Bluetooth түзмөктөрү болгон жакын жердеги кишилер кабарлап жаткан медиаңызды уга алышат"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Көчүрүлгөн сүрөттү түзөтүү"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Жакын жердеги түзмөккө жөнөтүү"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Көрүү үчүн таптаңыз"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Текст көчүрүлдү"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Сүрөт көчүрүлдү"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Мазмун көчүрүлдү"</string>
<string name="add" msgid="81036585205287996">"Кошуу"</string>
<string name="manage_users" msgid="1823875311934643849">"Колдонуучуларды башкаруу"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Бул билдирмени бөлүнгөн экранда сүйрөөгө болбойт."</string>
diff --git a/packages/SystemUI/res/values-lo/strings.xml b/packages/SystemUI/res/values-lo/strings.xml
index ae8613d..314ee4c 100644
--- a/packages/SystemUI/res/values-lo/strings.xml
+++ b/packages/SystemUI/res/values-lo/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"ປັດຂຶ້ນເພື່ອເປີດ"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"ກົດໄອຄອນປົດລັອກເພື່ອເປີດ"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"ປົດລັອກດ້ວຍໜ້າແລ້ວ. ກົດໄອຄອນປົດລັອກເພື່ອເປີດ."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"ຍ້າຍໄປຊ້າຍ"</item>
+ <item msgid="5558598599408514296">"ຍ້າຍລົງ"</item>
+ <item msgid="4844142668312841831">"ຍ້າຍໄປຂວາ"</item>
+ <item msgid="5640521437931460125">"ຍ້າຍຂຶ້ນ"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"ປັດຂຶ້ນເພື່ອລອງໃໝ່"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"ປົດລັອກເພື່ອໃຊ້ NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"ອຸປະກອນນີ້ເປັນຂອງອົງການທ່ານ"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"ເພື່ອສົ່ງສັນຍານເຊດຊັນນີ້, ກະລຸນາເປີດແອັບ."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"ແອັບທີ່ບໍ່ຮູ້ຈັກ"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"ຢຸດການສົ່ງສັນຍານ"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"ອຸປະກອນທີ່ສາມາດໃຊ້ໄດ້ສຳລັບເອົ້າພຸດສຽງ."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ການອອກອາກາດເຮັດວຽກແນວໃດ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ອອກອາກາດ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"ຄົນທີ່ຢູ່ໃກ້ທ່ານທີ່ມີອຸປະກອນ Bluetooth ທີ່ເຂົ້າກັນໄດ້ຈະສາມາດຟັງມີເດຍທີ່ທ່ານກຳລັງອອກອາກາດຢູ່ໄດ້"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"ແກ້ໄຂຮູບທີ່ສຳເນົາແລ້ວ"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"ສົ່ງໄປຫາອຸປະກອນທີ່ຢູ່ໃກ້ຄຽງ"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"ແຕະເພື່ອເບິ່ງ"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"ສຳເນົາຂໍ້ຄວາມແລ້ວ"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"ສຳເນົາຮູບແລ້ວ"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"ສຳເນົາເນື້ອຫາແລ້ວ"</string>
<string name="add" msgid="81036585205287996">"ເພີ່ມ"</string>
<string name="manage_users" msgid="1823875311934643849">"ຈັດການຜູ້ໃຊ້"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"ການແຈ້ງເຕືອນນີ້ບໍ່ຮອງຮັບການລາກໄປໃສ່ Splitscreen."</string>
diff --git a/packages/SystemUI/res/values-lt/strings.xml b/packages/SystemUI/res/values-lt/strings.xml
index 800fd58..1b937a9 100644
--- a/packages/SystemUI/res/values-lt/strings.xml
+++ b/packages/SystemUI/res/values-lt/strings.xml
@@ -317,10 +317,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Perbraukite aukštyn, kad atidarytumėte"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Paspauskite atrakinimo piktogramą, kad atidarytumėte"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Atrakinta pagal veidą. Pasp. atr. pikt., kad atidarytumėte."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Perkelti kairėn"</item>
+ <item msgid="5558598599408514296">"Perkelti žemyn"</item>
+ <item msgid="4844142668312841831">"Perkelti dešinėn"</item>
+ <item msgid="5640521437931460125">"Perkelti aukštyn"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Jei norite bandyti dar kartą, perbraukite aukštyn"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Norėdami naudoti NFC, atrakinkite"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Šis įrenginys priklauso jūsų organizacijai"</string>
@@ -853,8 +855,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Jei norite perduoti šį seansą, atidarykite programą."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Nežinoma programa"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Sustabdyti perdavimą"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Pasiekiami garso išvesties įrenginiai."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Kaip veikia transliacija"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transliacija"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Netoliese esantys žmonės, turintys suderinamus „Bluetooth“ įrenginius, gali klausyti jūsų transliuojamos medijos"</string>
@@ -953,12 +954,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Redaguoti nukopijuotą vaizdą"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Siųsti į įrenginį netoliese"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Palieskite ir peržiūrėkite"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Tekstas nukopijuotas"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Vaizdas nukopijuotas"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Turinys nukopijuotas"</string>
<string name="add" msgid="81036585205287996">"Pridėti"</string>
<string name="manage_users" msgid="1823875311934643849">"Tvarkyti naudotojus"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Šio pranešimo vilkimas išskaidyto ekrano režimu nepalaikomas."</string>
diff --git a/packages/SystemUI/res/values-lv/strings.xml b/packages/SystemUI/res/values-lv/strings.xml
index dcf2706..6ff287f 100644
--- a/packages/SystemUI/res/values-lv/strings.xml
+++ b/packages/SystemUI/res/values-lv/strings.xml
@@ -315,10 +315,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Velciet augšup, lai atvērtu"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Lai atvērtu, nospiediet atbloķēšanas ikonu"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Atbloķēta ar seju. Atvērt: nospiediet atbloķēšanas ikonu."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Pārvietojiet pirkstu pa kreisi"</item>
+ <item msgid="5558598599408514296">"Pārvietojiet pirkstu lejup"</item>
+ <item msgid="4844142668312841831">"Pārvietojiet pirkstu pa labi"</item>
+ <item msgid="5640521437931460125">"Pārvietojiet pirkstu augšup"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Velciet augšup, lai mēģinātu vēlreiz"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Atbloķējiet ierīci, lai izmantotu NFC."</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Šī ierīce pieder jūsu organizācijai."</string>
@@ -847,8 +849,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Lai apraidītu šo sesiju, lūdzu, atveriet lietotni."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Nezināma lietotne"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Apturēt apraidi"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Audio izvadei pieejamās ierīces."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Kā darbojas apraide"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Apraide"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Tuvumā esošās personas ar saderīgām Bluetooth ierīcēm var klausīties jūsu apraidīto multivides saturu."</string>
@@ -946,12 +947,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Rediģēt nokopēto attēlu"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Sūtīt uz tuvumā esošu ierīci"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Pieskarieties, lai skatītu"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Teksts ir nokopēts"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Attēls ir nokopēts"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Saturs ir nokopēts"</string>
<string name="add" msgid="81036585205287996">"Pievienot"</string>
<string name="manage_users" msgid="1823875311934643849">"Pārvaldīt lietotājus"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Šis paziņojums neatbalsta vilkšanu uz dalīto ekrānu."</string>
diff --git a/packages/SystemUI/res/values-mk/strings.xml b/packages/SystemUI/res/values-mk/strings.xml
index 2aa4a20..bde13f3 100644
--- a/packages/SystemUI/res/values-mk/strings.xml
+++ b/packages/SystemUI/res/values-mk/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Повлечете за да отворите"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Притиснете ја иконата за отклучување за да отворите"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Отклучено со лице. Притиснете ја иконата за отклучување за да отворите."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Премести налево"</item>
+ <item msgid="5558598599408514296">"Премести надолу"</item>
+ <item msgid="4844142668312841831">"Премести надесно"</item>
+ <item msgid="5640521437931460125">"Премести нагоре"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Повлечете нагоре за да се обидете повторно"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Отклучете за да користите NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Уредов е во сопственост на организацијата"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"За да ја емитувате сесијава, отворете ја апликацијата."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Непозната апликација"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Сопри со емитување"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Достапни уреди за аудиоизлез."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Како функционира емитувањето"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Емитување"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Луѓето во ваша близина со компатибилни уреди со Bluetooth може да ги слушаат аудиозаписите што ги емитувате"</string>
diff --git a/packages/SystemUI/res/values-ml/strings.xml b/packages/SystemUI/res/values-ml/strings.xml
index 663d940..6f51890 100644
--- a/packages/SystemUI/res/values-ml/strings.xml
+++ b/packages/SystemUI/res/values-ml/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"തുറക്കാൻ മുകളിലോട്ട് സ്വൈപ്പ് ചെയ്യുക"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"തുറക്കാൻ അൺലോക്ക് ഐക്കൺ അമർത്തുക"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"മുഖം ഉപയോഗിച്ച് അൺലോക്ക് ചെയ്തു. തുറക്കാൻ അൺലോക്ക് ഐക്കൺ അമർത്തുക."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"ഇടത്തേക്ക് നീക്കുക"</item>
+ <item msgid="5558598599408514296">"താഴേക്ക് നീക്കുക"</item>
+ <item msgid="4844142668312841831">"വലത്തേക്ക് നീക്കുക"</item>
+ <item msgid="5640521437931460125">"മുകളിലേക്ക് നീക്കുക"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"വീണ്ടും ശ്രമിക്കാൻ മുകളിലേക്ക് സ്വൈപ്പ് ചെയ്യുക"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC ഉപയോഗിക്കാൻ അൺലോക്ക് ചെയ്യുക"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"ഈ ഉപകരണം നിങ്ങളുടെ സ്ഥാപനത്തിന്റേതാണ്"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"ഈ സെഷൻ കാസ്റ്റ് ചെയ്യാൻ, ആപ്പ് തുറക്കുക."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"അജ്ഞാതമായ ആപ്പ്"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"കാസ്റ്റ് ചെയ്യുന്നത് നിർത്തുക"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"ഓഡിയോ ഔട്ട്പുട്ടിന് ലഭ്യമായ ഉപകരണങ്ങൾ."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ബ്രോഡ്കാസ്റ്റ് എങ്ങനെയാണ് പ്രവർത്തിക്കുന്നത്"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ബ്രോഡ്കാസ്റ്റ്"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"അനുയോജ്യമായ Bluetooth ഉപകരണങ്ങളോടെ സമീപമുള്ള ആളുകൾക്ക് നിങ്ങൾ ബ്രോഡ്കാസ്റ്റ് ചെയ്യുന്ന മീഡിയ കേൾക്കാനാകും"</string>
diff --git a/packages/SystemUI/res/values-mn/strings.xml b/packages/SystemUI/res/values-mn/strings.xml
index f69a4e9..1caca1e 100644
--- a/packages/SystemUI/res/values-mn/strings.xml
+++ b/packages/SystemUI/res/values-mn/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Нээхийн тулд дээш шударна уу"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Нээхийн тулд түгжээг тайлах дүрс тэмдэг дээр дараарай"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Царайгаар түгжээг тайлсан. Нээхийн тулд түгжээг тайлах дүрс тэмдэг дээр дараарай."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Зүүн тийш зөөх"</item>
+ <item msgid="5558598599408514296">"Доош зөөх"</item>
+ <item msgid="4844142668312841831">"Баруун тийш зөөх"</item>
+ <item msgid="5640521437931460125">"Дээш зөөх"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Дахин оролдохын тулд дээш шударна уу"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC-г ашиглахын тулд түгжээг тайлна уу"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Энэ төхөөрөмж танай байгууллагад харьяалагддаг"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Энэ үйл явдлыг дамжуулахын тулд аппыг нээнэ үү."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Үл мэдэгдэх апп"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Дамжуулахыг зогсоох"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Аудио гаралт хийх боломжтой төхөөрөмжүүд."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Нэвтрүүлэлт хэрхэн ажилладаг вэ?"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Нэвтрүүлэлт"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Тохиромжтой Bluetooth төхөөрөмжүүдтэй таны ойролцоох хүмүүс таны нэвтрүүлж буй медиаг сонсох боломжтой"</string>
diff --git a/packages/SystemUI/res/values-mr/strings.xml b/packages/SystemUI/res/values-mr/strings.xml
index 2d25ab4..f171982 100644
--- a/packages/SystemUI/res/values-mr/strings.xml
+++ b/packages/SystemUI/res/values-mr/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"उघडण्यासाठी वर स्वाइप करा"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"उघडण्यासाठी अनलॉक करा आयकन दाबा"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"चेहऱ्याने अनलॉक केले. उघडण्यासाठी अनलॉक करा आयकन दाबा."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"डावीकडे हलवा"</item>
+ <item msgid="5558598599408514296">"खाली हलवा"</item>
+ <item msgid="4844142668312841831">"उजवीकडे हलवा"</item>
+ <item msgid="5640521437931460125">"वर हलवा"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"पुन्हा प्रयत्न करण्यासाठी वर स्वाइप करा"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC वापरण्यासाठी स्क्रीन अनलॉक करा"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"हे डिव्हाइस तुमच्या संस्थेचे आहे"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"हे सेशन कास्ट करण्यासाठी, कृपया ॲप उघडा."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"अज्ञात अॅप"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"कास्ट करणे थांबवा"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"ऑडिओ आउटपुटसाठी उपलब्ध डिव्हाइस."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ब्रॉडकास्टिंग कसे काम करते"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ब्रॉडकास्ट करा"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"कंपॅटिबिल ब्लूटूथ डिव्हाइस असलेले तुमच्या जवळपासचे लोक हे तुम्ही ब्रॉडकास्ट करत असलेला मीडिया ऐकू शकतात"</string>
diff --git a/packages/SystemUI/res/values-ms/strings.xml b/packages/SystemUI/res/values-ms/strings.xml
index 7441847..fd0d57d 100644
--- a/packages/SystemUI/res/values-ms/strings.xml
+++ b/packages/SystemUI/res/values-ms/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Leret ke atas untuk buka"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Tekan ikon buka kunci untuk buka"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Dibuka kunci dengan wajah. Tekan ikon buka kunci untuk buka."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Alih ke kiri"</item>
+ <item msgid="5558598599408514296">"Alih ke bawah"</item>
+ <item msgid="4844142668312841831">"Alih ke kanan"</item>
+ <item msgid="5640521437931460125">"Alih ke atas"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Leret ke atas untuk mencuba lagi"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Buka kunci untuk menggunakan NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Peranti ini milik organisasi anda"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Untuk menghantar sesi ini, sila buka apl."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Apl yang tidak diketahui"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Berhenti menghantar"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Peranti tersedia untuk audio output."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Cara siaran berfungsi"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Siarkan"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Orang berdekatan anda dengan peranti Bluetooth yang serasi boleh mendengar media yang sedang anda siarkan"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Edit imej yang disalin"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Hantar ke peranti berdekatan"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Ketik untuk lihat"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Teks disalin"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Imej disalin"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Kandungan disalin"</string>
<string name="add" msgid="81036585205287996">"Tambah"</string>
<string name="manage_users" msgid="1823875311934643849">"Urus pengguna"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Pemberitahuan ini tidak menyokong penyeretan ke Skrin pisah."</string>
diff --git a/packages/SystemUI/res/values-my/strings.xml b/packages/SystemUI/res/values-my/strings.xml
index 7343bcf..d0d74bf 100644
--- a/packages/SystemUI/res/values-my/strings.xml
+++ b/packages/SystemUI/res/values-my/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"ဖွင့်ရန် အပေါ်သို့ပွတ်ဆွဲပါ"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"ဖွင့်ရန် လော့ခ်ဖွင့်သင်္ကေတကို နှိပ်ပါ"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"မျက်နှာဖြင့် ဖွင့်ထားသည်။ ဖွင့်ရန် လော့ခ်ဖွင့်သင်္ကေတကို နှိပ်ပါ။"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"ဘယ်ဘက်သို့ရွှေ့ရန်"</item>
+ <item msgid="5558598599408514296">"အောက်သို့ရွှေ့ရန်"</item>
+ <item msgid="4844142668312841831">"ညာဘက်သို့ရွှေ့ရန်"</item>
+ <item msgid="5640521437931460125">"အပေါ်သို့ရွှေ့ရန်"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"ထပ်စမ်းကြည့်ရန် အပေါ်သို့ပွတ်ဆွဲပါ"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC ကို အသုံးပြုရန် လော့ခ်ဖွင့်ပါ"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"ဤစက်ကို သင့်အဖွဲ့အစည်းက ပိုင်ဆိုင်သည်"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"အက်ပ်ဖွင့်ပြီး ဤစက်ရှင်ကို ကာစ်လုပ်နိုင်သည်။"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"အမည်မသိ အက်ပ်"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"ကာစ် ရပ်ရန်"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"အသံအထွက်အတွက် ရရှိနိုင်သောစက်များ။"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ထုတ်လွှင့်မှုဆောင်ရွက်ပုံ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ထုတ်လွှင့်ခြင်း"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"အနီးရှိတွဲသုံးနိုင်သော ဘလူးတုသ်သုံးစက် အသုံးပြုသူများက သင်ထုတ်လွှင့်နေသော မီဒီယာကို နားဆင်နိုင်သည်"</string>
diff --git a/packages/SystemUI/res/values-nb/strings.xml b/packages/SystemUI/res/values-nb/strings.xml
index 5882d75..2f74e77 100644
--- a/packages/SystemUI/res/values-nb/strings.xml
+++ b/packages/SystemUI/res/values-nb/strings.xml
@@ -939,12 +939,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Rediger det kopierte bildet"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Send til en enhet i nærheten"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Trykk for å se"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Teksten er kopiert"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Bildet er kopiert"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Innholdet er kopiert"</string>
<string name="add" msgid="81036585205287996">"Legg til"</string>
<string name="manage_users" msgid="1823875311934643849">"Administrer brukere"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Dette varselet støtter ikke at du drar det til en delt skjerm."</string>
diff --git a/packages/SystemUI/res/values-ne/strings.xml b/packages/SystemUI/res/values-ne/strings.xml
index 23f1fca..cb016d6 100644
--- a/packages/SystemUI/res/values-ne/strings.xml
+++ b/packages/SystemUI/res/values-ne/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"खोल्न माथितिर स्वाइप गर्नुहोस्"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"खोल्न अनलक आइकनमा थिच्नुहोस्"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"अनुहार प्रयोग गरी अनलक गरियो। खोल्न अनलक आइकनमा थिच्नुहोस्।"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"बायाँ सार्नुहोस्"</item>
+ <item msgid="5558598599408514296">"तल सार्नुहोस्"</item>
+ <item msgid="4844142668312841831">"दायाँ सार्नुहोस्"</item>
+ <item msgid="5640521437931460125">"माथि सार्नुहोस्"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"फेरि प्रयास गर्न माथितिर स्वाइप गर्नुहोस्"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC प्रयोग गर्न स्क्रिन अनलक गर्नुहोस्"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"यो डिभाइस तपाईंको सङ्गठनको स्वामित्वमा छ"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"यो सत्र कास्ट गर्न चाहनुहुन्छ भने कृपया एप खोल्नुहोस्।"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"अज्ञात एप"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"कास्ट गर्न छाड्नुहोस्"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"अडियो आउटपुटका लागि उपलब्ध डिभाइसहरू।"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"प्रसारण गर्ने सुविधाले कसरी काम गर्छ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"प्रसारण"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"कम्प्याटिबल ब्लुटुथ डिभाइस भएका नजिकैका मान्छेहरू तपाईंले प्रसारण गरिरहनुभएको मिडिया सुन्न सक्छन्"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"कपी गरिएको फोटो सम्पादन गर्नुहोस्"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"नजिकैको डिभाइसमा पठाउनुहोस्"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"हेर्न ट्याप गर्नुहोस्"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"टेक्स्ट कपी गरिएको छ"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"फोटो कपी गरिएको छ"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"सामग्री कपी गरिएको छ"</string>
<string name="add" msgid="81036585205287996">"हाल्नुहोस्"</string>
<string name="manage_users" msgid="1823875311934643849">"प्रयोगकर्ताहरूको व्यवस्थापन गर्नुहोस्"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"यो सूचना ड्र्याग गरेर स्प्लिटस्क्रिनमा लैजान मिल्दैन।"</string>
diff --git a/packages/SystemUI/res/values-nl/strings.xml b/packages/SystemUI/res/values-nl/strings.xml
index 2cfaa50..5585871 100644
--- a/packages/SystemUI/res/values-nl/strings.xml
+++ b/packages/SystemUI/res/values-nl/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Swipe omhoog om te openen"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Druk op het ontgrendelicoon om te openen"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Ontgrendeld via gezicht. Druk op het ontgrendelicoon."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Naar links verplaatsen"</item>
+ <item msgid="5558598599408514296">"Omlaag verplaatsen"</item>
+ <item msgid="4844142668312841831">"Naar rechts verplaatsen"</item>
+ <item msgid="5640521437931460125">"Omhoog verplaatsen"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Swipe omhoog om het opnieuw te proberen"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Ontgrendel het apparaat om NFC te gebruiken"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Dit apparaat is eigendom van je organisatie"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Als je deze sessie wilt casten, open je de app."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Onbekende app"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Casten stoppen"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Beschikbare apparaten voor audio-uitvoer."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Hoe uitzenden werkt"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Uitzending"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Mensen bij jou in de buurt met geschikte bluetooth-apparaten kunnen luisteren naar de media die je uitzendt"</string>
diff --git a/packages/SystemUI/res/values-or/strings.xml b/packages/SystemUI/res/values-or/strings.xml
index da17cd7..019447a 100644
--- a/packages/SystemUI/res/values-or/strings.xml
+++ b/packages/SystemUI/res/values-or/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"ଖୋଲିବା ପାଇଁ ଉପରକୁ ସ୍ୱାଇପ୍ କରନ୍ତୁ"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"ଖୋଲିବାକୁ ଅନଲକ ଆଇକନ ଦବାନ୍ତୁ"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"ଫେସ ମାଧ୍ୟମରେ ଅନଲକ କରାଯାଇଛି। ଖୋଲିବାକୁ ଅନଲକ ଆଇକନ ଦବାନ୍ତୁ।"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"ବାମକୁ ମୁଭ କରନ୍ତୁ"</item>
+ <item msgid="5558598599408514296">"ତଳକୁ ମୁଭ କରନ୍ତୁ"</item>
+ <item msgid="4844142668312841831">"ଡାହାଣକୁ ମୁଭ କରନ୍ତୁ"</item>
+ <item msgid="5640521437931460125">"ଉପରକୁ ମୁଭ କରନ୍ତୁ"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"ପୁଣି ଚେଷ୍ଟା କରିବା ପାଇଁ ଉପରକୁ ସ୍ୱାଇପ୍ କରନ୍ତୁ"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC ବ୍ୟବହାର କରିବାକୁ ଅନଲକ୍ କରନ୍ତୁ"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"ଏହି ଡିଭାଇସଟି ଆପଣଙ୍କ ସଂସ୍ଥାର ଅଟେ"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"ଏହି ସେସନକୁ କାଷ୍ଟ କରିବା ପାଇଁ, ଦୟାକରି ଆପ ଖୋଲନ୍ତୁ।"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"ଅଜଣା ଆପ"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"କାଷ୍ଟ କରିବା ବନ୍ଦ କରନ୍ତୁ"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"ଅଡିଓ ଆଉଟପୁଟ ପାଇଁ ଉପଲବ୍ଧ ଡିଭାଇସଗୁଡ଼ିକ।"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ବ୍ରଡକାଷ୍ଟିଂ କିପରି କାମ କରେ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ବ୍ରଡକାଷ୍ଟ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"ଆପଣଙ୍କ ଆଖପାଖର କମ୍ପାଟିବଲ ବ୍ଲୁଟୁଥ ଡିଭାଇସ ଥିବା ଲୋକମାନେ ଆପଣ ବ୍ରଡକାଷ୍ଟ କରୁଥିବା ମିଡିଆ ଶୁଣିପାରିବେ"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"କପି କରାଯାଇଥିବା ଇମେଜକୁ ଏଡିଟ କରନ୍ତୁ"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"ନିକଟସ୍ଥ ଡିଭାଇସକୁ ପଠାନ୍ତୁ"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"ଦେଖିବାକୁ ଟାପ କରନ୍ତୁ"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"ଟେକ୍ସଟ କପି କରାଯାଇଛି"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"ଇମେଜ କପି କରାଯାଇଛି"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"ବିଷୟବସ୍ତୁ କପି କରାଯାଇଛି"</string>
<string name="add" msgid="81036585205287996">"ଯୋଗ କରନ୍ତୁ"</string>
<string name="manage_users" msgid="1823875311934643849">"ଉପଯୋଗକର୍ତ୍ତାମାନଙ୍କୁ ପରିଚାଳନା କରନ୍ତୁ"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"ଏହି ବିଜ୍ଞପ୍ତି ସ୍ପ୍ଲିଟସ୍କ୍ରିନକୁ ଡ୍ରାଗ କରିବାକୁ ସମର୍ଥନ କରେ ନାହିଁ।"</string>
diff --git a/packages/SystemUI/res/values-pa/strings.xml b/packages/SystemUI/res/values-pa/strings.xml
index e8636db..5ab17ce 100644
--- a/packages/SystemUI/res/values-pa/strings.xml
+++ b/packages/SystemUI/res/values-pa/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"ਖੋਲ੍ਹਣ ਲਈ ਉੱਪਰ ਵੱਲ ਸਵਾਈਪ ਕਰੋ"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"ਖੋਲ੍ਹਣ ਲਈ \'ਅਣਲਾਕ ਕਰੋ\' ਪ੍ਰਤੀਕ ਨੂੰ ਦਬਾਓ"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"ਚਿਹਰੇ ਰਾਹੀਂ ਅਣਲਾਕ ਕੀਤਾ ਗਿਆ। ਖੋਲ੍ਹਣ ਲਈ \'ਅਣਲਾਕ ਕਰੋ\' ਪ੍ਰਤੀਕ ਨੂੰ ਦਬਾਓ।"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"ਖੱਬੇ ਲਿਜਾਓ"</item>
+ <item msgid="5558598599408514296">"ਹੇਠਾਂ ਲਿਜਾਓ"</item>
+ <item msgid="4844142668312841831">"ਸੱਜੇ ਲਿਜਾਓ"</item>
+ <item msgid="5640521437931460125">"ਉੱਪਰ ਲਿਜਾਓ"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰਨ ਲਈ ਉੱਤੇ ਵੱਲ ਸਵਾਈਪ ਕਰੋ"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC ਵਰਤਣ ਲਈ ਅਣਲਾਕ ਕਰੋ"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"ਇਹ ਡੀਵਾਈਸ ਤੁਹਾਡੀ ਸੰਸਥਾ ਨਾਲ ਸੰਬੰਧਿਤ ਹੈ"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"ਇਸ ਸੈਸ਼ਨ ਨੂੰ ਕਾਸਟ ਕਰਨ ਲਈ, ਕਿਰਪਾ ਕਰਕੇ ਐਪ ਖੋਲ੍ਹੋ।"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"ਅਗਿਆਤ ਐਪ"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"ਕਾਸਟ ਕਰਨਾ ਬੰਦ ਕਰੋ"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"ਆਡੀਓ ਆਊਟਪੁੱਟ ਲਈ ਉਪਲਬਧ ਡੀਵਾਈਸ।"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ਪ੍ਰਸਾਰਨ ਕਿਵੇਂ ਕੰਮ ਕਰਦਾ ਹੈ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ਪ੍ਰਸਾਰਨ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"ਅਨੁਰੂਪ ਬਲੂਟੁੱਥ ਡੀਵਾਈਸਾਂ ਨਾਲ ਨਜ਼ਦੀਕੀ ਲੋਕ ਤੁਹਾਡੇ ਵੱਲੋਂ ਪ੍ਰਸਾਰਨ ਕੀਤੇ ਜਾ ਰਹੇ ਮੀਡੀਆ ਨੂੰ ਸੁਣ ਸਕਦੇ ਹਨ"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"ਕਾਪੀ ਕੀਤੇ ਗਏ ਚਿੱਤਰ ਦਾ ਸੰਪਾਦਨ ਕਰੋ"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"ਨਜ਼ਦੀਕੀ ਡੀਵਾਈਸ \'ਤੇ ਭੇਜੋ"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"ਦੇਖਣ ਲਈ ਟੈਪ ਕਰੋ"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"ਲਿਖਤ ਕਾਪੀ ਕੀਤੀ ਗਈ"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"ਚਿੱਤਰ ਕਾਪੀ ਕੀਤਾ ਗਿਆ"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"ਸਮੱਗਰੀ ਕਾਪੀ ਕੀਤੀ ਗਈ"</string>
<string name="add" msgid="81036585205287996">"ਸ਼ਾਮਲ ਕਰੋ"</string>
<string name="manage_users" msgid="1823875311934643849">"ਵਰਤੋਂਕਾਰਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰੋ"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"ਇਹ ਸੂਚਨਾ ਸਪਲਿਟ ਸਕ੍ਰੀਨ \'ਤੇ ਘਸੀਟਣ ਦਾ ਸਮਰਥਨ ਨਹੀਂ ਕਰਦੀ ਹੈ।"</string>
diff --git a/packages/SystemUI/res/values-pl/strings.xml b/packages/SystemUI/res/values-pl/strings.xml
index 137cfa7..504a48b 100644
--- a/packages/SystemUI/res/values-pl/strings.xml
+++ b/packages/SystemUI/res/values-pl/strings.xml
@@ -953,12 +953,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Edytuj skopiowany obraz"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Wyślij na urządzenie w pobliżu"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Kliknij, aby wyświetlić"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Tekst został skopiowany"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Zdjęcie zostało skopiowane"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Treści zostały skopiowane"</string>
<string name="add" msgid="81036585205287996">"Dodaj"</string>
<string name="manage_users" msgid="1823875311934643849">"Zarządzaj użytkownikami"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"To powiadomienie nie obsługuje dzielenia ekranu przez przeciąganie."</string>
diff --git a/packages/SystemUI/res/values-pt-rBR/strings.xml b/packages/SystemUI/res/values-pt-rBR/strings.xml
index af48ced..0ca3fe4 100644
--- a/packages/SystemUI/res/values-pt-rBR/strings.xml
+++ b/packages/SystemUI/res/values-pt-rBR/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Deslize para cima para abrir"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Pressione o ícone de desbloqueio para abrir"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Desbloqueado pelo rosto. Pressione o ícone de desbloqueio para abrir."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Mais para a esquerda"</item>
+ <item msgid="5558598599408514296">"Mais para baixo"</item>
+ <item msgid="4844142668312841831">"Mais para a direita"</item>
+ <item msgid="5640521437931460125">"Mais para cima"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Deslize para cima para tentar novamente"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Desbloqueie para usar a NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Este dispositivo pertence à sua organização"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Abra o app para transmitir esta sessão."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"App desconhecido"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Parar transmissão"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Dispositivos disponíveis para saída de áudio."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Como funciona a transmissão"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transmitir"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"As pessoas próximas a você com dispositivos Bluetooth compatíveis podem ouvir a mídia que você está transmitindo"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Editar imagem copiada"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Enviar para dispositivo próximo"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Toque para ver"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Texto copiado"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Imagem copiada"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Conteúdo copiado"</string>
<string name="add" msgid="81036585205287996">"Adicionar"</string>
<string name="manage_users" msgid="1823875311934643849">"Gerenciar usuários"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Esta notificação não tem suporte para ser arrastada para a tela dividida."</string>
diff --git a/packages/SystemUI/res/values-pt-rPT/strings.xml b/packages/SystemUI/res/values-pt-rPT/strings.xml
index f990ac4..64eda2c 100644
--- a/packages/SystemUI/res/values-pt-rPT/strings.xml
+++ b/packages/SystemUI/res/values-pt-rPT/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Deslize rapidamente para cima para abrir"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Prima o ícone de desbloqueio para abrir"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Desbloqueado com o rosto. Prima o ícone de desbl. p/ abrir."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Mover para a esquerda"</item>
+ <item msgid="5558598599408514296">"Mover para baixo"</item>
+ <item msgid="4844142668312841831">"Mover para a direita"</item>
+ <item msgid="5640521437931460125">"Mover para cima"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Deslize rapidamente para cima para tentar novamente."</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Desbloquear para utilizar o NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Este dispositivo pertence à sua entidade."</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Para transmitir esta sessão, abra a app."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"App desconhecida"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Parar transmissão"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Dispositivos disponíveis para a saída de áudio."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Como funciona a transmissão"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transmissão"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"As pessoas próximas de si com dispositivos Bluetooth compatíveis podem ouvir o conteúdo multimédia que está a transmitir"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Editar imagem copiada"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Enviar para dispositivo próximo"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Toque para ver"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Texto copiado"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Imagem copiada"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Conteúdo copiado"</string>
<string name="add" msgid="81036585205287996">"Adicionar"</string>
<string name="manage_users" msgid="1823875311934643849">"Gerir utilizadores"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Esta notificação não pode ser arrastada para o ecrã dividido."</string>
diff --git a/packages/SystemUI/res/values-pt-rPT/tiles_states_strings.xml b/packages/SystemUI/res/values-pt-rPT/tiles_states_strings.xml
index 8ffa760..c8e557b 100644
--- a/packages/SystemUI/res/values-pt-rPT/tiles_states_strings.xml
+++ b/packages/SystemUI/res/values-pt-rPT/tiles_states_strings.xml
@@ -58,7 +58,7 @@
</string-array>
<string-array name="tile_states_flashlight">
<item msgid="3465257127433353857">"Indisponível"</item>
- <item msgid="5044688398303285224">"Desligado"</item>
+ <item msgid="5044688398303285224">"Desligada"</item>
<item msgid="8527389108867454098">"Ligado"</item>
</string-array>
<string-array name="tile_states_rotation">
diff --git a/packages/SystemUI/res/values-pt/strings.xml b/packages/SystemUI/res/values-pt/strings.xml
index af48ced..0ca3fe4 100644
--- a/packages/SystemUI/res/values-pt/strings.xml
+++ b/packages/SystemUI/res/values-pt/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Deslize para cima para abrir"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Pressione o ícone de desbloqueio para abrir"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Desbloqueado pelo rosto. Pressione o ícone de desbloqueio para abrir."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Mais para a esquerda"</item>
+ <item msgid="5558598599408514296">"Mais para baixo"</item>
+ <item msgid="4844142668312841831">"Mais para a direita"</item>
+ <item msgid="5640521437931460125">"Mais para cima"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Deslize para cima para tentar novamente"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Desbloqueie para usar a NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Este dispositivo pertence à sua organização"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Abra o app para transmitir esta sessão."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"App desconhecido"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Parar transmissão"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Dispositivos disponíveis para saída de áudio."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Como funciona a transmissão"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transmitir"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"As pessoas próximas a você com dispositivos Bluetooth compatíveis podem ouvir a mídia que você está transmitindo"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Editar imagem copiada"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Enviar para dispositivo próximo"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Toque para ver"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Texto copiado"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Imagem copiada"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Conteúdo copiado"</string>
<string name="add" msgid="81036585205287996">"Adicionar"</string>
<string name="manage_users" msgid="1823875311934643849">"Gerenciar usuários"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Esta notificação não tem suporte para ser arrastada para a tela dividida."</string>
diff --git a/packages/SystemUI/res/values-ro/strings.xml b/packages/SystemUI/res/values-ro/strings.xml
index d5352598..b5c9720 100644
--- a/packages/SystemUI/res/values-ro/strings.xml
+++ b/packages/SystemUI/res/values-ro/strings.xml
@@ -315,10 +315,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Glisați în sus pentru a deschide"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Apăsați pictograma de deblocare pentru a deschide"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"S-a deblocat cu ajutorul feței. Apăsați pictograma de deblocare pentru a deschide"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Deplasați spre stânga"</item>
+ <item msgid="5558598599408514296">"Deplasați în jos"</item>
+ <item msgid="4844142668312841831">"Deplasați spre dreapta"</item>
+ <item msgid="5640521437931460125">"Deplasați în sus"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Glisați pentru a încerca din nou"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Deblocați pentru a folosi NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Dispozitivul aparține organizației dvs."</string>
@@ -847,8 +849,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Pentru a proiecta această sesiune, deschideți aplicația."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Aplicație necunoscută"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Nu mai proiectați"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Dispozitive disponibile pentru ieșire audio."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Cum funcționează transmisia"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transmiteți"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Persoanele din apropiere cu dispozitive Bluetooth compatibile pot asculta conținutul pe care îl transmiteți"</string>
diff --git a/packages/SystemUI/res/values-ru/strings.xml b/packages/SystemUI/res/values-ru/strings.xml
index 1d1c192..bcef80c 100644
--- a/packages/SystemUI/res/values-ru/strings.xml
+++ b/packages/SystemUI/res/values-ru/strings.xml
@@ -317,10 +317,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Проведите вверх, чтобы открыть"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Нажмите на значок разблокировки."</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Сканирование выполнено. Нажмите на значок разблокировки."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Переместите палец влево"</item>
+ <item msgid="5558598599408514296">"Переместите палец вниз"</item>
+ <item msgid="4844142668312841831">"Переместите палец вправо"</item>
+ <item msgid="5640521437931460125">"Переместите палец вверх"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Чтобы повторить попытку, проведите вверх"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Чтобы использовать NFC, разблокируйте устройство."</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Это устройство принадлежит вашей организации"</string>
@@ -853,8 +855,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Чтобы начать трансляцию сеанса, откройте приложение"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Неизвестное приложение"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Остановить трансляцию"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Доступные устройства для вывода звука."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Как работают трансляции"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Трансляция"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Находящиеся рядом с вами люди с совместимыми устройствами Bluetooth могут слушать медиафайлы, которые вы транслируете."</string>
@@ -953,12 +954,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Изменить скопированное изображение"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Отправить на устройство поблизости"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Нажмите, чтобы посмотреть"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Текст скопирован"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Изображение скопировано"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Данные скопированы"</string>
<string name="add" msgid="81036585205287996">"Добавить"</string>
<string name="manage_users" msgid="1823875311934643849">"Управление пользователями"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Это уведомление нельзя перетаскивать между частями разделенного экрана."</string>
diff --git a/packages/SystemUI/res/values-si/strings.xml b/packages/SystemUI/res/values-si/strings.xml
index b6ca3ac..174259c 100644
--- a/packages/SystemUI/res/values-si/strings.xml
+++ b/packages/SystemUI/res/values-si/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"විවෘත කිරීමට ස්වයිප් කරන්න"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"විවෘත කිරීමට අගුලු හැරීමේ නිරූපකය ඔබන්න"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"මුහුණ මගින් අගුලු හරින ලදි. විවෘත කිරීමට අගුලු හැරීමේ නිරූපකය ඔබන්න."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"වමට ගෙන යන්න"</item>
+ <item msgid="5558598599408514296">"පහළට ගෙන යන්න"</item>
+ <item msgid="4844142668312841831">"දකුණට ගෙන යන්න"</item>
+ <item msgid="5640521437931460125">"ඉහළට ගෙන යන්න"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"නැවත උත්සාහ කිරීමට ඉහළට ස්වයිප් කරන්න"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC භාවිත කිරීමට අගුලු හරින්න"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"මෙම උපාංගය ඔබේ සංවිධානයට අයිතිය"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"මෙම සැසිය විකාශය කිරීමට, කරුණාකර යෙදුම විවෘත කරන්න."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"නොදන්නා යෙදුම"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"විකාශය නවතන්න"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"ශ්රව්ය ප්රතිදානය සඳහා තිබෙන උපාංග."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"විකාශනය ක්රියා කරන ආකාරය"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"විකාශනය"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"ගැළපෙන බ්ලූටූත් උපාංග සහිත ඔබ අවට සිටින පුද්ගලයින්ට ඔබ විකාශනය කරන මාධ්යයට සවන් දිය හැකිය"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"පිටපත් කළ රූපය සංස්කරණය කරන්න"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"අවට උපාංගය වෙත යවන්න"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"බැලීමට තට්ටු කරන්න"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"පෙළ පිටපත් කරන ලදී"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"රූපය පිටපත් කරන ලදි"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"අන්තර්ගතය පිටපත් කරන ලදි"</string>
<string name="add" msgid="81036585205287996">"එක් කරන්න"</string>
<string name="manage_users" msgid="1823875311934643849">"පරිශීලකයන් කළමනාකරණය කරන්න"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"මෙම දැනුම්දීම බෙදුම් තිරය වෙත ඇද ගෙන යාමට සහාය නොදක්වයි."</string>
diff --git a/packages/SystemUI/res/values-sk/strings.xml b/packages/SystemUI/res/values-sk/strings.xml
index 61ceda3..cad59bf 100644
--- a/packages/SystemUI/res/values-sk/strings.xml
+++ b/packages/SystemUI/res/values-sk/strings.xml
@@ -317,10 +317,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Otvorte potiahnutím prstom nahor"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Otvorte klepnutím na ikonu odomknutia"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Odomknuté tvárou. Otvorte klepnutím na ikonu odomknutia."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Posunúť doľava"</item>
+ <item msgid="5558598599408514296">"Posunúť nadol"</item>
+ <item msgid="4844142668312841831">"Posunúť doprava"</item>
+ <item msgid="5640521437931460125">"Posunúť nahor"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Potiahnutím nahor to skúste znova"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Ak chcete použiť NFC, odomknite"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Toto zariadenie patrí vašej organizácii"</string>
@@ -853,8 +855,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Ak chcete túto reláciu prenášať, otvorte aplikáciu."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Neznáma aplikácia"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Zastaviť prenos"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Dostupné zariadenia pre zvukový výstup."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Ako vysielanie funguje"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Vysielanie"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Ľudia v okolí s kompatibilnými zariadeniami s rozhraním Bluetooth si môžu vypočuť médiá, ktoré vysielate"</string>
@@ -953,12 +954,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Upraviť skopírovaný obrázok"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Odoslať do zariadenia v okolí"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Zobrazíte klepnutím"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Text bol skopírovaný"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Obrázok bol skopírovaný"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Obsah bol skopírovaný"</string>
<string name="add" msgid="81036585205287996">"Pridať"</string>
<string name="manage_users" msgid="1823875311934643849">"Spravovať používateľov"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Toto upozornenie nepodporuje presun na rozdelenú obrazovku."</string>
diff --git a/packages/SystemUI/res/values-sl/strings.xml b/packages/SystemUI/res/values-sl/strings.xml
index 8978ffe..9260d842 100644
--- a/packages/SystemUI/res/values-sl/strings.xml
+++ b/packages/SystemUI/res/values-sl/strings.xml
@@ -317,10 +317,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Povlecite navzgor, da odprete"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Za odpiranje pritisnite ikono za odklepanje."</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Odklenjeno z obrazom. Za odpiranje pritisnite ikono za odklepanje."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Premik levo"</item>
+ <item msgid="5558598599408514296">"Premik navzdol"</item>
+ <item msgid="4844142668312841831">"Premik desno"</item>
+ <item msgid="5640521437931460125">"Premik navzgor"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Povlecite navzgor za vnovičen poskus"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Odklenite napravo, če želite uporabljati NFC."</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Ta naprava pripada vaši organizaciji"</string>
@@ -853,8 +855,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Če želite predvajati to sejo, odprite aplikacijo."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Neznana aplikacija"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Ustavi predvajanje"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Razpoložljive naprave za zvočni izhod"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Kako deluje oddajanje"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Oddajanje"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Osebe v bližini z združljivo napravo Bluetooth lahko poslušajo predstavnost, ki jo oddajate."</string>
@@ -953,12 +954,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Uredi kopirano sliko"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Pošlji v napravo v bližini"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Dotaknite se za ogled"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Besedilo je kopirano"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Slika je kopirana"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Vsebina je kopirana"</string>
<string name="add" msgid="81036585205287996">"Dodaj"</string>
<string name="manage_users" msgid="1823875311934643849">"Upravljanje uporabnikov"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"To obvestilo ne podpira vlečenja v razdeljen zaslon."</string>
diff --git a/packages/SystemUI/res/values-sq/strings.xml b/packages/SystemUI/res/values-sq/strings.xml
index e326e0d..0516adf 100644
--- a/packages/SystemUI/res/values-sq/strings.xml
+++ b/packages/SystemUI/res/values-sq/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Rrëshqit lart për ta hapur"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Shtyp ikonën e shkyçjes për ta hapur"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"U shkyç me fytyrë. Shtyp ikonën e shkyçjes për ta hapur."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Lëvize majtas"</item>
+ <item msgid="5558598599408514296">"Lëvize poshtë"</item>
+ <item msgid="4844142668312841831">"Lëvize djathtas"</item>
+ <item msgid="5640521437931460125">"Lëvize lart"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Rrëshqit lart për të provuar përsëri"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Shkyçe për të përdorur NFC-në"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Kjo pajisje i përket organizatës sate"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Hap aplikacionin për të transmetuar këtë seancë."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Aplikacion i panjohur"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Ndalo transmetimin"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Pajisjet që ofrohen për daljen e audios."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Si funksionon transmetimi"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Transmetimi"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Personat në afërsi me ty me pajisje të përputhshme me Bluetooth mund të dëgjojnë median që ti po transmeton"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Modifiko imazhin e kopjuar"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Dërgo te pajisja në afërsi"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Trokit për të parë"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Teksti u kopjua"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Imazhi u kopjua"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Përmbajtja u kopjua"</string>
<string name="add" msgid="81036585205287996">"Shto"</string>
<string name="manage_users" msgid="1823875311934643849">"Menaxho përdoruesit"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Ky njoftim nuk mbështet zvarritjen në \"Ekranin e ndarë\"."</string>
diff --git a/packages/SystemUI/res/values-sr/strings.xml b/packages/SystemUI/res/values-sr/strings.xml
index c94c688..9e6b558 100644
--- a/packages/SystemUI/res/values-sr/strings.xml
+++ b/packages/SystemUI/res/values-sr/strings.xml
@@ -315,10 +315,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Превуците нагоре да бисте отворили"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Притисните икону откључавања за отварање"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Откључано је лицем. Притисните икону откључавања за отварање"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Померите налево"</item>
+ <item msgid="5558598599408514296">"Померите надоле"</item>
+ <item msgid="4844142668312841831">"Померите надесно"</item>
+ <item msgid="5640521437931460125">"Померите нагоре"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Превуците нагоре да бисте пробали поново"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Откључајте да бисте користили NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Овај уређај припада организацији"</string>
@@ -847,8 +849,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Да бисте пребацивали ову сесију, отворите апликацију."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Непозната апликација"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Заустави пребацивање"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Доступни уређаји за аудио излаз."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Како функционише емитовање"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Емитовање"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Људи у близини са компатибилним Bluetooth уређајима могу да слушају медијски садржај који емитујете"</string>
@@ -940,18 +941,15 @@
<string name="fgs_manager_app_item_stop_button_stopped_label" msgid="6950382004441263922">"Заустављено"</string>
<string name="clipboard_edit_text_done" msgid="4551887727694022409">"Готово"</string>
<string name="clipboard_overlay_text_copied" msgid="1872624400464891363">"Копирано је"</string>
- <string name="clipboard_edit_source" msgid="9156488177277788029">"Из: <xliff:g id="APPNAME">%1$s</xliff:g>"</string>
+ <string name="clipboard_edit_source" msgid="9156488177277788029">"Од: <xliff:g id="APPNAME">%1$s</xliff:g>"</string>
<string name="clipboard_dismiss_description" msgid="7544573092766945657">"Одбаци копирање корисничког интерфејса"</string>
<string name="clipboard_edit_text_description" msgid="805254383912962103">"Измените копирани текст"</string>
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Измените копирану слику"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Пошаљи на уређај у близини"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Додирните да бисте прегледали"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Текст је копиран"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Слика је копирана"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Садржај је копиран"</string>
<string name="add" msgid="81036585205287996">"Додај"</string>
<string name="manage_users" msgid="1823875311934643849">"Управљаjте корисницима"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Ово обавештење не подржава превлачење на подељени екран."</string>
diff --git a/packages/SystemUI/res/values-sv/strings.xml b/packages/SystemUI/res/values-sv/strings.xml
index 0c574bc..eac570b 100644
--- a/packages/SystemUI/res/values-sv/strings.xml
+++ b/packages/SystemUI/res/values-sv/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Öppna genom att svepa uppåt"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Tryck på ikonen lås upp för att öppna"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Upplåst med ansiktslås. Tryck på ikonen lås upp för att öppna."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Flytta åt vänster"</item>
+ <item msgid="5558598599408514296">"Flytta nedåt"</item>
+ <item msgid="4844142668312841831">"Flytta åt höger"</item>
+ <item msgid="5640521437931460125">"Flytta uppåt"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Svep uppåt om du vill försöka igen"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Lås upp om du vill använda NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Den här enheten tillhör organisationen"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Öppna appen om du vill casta den här sessionen."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Okänd app"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Sluta casta"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Enheter som är tillgängliga för ljudutdata."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Så fungerar utsändning"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Utsändning"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Personer i närheten med kompatibla Bluetooth-enheter kan lyssna på medieinnehåll som du sänder ut"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Redigera kopierad bild"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Skicka till enhet i närheten"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Tryck för att visa"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Texten har kopierats"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Bilden har kopierats"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Innehållet har kopierats"</string>
<string name="add" msgid="81036585205287996">"Lägg till"</string>
<string name="manage_users" msgid="1823875311934643849">"Hantera användare"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Det går inte att dra den här aviseringen till delad skärm."</string>
diff --git a/packages/SystemUI/res/values-sw/strings.xml b/packages/SystemUI/res/values-sw/strings.xml
index cd55ef4..a5d7abc 100644
--- a/packages/SystemUI/res/values-sw/strings.xml
+++ b/packages/SystemUI/res/values-sw/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Telezesha kidole juu ili ufungue"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Bonyeza aikoni ya kufungua ili ufungue"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Imefunguliwa kwa kutumia uso wako. Bonyeza aikoni ya kufungua ili ufungue."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Sogeza kushoto"</item>
+ <item msgid="5558598599408514296">"Sogeza chini"</item>
+ <item msgid="4844142668312841831">"Sogeza kulia"</item>
+ <item msgid="5640521437931460125">"Sogeza juu"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Telezesha kidole juu ili ujaribu tena"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Fungua ili utumie NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Kifaa hiki kinamilikiwa na shirika lako"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Ili utume kipindi hiki, tafadhali fungua programu."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Programu isiyojulikana"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Acha kutuma"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Vifaa vya kutoa sauti vilivyopo"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Jinsi utangazaji unavyofanya kazi"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Tangaza"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Watu walio karibu nawe wenye vifaa oanifu vya Bluetooth wanaweza kusikiliza maudhui unayoyatangaza"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Badilisha picha iliyonakiliwa"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Tuma kwenye kifaa kilicho karibu"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Gusa ili uangalie"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Maandishi yamenakiliwa"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Picha imenakiliwa"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Maudhui yamenakiliwa"</string>
<string name="add" msgid="81036585205287996">"Weka"</string>
<string name="manage_users" msgid="1823875311934643849">"Dhibiti watumiaji"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Arifa hii hairuhusu kuburuta kwenye Skrini iliyogawanyika."</string>
diff --git a/packages/SystemUI/res/values-ta/strings.xml b/packages/SystemUI/res/values-ta/strings.xml
index fae4f6f..0f41681 100644
--- a/packages/SystemUI/res/values-ta/strings.xml
+++ b/packages/SystemUI/res/values-ta/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"திறப்பதற்கு மேல் நோக்கி ஸ்வைப் செய்யவும்"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"திறக்க, அன்லாக் ஐகானை அழுத்தவும்"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"முகம் மூலம் அன்லாக் செய்யப்பட்டது. திறக்க, அன்லாக் ஐகானை அழுத்துக."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"இடதுபுறம் நகர்த்துங்கள்"</item>
+ <item msgid="5558598599408514296">"கீழே நகர்த்துங்கள்"</item>
+ <item msgid="4844142668312841831">"வலதுபுறம் நகர்த்துங்கள்"</item>
+ <item msgid="5640521437931460125">"மேலே நகர்த்துங்கள்"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"மீண்டும் முயல மேல்நோக்கி ஸ்வைப் செய்யவும்"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFCயைப் பயன்படுத்த அன்லாக் செய்யவும்"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"இந்த சாதனம் உங்கள் நிறுவனத்துக்கு சொந்தமானது"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"இந்த அமர்வை அலைபரப்ப ஆப்ஸைத் திறங்கள்."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"அறியப்படாத ஆப்ஸ்"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"அலைபரப்புவதை நிறுத்து"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"ஆடியோ அவுட்புட்டுக்குக் கிடைக்கும் சாதனங்கள்."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"பிராட்காஸ்ட் எவ்வாறு செயல்படுகிறது?"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"பிராட்காஸ்ட்"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"நீங்கள் பிராட்காஸ்ட் செய்யும் மீடியாவை அருகிலுள்ளவர்கள் இணக்கமான புளூடூத் சாதனங்கள் மூலம் கேட்கலாம்"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"நகலெடுத்த படத்தைத் திருத்து"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"அருகிலுள்ள சாதனத்திற்கு அனுப்பு"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"பார்க்க தட்டுங்கள்"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"வார்த்தைகள் நகலெடுக்கப்பட்டன"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"படம் நகலெடுக்கப்பட்டது"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"உள்ளடக்கம் நகலெடுக்கப்பட்டது"</string>
<string name="add" msgid="81036585205287996">"சேர்"</string>
<string name="manage_users" msgid="1823875311934643849">"பயனர்களை நிர்வகித்தல்"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"பிரிக்கப்பட்ட திரைக்குள் இந்த அறிவிப்பை இழுத்துவிட முடியாது."</string>
diff --git a/packages/SystemUI/res/values-te/strings.xml b/packages/SystemUI/res/values-te/strings.xml
index 4ddec56..fe0ec88 100644
--- a/packages/SystemUI/res/values-te/strings.xml
+++ b/packages/SystemUI/res/values-te/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"తెరవడానికి, పైకి స్వైప్ చేయండి"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"తెరవడానికి అన్లాక్ చిహ్నాన్ని నొక్కండి"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"ముఖం ద్వారా అన్లాక్ చేయబడింది. తెరవడానికి అన్లాక్ చిహ్నాన్ని నొక్కండి."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"ఎడమవైపుగా జరపండి"</item>
+ <item msgid="5558598599408514296">"కిందికి జరపండి"</item>
+ <item msgid="4844142668312841831">"కుడివైపుగా జరపండి"</item>
+ <item msgid="5640521437931460125">"పైకి జరపండి"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"మళ్ళీ ప్రయత్నించడానికి పైకి స్వైప్ చేయండి"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFCని ఉపయోగించడానికి అన్లాక్ చేయండి"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"ఈ పరికరం మీ సంస్థకు చెందినది"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"ఈ సెషన్ను ప్రసారం చేయడానికి, దయచేసి యాప్ను తెరవండి."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"తెలియని యాప్"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"ప్రసారాన్ని ఆపివేయండి"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"ఆడియో అవుట్పుట్ కోసం అందుబాటులో ఉన్న పరికరాలు."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"ప్రసారం కావడం అనేది ఎలా పని చేస్తుంది"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ప్రసారం"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"మీకు సమీపంలో ఉన్న వ్యక్తులు అనుకూలత ఉన్న బ్లూటూత్ పరికరాలతో మీరు ప్రసారం చేస్తున్న మీడియాను వినగలరు"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"కాపీ చేసిన ఇమేజ్లను ఎడిట్ చేయండి"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"సమీపంలోని పరికరానికి పంపండి"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"చూడటానికి ట్యాప్ చేయండి"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"టెక్స్ట్ కాపీ చేయబడింది"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"ఇమేజ్ కాపీ చేయబడింది"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"కంటెంట్ కాపీ చేయబడింది"</string>
<string name="add" msgid="81036585205287996">"జోడించండి"</string>
<string name="manage_users" msgid="1823875311934643849">"యూజర్లను మేనేజ్ చేయండి"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"ఈ నోటిఫికేషన్ స్ప్లిట్స్క్రీన్కు లాగడానికి సపోర్ట్ చేయదు."</string>
diff --git a/packages/SystemUI/res/values-th/strings.xml b/packages/SystemUI/res/values-th/strings.xml
index 935ca7e..7dcaf44 100644
--- a/packages/SystemUI/res/values-th/strings.xml
+++ b/packages/SystemUI/res/values-th/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"เลื่อนขึ้นเพื่อเปิด"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"กดไอคอนปลดล็อกเพื่อเปิด"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"ปลดล็อกด้วยใบหน้าแล้ว กดไอคอนปลดล็อกเพื่อเปิด"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"เลื่อนนิ้วไปทางซ้าย"</item>
+ <item msgid="5558598599408514296">"เลื่อนนิ้วลง"</item>
+ <item msgid="4844142668312841831">"เลื่อนนิ้วไปทางขวา"</item>
+ <item msgid="5640521437931460125">"เลื่อนนิ้วขึ้น"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"เลื่อนขึ้นเพื่อลองอีกครั้ง"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"ปลดล็อกเพื่อใช้ NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"องค์กรของคุณเป็นเจ้าของอุปกรณ์นี้"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"โปรดเปิดแอปหากต้องการแคสต์เซสชันนี้"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"แอปที่ไม่รู้จัก"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"หยุดแคสต์"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"อุปกรณ์ที่พร้อมใช้งานสำหรับเอาต์พุตเสียง"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"วิธีการทำงานของการออกอากาศ"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"ประกาศ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"ผู้ที่อยู่ใกล้คุณและมีอุปกรณ์บลูทูธที่รองรับสามารถรับฟังสื่อที่คุณกำลังออกอากาศได้"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"แก้ไขรูปภาพที่คัดลอก"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"ส่งไปยังอุปกรณ์ที่อยู่ใกล้เคียง"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"แตะเพื่อดู"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"คัดลอกข้อความแล้ว"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"คัดลอกรูปภาพแล้ว"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"คัดลอกเนื้อหาแล้ว"</string>
<string name="add" msgid="81036585205287996">"เพิ่ม"</string>
<string name="manage_users" msgid="1823875311934643849">"จัดการผู้ใช้"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"การแจ้งเตือนนี้ไม่รองรับการลากเพื่อแบ่งหน้าจอ"</string>
diff --git a/packages/SystemUI/res/values-tl/strings.xml b/packages/SystemUI/res/values-tl/strings.xml
index eb948e9..e844e39 100644
--- a/packages/SystemUI/res/values-tl/strings.xml
+++ b/packages/SystemUI/res/values-tl/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Mag-swipe pataas para buksan"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Pindutin ang icon ng unlock para buksan"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Na-unlock gamit ang mukha. Pindutin ang icon ng unlock para buksan."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Ilipat pakaliwa"</item>
+ <item msgid="5558598599408514296">"Ibaba"</item>
+ <item msgid="4844142668312841831">"Ilipat pakanan"</item>
+ <item msgid="5640521437931460125">"Itaas"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Mag-swipe pataas para subukan ulit"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"I-unlock para magamit ang NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Pagmamay-ari ng iyong organisasyon ang device na ito"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Para ma-cast ang session na ito, buksan ang app."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Hindi kilalang app"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Ihinto ang pag-cast"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Mga available na device para sa audio output."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Paano gumagana ang pag-broadcast"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Broadcast"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Makakapakinig ang mga taong malapit sa iyo na may mga compatible na Bluetooth device sa media na bino-broadcast mo"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"I-edit ang kinopyang larawan"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Ipadala sa kalapit na device"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"I-tap para tingnan"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Nakopya ang text"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Nakopya ang larawan"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Nakopya ang content"</string>
<string name="add" msgid="81036585205287996">"Magdagdag"</string>
<string name="manage_users" msgid="1823875311934643849">"Pamahalaan ang mga user"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Hindi sinusuportahan ng notification na ito ang pag-drag sa Splitscreen."</string>
diff --git a/packages/SystemUI/res/values-tr/strings.xml b/packages/SystemUI/res/values-tr/strings.xml
index a88fd92..250b0dd 100644
--- a/packages/SystemUI/res/values-tr/strings.xml
+++ b/packages/SystemUI/res/values-tr/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Açmak için yukarı kaydırın"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Açmak için Kilit açma simgesine basın"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Kilit, yüzünüzle açıldı. Kilit açma simgesine basın."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Sola taşı"</item>
+ <item msgid="5558598599408514296">"Aşağı taşı"</item>
+ <item msgid="4844142668312841831">"Sağa taşı"</item>
+ <item msgid="5640521437931460125">"Yukarı taşı"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Tekrar denemek için yukarı kaydırın"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC\'yi kullanmak için kilidi açın"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Bu cihaz, kuruluşunuza ait"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Bu oturumu yayınlamak için lütfen uygulamayı açın."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Bilinmeyen uygulama"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Yayını durdur"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Ses çıkışı için kullanılabilir cihazlar."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Yayınlamanın işleyiş şekli"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Anons"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Yakınınızda ve uyumlu Bluetooth cihazları olan kişiler yayınladığınız medya içeriğini dinleyebilir"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Kopyalanan resmi düzenle"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Yakındaki cihaza gönder"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Görüntülemek için dokunun"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Metin kopyalandı"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Resim kopyalandı"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"İçerik kopyalandı"</string>
<string name="add" msgid="81036585205287996">"Ekle"</string>
<string name="manage_users" msgid="1823875311934643849">"Kullanıcıları yönet"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Bu bildirim, bölünmüş ekrana sürüklenmeyi desteklemiyor."</string>
diff --git a/packages/SystemUI/res/values-uk/strings.xml b/packages/SystemUI/res/values-uk/strings.xml
index ec3805a..96d5e95 100644
--- a/packages/SystemUI/res/values-uk/strings.xml
+++ b/packages/SystemUI/res/values-uk/strings.xml
@@ -953,12 +953,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Редагувати скопійоване зображення"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Надіслати на пристрій поблизу"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Натисніть, щоб переглянути"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Текст скопійовано"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Зображення скопійовано"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Вміст скопійовано"</string>
<string name="add" msgid="81036585205287996">"Додати"</string>
<string name="manage_users" msgid="1823875311934643849">"Керувати користувачами"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Це сповіщення не підтримує режим розділеного екрана."</string>
diff --git a/packages/SystemUI/res/values-ur/strings.xml b/packages/SystemUI/res/values-ur/strings.xml
index 717bb9a7..f5fa9f2 100644
--- a/packages/SystemUI/res/values-ur/strings.xml
+++ b/packages/SystemUI/res/values-ur/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"کھولنے کے لیے اوپر سوائپ کريں"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"کھولنے کیلئے انلاک آئیکن دبائیں"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"چہرے سے انلاک کیا گیا۔ کھولنے کیلئے انلاک آئیکن دبائیں۔"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"دائیں منتقل کریں"</item>
+ <item msgid="5558598599408514296">"نیچے منتقل کریں"</item>
+ <item msgid="4844142668312841831">"بائیں منتقل کریں"</item>
+ <item msgid="5640521437931460125">"اوپر منتقل کریں"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"دوبارہ کوشش کرنے کے لیے اوپر سوائپ کريں"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC استعمال کرنے کیلئے غیر مقفل کریں"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"یہ آلہ آپ کی تنظیم کا ہے"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"اس سیشن کو کاسٹ کرنے کیلئے، براہ کرم ایپ کھولیں۔"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"نامعلوم ایپ"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"کاسٹ کرنا بند کریں"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"آڈیو آؤٹ پٹ کے لیے دستیاب آلات۔"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"براڈکاسٹنگ کیسے کام کرتا ہے"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"براڈکاسٹ"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"موافق بلوٹوتھ آلات کے ساتھ آپ کے قریبی لوگ آپ کے نشر کردہ میڈیا کو سن سکتے ہیں"</string>
@@ -933,18 +934,15 @@
<string name="fgs_manager_app_item_stop_button_stopped_label" msgid="6950382004441263922">"رکی ہوئی ہے"</string>
<string name="clipboard_edit_text_done" msgid="4551887727694022409">"ہو گیا"</string>
<string name="clipboard_overlay_text_copied" msgid="1872624400464891363">"کاپی کر دیا گیا ہے"</string>
- <string name="clipboard_edit_source" msgid="9156488177277788029">"<xliff:g id="APPNAME">%1$s</xliff:g> سے"</string>
+ <string name="clipboard_edit_source" msgid="9156488177277788029">"<xliff:g id="APPNAME">%1$s</xliff:g> سے"</string>
<string name="clipboard_dismiss_description" msgid="7544573092766945657">"کاپی شدہ UI کو برخاست کریں"</string>
<string name="clipboard_edit_text_description" msgid="805254383912962103">"کاپی کردہ ٹیکسٹ میں ترمیم کریں"</string>
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"کاپی کردہ تصویر میں ترمیم کریں"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"قریبی آلے کو بھیجیں"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"دیکھنے کے لیے تھپتھپائیں"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"متن کاپی ہو گیا"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"تصویر کاپی ہو گئی"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"مواد کاپی ہو گیا"</string>
<string name="add" msgid="81036585205287996">"شامل کریں"</string>
<string name="manage_users" msgid="1823875311934643849">"صارفین کا نظم کریں"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"یہ اطلاع اسپلٹ اسکرین کو گھسیٹنے کو سپورٹ نہیں کرتا ہے۔"</string>
diff --git a/packages/SystemUI/res/values-uz/strings.xml b/packages/SystemUI/res/values-uz/strings.xml
index 4769722..5e0bb9c 100644
--- a/packages/SystemUI/res/values-uz/strings.xml
+++ b/packages/SystemUI/res/values-uz/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Ochish uchun tepaga suring"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Ochish uchun ochish belgisini bosing"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Yuz orqali ochilgan. Ochish uchun ochish belgisini bosing."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Chapga siljitish"</item>
+ <item msgid="5558598599408514296">"Pastga siljitish"</item>
+ <item msgid="4844142668312841831">"Oʻngga siljitish"</item>
+ <item msgid="5640521437931460125">"Tepaga siljitish"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Qayta urinish uchun tepaga suring"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"NFC ishlatish uchun qurilma qulfini oching"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Bu qurilma tashkilotingizga tegishli"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Bu seansni translatsiya qilish uchun ilovani oching."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Notanish ilova"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Toʻxtatish"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Audio chiqish uchun mavjud qurilmalar."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Translatsiya qanday ishlaydi"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Translatsiya"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Atrofingizdagi mos Bluetooth qurilmasiga ega foydalanuvchilar siz translatsiya qilayotgan mediani tinglay olishadi"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Nusxa olingan rasmni tahrirlash"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Yaqin-atrofdagi qurilmaga yuborish"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Koʻrish uchun bosing"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Matndan nuxsa olindi"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Rasmdan nusxa olindi"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Kontentdan nusxa olindi."</string>
<string name="add" msgid="81036585205287996">"Kiritish"</string>
<string name="manage_users" msgid="1823875311934643849">"Foydalanuvchilarni boshqarish"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Bu bildirishnoma ikkiga ajratilgan ekranda ishlamaydi."</string>
diff --git a/packages/SystemUI/res/values-vi/strings.xml b/packages/SystemUI/res/values-vi/strings.xml
index f9085c4..b130269 100644
--- a/packages/SystemUI/res/values-vi/strings.xml
+++ b/packages/SystemUI/res/values-vi/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Vuốt lên để mở"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Nhấn biểu tượng mở khoá để mở"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Đã mở khoá bằng khuôn mặt. Nhấn biểu tượng mở khoá để mở."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Di chuyển sang trái"</item>
+ <item msgid="5558598599408514296">"Di chuyển xuống"</item>
+ <item msgid="4844142668312841831">"Di chuyển sang phải"</item>
+ <item msgid="5640521437931460125">"Di chuyển lên"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Vuốt lên để thử lại"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Mở khóa để sử dụng NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Thiết bị này thuộc về tổ chức của bạn"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Vui lòng mở ứng dụng để truyền phiên này."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"Ứng dụng không xác định"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Dừng truyền"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Các thiết bị có sẵn để xuất âm thanh."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Cách tính năng truyền hoạt động"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Truyền"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Những người ở gần có thiết bị Bluetooth tương thích có thể nghe nội dung nghe nhìn bạn đang truyền"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"Chỉnh sửa hình ảnh đã sao chép"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"Gửi đến thiết bị ở gần"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"Nhấn để xem"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"Đã sao chép văn bản"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"Đã sao chép hình ảnh"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"Đã sao chép nội dung"</string>
<string name="add" msgid="81036585205287996">"Thêm"</string>
<string name="manage_users" msgid="1823875311934643849">"Quản lý người dùng"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"Thông báo này không hỗ trợ thao tác kéo để Chia đôi màn hình."</string>
diff --git a/packages/SystemUI/res/values-zh-rCN/strings.xml b/packages/SystemUI/res/values-zh-rCN/strings.xml
index d60a032..e2d6832 100644
--- a/packages/SystemUI/res/values-zh-rCN/strings.xml
+++ b/packages/SystemUI/res/values-zh-rCN/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"向上滑动即可打开"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"按下解锁图标即可打开"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"已通过面孔识别解锁。按下解锁图标即可打开。"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"左移"</item>
+ <item msgid="5558598599408514296">"下移"</item>
+ <item msgid="4844142668312841831">"右移"</item>
+ <item msgid="5640521437931460125">"上移"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"向上滑动即可重试"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"需要解锁才能使用 NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"此设备归贵单位所有"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"如需投射此会话,请打开相关应用。"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"未知应用"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"停止投射"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"音频输出的可用设备。"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"广播的运作方式"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"广播"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"附近使用兼容蓝牙设备的用户可以收听您广播的媒体内容"</string>
diff --git a/packages/SystemUI/res/values-zh-rHK/strings.xml b/packages/SystemUI/res/values-zh-rHK/strings.xml
index 137ebdc..a4d8f11 100644
--- a/packages/SystemUI/res/values-zh-rHK/strings.xml
+++ b/packages/SystemUI/res/values-zh-rHK/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"向上滑動即可開啟"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"按解鎖圖示即可開啟"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"已使用面孔解鎖。按解鎖圖示即可開啟。"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"向左移"</item>
+ <item msgid="5558598599408514296">"向下移"</item>
+ <item msgid="4844142668312841831">"向右移"</item>
+ <item msgid="5640521437931460125">"向上移"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"請向上滑動以再試一次"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"解鎖方可使用 NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"此裝置屬於您的機構"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"如要投放此工作階段,請開啟應用程式。"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"不明應用程式"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"停止投放"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"可用作音訊輸出的裝置"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"廣播運作方式"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"廣播"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"附近有兼容藍牙裝置的人可收聽您正在廣播的媒體內容"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"編輯已複製的圖片"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"傳送至附近的裝置"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"輕按即可查看"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"已複製文字"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"已複製圖片"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"已複製內容"</string>
<string name="add" msgid="81036585205287996">"新增"</string>
<string name="manage_users" msgid="1823875311934643849">"管理使用者"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"此通知無法拖曳到分割螢幕中。"</string>
diff --git a/packages/SystemUI/res/values-zh-rTW/strings.xml b/packages/SystemUI/res/values-zh-rTW/strings.xml
index 6748292..aee93b0e 100644
--- a/packages/SystemUI/res/values-zh-rTW/strings.xml
+++ b/packages/SystemUI/res/values-zh-rTW/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"向上滑動即可開啟"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"按下「解鎖」圖示即可開啟"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"裝置已透過人臉解鎖,按下「解鎖」圖示即可開啟。"</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"向左移"</item>
+ <item msgid="5558598599408514296">"向下移"</item>
+ <item msgid="4844142668312841831">"向右移"</item>
+ <item msgid="5640521437931460125">"向上移"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"向上滑動即可重試"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"如要使用 NFC,請先解鎖"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"這部裝置的擁有者為貴機構"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"如要投放這個工作階段,請開啟應用程式。"</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"不明的應用程式"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"停止投放"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"可用於輸出音訊的裝置。"</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"廣播功能的運作方式"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"廣播"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"如果附近的人有相容的藍牙裝置,就可以聽到你正在廣播的媒體內容"</string>
@@ -939,12 +940,9 @@
<string name="clipboard_edit_image_description" msgid="8904857948976041306">"編輯複製的圖片"</string>
<string name="clipboard_send_nearby_description" msgid="4629769637846717650">"傳送到鄰近裝置"</string>
<string name="clipboard_text_hidden" msgid="7926899867471812305">"輕觸即可查看"</string>
- <!-- no translation found for clipboard_text_copied (5100836834278976679) -->
- <skip />
- <!-- no translation found for clipboard_image_copied (3793365360174328722) -->
- <skip />
- <!-- no translation found for clipboard_content_copied (144452398567828145) -->
- <skip />
+ <string name="clipboard_text_copied" msgid="5100836834278976679">"已複製文字"</string>
+ <string name="clipboard_image_copied" msgid="3793365360174328722">"已複製圖片"</string>
+ <string name="clipboard_content_copied" msgid="144452398567828145">"已複製內容"</string>
<string name="add" msgid="81036585205287996">"新增"</string>
<string name="manage_users" msgid="1823875311934643849">"管理使用者"</string>
<string name="drag_split_not_supported" msgid="4326847447699729722">"這項通知無法拖曳到分割畫面中。"</string>
diff --git a/packages/SystemUI/res/values-zu/strings.xml b/packages/SystemUI/res/values-zu/strings.xml
index ae19c23..99215e3 100644
--- a/packages/SystemUI/res/values-zu/strings.xml
+++ b/packages/SystemUI/res/values-zu/strings.xml
@@ -313,10 +313,12 @@
<string name="keyguard_unlock" msgid="8031975796351361601">"Swayiphela phezulu ukuze uvule"</string>
<string name="keyguard_unlock_press" msgid="9140109453735019209">"Cindezela isithonjana sokuvula ukuze uvule"</string>
<string name="keyguard_face_successful_unlock_press" msgid="25520941264602588">"Ivulwe ngobuso. Cindezela isithonjana sokuvula ukuze uvule."</string>
- <!-- no translation found for udfps_accessibility_touch_hints:0 (1901953991150295169) -->
- <!-- no translation found for udfps_accessibility_touch_hints:1 (5558598599408514296) -->
- <!-- no translation found for udfps_accessibility_touch_hints:2 (4844142668312841831) -->
- <!-- no translation found for udfps_accessibility_touch_hints:3 (5640521437931460125) -->
+ <string-array name="udfps_accessibility_touch_hints">
+ <item msgid="1901953991150295169">"Yisa kwesokunxele"</item>
+ <item msgid="5558598599408514296">"Yehlisa"</item>
+ <item msgid="4844142668312841831">"Yisa kwesokudla"</item>
+ <item msgid="5640521437931460125">"Khuphula"</item>
+ </string-array>
<string name="keyguard_retry" msgid="886802522584053523">"Swayiphela phezulu ukuze uzame futhi"</string>
<string name="require_unlock_for_nfc" msgid="1305686454823018831">"Vula ukuze usebenzise i-NFC"</string>
<string name="do_disclosure_generic" msgid="4896482821974707167">"Le divayisi eyenhlangano yakho"</string>
@@ -841,8 +843,7 @@
<string name="media_output_dialog_launch_app_text" msgid="1527413319632586259">"Ukuze usakaze le seshini, sicela uvule i-app."</string>
<string name="media_output_dialog_unknown_launch_app_name" msgid="1084899329829371336">"I-app engaziwa"</string>
<string name="media_output_dialog_button_stop_casting" msgid="6581379537930199189">"Misa ukusakaza"</string>
- <!-- no translation found for media_output_dialog_accessibility_title (4681741064190167888) -->
- <skip />
+ <string name="media_output_dialog_accessibility_title" msgid="4681741064190167888">"Amadivayisi atholakalayo okukhipha umsindo."</string>
<string name="media_output_first_broadcast_title" msgid="6292237789860753022">"Indlela ukusakaza okusebenza ngayo"</string>
<string name="media_output_broadcast" msgid="3555580945878071543">"Sakaza"</string>
<string name="media_output_first_notify_broadcast_message" msgid="6353857724136398494">"Abantu abaseduze nawe abanamadivayisi e-Bluetooth ahambisanayo bangalalela imidiya oyisakazayo"</string>
diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml
index c8fff39..74e4693 100644
--- a/packages/SystemUI/res/values/config.xml
+++ b/packages/SystemUI/res/values/config.xml
@@ -77,9 +77,9 @@
internet,bt,flashlight,dnd,alarm,airplane,controls,wallet,rotation,battery,cast,screenrecord,mictoggle,cameratoggle,custom(com.android.permissioncontroller/.permission.service.SafetyCenterQsTileService)
</string>
- <!-- The component name of the Safety Quick Settings Tile -->
- <string name="safety_quick_settings_tile" translatable="false">
- custom(com.android.permissioncontroller/.permission.service.SafetyCenterQsTileService)
+ <!-- The class path of the Safety Quick Settings Tile -->
+ <string name="safety_quick_settings_tile_class" translatable="false">
+ com.android.permissioncontroller.permission.service.v33.SafetyCenterQsTileService
</string>
<!-- The minimum number of tiles to display in QuickSettings -->
diff --git a/packages/SystemUI/res/values/dimens.xml b/packages/SystemUI/res/values/dimens.xml
index 8ee29d7..4066499 100644
--- a/packages/SystemUI/res/values/dimens.xml
+++ b/packages/SystemUI/res/values/dimens.xml
@@ -295,7 +295,8 @@
<dimen name="overlay_border_width_neg">-4dp</dimen>
<dimen name="clipboard_preview_size">@dimen/overlay_x_scale</dimen>
-
+ <dimen name="clipboard_overlay_min_font">10sp</dimen>
+ <dimen name="clipboard_overlay_max_font">50sp</dimen>
<!-- The width of the view containing navigation buttons -->
<dimen name="navigation_key_width">70dp</dimen>
diff --git a/packages/SystemUI/res/values/strings.xml b/packages/SystemUI/res/values/strings.xml
index 7010a28..0fe744d 100644
--- a/packages/SystemUI/res/values/strings.xml
+++ b/packages/SystemUI/res/values/strings.xml
@@ -2485,7 +2485,7 @@
<!-- Text informing user where text being edited was copied from [CHAR LIMIT=NONE] -->
<string name="clipboard_edit_source">From <xliff:g id="appName" example="Gmail">%1$s</xliff:g></string>
<!-- Label for button to dismiss clipboard overlay [CHAR LIMIT=NONE] -->
- <string name="clipboard_dismiss_description">Dismiss copy UI</string>
+ <string name="clipboard_dismiss_description">Dismiss copied text</string>
<!-- Label for button to edit text that was copied to the clipboard [CHAR LIMIT=NONE] -->
<string name="clipboard_edit_text_description">Edit copied text</string>
<!-- Label for button to edit an image that was copied to the clipboard [CHAR LIMIT=NONE] -->
@@ -2494,6 +2494,8 @@
<string name="clipboard_send_nearby_description">Send to nearby device</string>
<!-- Text informing user that copied content is hidden [CHAR LIMIT=NONE] -->
<string name="clipboard_text_hidden">Tap to view</string>
+ <!-- Asterisks replacing sensitive text content -->
+ <string name="clipboard_asterisks" translatable="false">••••••</string>
<!-- Accessibility announcement informing user that text has been copied [CHAR LIMIT=NONE] -->
<string name="clipboard_text_copied">Text copied</string>
<!-- Accessibility announcement informing user that text has been copied [CHAR LIMIT=NONE] -->
diff --git a/packages/SystemUI/src/com/android/systemui/ScreenDecorations.java b/packages/SystemUI/src/com/android/systemui/ScreenDecorations.java
index 685c585..088dfb4 100644
--- a/packages/SystemUI/src/com/android/systemui/ScreenDecorations.java
+++ b/packages/SystemUI/src/com/android/systemui/ScreenDecorations.java
@@ -159,6 +159,8 @@
@VisibleForTesting
protected DisplayDecorationSupport mHwcScreenDecorationSupport;
private Display.Mode mDisplayMode;
+ @VisibleForTesting
+ protected DisplayInfo mDisplayInfo = new DisplayInfo();
private CameraAvailabilityListener.CameraTransitionCallback mCameraTransitionCallback =
new CameraAvailabilityListener.CameraTransitionCallback() {
@@ -325,9 +327,10 @@
private void startOnScreenDecorationsThread() {
mWindowManager = mContext.getSystemService(WindowManager.class);
mDisplayManager = mContext.getSystemService(DisplayManager.class);
- mRotation = mContext.getDisplay().getRotation();
- mDisplayMode = mContext.getDisplay().getMode();
- mDisplayUniqueId = mContext.getDisplay().getUniqueId();
+ mContext.getDisplay().getDisplayInfo(mDisplayInfo);
+ mRotation = mDisplayInfo.rotation;
+ mDisplayMode = mDisplayInfo.getMode();
+ mDisplayUniqueId = mDisplayInfo.uniqueId;
mRoundedCornerResDelegate = new RoundedCornerResDelegate(mContext.getResources(),
mDisplayUniqueId);
mRoundedCornerResDelegate.setPhysicalPixelDisplaySizeRatio(
@@ -351,8 +354,9 @@
@Override
public void onDisplayChanged(int displayId) {
- final int newRotation = mContext.getDisplay().getRotation();
- final Display.Mode newDisplayMode = mContext.getDisplay().getMode();
+ mContext.getDisplay().getDisplayInfo(mDisplayInfo);
+ final int newRotation = mDisplayInfo.rotation;
+ final Display.Mode newDisplayMode = mDisplayInfo.getMode();
if ((mOverlays != null || mScreenDecorHwcWindow != null)
&& (mRotation != newRotation
|| displayModeChanged(mDisplayMode, newDisplayMode))) {
@@ -398,7 +402,7 @@
}
}
- final String newUniqueId = mContext.getDisplay().getUniqueId();
+ final String newUniqueId = mDisplayInfo.uniqueId;
if (!Objects.equals(newUniqueId, mDisplayUniqueId)) {
mDisplayUniqueId = newUniqueId;
final DisplayDecorationSupport newScreenDecorationSupport =
@@ -923,11 +927,10 @@
@VisibleForTesting
float getPhysicalPixelDisplaySizeRatio() {
final Point stableDisplaySize = mDisplayManager.getStableDisplaySize();
- final DisplayInfo displayInfo = new DisplayInfo();
- mContext.getDisplay().getDisplayInfo(displayInfo);
+ mContext.getDisplay().getDisplayInfo(mDisplayInfo);
return DisplayUtils.getPhysicalPixelDisplaySizeRatio(
- stableDisplaySize.x, stableDisplaySize.y, displayInfo.getNaturalWidth(),
- displayInfo.getNaturalHeight());
+ stableDisplaySize.x, stableDisplaySize.y, mDisplayInfo.getNaturalWidth(),
+ mDisplayInfo.getNaturalHeight());
}
@Override
@@ -1004,11 +1007,12 @@
"must call on " + mHandler.getLooper().getThread()
+ ", but was " + Thread.currentThread());
- int newRotation = mContext.getDisplay().getRotation();
+ mContext.getDisplay().getDisplayInfo(mDisplayInfo);
+ final int newRotation = mDisplayInfo.rotation;
if (mRotation != newRotation) {
mDotViewController.setNewRotation(newRotation);
}
- final Display.Mode newMod = mContext.getDisplay().getMode();
+ final Display.Mode newMod = mDisplayInfo.getMode();
if (!mPendingConfigChange
&& (newRotation != mRotation || displayModeChanged(mDisplayMode, newMod))) {
@@ -1220,7 +1224,7 @@
@Override
public void updateRotation(int rotation) {
mRotation = rotation;
- updateCutout();
+ super.updateRotation(rotation);
}
@VisibleForTesting(otherwise = VisibleForTesting.PROTECTED)
@@ -1431,9 +1435,10 @@
@Override
public boolean onPreDraw() {
- final int displayRotation = mContext.getDisplay().getRotation();
- final Display.Mode displayMode = mContext.getDisplay().getMode();
- if (displayRotation != mRotation && displayModeChanged(mDisplayMode, displayMode)
+ mContext.getDisplay().getDisplayInfo(mDisplayInfo);
+ final int displayRotation = mDisplayInfo.rotation;
+ final Display.Mode displayMode = mDisplayInfo.getMode();
+ if ((displayRotation != mRotation || displayModeChanged(mDisplayMode, displayMode))
&& !mPendingConfigChange) {
if (DEBUG) {
if (displayRotation != mRotation) {
diff --git a/packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayController.java b/packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayController.java
index 1203d1a..345f8a3 100644
--- a/packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayController.java
+++ b/packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayController.java
@@ -24,10 +24,13 @@
import static com.android.internal.config.sysui.SystemUiDeviceConfigFlags.CLIPBOARD_OVERLAY_SHOW_ACTIONS;
import static com.android.internal.config.sysui.SystemUiDeviceConfigFlags.CLIPBOARD_OVERLAY_SHOW_EDIT_BUTTON;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_ACTION_TAPPED;
+import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_DISMISSED_OTHER;
+import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_DISMISS_TAPPED;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_EDIT_TAPPED;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_REMOTE_COPY_TAPPED;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_SHARE_TAPPED;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_SWIPE_DISMISSED;
+import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_TAP_OUTSIDE;
import static com.android.systemui.clipboardoverlay.ClipboardOverlayEvent.CLIPBOARD_OVERLAY_TIMED_OUT;
import static java.util.Objects.requireNonNull;
@@ -51,8 +54,10 @@
import android.content.pm.ActivityInfo;
import android.content.pm.PackageManager;
import android.content.res.Configuration;
+import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.Insets;
+import android.graphics.Paint;
import android.graphics.Rect;
import android.graphics.Region;
import android.graphics.drawable.Icon;
@@ -67,8 +72,10 @@
import android.util.Log;
import android.util.MathUtils;
import android.util.Size;
+import android.util.TypedValue;
import android.view.Display;
import android.view.DisplayCutout;
+import android.view.Gravity;
import android.view.InputEvent;
import android.view.InputEventReceiver;
import android.view.InputMonitor;
@@ -121,6 +128,7 @@
private static final int CLIPBOARD_DEFAULT_TIMEOUT_MILLIS = 6000;
private static final int SWIPE_PADDING_DP = 12; // extra padding around views to allow swipe
+ private static final int FONT_SEARCH_STEP_PX = 4;
private final Context mContext;
private final UiEventLogger mUiEventLogger;
@@ -138,7 +146,7 @@
private final View mClipboardPreview;
private final ImageView mImagePreview;
private final TextView mTextPreview;
- private final TextView mHiddenTextPreview;
+ private final TextView mHiddenPreview;
private final View mPreviewBorder;
private final OverlayActionChip mEditChip;
private final OverlayActionChip mShareChip;
@@ -203,11 +211,14 @@
mClipboardPreview = requireNonNull(mView.findViewById(R.id.clipboard_preview));
mImagePreview = requireNonNull(mView.findViewById(R.id.image_preview));
mTextPreview = requireNonNull(mView.findViewById(R.id.text_preview));
- mHiddenTextPreview = requireNonNull(mView.findViewById(R.id.hidden_text_preview));
+ mHiddenPreview = requireNonNull(mView.findViewById(R.id.hidden_preview));
mPreviewBorder = requireNonNull(mView.findViewById(R.id.preview_border));
mEditChip = requireNonNull(mView.findViewById(R.id.edit_chip));
mShareChip = requireNonNull(mView.findViewById(R.id.share_chip));
mRemoteCopyChip = requireNonNull(mView.findViewById(R.id.remote_copy_chip));
+ mEditChip.setAlpha(1);
+ mShareChip.setAlpha(1);
+ mRemoteCopyChip.setAlpha(1);
mDismissButton = requireNonNull(mView.findViewById(R.id.dismiss_button));
mView.setCallbacks(new DraggableConstraintLayout.SwipeDismissCallbacks() {
@@ -235,7 +246,10 @@
return true;
});
- mDismissButton.setOnClickListener(view -> animateOut());
+ mDismissButton.setOnClickListener(view -> {
+ mUiEventLogger.log(CLIPBOARD_OVERLAY_DISMISS_TAPPED);
+ animateOut();
+ });
mEditChip.setIcon(Icon.createWithResource(mContext, R.drawable.ic_screenshot_edit), true);
mRemoteCopyChip.setIcon(
@@ -276,6 +290,7 @@
@Override
public void onReceive(Context context, Intent intent) {
if (ACTION_CLOSE_SYSTEM_DIALOGS.equals(intent.getAction())) {
+ mUiEventLogger.log(CLIPBOARD_OVERLAY_DISMISSED_OTHER);
animateOut();
}
}
@@ -287,6 +302,7 @@
@Override
public void onReceive(Context context, Intent intent) {
if (SCREENSHOT_ACTION.equals(intent.getAction())) {
+ mUiEventLogger.log(CLIPBOARD_OVERLAY_DISMISSED_OTHER);
animateOut();
}
}
@@ -328,7 +344,7 @@
}
if (isSensitive) {
showEditableText(
- mContext.getResources().getString(R.string.clipboard_text_hidden), true);
+ mContext.getResources().getString(R.string.clipboard_asterisks), true);
} else {
showEditableText(item.getText(), false);
}
@@ -352,12 +368,12 @@
PackageManager packageManager = mContext.getPackageManager();
if (remoteCopyIntent != null && packageManager.resolveActivity(
remoteCopyIntent, PackageManager.ResolveInfoFlags.of(0)) != null) {
+ mRemoteCopyChip.setVisibility(View.VISIBLE);
mRemoteCopyChip.setOnClickListener((v) -> {
mUiEventLogger.log(CLIPBOARD_OVERLAY_REMOTE_COPY_TAPPED);
mContext.startActivity(remoteCopyIntent);
animateOut();
});
- mRemoteCopyChip.setAlpha(1f);
mActionContainerBackground.setVisibility(View.VISIBLE);
} else {
mRemoteCopyChip.setVisibility(View.GONE);
@@ -403,7 +419,7 @@
private void showShareChip(ClipData clip) {
mShareChip.setVisibility(View.VISIBLE);
- mShareChip.setAlpha(1f);
+ mActionContainerBackground.setVisibility(View.VISIBLE);
mShareChip.setOnClickListener((v) -> shareContent(clip));
}
@@ -450,6 +466,7 @@
touchRegion.op(tmpRect, Region.Op.UNION);
if (!touchRegion.contains(
(int) motionEvent.getRawX(), (int) motionEvent.getRawY())) {
+ mUiEventLogger.log(CLIPBOARD_OVERLAY_TAP_OUTSIDE);
animateOut();
}
}
@@ -500,25 +517,73 @@
private void showSinglePreview(View v) {
mTextPreview.setVisibility(View.GONE);
mImagePreview.setVisibility(View.GONE);
- mHiddenTextPreview.setVisibility(View.GONE);
+ mHiddenPreview.setVisibility(View.GONE);
v.setVisibility(View.VISIBLE);
}
private void showTextPreview(CharSequence text, TextView textView) {
showSinglePreview(textView);
- textView.setText(text.subSequence(0, Math.min(500, text.length())));
+ final CharSequence truncatedText = text.subSequence(0, Math.min(500, text.length()));
+ textView.setText(truncatedText);
+ updateTextSize(truncatedText, textView);
+
+ textView.addOnLayoutChangeListener(
+ (v, left, top, right, bottom, oldLeft, oldTop, oldRight, oldBottom) -> {
+ if (right - left != oldRight - oldLeft) {
+ updateTextSize(truncatedText, textView);
+ }
+ });
mEditChip.setVisibility(View.GONE);
}
+ private void updateTextSize(CharSequence text, TextView textView) {
+ Paint paint = new Paint(textView.getPaint());
+ Resources res = textView.getResources();
+ float minFontSize = res.getDimensionPixelSize(R.dimen.clipboard_overlay_min_font);
+ float maxFontSize = res.getDimensionPixelSize(R.dimen.clipboard_overlay_max_font);
+ if (isOneWord(text) && fitsInView(text, textView, paint, minFontSize)) {
+ // If the text is a single word and would fit within the TextView at the min font size,
+ // find the biggest font size that will fit.
+ float fontSizePx = minFontSize;
+ while (fontSizePx + FONT_SEARCH_STEP_PX < maxFontSize
+ && fitsInView(text, textView, paint, fontSizePx + FONT_SEARCH_STEP_PX)) {
+ fontSizePx += FONT_SEARCH_STEP_PX;
+ }
+ // Need to turn off autosizing, otherwise setTextSize is a no-op.
+ textView.setAutoSizeTextTypeWithDefaults(TextView.AUTO_SIZE_TEXT_TYPE_NONE);
+ // It's possible to hit the max font size and not fill the width, so centering
+ // horizontally looks better in this case.
+ textView.setGravity(Gravity.CENTER);
+ textView.setTextSize(TypedValue.COMPLEX_UNIT_PX, (int) fontSizePx);
+ } else {
+ // Otherwise just stick with autosize.
+ textView.setAutoSizeTextTypeUniformWithConfiguration((int) minFontSize,
+ (int) maxFontSize, FONT_SEARCH_STEP_PX, TypedValue.COMPLEX_UNIT_PX);
+ textView.setGravity(Gravity.CENTER_VERTICAL | Gravity.START);
+ }
+ }
+
+ private static boolean fitsInView(CharSequence text, TextView textView, Paint paint,
+ float fontSizePx) {
+ paint.setTextSize(fontSizePx);
+ float size = paint.measureText(text.toString());
+ float availableWidth = textView.getWidth() - textView.getPaddingLeft()
+ - textView.getPaddingRight();
+ return size < availableWidth;
+ }
+
+ private static boolean isOneWord(CharSequence text) {
+ return text.toString().split("\\s+", 2).length == 1;
+ }
+
private void showEditableText(CharSequence text, boolean hidden) {
- TextView textView = hidden ? mHiddenTextPreview : mTextPreview;
+ TextView textView = hidden ? mHiddenPreview : mTextPreview;
showTextPreview(text, textView);
View.OnClickListener listener = v -> editText();
if (DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_SYSTEMUI,
CLIPBOARD_OVERLAY_SHOW_EDIT_BUTTON, false)) {
mEditChip.setVisibility(View.VISIBLE);
mActionContainerBackground.setVisibility(View.VISIBLE);
- mEditChip.setAlpha(1f);
mEditChip.setContentDescription(
mContext.getString(R.string.clipboard_edit_text_description));
mEditChip.setOnClickListener(listener);
@@ -532,9 +597,10 @@
String mimeType = resolver.getType(uri);
boolean isEditableImage = mimeType != null && mimeType.startsWith("image");
if (isSensitive) {
- showSinglePreview(mHiddenTextPreview);
+ mHiddenPreview.setText(mContext.getString(R.string.clipboard_text_hidden));
+ showSinglePreview(mHiddenPreview);
if (isEditableImage) {
- mHiddenTextPreview.setOnClickListener(listener);
+ mHiddenPreview.setOnClickListener(listener);
}
} else if (isEditableImage) { // if the MIMEtype is image, try to load
try {
@@ -560,7 +626,6 @@
if (isEditableImage && DeviceConfig.getBoolean(
DeviceConfig.NAMESPACE_SYSTEMUI, CLIPBOARD_OVERLAY_SHOW_EDIT_BUTTON, false)) {
mEditChip.setVisibility(View.VISIBLE);
- mEditChip.setAlpha(1f);
mActionContainerBackground.setVisibility(View.VISIBLE);
mEditChip.setOnClickListener(listener);
mEditChip.setContentDescription(
@@ -764,6 +829,8 @@
mView.setAlpha(0);
mActionContainerBackground.setVisibility(View.GONE);
mShareChip.setVisibility(View.GONE);
+ mEditChip.setVisibility(View.GONE);
+ mRemoteCopyChip.setVisibility(View.GONE);
resetActionChips();
mTimeoutHandler.cancelTimeout();
}
diff --git a/packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayEvent.java b/packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayEvent.java
index 9073979..a0b2ab9 100644
--- a/packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayEvent.java
+++ b/packages/SystemUI/src/com/android/systemui/clipboardoverlay/ClipboardOverlayEvent.java
@@ -27,7 +27,7 @@
@UiEvent(doc = "clipboard edit tapped")
CLIPBOARD_OVERLAY_EDIT_TAPPED(951),
@UiEvent(doc = "clipboard share tapped")
- CLIPBOARD_OVERLAY_SHARE_TAPPED(RESERVE_NEW_UI_EVENT_ID),
+ CLIPBOARD_OVERLAY_SHARE_TAPPED(1067),
@UiEvent(doc = "clipboard action tapped")
CLIPBOARD_OVERLAY_ACTION_TAPPED(952),
@UiEvent(doc = "clipboard remote copy tapped")
@@ -37,7 +37,11 @@
@UiEvent(doc = "clipboard overlay dismiss tapped")
CLIPBOARD_OVERLAY_DISMISS_TAPPED(955),
@UiEvent(doc = "clipboard overlay swipe dismissed")
- CLIPBOARD_OVERLAY_SWIPE_DISMISSED(956);
+ CLIPBOARD_OVERLAY_SWIPE_DISMISSED(956),
+ @UiEvent(doc = "clipboard overlay tapped outside")
+ CLIPBOARD_OVERLAY_TAP_OUTSIDE(1077),
+ @UiEvent(doc = "clipboard overlay dismissed, miscellaneous reason")
+ CLIPBOARD_OVERLAY_DISMISSED_OTHER(1078);
private final int mId;
diff --git a/packages/SystemUI/src/com/android/systemui/controls/ui/ControlActionCoordinatorImpl.kt b/packages/SystemUI/src/com/android/systemui/controls/ui/ControlActionCoordinatorImpl.kt
index 44879aa..b8a0013 100644
--- a/packages/SystemUI/src/com/android/systemui/controls/ui/ControlActionCoordinatorImpl.kt
+++ b/packages/SystemUI/src/com/android/systemui/controls/ui/ControlActionCoordinatorImpl.kt
@@ -261,7 +261,7 @@
taskViewFactory.get().create(context, uiExecutor, {
dialog = DetailDialog(
activityContext, broadcastSender,
- it, pendingIntent, cvh
+ it, pendingIntent, cvh, keyguardStateController, activityStarter
).also {
it.setOnDismissListener { _ -> dialog = null }
it.show()
diff --git a/packages/SystemUI/src/com/android/systemui/controls/ui/DetailDialog.kt b/packages/SystemUI/src/com/android/systemui/controls/ui/DetailDialog.kt
index 80589a2..edd1c68 100644
--- a/packages/SystemUI/src/com/android/systemui/controls/ui/DetailDialog.kt
+++ b/packages/SystemUI/src/com/android/systemui/controls/ui/DetailDialog.kt
@@ -34,6 +34,8 @@
import com.android.internal.policy.ScreenDecorationsUtils
import com.android.systemui.R
import com.android.systemui.broadcast.BroadcastSender
+import com.android.systemui.plugins.ActivityStarter
+import com.android.systemui.statusbar.policy.KeyguardStateController
import com.android.wm.shell.TaskView
/**
@@ -46,7 +48,9 @@
val broadcastSender: BroadcastSender,
val taskView: TaskView,
val pendingIntent: PendingIntent,
- val cvh: ControlViewHolder
+ val cvh: ControlViewHolder,
+ val keyguardStateController: KeyguardStateController,
+ val activityStarter: ActivityStarter
) : Dialog(
activityContext,
R.style.Theme_SystemUI_Dialog_Control_DetailPanel
@@ -145,12 +149,25 @@
requireViewById<ImageView>(R.id.control_detail_open_in_app).apply {
setOnClickListener { v: View ->
- // Remove the task explicitly, since onRelease() callback will be executed after
- // startActivity() below is called.
removeDetailTask()
dismiss()
- broadcastSender.closeSystemDialogs()
- pendingIntent.send()
+
+ val action = ActivityStarter.OnDismissAction {
+ // Remove the task explicitly, since onRelease() callback will be executed after
+ // startActivity() below is called.
+ broadcastSender.closeSystemDialogs()
+ pendingIntent.send()
+ false
+ }
+ if (keyguardStateController.isUnlocked()) {
+ action.onDismiss()
+ } else {
+ activityStarter.dismissKeyguardThenExecute(
+ action,
+ null /* cancel */,
+ true /* afterKeyguardGone */
+ )
+ }
}
}
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt
index 6dfc5e1..d634030 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardUnlockAnimationController.kt
@@ -409,7 +409,19 @@
if (willUnlockWithSmartspaceTransition) {
lockscreenSmartspaceBounds = Rect().apply {
lockscreenSmartspace!!.getBoundsOnScreen(this)
+
+ // The smartspace container on the lockscreen has left and top padding to align it
+ // with other lockscreen content. This padding is inside the bounds on screen, so
+ // add it to those bounds so that the padding-less launcher smartspace is properly
+ // aligned.
offset(lockscreenSmartspace!!.paddingLeft, lockscreenSmartspace!!.paddingTop)
+
+ // Also offset by the current card's top padding, if it has any. This allows us to
+ // align the tops of the lockscreen/launcher smartspace cards. Some cards, such as
+ // the three-line date/weather/alarm card, only have three lines on lockscreen but
+ // two on launcher.
+ offset(0, (lockscreenSmartspace
+ as? BcSmartspaceDataPlugin.SmartspaceView)?.currentCardTopPadding ?: 0)
}
}
diff --git a/packages/SystemUI/src/com/android/systemui/media/ColorSchemeTransition.kt b/packages/SystemUI/src/com/android/systemui/media/ColorSchemeTransition.kt
index 6e84238..9b0d432 100644
--- a/packages/SystemUI/src/com/android/systemui/media/ColorSchemeTransition.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/ColorSchemeTransition.kt
@@ -24,6 +24,8 @@
import android.graphics.Color
import android.graphics.drawable.GradientDrawable
import android.graphics.drawable.RippleDrawable
+import android.content.res.Configuration
+import android.content.res.Configuration.UI_MODE_NIGHT_YES
import com.android.internal.R
import com.android.internal.annotations.VisibleForTesting
import com.android.settingslib.Utils
@@ -124,7 +126,6 @@
val accentColorList = ColorStateList.valueOf(accentPrimary)
mediaViewHolder.actionPlayPause.backgroundTintList = accentColorList
mediaViewHolder.gutsViewHolder.setAccentPrimaryColor(accentPrimary)
- mediaViewHolder.seamlessButton.backgroundTintList = accentColorList
}
val accentSecondary = animatingColorTransitionFactory(
@@ -138,6 +139,19 @@
}
}
+ val colorSeamless = animatingColorTransitionFactory(
+ loadDefaultColor(R.attr.textColorPrimary),
+ { colorScheme: ColorScheme ->
+ // A1-100 dark in dark theme, A1-200 in light theme
+ if (context.resources.configuration.uiMode and
+ Configuration.UI_MODE_NIGHT_MASK == UI_MODE_NIGHT_YES)
+ colorScheme.accent1[2]
+ else colorScheme.accent1[3]
+ }, { seamlessColor: Int ->
+ val accentColorList = ColorStateList.valueOf(seamlessColor)
+ mediaViewHolder.seamlessButton.backgroundTintList = accentColorList
+ })
+
val textPrimary = animatingColorTransitionFactory(
loadDefaultColor(R.attr.textColorPrimary),
::textPrimaryFromScheme
@@ -185,6 +199,7 @@
val colorTransitions = arrayOf(
surfaceColor,
+ colorSeamless,
accentPrimary,
accentSecondary,
textPrimary,
diff --git a/packages/SystemUI/src/com/android/systemui/media/MediaCarouselController.kt b/packages/SystemUI/src/com/android/systemui/media/MediaCarouselController.kt
index 0f868718..e9caaaf 100644
--- a/packages/SystemUI/src/com/android/systemui/media/MediaCarouselController.kt
+++ b/packages/SystemUI/src/com/android/systemui/media/MediaCarouselController.kt
@@ -150,12 +150,13 @@
}
private val configListener = object : ConfigurationController.ConfigurationListener {
override fun onDensityOrFontScaleChanged() {
- recreatePlayers()
+ // System font changes should only happen when UMO is offscreen or a flicker may occur
+ updatePlayers(recreateMedia = true)
inflateSettingsButton()
}
override fun onThemeChanged() {
- recreatePlayers()
+ updatePlayers(recreateMedia = false)
inflateSettingsButton()
}
@@ -165,7 +166,7 @@
}
override fun onUiModeChanged() {
- recreatePlayers()
+ updatePlayers(recreateMedia = false)
inflateSettingsButton()
}
}
@@ -539,7 +540,7 @@
}
}
- private fun recreatePlayers() {
+ private fun updatePlayers(recreateMedia: Boolean) {
pageIndicator.tintList = ColorStateList.valueOf(
context.getColor(R.color.media_paging_indicator)
)
@@ -554,7 +555,9 @@
}
} else {
val isSsReactivated = MediaPlayerData.isSsReactivated(key)
- removePlayer(key, dismissMediaData = false, dismissRecommendation = false)
+ if (recreateMedia) {
+ removePlayer(key, dismissMediaData = false, dismissRecommendation = false)
+ }
addOrUpdatePlayer(
key = key, oldKey = null, data = data, isSsReactivated = isSsReactivated)
}
@@ -945,6 +948,7 @@
.thenByDescending { shouldPrioritizeSs == it.isSsMediaRec }
.thenByDescending { !it.data.resumption }
.thenByDescending { it.data.playbackLocation != MediaData.PLAYBACK_CAST_REMOTE }
+ .thenByDescending { it.data.lastActive }
.thenByDescending { it.updateTime }
.thenByDescending { it.data.notificationKey }
diff --git a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputBaseDialog.java b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputBaseDialog.java
index fa6db01..9b964a5 100644
--- a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputBaseDialog.java
+++ b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputBaseDialog.java
@@ -314,19 +314,19 @@
mHeaderIcon.setImageResource(iconRes);
} else if (iconCompat != null) {
Icon icon = iconCompat.toIcon(mContext);
- Configuration config = mContext.getResources().getConfiguration();
- int currentNightMode = config.uiMode & Configuration.UI_MODE_NIGHT_MASK;
- boolean isDarkThemeOn = currentNightMode == Configuration.UI_MODE_NIGHT_YES;
- WallpaperColors wallpaperColors = WallpaperColors.fromBitmap(icon.getBitmap());
- colorSetUpdated = !wallpaperColors.equals(mWallpaperColors);
- if (colorSetUpdated) {
- mAdapter.updateColorScheme(wallpaperColors, isDarkThemeOn);
- ColorFilter buttonColorFilter = new PorterDuffColorFilter(
- mAdapter.getController().getColorButtonBackground(),
- PorterDuff.Mode.SRC_IN);
- mDoneButton.getBackground().setColorFilter(buttonColorFilter);
- mStopButton.getBackground().setColorFilter(buttonColorFilter);
- mDoneButton.setTextColor(mAdapter.getController().getColorPositiveButtonText());
+ if (icon.getType() != Icon.TYPE_BITMAP && icon.getType() != Icon.TYPE_ADAPTIVE_BITMAP) {
+ // icon doesn't support getBitmap, use default value for color scheme
+ updateButtonBackgroundColorFilter();
+ } else {
+ Configuration config = mContext.getResources().getConfiguration();
+ int currentNightMode = config.uiMode & Configuration.UI_MODE_NIGHT_MASK;
+ boolean isDarkThemeOn = currentNightMode == Configuration.UI_MODE_NIGHT_YES;
+ WallpaperColors wallpaperColors = WallpaperColors.fromBitmap(icon.getBitmap());
+ colorSetUpdated = !wallpaperColors.equals(mWallpaperColors);
+ if (colorSetUpdated) {
+ mAdapter.updateColorScheme(wallpaperColors, isDarkThemeOn);
+ updateButtonBackgroundColorFilter();
+ }
}
mHeaderIcon.setVisibility(View.VISIBLE);
mHeaderIcon.setImageIcon(icon);
@@ -368,6 +368,15 @@
mStopButton.setOnClickListener(v -> onStopButtonClick());
}
+ private void updateButtonBackgroundColorFilter() {
+ ColorFilter buttonColorFilter = new PorterDuffColorFilter(
+ mAdapter.getController().getColorButtonBackground(),
+ PorterDuff.Mode.SRC_IN);
+ mDoneButton.getBackground().setColorFilter(buttonColorFilter);
+ mStopButton.getBackground().setColorFilter(buttonColorFilter);
+ mDoneButton.setTextColor(mAdapter.getController().getColorPositiveButtonText());
+ }
+
private Drawable resizeDrawable(Drawable drawable, int size) {
if (drawable == null) {
return null;
diff --git a/packages/SystemUI/src/com/android/systemui/power/PowerNotificationWarnings.java b/packages/SystemUI/src/com/android/systemui/power/PowerNotificationWarnings.java
index 429f2df..731e177 100644
--- a/packages/SystemUI/src/com/android/systemui/power/PowerNotificationWarnings.java
+++ b/packages/SystemUI/src/com/android/systemui/power/PowerNotificationWarnings.java
@@ -292,10 +292,8 @@
return;
}
- final int warningLevel = mContext.getResources().getInteger(
- com.android.internal.R.integer.config_lowBatteryWarningLevel);
final String percentage = NumberFormat.getPercentInstance()
- .format((double) warningLevel / 100.0);
+ .format((double) mCurrentBatterySnapshot.getBatteryLevel() / 100.0);
final String title = mContext.getString(R.string.battery_low_title);
final String contentText = mContext.getString(
R.string.battery_low_description, percentage);
@@ -309,7 +307,6 @@
.setContentText(contentText)
.setContentTitle(title)
.setOnlyAlertOnce(true)
- .setOngoing(true)
.setStyle(new Notification.BigTextStyle().bigText(contentText))
.setVisibility(Notification.VISIBILITY_PUBLIC);
if (hasBatterySettings()) {
@@ -340,8 +337,7 @@
}
private boolean showSevereLowBatteryDialog() {
- final boolean isSevereState = !mCurrentBatterySnapshot.isHybrid() || mBucket < -1;
- return isSevereState && mUseSevereDialog;
+ return mBucket < -1 && mUseSevereDialog;
}
/**
diff --git a/packages/SystemUI/src/com/android/systemui/power/PowerUI.java b/packages/SystemUI/src/com/android/systemui/power/PowerUI.java
index dcdd784..67dae9e 100644
--- a/packages/SystemUI/src/com/android/systemui/power/PowerUI.java
+++ b/packages/SystemUI/src/com/android/systemui/power/PowerUI.java
@@ -359,11 +359,7 @@
}
mWarnings.updateSnapshot(mCurrentBatteryStateSnapshot);
- if (mCurrentBatteryStateSnapshot.isHybrid()) {
- maybeShowHybridWarning(mCurrentBatteryStateSnapshot, mLastBatteryStateSnapshot);
- } else {
- maybeShowBatteryWarning(mCurrentBatteryStateSnapshot, mLastBatteryStateSnapshot);
- }
+ maybeShowHybridWarning(mCurrentBatteryStateSnapshot, mLastBatteryStateSnapshot);
}
// updates the time estimate if we don't have one or battery level has changed.
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogController.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogController.java
index 90a3d45..f1fdae7 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogController.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/InternetDialogController.java
@@ -451,11 +451,11 @@
final SignalStrength strength = mTelephonyManager.getSignalStrength();
int level = (strength == null) ? 0 : strength.getLevel();
int numLevels = SignalStrength.NUM_SIGNAL_STRENGTH_BINS;
- if ((mSubscriptionManager != null && shouldInflateSignalStrength(mDefaultDataSubId))
- || isCarrierNetworkActive) {
- level = isCarrierNetworkActive
- ? SignalStrength.NUM_SIGNAL_STRENGTH_BINS
- : (level + 1);
+ if (isCarrierNetworkActive) {
+ level = getCarrierNetworkLevel();
+ numLevels = WifiEntry.WIFI_LEVEL_MAX + 1;
+ } else if (mSubscriptionManager != null && shouldInflateSignalStrength(mDefaultDataSubId)) {
+ level += 1;
numLevels += 1;
}
return getSignalStrengthIcon(mContext, level, numLevels, NO_CELL_DATA_TYPE_ICON,
@@ -689,6 +689,17 @@
return mergedCarrierEntry != null && mergedCarrierEntry.isDefaultNetwork();
}
+ int getCarrierNetworkLevel() {
+ final MergedCarrierEntry mergedCarrierEntry =
+ mAccessPointController.getMergedCarrierEntry();
+ if (mergedCarrierEntry == null) return WifiEntry.WIFI_LEVEL_MIN;
+
+ int level = mergedCarrierEntry.getLevel();
+ // To avoid icons not found with WIFI_LEVEL_UNREACHABLE(-1), use WIFI_LEVEL_MIN(0) instead.
+ if (level < WifiEntry.WIFI_LEVEL_MIN) level = WifiEntry.WIFI_LEVEL_MIN;
+ return level;
+ }
+
@WorkerThread
void setMergedCarrierWifiEnabledIfNeed(int subId, boolean enabled) {
// If the Carrier Provisions Wi-Fi Merged Networks enabled, do not set the merged carrier
diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotController.java b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotController.java
index 489f881..8ce422a 100644
--- a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotController.java
+++ b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotController.java
@@ -27,6 +27,7 @@
import static com.android.systemui.screenshot.LogConfig.DEBUG_UI;
import static com.android.systemui.screenshot.LogConfig.DEBUG_WINDOW;
import static com.android.systemui.screenshot.LogConfig.logTag;
+import static com.android.systemui.screenshot.ScreenshotEvent.SCREENSHOT_DISMISSED_OTHER;
import static java.util.Objects.requireNonNull;
@@ -349,6 +350,7 @@
@Override
public void onReceive(Context context, Intent intent) {
if (ClipboardOverlayController.COPY_OVERLAY_ACTION.equals(intent.getAction())) {
+ mUiEventLogger.log(SCREENSHOT_DISMISSED_OTHER);
dismissScreenshot(false);
}
}
diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotEvent.java b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotEvent.java
index d49ff93..8b5a24c 100644
--- a/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotEvent.java
+++ b/packages/SystemUI/src/com/android/systemui/screenshot/ScreenshotEvent.java
@@ -62,6 +62,8 @@
SCREENSHOT_EXPLICIT_DISMISSAL(311),
@UiEvent(doc = "screenshot swiped to dismiss")
SCREENSHOT_SWIPE_DISMISSED(656),
+ @UiEvent(doc = "screenshot dismissed, miscellaneous reason")
+ SCREENSHOT_DISMISSED_OTHER(1076),
@UiEvent(doc = "screenshot reentered for new screenshot")
SCREENSHOT_REENTERED(640),
@UiEvent(doc = "Long screenshot button was shown to the user")
diff --git a/packages/SystemUI/src/com/android/systemui/screenshot/TakeScreenshotService.java b/packages/SystemUI/src/com/android/systemui/screenshot/TakeScreenshotService.java
index 2621f6d..90e7631 100644
--- a/packages/SystemUI/src/com/android/systemui/screenshot/TakeScreenshotService.java
+++ b/packages/SystemUI/src/com/android/systemui/screenshot/TakeScreenshotService.java
@@ -25,6 +25,7 @@
import static com.android.systemui.screenshot.LogConfig.DEBUG_DISMISS;
import static com.android.systemui.screenshot.LogConfig.DEBUG_SERVICE;
import static com.android.systemui.screenshot.LogConfig.logTag;
+import static com.android.systemui.screenshot.ScreenshotEvent.SCREENSHOT_DISMISSED_OTHER;
import android.annotation.MainThread;
import android.app.Service;
@@ -83,6 +84,7 @@
Log.d(TAG, "Received ACTION_CLOSE_SYSTEM_DIALOGS");
}
if (!mScreenshot.isPendingSharedTransition()) {
+ mUiEventLogger.log(SCREENSHOT_DISMISSED_OTHER);
mScreenshot.dismissScreenshot(false);
}
}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/RemoteInputController.java b/packages/SystemUI/src/com/android/systemui/statusbar/RemoteInputController.java
index 31ab6bd..f44f598 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/RemoteInputController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/RemoteInputController.java
@@ -114,14 +114,17 @@
public void addRemoteInput(NotificationEntry entry, Object token) {
Objects.requireNonNull(entry);
Objects.requireNonNull(token);
-
+ boolean isActive = isRemoteInputActive(entry);
boolean found = pruneWeakThenRemoveAndContains(
entry /* contains */, null /* remove */, token /* removeToken */);
if (!found) {
mOpen.add(new Pair<>(new WeakReference<>(entry), token));
}
-
- apply(entry);
+ // If the remote input focus is being transferred between different notification layouts
+ // (ex: Expanded->Contracted), then we don't want to re-apply.
+ if (!isActive) {
+ apply(entry);
+ }
}
/**
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableView.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableView.java
index 929dda6..d71e7680 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableView.java
@@ -422,7 +422,7 @@
outRect.top += getTop() + getTranslationY();
}
outRect.bottom = outRect.top + getActualHeight();
- outRect.top += getClipTopAmount();
+ outRect.top += Math.max(0, getClipTopAmount());
}
public boolean isSummaryWithChildren() {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainer.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainer.java
index dad06d9..34fce4c 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainer.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainer.java
@@ -855,7 +855,7 @@
for (int childIdx = 0; childIdx < count; childIdx++) {
ExpandableNotificationRow slidingChild = mAttachedChildren.get(childIdx);
float childTop = slidingChild.getTranslationY();
- float top = childTop + slidingChild.getClipTopAmount();
+ float top = childTop + Math.max(0, slidingChild.getClipTopAmount());
float bottom = childTop + slidingChild.getActualHeight();
if (y >= top && y <= bottom) {
return slidingChild;
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackSizeCalculator.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackSizeCalculator.kt
index 9ea36d5..d05c338 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackSizeCalculator.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackSizeCalculator.kt
@@ -28,14 +28,15 @@
import com.android.systemui.statusbar.SysuiStatusBarStateController
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
import com.android.systemui.statusbar.notification.row.ExpandableView
+import com.android.systemui.util.Compile
import com.android.systemui.util.children
import javax.inject.Inject
import kotlin.math.max
import kotlin.math.min
import kotlin.properties.Delegates.notNull
-private const val TAG = "NotificationStackSizeCalculator"
-private const val DEBUG = false
+private const val TAG = "NotifStackSizeCalc"
+private val DEBUG = Compile.IS_DEBUG && Log.isLoggable(TAG, Log.DEBUG)
/** Calculates number of notifications to display and the height of the notification stack. */
@SysUISingleton
@@ -229,7 +230,7 @@
return true
}
- private fun log(s: () -> String) {
+ private inline fun log(s: () -> String) {
if (DEBUG) {
Log.d(TAG, s())
}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/AutoTileManager.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/AutoTileManager.java
index 61780cd..8782be5 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/AutoTileManager.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/AutoTileManager.java
@@ -17,6 +17,7 @@
import static com.android.systemui.qs.dagger.QSFlagsModule.RBC_AVAILABLE;
import android.annotation.Nullable;
+import android.content.ComponentName;
import android.content.Context;
import android.content.res.Resources;
import android.hardware.display.ColorDisplayManager;
@@ -118,13 +119,18 @@
mDeviceControlsController = deviceControlsController;
mWalletController = walletController;
mSafetyController = safetyController;
- String safetySpecRes;
+ String safetySpecClass;
try {
- safetySpecRes = context.getResources().getString(R.string.safety_quick_settings_tile);
+ safetySpecClass =
+ context.getResources().getString(R.string.safety_quick_settings_tile_class);
+ if (safetySpecClass.length() == 0) {
+ safetySpecClass = null;
+ }
} catch (Resources.NotFoundException | NullPointerException e) {
- safetySpecRes = null;
+ safetySpecClass = null;
}
- mSafetySpec = safetySpecRes;
+ mSafetySpec = safetySpecClass != null ? CustomTile.toSpec(new ComponentName(mContext
+ .getPackageManager().getPermissionControllerPackageName(), safetySpecClass)) : null;
}
/**
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java
index 62bb85a..81270c5 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java
@@ -4712,6 +4712,11 @@
duration = StackStateAnimator.ANIMATION_DURATION_STANDARD;
}
mKeyguardStatusBarViewController.animateKeyguardStatusBarOut(startDelay, duration);
+ if (mSplitShadeEnabled) {
+ // temporary workaround for QS height not being updated during lockscreen to
+ // shade transition
+ setQsExpanded(true);
+ }
updateQSMinHeight();
} else if (oldState == StatusBarState.SHADE_LOCKED
&& statusBarState == KEYGUARD) {
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
index 0e77866..5e7dc11 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java
@@ -906,9 +906,19 @@
}
if (mQsExpansion > 0) {
behindAlpha = MathUtils.lerp(behindAlpha, mDefaultScrimAlpha, mQsExpansion);
+ float tintProgress = mQsExpansion;
+ if (mStatusBarKeyguardViewManager.isBouncerInTransit()) {
+ // this is case of - on lockscreen - going from expanded QS to bouncer.
+ // Because mQsExpansion is already interpolated and transition between tints
+ // is too slow, we want to speed it up and make it more aligned to bouncer
+ // showing up progress. This issue is visible on large screens, both portrait and
+ // split shade because then transition is between very different tints
+ tintProgress = BouncerPanelExpansionCalculator
+ .showBouncerProgress(mPanelExpansionFraction);
+ }
int stateTint = mClipsQsScrim ? ScrimState.SHADE_LOCKED.getNotifTint()
: ScrimState.SHADE_LOCKED.getBehindTint();
- behindTint = ColorUtils.blendARGB(behindTint, stateTint, mQsExpansion);
+ behindTint = ColorUtils.blendARGB(behindTint, stateTint, tintProgress);
}
// If the keyguard is going away, we should not be opaque.
diff --git a/packages/SystemUI/tests/src/com/android/systemui/ScreenDecorationsTest.java b/packages/SystemUI/tests/src/com/android/systemui/ScreenDecorationsTest.java
index 57253af..92e4947 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/ScreenDecorationsTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/ScreenDecorationsTest.java
@@ -63,6 +63,7 @@
import android.util.Size;
import android.view.Display;
import android.view.DisplayCutout;
+import android.view.DisplayInfo;
import android.view.Surface;
import android.view.View;
import android.view.ViewGroup;
@@ -136,6 +137,8 @@
private CornerDecorProvider mPrivacyDotBottomRightDecorProvider;
@Mock
private Display.Mode mDisplayMode;
+ @Mock
+ private DisplayInfo mDisplayInfo;
private PrivacyDotViewController.ShowingListener mPrivacyDotShowingListener;
@Before
@@ -159,7 +162,7 @@
when(mContext.getDisplay()).thenReturn(mDisplay);
// Not support hwc layer by default
doReturn(null).when(mDisplay).getDisplayDecorationSupport();
- doReturn(mDisplayMode).when(mDisplay).getMode();
+ doReturn(mDisplayMode).when(mDisplayInfo).getMode();
when(mMockTypedArray.length()).thenReturn(0);
mPrivacyDotTopLeftDecorProvider = spy(new PrivacyDotCornerDecorProviderImpl(
@@ -214,6 +217,7 @@
mExecutor.runAllReady();
}
});
+ mScreenDecorations.mDisplayInfo = mDisplayInfo;
doReturn(1f).when(mScreenDecorations).getPhysicalPixelDisplaySizeRatio();
reset(mTunerService);
@@ -977,7 +981,7 @@
getTestsDrawable(com.android.systemui.tests.R.drawable.rounded4px)
/* roundedBottomDrawable */,
0 /* roundedPadding */, false /* fillCutout */, true /* privacyDot */);
- doReturn(Surface.ROTATION_0).when(mDisplay).getRotation();
+ mDisplayInfo.rotation = Surface.ROTATION_0;
mScreenDecorations.start();
@@ -991,7 +995,7 @@
getTestsDrawable(com.android.systemui.tests.R.drawable.rounded5px)
/* roundedBottomDrawable */,
0 /* roundedPadding */, false /* fillCutout */, true /* privacyDot */);
- doReturn(Surface.ROTATION_270).when(mDisplay).getRotation();
+ mDisplayInfo.rotation = Surface.ROTATION_270;
mScreenDecorations.onConfigurationChanged(null);
@@ -1274,7 +1278,6 @@
final ScreenDecorHwcLayer hwcLayer = mScreenDecorations.mScreenDecorHwcLayer;
spyOn(hwcLayer);
doReturn(mDisplay).when(hwcLayer).getDisplay();
- doReturn(mDisplayMode).when(mDisplay).getMode();
mScreenDecorations.mDisplayListener.onDisplayChanged(1);
@@ -1298,7 +1301,6 @@
mScreenDecorations.mCutoutViews[BOUNDS_POSITION_TOP];
spyOn(cutoutView);
doReturn(mDisplay).when(cutoutView).getDisplay();
- doReturn(mDisplayMode).when(mDisplay).getMode();
mScreenDecorations.mDisplayListener.onDisplayChanged(1);
diff --git a/packages/SystemUI/tests/src/com/android/systemui/controls/ui/DetailDialogTest.kt b/packages/SystemUI/tests/src/com/android/systemui/controls/ui/DetailDialogTest.kt
index 0166fa2..6a6a65a 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/controls/ui/DetailDialogTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/controls/ui/DetailDialogTest.kt
@@ -22,6 +22,8 @@
import androidx.test.filters.SmallTest
import com.android.systemui.SysuiTestCase
import com.android.systemui.broadcast.BroadcastSender
+import com.android.systemui.plugins.ActivityStarter
+import com.android.systemui.statusbar.policy.KeyguardStateController
import com.android.wm.shell.TaskView
import org.junit.Before
import org.junit.Test
@@ -45,6 +47,10 @@
private lateinit var controlViewHolder: ControlViewHolder
@Mock
private lateinit var pendingIntent: PendingIntent
+ @Mock
+ private lateinit var keyguardStateController: KeyguardStateController
+ @Mock
+ private lateinit var activityStarter: ActivityStarter
@Before
fun setUp() {
@@ -69,7 +75,9 @@
broadcastSender,
taskView,
pendingIntent,
- controlViewHolder
+ controlViewHolder,
+ keyguardStateController,
+ activityStarter
)
}
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/media/ColorSchemeTransitionTest.kt b/packages/SystemUI/tests/src/com/android/systemui/media/ColorSchemeTransitionTest.kt
index ea841b7..8fd2d2f 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/media/ColorSchemeTransitionTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/media/ColorSchemeTransitionTest.kt
@@ -146,6 +146,6 @@
@Test
fun testColorSchemeTransition_update() {
colorSchemeTransition.updateColorScheme(colorScheme, true)
- verify(mockAnimatingTransition, times(9)).updateColorScheme(colorScheme)
+ verify(mockAnimatingTransition, times(10)).updateColorScheme(colorScheme)
}
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/media/MediaCarouselControllerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/media/MediaCarouselControllerTest.kt
index ceb811b..219b3c8 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/media/MediaCarouselControllerTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/media/MediaCarouselControllerTest.kt
@@ -136,9 +136,18 @@
val resume2 = Triple("resume 2",
DATA.copy(active = false, isPlaying = false,
- playbackLocation = MediaData.PLAYBACK_LOCAL, resumption = true),
+ playbackLocation = MediaData.PLAYBACK_LOCAL, resumption = true),
1000L)
+ val activeMoreRecent = Triple("active more recent",
+ DATA.copy(active = false, isPlaying = false,
+ playbackLocation = MediaData.PLAYBACK_LOCAL, resumption = true, lastActive = 2L),
+ 1000L)
+
+ val activeLessRecent = Triple("active less recent",
+ DATA.copy(active = false, isPlaying = false,
+ playbackLocation = MediaData.PLAYBACK_LOCAL, resumption = true, lastActive = 1L),
+ 1000L)
// Expected ordering for media players:
// Actively playing local sessions
// Actively playing cast sessions
diff --git a/packages/SystemUI/tests/src/com/android/systemui/media/MediaDataManagerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/media/MediaDataManagerTest.kt
index e42ae1c..9a7b129 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/media/MediaDataManagerTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/media/MediaDataManagerTest.kt
@@ -38,6 +38,7 @@
import com.google.common.truth.Truth.assertThat
import org.junit.After
import org.junit.Before
+import org.junit.Ignore
import org.junit.Rule
import org.junit.Test
import org.junit.runner.RunWith
@@ -574,6 +575,7 @@
.onSmartspaceMediaDataLoaded(anyObject(), anyObject(), anyBoolean())
}
+ @Ignore("b/233283726")
@Test
fun testOnSmartspaceMediaDataLoaded_hasNoneMediaTarget_callsRemoveListener() {
smartspaceMediaDataProvider.onTargetsAvailable(listOf(mediaSmartspaceTarget))
diff --git a/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogControllerTest.java b/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogControllerTest.java
index 4a8cb0b..7b1e5c9 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogControllerTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/qs/tiles/dialog/InternetDialogControllerTest.java
@@ -1,9 +1,15 @@
package com.android.systemui.qs.tiles.dialog;
import static android.provider.Settings.Global.AIRPLANE_MODE_ON;
+import static android.telephony.SignalStrength.NUM_SIGNAL_STRENGTH_BINS;
+import static android.telephony.SignalStrength.SIGNAL_STRENGTH_GREAT;
+import static android.telephony.SignalStrength.SIGNAL_STRENGTH_POOR;
import static com.android.systemui.qs.tiles.dialog.InternetDialogController.TOAST_PARAMS_HORIZONTAL_WEIGHT;
import static com.android.systemui.qs.tiles.dialog.InternetDialogController.TOAST_PARAMS_VERTICAL_WEIGHT;
+import static com.android.wifitrackerlib.WifiEntry.WIFI_LEVEL_MAX;
+import static com.android.wifitrackerlib.WifiEntry.WIFI_LEVEL_MIN;
+import static com.android.wifitrackerlib.WifiEntry.WIFI_LEVEL_UNREACHABLE;
import static com.google.common.truth.Truth.assertThat;
@@ -17,6 +23,7 @@
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.reset;
+import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -28,6 +35,7 @@
import android.net.wifi.WifiManager;
import android.os.Handler;
import android.telephony.ServiceState;
+import android.telephony.SignalStrength;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.testing.AndroidTestingRunner;
@@ -140,6 +148,8 @@
private View mDialogLaunchView;
@Mock
private WifiStateWorker mWifiStateWorker;
+ @Mock
+ private SignalStrength mSignalStrength;
private TestableResources mTestableResources;
private InternetDialogController mInternetDialogController;
@@ -152,6 +162,8 @@
MockitoAnnotations.initMocks(this);
mTestableResources = mContext.getOrCreateTestableResources();
doReturn(mTelephonyManager).when(mTelephonyManager).createForSubscriptionId(anyInt());
+ when(mTelephonyManager.getSignalStrength()).thenReturn(mSignalStrength);
+ when(mSignalStrength.getLevel()).thenReturn(SIGNAL_STRENGTH_GREAT);
when(mKeyguardStateController.isUnlocked()).thenReturn(true);
when(mConnectedEntry.isDefaultNetwork()).thenReturn(true);
when(mConnectedEntry.hasInternetAccess()).thenReturn(true);
@@ -380,7 +392,7 @@
@Test
public void getInternetWifiDrawable_withWifiLevelUnreachable_returnNull() {
- when(mConnectedEntry.getLevel()).thenReturn(WifiEntry.WIFI_LEVEL_UNREACHABLE);
+ when(mConnectedEntry.getLevel()).thenReturn(WIFI_LEVEL_UNREACHABLE);
Drawable drawable = mInternetDialogController.getInternetWifiDrawable(mConnectedEntry);
@@ -638,6 +650,57 @@
assertThat(mInternetDialogController.isWifiScanEnabled()).isTrue();
}
+ @Test
+ public void getSignalStrengthDrawableWithLevel_carrierNetworkIsNotActive_useMobileDataLevel() {
+ // Fake mobile data level as SIGNAL_STRENGTH_POOR(1)
+ when(mSignalStrength.getLevel()).thenReturn(SIGNAL_STRENGTH_POOR);
+ // Fake carrier network level as WIFI_LEVEL_MAX(4)
+ when(mInternetDialogController.getCarrierNetworkLevel()).thenReturn(WIFI_LEVEL_MAX);
+
+ InternetDialogController spyController = spy(mInternetDialogController);
+ spyController.getSignalStrengthDrawableWithLevel(false /* isCarrierNetworkActive */);
+
+ verify(spyController).getSignalStrengthIcon(any(), eq(SIGNAL_STRENGTH_POOR),
+ eq(NUM_SIGNAL_STRENGTH_BINS), anyInt(), anyBoolean());
+ }
+
+ @Test
+ public void getSignalStrengthDrawableWithLevel_carrierNetworkIsActive_useCarrierNetworkLevel() {
+ // Fake mobile data level as SIGNAL_STRENGTH_POOR(1)
+ when(mSignalStrength.getLevel()).thenReturn(SIGNAL_STRENGTH_POOR);
+ // Fake carrier network level as WIFI_LEVEL_MAX(4)
+ when(mInternetDialogController.getCarrierNetworkLevel()).thenReturn(WIFI_LEVEL_MAX);
+
+ InternetDialogController spyController = spy(mInternetDialogController);
+ spyController.getSignalStrengthDrawableWithLevel(true /* isCarrierNetworkActive */);
+
+ verify(spyController).getSignalStrengthIcon(any(), eq(WIFI_LEVEL_MAX),
+ eq(WIFI_LEVEL_MAX + 1), anyInt(), anyBoolean());
+ }
+
+ @Test
+ public void getCarrierNetworkLevel_mergedCarrierEntryIsNull_returnMinLevel() {
+ when(mAccessPointController.getMergedCarrierEntry()).thenReturn(null);
+
+ assertThat(mInternetDialogController.getCarrierNetworkLevel()).isEqualTo(WIFI_LEVEL_MIN);
+ }
+
+ @Test
+ public void getCarrierNetworkLevel_getUnreachableLevel_returnMinLevel() {
+ when(mMergedCarrierEntry.getLevel()).thenReturn(WIFI_LEVEL_UNREACHABLE);
+
+ assertThat(mInternetDialogController.getCarrierNetworkLevel()).isEqualTo(WIFI_LEVEL_MIN);
+ }
+
+ @Test
+ public void getCarrierNetworkLevel_getAvailableLevel_returnSameLevel() {
+ for (int level = WIFI_LEVEL_MIN; level <= WIFI_LEVEL_MAX; level++) {
+ when(mMergedCarrierEntry.getLevel()).thenReturn(level);
+
+ assertThat(mInternetDialogController.getCarrierNetworkLevel()).isEqualTo(level);
+ }
+ }
+
private String getResourcesString(String name) {
return mContext.getResources().getString(getResourcesId(name));
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/smartspace/DreamSmartspaceControllerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/smartspace/DreamSmartspaceControllerTest.kt
index 8340900..2cfe6be 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/smartspace/DreamSmartspaceControllerTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/smartspace/DreamSmartspaceControllerTest.kt
@@ -151,6 +151,8 @@
override fun setMediaTarget(target: SmartspaceTarget?) {}
override fun getSelectedPage(): Int { return 0; }
+
+ override fun getCurrentCardTopPadding(): Int { return 0; }
}
/**
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceControllerTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceControllerTest.kt
index 64aa7fb..b44f53c 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceControllerTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/lockscreen/LockscreenSmartspaceControllerTest.kt
@@ -603,6 +603,10 @@
override fun getSelectedPage(): Int {
return -1
}
+
+ override fun getCurrentCardTopPadding(): Int {
+ return 0
+ }
})
}
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/AutoTileManagerTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/AutoTileManagerTest.java
index 03a6c19..371119c 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/AutoTileManagerTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/AutoTileManagerTest.java
@@ -36,6 +36,7 @@
import android.content.ComponentName;
import android.content.Context;
+import android.content.pm.PackageManager;
import android.hardware.display.ColorDisplayManager;
import android.hardware.display.NightDisplayListener;
import android.os.Handler;
@@ -70,7 +71,9 @@
import org.mockito.Answers;
import org.mockito.InOrder;
import org.mockito.Mock;
+import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
+import org.mockito.Spy;
import java.util.Collections;
import java.util.List;
@@ -87,7 +90,10 @@
private static final String TEST_SETTING_COMPONENT = "setting_component";
private static final String TEST_COMPONENT = "test_pkg/test_cls";
private static final String TEST_CUSTOM_SPEC = "custom(" + TEST_COMPONENT + ")";
- private static final String TEST_CUSTOM_SAFETY_SPEC = "custom(safety_pkg/safety_cls)";
+ private static final String TEST_CUSTOM_SAFETY_CLASS = "safety_cls";
+ private static final String TEST_CUSTOM_SAFETY_PKG = "safety_pkg";
+ private static final String TEST_CUSTOM_SAFETY_SPEC = CustomTile.toSpec(new ComponentName(
+ TEST_CUSTOM_SAFETY_PKG, TEST_CUSTOM_SAFETY_CLASS));
private static final String SEPARATOR = AutoTileManager.SETTING_SEPARATOR;
private static final int USER = 0;
@@ -106,6 +112,7 @@
@Mock(answer = Answers.RETURNS_SELF)
private AutoAddTracker.Builder mAutoAddTrackerBuilder;
@Mock private Context mUserContext;
+ @Spy private PackageManager mPackageManager;
private final boolean mIsReduceBrightColorsAvailable = true;
private AutoTileManager mAutoTileManager;
@@ -126,13 +133,18 @@
mContext.getOrCreateTestableResources().addOverride(
com.android.internal.R.bool.config_nightDisplayAvailable, true);
mContext.getOrCreateTestableResources().addOverride(
- R.string.safety_quick_settings_tile, TEST_CUSTOM_SAFETY_SPEC);
+ R.string.safety_quick_settings_tile_class, TEST_CUSTOM_SAFETY_CLASS);
when(mAutoAddTrackerBuilder.build()).thenReturn(mAutoAddTracker);
when(mQsTileHost.getUserContext()).thenReturn(mUserContext);
when(mUserContext.getUser()).thenReturn(UserHandle.of(USER));
+ mPackageManager = Mockito.spy(mContext.getPackageManager());
+ when(mPackageManager.getPermissionControllerPackageName())
+ .thenReturn(TEST_CUSTOM_SAFETY_PKG);
+ Context context = Mockito.spy(mContext);
+ when(context.getPackageManager()).thenReturn(mPackageManager);
- mAutoTileManager = createAutoTileManager(mContext);
+ mAutoTileManager = createAutoTileManager(context);
mAutoTileManager.init();
}
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java
index 5f8dda3..09009c6 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java
@@ -19,6 +19,8 @@
import static com.android.systemui.statusbar.phone.ScrimController.OPAQUE;
import static com.android.systemui.statusbar.phone.ScrimController.SEMI_TRANSPARENT;
import static com.android.systemui.statusbar.phone.ScrimController.TRANSPARENT;
+import static com.android.systemui.statusbar.phone.ScrimState.BOUNCER;
+import static com.android.systemui.statusbar.phone.ScrimState.SHADE_LOCKED;
import static com.google.common.truth.Truth.assertThat;
@@ -275,7 +277,7 @@
@Test
public void transitionToShadeLocked() {
- mScrimController.transitionTo(ScrimState.SHADE_LOCKED);
+ mScrimController.transitionTo(SHADE_LOCKED);
mScrimController.setQsPosition(1f, 0);
finishAnimationsImmediately();
@@ -293,7 +295,7 @@
@Test
public void transitionToShadeLocked_clippingQs() {
mScrimController.setClipsQsScrim(true);
- mScrimController.transitionTo(ScrimState.SHADE_LOCKED);
+ mScrimController.transitionTo(SHADE_LOCKED);
mScrimController.setQsPosition(1f, 0);
finishAnimationsImmediately();
@@ -542,7 +544,7 @@
@Test
public void transitionToKeyguardBouncer() {
- mScrimController.transitionTo(ScrimState.BOUNCER);
+ mScrimController.transitionTo(BOUNCER);
finishAnimationsImmediately();
// Front scrim should be transparent
// Back scrim should be visible without tint
@@ -561,7 +563,7 @@
@Test
public void transitionToKeyguardBouncer_clippingQs() {
mScrimController.setClipsQsScrim(true);
- mScrimController.transitionTo(ScrimState.BOUNCER);
+ mScrimController.transitionTo(BOUNCER);
finishAnimationsImmediately();
// Front scrim should be transparent
// Back scrim should be clipping QS
@@ -581,7 +583,7 @@
@Test
public void disableClipQsScrimWithoutStateTransition_updatesTintAndAlpha() {
mScrimController.setClipsQsScrim(true);
- mScrimController.transitionTo(ScrimState.BOUNCER);
+ mScrimController.transitionTo(BOUNCER);
mScrimController.setClipsQsScrim(false);
@@ -602,7 +604,7 @@
@Test
public void enableClipQsScrimWithoutStateTransition_updatesTintAndAlpha() {
mScrimController.setClipsQsScrim(false);
- mScrimController.transitionTo(ScrimState.BOUNCER);
+ mScrimController.transitionTo(BOUNCER);
mScrimController.setClipsQsScrim(true);
@@ -672,9 +674,9 @@
finishAnimationsImmediately();
assertEquals(mScrimState, ScrimState.UNLOCKED);
- mScrimController.transitionTo(ScrimState.BOUNCER);
+ mScrimController.transitionTo(BOUNCER);
finishAnimationsImmediately();
- assertEquals(mScrimState, ScrimState.BOUNCER);
+ assertEquals(mScrimState, BOUNCER);
mScrimController.transitionTo(ScrimState.BOUNCER_SCRIMMED);
finishAnimationsImmediately();
@@ -1081,9 +1083,9 @@
HashSet<ScrimState> lowPowerModeStates = new HashSet<>(Arrays.asList(
ScrimState.OFF, ScrimState.AOD, ScrimState.PULSING));
HashSet<ScrimState> regularStates = new HashSet<>(Arrays.asList(
- ScrimState.UNINITIALIZED, ScrimState.KEYGUARD, ScrimState.BOUNCER,
+ ScrimState.UNINITIALIZED, ScrimState.KEYGUARD, BOUNCER,
ScrimState.DREAMING, ScrimState.BOUNCER_SCRIMMED, ScrimState.BRIGHTNESS_MIRROR,
- ScrimState.UNLOCKED, ScrimState.SHADE_LOCKED, ScrimState.AUTH_SCRIMMED,
+ ScrimState.UNLOCKED, SHADE_LOCKED, ScrimState.AUTH_SCRIMMED,
ScrimState.AUTH_SCRIMMED_SHADE));
for (ScrimState state : ScrimState.values()) {
@@ -1228,7 +1230,7 @@
@Test
public void testNotificationScrimVisible_afterOpeningShadeFromLockscreen() {
mScrimController.setRawPanelExpansionFraction(1);
- mScrimController.transitionTo(ScrimState.SHADE_LOCKED);
+ mScrimController.transitionTo(SHADE_LOCKED);
finishAnimationsImmediately();
assertScrimAlpha(Map.of(
@@ -1237,10 +1239,26 @@
}
@Test
+ public void qsExpansion_BehindTint_shadeLocked_bouncerActive_usesBouncerProgress() {
+ when(mStatusBarKeyguardViewManager.isBouncerInTransit()).thenReturn(true);
+ // clipping doesn't change tested logic but allows to assert scrims more in line with
+ // their expected large screen behaviour
+ mScrimController.setClipsQsScrim(false);
+ mScrimController.transitionTo(SHADE_LOCKED);
+
+ mScrimController.setQsPosition(1f, 100 /* value doesn't matter */);
+ assertTintAfterExpansion(mScrimBehind, SHADE_LOCKED.getBehindTint(), /* expansion= */ 1f);
+
+ mScrimController.setQsPosition(0.8f, 100 /* value doesn't matter */);
+ // panel expansion of 0.6 means its fully transitioned with bouncer progress interpolation
+ assertTintAfterExpansion(mScrimBehind, BOUNCER.getBehindTint(), /* expansion= */ 0.6f);
+ }
+
+ @Test
public void expansionNotificationAlpha_shadeLocked_bouncerActive_usesBouncerInterpolator() {
when(mStatusBarKeyguardViewManager.isBouncerInTransit()).thenReturn(true);
- mScrimController.transitionTo(ScrimState.SHADE_LOCKED);
+ mScrimController.transitionTo(SHADE_LOCKED);
float expansion = 0.8f;
float expectedAlpha =
@@ -1256,7 +1274,7 @@
public void expansionNotificationAlpha_shadeLocked_bouncerNotActive_usesShadeInterpolator() {
when(mStatusBarKeyguardViewManager.isBouncerInTransit()).thenReturn(false);
- mScrimController.transitionTo(ScrimState.SHADE_LOCKED);
+ mScrimController.transitionTo(SHADE_LOCKED);
float expansion = 0.8f;
float expectedAlpha = ShadeInterpolation.getNotificationScrimAlpha(expansion);
@@ -1352,7 +1370,7 @@
@Test
public void testNotificationTransparency_followsTransitionToFullShade() {
- mScrimController.transitionTo(ScrimState.SHADE_LOCKED);
+ mScrimController.transitionTo(SHADE_LOCKED);
mScrimController.setRawPanelExpansionFraction(1.0f);
finishAnimationsImmediately();
float shadeLockedAlpha = mNotificationsScrim.getViewAlpha();
@@ -1379,7 +1397,7 @@
@Test
public void notificationTransparency_followsNotificationScrimProgress() {
- mScrimController.transitionTo(ScrimState.SHADE_LOCKED);
+ mScrimController.transitionTo(SHADE_LOCKED);
mScrimController.setRawPanelExpansionFraction(1.0f);
finishAnimationsImmediately();
mScrimController.transitionTo(ScrimState.KEYGUARD);
@@ -1473,7 +1491,7 @@
mScrimBehind, TRANSPARENT,
mNotificationsScrim, TRANSPARENT));
- mScrimController.transitionTo(ScrimState.SHADE_LOCKED);
+ mScrimController.transitionTo(SHADE_LOCKED);
finishAnimationsImmediately();
assertScrimAlpha(Map.of(
mScrimInFront, TRANSPARENT,
@@ -1504,6 +1522,15 @@
assertEquals(expectedAlpha, scrim.getViewAlpha(), 0.2);
}
+ private void assertTintAfterExpansion(ScrimView scrim, int expectedTint, float expansion) {
+ String message = "Tint test failed with expected scrim tint: "
+ + Integer.toHexString(expectedTint) + " and actual tint: "
+ + Integer.toHexString(scrim.getTint()) + " for scrim: " + getScrimName(scrim);
+ mScrimController.setRawPanelExpansionFraction(expansion);
+ finishAnimationsImmediately();
+ assertEquals(message, expectedTint, scrim.getTint(), 0.1);
+ }
+
private void assertScrimTinted(Map<ScrimView, Boolean> scrimToTint) {
scrimToTint.forEach((scrim, hasTint) -> assertScrimTint(scrim, hasTint));
}
diff --git a/services/autofill/java/com/android/server/autofill/ui/SaveUi.java b/services/autofill/java/com/android/server/autofill/ui/SaveUi.java
index 826a98a..078a1d9 100644
--- a/services/autofill/java/com/android/server/autofill/ui/SaveUi.java
+++ b/services/autofill/java/com/android/server/autofill/ui/SaveUi.java
@@ -348,7 +348,9 @@
window.setType(WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY);
window.addFlags(WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM
| WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
+ | WindowManager.LayoutParams.FLAG_DIM_BEHIND
| WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH);
+ window.setDimAmount(0.6f);
window.addPrivateFlags(WindowManager.LayoutParams.SYSTEM_FLAG_SHOW_FOR_ALL_USERS);
window.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
window.setGravity(Gravity.BOTTOM | Gravity.CENTER);
diff --git a/services/core/java/com/android/server/VcnManagementService.java b/services/core/java/com/android/server/VcnManagementService.java
index f26d9f9..76cac93 100644
--- a/services/core/java/com/android/server/VcnManagementService.java
+++ b/services/core/java/com/android/server/VcnManagementService.java
@@ -24,6 +24,7 @@
import static android.net.vcn.VcnManager.VCN_STATUS_CODE_INACTIVE;
import static android.net.vcn.VcnManager.VCN_STATUS_CODE_NOT_CONFIGURED;
import static android.net.vcn.VcnManager.VCN_STATUS_CODE_SAFE_MODE;
+import static android.telephony.SubscriptionManager.isValidSubscriptionId;
import static com.android.server.vcn.TelephonySubscriptionTracker.TelephonySubscriptionSnapshot;
import static com.android.server.vcn.TelephonySubscriptionTracker.TelephonySubscriptionTrackerCallback;
@@ -167,6 +168,10 @@
static final String VCN_CONFIG_FILE =
new File(Environment.getDataSystemDirectory(), "vcn/configs.xml").getPath();
+ // TODO(b/176956496): Directly use CarrierServiceBindHelper.UNBIND_DELAY_MILLIS
+ @VisibleForTesting(visibility = Visibility.PRIVATE)
+ static final long CARRIER_PRIVILEGES_LOST_TEARDOWN_DELAY_MS = TimeUnit.SECONDS.toMillis(30);
+
/* Binder context for this service */
@NonNull private final Context mContext;
@NonNull private final Dependencies mDeps;
@@ -360,15 +365,12 @@
/** Notifies the VcnManagementService that external dependencies can be set up. */
public void systemReady() {
- // Always run on the handler thread to ensure consistency.
- mHandler.post(() -> {
- mNetworkProvider.register();
- mContext.getSystemService(ConnectivityManager.class)
- .registerNetworkCallback(
- new NetworkRequest.Builder().clearCapabilities().build(),
- mTrackingNetworkCallback);
- mTelephonySubscriptionTracker.register();
- });
+ mNetworkProvider.register();
+ mContext.getSystemService(ConnectivityManager.class)
+ .registerNetworkCallback(
+ new NetworkRequest.Builder().clearCapabilities().build(),
+ mTrackingNetworkCallback);
+ mTelephonySubscriptionTracker.register();
}
private void enforcePrimaryUser() {
@@ -509,15 +511,22 @@
if (!mVcns.containsKey(subGrp)) {
startVcnLocked(subGrp, entry.getValue());
}
+
+ // Cancel any scheduled teardowns for active subscriptions
+ mHandler.removeCallbacksAndMessages(mVcns.get(subGrp));
}
}
- // Schedule teardown of any VCN instances that have lost carrier privileges
+ // Schedule teardown of any VCN instances that have lost carrier privileges (after a
+ // delay)
for (Entry<ParcelUuid, Vcn> entry : mVcns.entrySet()) {
final ParcelUuid subGrp = entry.getKey();
final VcnConfig config = mConfigs.get(subGrp);
final boolean isActiveSubGrp = isActiveSubGroup(subGrp, snapshot);
+ final boolean isValidActiveDataSubIdNotInVcnSubGrp =
+ isValidSubscriptionId(snapshot.getActiveDataSubscriptionId())
+ && !isActiveSubGroup(subGrp, snapshot);
// TODO(b/193687515): Support multiple VCNs active at the same time
if (config == null
@@ -527,12 +536,31 @@
final ParcelUuid uuidToTeardown = subGrp;
final Vcn instanceToTeardown = entry.getValue();
- stopVcnLocked(uuidToTeardown);
+ // TODO(b/193687515): Support multiple VCNs active at the same time
+ // If directly switching to a subscription not in the current group,
+ // teardown immediately to prevent other subscription's network from being
+ // outscored by the VCN. Otherwise, teardown after a delay to ensure that
+ // SIM profile switches do not trigger the VCN to cycle.
+ final long teardownDelayMs =
+ isValidActiveDataSubIdNotInVcnSubGrp
+ ? 0
+ : CARRIER_PRIVILEGES_LOST_TEARDOWN_DELAY_MS;
+ mHandler.postDelayed(() -> {
+ synchronized (mLock) {
+ // Guard against case where this is run after a old instance was
+ // torn down, and a new instance was started. Verify to ensure
+ // correct instance is torn down. This could happen as a result of a
+ // Carrier App manually removing/adding a VcnConfig.
+ if (mVcns.get(uuidToTeardown) == instanceToTeardown) {
+ stopVcnLocked(uuidToTeardown);
- // TODO(b/181789060): invoke asynchronously after Vcn notifies
- // through VcnCallback
- notifyAllPermissionedStatusCallbacksLocked(
- uuidToTeardown, VCN_STATUS_CODE_INACTIVE);
+ // TODO(b/181789060): invoke asynchronously after Vcn notifies
+ // through VcnCallback
+ notifyAllPermissionedStatusCallbacksLocked(
+ uuidToTeardown, VCN_STATUS_CODE_INACTIVE);
+ }
+ }
+ }, instanceToTeardown, teardownDelayMs);
} else {
// If this VCN's status has not changed, update it with the new snapshot
entry.getValue().updateSubscriptionSnapshot(mLastSnapshot);
diff --git a/services/core/java/com/android/server/am/ActiveServices.java b/services/core/java/com/android/server/am/ActiveServices.java
index 48b3d0e..e9eebbf 100644
--- a/services/core/java/com/android/server/am/ActiveServices.java
+++ b/services/core/java/com/android/server/am/ActiveServices.java
@@ -76,6 +76,7 @@
import static com.android.server.am.ActivityManagerDebugConfig.TAG_WITH_CLASS_NAME;
import android.Manifest;
+import android.annotation.IntDef;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.UptimeMillisLong;
@@ -174,6 +175,8 @@
import java.io.IOException;
import java.io.PrintWriter;
import java.io.StringWriter;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collections;
@@ -211,6 +214,24 @@
| ServiceInfo.FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE
| ServiceInfo.FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION;
+ // Foreground service is stopped for unknown reason.
+ static final int FGS_STOP_REASON_UNKNOWN = 0;
+ // Foreground service is stopped by app calling Service.stopForeground().
+ static final int FGS_STOP_REASON_STOP_FOREGROUND = 1;
+ // Foreground service is stopped because service is brought down either by app calling
+ // stopService() or unbindService(), or service process is killed by the system.
+ static final int FGS_STOP_REASON_STOP_SERVICE = 2;
+ /**
+ * The list of FGS stop reasons.
+ */
+ @IntDef(flag = true, prefix = { "FGS_STOP_REASON_" }, value = {
+ FGS_STOP_REASON_UNKNOWN,
+ FGS_STOP_REASON_STOP_FOREGROUND,
+ FGS_STOP_REASON_STOP_SERVICE,
+ })
+ @Retention(RetentionPolicy.SOURCE)
+ @interface FgsStopReason {}
+
final ActivityManagerService mAm;
// Maximum number of services that we allow to start in the background
@@ -721,7 +742,7 @@
showFgsBgRestrictedNotificationLocked(r);
logFGSStateChangeLocked(r,
FrameworkStatsLog.FOREGROUND_SERVICE_STATE_CHANGED__STATE__DENIED,
- 0);
+ 0, FGS_STOP_REASON_UNKNOWN);
if (CompatChanges.isChangeEnabled(FGS_START_EXCEPTION_CHANGE_ID, callingUid)) {
throw new ForegroundServiceStartNotAllowedException(msg);
}
@@ -1909,7 +1930,7 @@
ignoreForeground = true;
logFGSStateChangeLocked(r,
FrameworkStatsLog.FOREGROUND_SERVICE_STATE_CHANGED__STATE__DENIED,
- 0);
+ 0, FGS_STOP_REASON_UNKNOWN);
if (CompatChanges.isChangeEnabled(FGS_START_EXCEPTION_CHANGE_ID,
r.appInfo.uid)) {
throw new ForegroundServiceStartNotAllowedException(msg);
@@ -1984,7 +2005,7 @@
mAm.updateForegroundServiceUsageStats(r.name, r.userId, true);
logFGSStateChangeLocked(r,
FrameworkStatsLog.FOREGROUND_SERVICE_STATE_CHANGED__STATE__ENTER,
- 0);
+ 0, FGS_STOP_REASON_UNKNOWN);
}
// Even if the service is already a FGS, we need to update the notification,
// so we need to call it again.
@@ -2066,7 +2087,8 @@
logFGSStateChangeLocked(r,
FrameworkStatsLog.FOREGROUND_SERVICE_STATE_CHANGED__STATE__EXIT,
r.mFgsExitTime > r.mFgsEnterTime
- ? (int)(r.mFgsExitTime - r.mFgsEnterTime) : 0);
+ ? (int) (r.mFgsExitTime - r.mFgsEnterTime) : 0,
+ FGS_STOP_REASON_STOP_FOREGROUND);
r.mFgsNotificationWasDeferred = false;
signalForegroundServiceObserversLocked(r);
resetFgsRestrictionLocked(r);
@@ -4652,7 +4674,8 @@
logFGSStateChangeLocked(r,
FrameworkStatsLog.FOREGROUND_SERVICE_STATE_CHANGED__STATE__EXIT,
r.mFgsExitTime > r.mFgsEnterTime
- ? (int)(r.mFgsExitTime - r.mFgsEnterTime) : 0);
+ ? (int) (r.mFgsExitTime - r.mFgsEnterTime) : 0,
+ FGS_STOP_REASON_STOP_SERVICE);
mAm.updateForegroundServiceUsageStats(r.name, r.userId, false);
}
@@ -6846,7 +6869,8 @@
* @param state one of ENTER/EXIT/DENIED event.
* @param durationMs Only meaningful for EXIT event, the duration from ENTER and EXIT state.
*/
- private void logFGSStateChangeLocked(ServiceRecord r, int state, int durationMs) {
+ private void logFGSStateChangeLocked(ServiceRecord r, int state, int durationMs,
+ @FgsStopReason int fgsStopReason) {
if (!ActivityManagerUtils.shouldSamplePackageForAtom(
r.packageName, mAm.mConstants.mFgsAtomSampleRate)) {
return;
@@ -6861,6 +6885,8 @@
allowWhileInUsePermissionInFgs = r.mAllowWhileInUsePermissionInFgs;
fgsStartReasonCode = r.mAllowStartForeground;
}
+ final int callerTargetSdkVersion = r.mRecentCallerApplicationInfo != null
+ ? r.mRecentCallerApplicationInfo.targetSdkVersion : 0;
FrameworkStatsLog.write(FrameworkStatsLog.FOREGROUND_SERVICE_STATE_CHANGED,
r.appInfo.uid,
r.shortInstanceName,
@@ -6869,8 +6895,7 @@
fgsStartReasonCode,
r.appInfo.targetSdkVersion,
r.mRecentCallingUid,
- r.mRecentCallerApplicationInfo != null
- ? r.mRecentCallerApplicationInfo.targetSdkVersion : 0,
+ callerTargetSdkVersion,
r.mInfoTempFgsAllowListReason != null
? r.mInfoTempFgsAllowListReason.mCallingUid : INVALID_UID,
r.mFgsNotificationWasDeferred,
@@ -6879,6 +6904,30 @@
r.mStartForegroundCount,
ActivityManagerUtils.hashComponentNameForAtom(r.shortInstanceName),
r.mFgsHasNotificationPermission);
+
+ int event = 0;
+ if (state == FrameworkStatsLog.FOREGROUND_SERVICE_STATE_CHANGED__STATE__ENTER) {
+ event = EventLogTags.AM_FOREGROUND_SERVICE_START;
+ } else if (state == FrameworkStatsLog.FOREGROUND_SERVICE_STATE_CHANGED__STATE__EXIT) {
+ event = EventLogTags.AM_FOREGROUND_SERVICE_STOP;
+ } else if (state == FrameworkStatsLog.FOREGROUND_SERVICE_STATE_CHANGED__STATE__DENIED) {
+ event = EventLogTags.AM_FOREGROUND_SERVICE_DENIED;
+ } else {
+ // Unknown event.
+ return;
+ }
+ EventLog.writeEvent(event,
+ r.userId,
+ r.shortInstanceName,
+ allowWhileInUsePermissionInFgs ? 1 : 0,
+ reasonCodeToString(fgsStartReasonCode),
+ r.appInfo.targetSdkVersion,
+ callerTargetSdkVersion,
+ r.mFgsNotificationWasDeferred ? 1 : 0,
+ r.mFgsNotificationShown ? 1 : 0,
+ durationMs,
+ r.mStartForegroundCount,
+ fgsStopReasonToString(fgsStopReason));
}
boolean canAllowWhileInUsePermissionInFgsLocked(int callingPid, int callingUid,
@@ -6903,4 +6952,15 @@
return mAm.getPackageManagerInternal().isSameApp(packageName, uid,
UserHandle.getUserId(uid));
}
+
+ private static String fgsStopReasonToString(@FgsStopReason int stopReason) {
+ switch (stopReason) {
+ case FGS_STOP_REASON_STOP_SERVICE:
+ return "STOP_SERVICE";
+ case FGS_STOP_REASON_STOP_FOREGROUND:
+ return "STOP_FOREGROUND";
+ default:
+ return "UNKNOWN";
+ }
+ }
}
diff --git a/services/core/java/com/android/server/am/AppBatteryTracker.java b/services/core/java/com/android/server/am/AppBatteryTracker.java
index 1a566a9..6619025 100644
--- a/services/core/java/com/android/server/am/AppBatteryTracker.java
+++ b/services/core/java/com/android/server/am/AppBatteryTracker.java
@@ -839,6 +839,8 @@
@Override
void dumpAsProto(ProtoOutputStream proto, int uid) {
+ // Force an update.
+ updateBatteryUsageStatsIfNecessary(mInjector.currentTimeMillis(), true);
synchronized (mLock) {
final SparseArray<ImmutableBatteryUsage> uidConsumers = mUidBatteryUsageInWindow;
if (uid != android.os.Process.INVALID_UID) {
diff --git a/services/core/java/com/android/server/am/BatteryStatsService.java b/services/core/java/com/android/server/am/BatteryStatsService.java
index 7253b494..7fe3c1f 100644
--- a/services/core/java/com/android/server/am/BatteryStatsService.java
+++ b/services/core/java/com/android/server/am/BatteryStatsService.java
@@ -2260,7 +2260,8 @@
private void dumpHelp(PrintWriter pw) {
pw.println("Battery stats (batterystats) dump options:");
pw.println(" [--checkin] [--proto] [--history] [--history-start] [--charged] [-c]");
- pw.println(" [--daily] [--reset] [--write] [--new-daily] [--read-daily] [-h] [<package.name>]");
+ pw.println(" [--daily] [--reset] [--reset-all] [--write] [--new-daily] [--read-daily]");
+ pw.println(" [-h] [<package.name>]");
pw.println(" --checkin: generate output for a checkin report; will write (and clear) the");
pw.println(" last old completed stats when they had been reset.");
pw.println(" -c: write the current stats in checkin format.");
@@ -2271,6 +2272,7 @@
pw.println(" --charged: only output data since last charged.");
pw.println(" --daily: only output full daily data.");
pw.println(" --reset: reset the stats, clearing all current data.");
+ pw.println(" --reset-all: reset the stats, clearing all current and past data.");
pw.println(" --write: force write current collected stats to disk.");
pw.println(" --new-daily: immediately create and write new daily stats record.");
pw.println(" --read-daily: read-load last written daily stats.");
@@ -2407,6 +2409,14 @@
flags |= BatteryStats.DUMP_CHARGED_ONLY;
} else if ("--daily".equals(arg)) {
flags |= BatteryStats.DUMP_DAILY_ONLY;
+ } else if ("--reset-all".equals(arg)) {
+ awaitCompletion();
+ synchronized (mStats) {
+ mStats.resetAllStatsCmdLocked();
+ mBatteryUsageStatsStore.removeAllSnapshots();
+ pw.println("Battery stats and history reset.");
+ noOutput = true;
+ }
} else if ("--reset".equals(arg)) {
awaitCompletion();
synchronized (mStats) {
diff --git a/services/core/java/com/android/server/am/EventLogTags.logtags b/services/core/java/com/android/server/am/EventLogTags.logtags
index b250a0c..d080036 100644
--- a/services/core/java/com/android/server/am/EventLogTags.logtags
+++ b/services/core/java/com/android/server/am/EventLogTags.logtags
@@ -116,3 +116,11 @@
30086 ssm_user_stopping (userId|1|5)
30087 ssm_user_stopped (userId|1|5)
30088 ssm_user_completed_event (userId|1|5),(eventFlag|1|5)
+
+# Foreground service start/stop events.
+30100 am_foreground_service_start (User|1|5),(Component Name|3),(allowWhileInUse|1),(startReasonCode|3),(targetSdk|1|1),(callerTargetSdk|1|1),(notificationWasDeferred|1),(notificationShown|1),(durationMs|1|3),(startForegroundCount|1|1),(stopReason|3)
+30101 am_foreground_service_denied (User|1|5),(Component Name|3),(allowWhileInUse|1),(startReasonCode|3),(targetSdk|1|1),(callerTargetSdk|1|1),(notificationWasDeferred|1),(notificationShown|1),(durationMs|1|3),(startForegroundCount|1|1),(stopReason|3)
+30102 am_foreground_service_stop (User|1|5),(Component Name|3),(allowWhileInUse|1),(startReasonCode|3),(targetSdk|1|1),(callerTargetSdk|1|1),(notificationWasDeferred|1),(notificationShown|1),(durationMs|1|3),(startForegroundCount|1|1),(stopReason|3)
+
+
+
diff --git a/services/core/java/com/android/server/am/ProcessErrorStateRecord.java b/services/core/java/com/android/server/am/ProcessErrorStateRecord.java
index 7fe2700..653ece4a 100644
--- a/services/core/java/com/android/server/am/ProcessErrorStateRecord.java
+++ b/services/core/java/com/android/server/am/ProcessErrorStateRecord.java
@@ -126,6 +126,12 @@
private AppNotRespondingDialog.Data mAnrData;
/**
+ * Annotation from process killed due to an ANR.
+ */
+ @GuardedBy("mService")
+ private String mAnrAnnotation;
+
+ /**
* Optional local handler to be invoked in the process crash.
*/
@CompositeRWLock({"mService", "mProcLock"})
@@ -193,6 +199,16 @@
mCrashingReport = crashingReport;
}
+ @GuardedBy("mService")
+ String getAnrAnnotation() {
+ return mAnrAnnotation;
+ }
+
+ @GuardedBy("mService")
+ void setAnrAnnotation(String anrAnnotation) {
+ mAnrAnnotation = anrAnnotation;
+ }
+
@GuardedBy(anyOf = {"mService", "mProcLock"})
ActivityManager.ProcessErrorStateInfo getNotRespondingReport() {
return mNotRespondingReport;
@@ -243,6 +259,8 @@
mApp.getWindowProcessController().appEarlyNotResponding(annotation, () -> {
synchronized (mService) {
+ // Store annotation here as instance below races with this killLocked.
+ setAnrAnnotation(annotation);
mApp.killLocked("anr", ApplicationExitInfo.REASON_ANR, true);
}
});
@@ -256,6 +274,9 @@
final int pid = mApp.getPid();
final UUID errorId;
synchronized (mService) {
+ // Store annotation here as instance above will not be hit on all paths.
+ setAnrAnnotation(annotation);
+
// PowerManager.reboot() can block for a long time, so ignore ANRs while shutting down.
if (mService.mAtmInternal.isShuttingDown()) {
Slog.i(TAG, "During shutdown skipping ANR: " + this + " " + annotation);
diff --git a/services/core/java/com/android/server/am/ProcessRecord.java b/services/core/java/com/android/server/am/ProcessRecord.java
index ac5cb2d..07b6fcd 100644
--- a/services/core/java/com/android/server/am/ProcessRecord.java
+++ b/services/core/java/com/android/server/am/ProcessRecord.java
@@ -1071,6 +1071,10 @@
@SubReason int subReason, boolean noisy) {
if (!mKilledByAm) {
Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER, "kill");
+ if (reasonCode == ApplicationExitInfo.REASON_ANR
+ && mErrorState.getAnrAnnotation() != null) {
+ description = description + ": " + mErrorState.getAnrAnnotation();
+ }
if (mService != null && (noisy || info.uid == mService.mCurOomAdjUid)) {
mService.reportUidInfoMessageLocked(TAG,
"Killing " + toShortString() + " (adj " + mState.getSetAdj()
diff --git a/services/core/java/com/android/server/am/TEST_MAPPING b/services/core/java/com/android/server/am/TEST_MAPPING
index 03eddc9..e4f624d 100644
--- a/services/core/java/com/android/server/am/TEST_MAPPING
+++ b/services/core/java/com/android/server/am/TEST_MAPPING
@@ -63,6 +63,32 @@
]
}
],
+ "presubmit-large": [
+ {
+ "name": "CtsUsageStatsTestCases",
+ "file_patterns": [
+ "ActivityManagerService\\.java",
+ "BroadcastQueue\\.java"
+ ],
+ "options": [
+ {
+ "include-filter": "android.app.usage.cts.BroadcastResponseStatsTest"
+ },
+ {
+ "exclude-annotation": "androidx.test.filters.FlakyTest"
+ },
+ {
+ "exclude-annotation": "android.platform.test.annotations.FlakyTest"
+ },
+ {
+ "exclude-annotation": "androidx.test.filters.MediumTest"
+ },
+ {
+ "exclude-annotation": "androidx.test.filters.LargeTest"
+ }
+ ]
+ }
+ ],
"postsubmit": [
{
"name": "FrameworksServicesTests",
diff --git a/services/core/java/com/android/server/audio/PlaybackActivityMonitor.java b/services/core/java/com/android/server/audio/PlaybackActivityMonitor.java
index 565783f..a4468a3 100644
--- a/services/core/java/com/android/server/audio/PlaybackActivityMonitor.java
+++ b/services/core/java/com/android/server/audio/PlaybackActivityMonitor.java
@@ -494,7 +494,7 @@
}
pw.println("\n");
// muted players:
- pw.print("\n muted players (piids) awaiting device connection: BL3 ####");
+ pw.print("\n muted players (piids) awaiting device connection:");
for (int piid : mMutedPlayersAwaitingConnection) {
pw.print(" " + piid);
}
@@ -1235,9 +1235,7 @@
@GuardedBy("mPlayerLock")
private void unmutePlayersExpectingDevice() {
- if (mMutedPlayersAwaitingConnection.isEmpty()) {
- return;
- }
+ mMutedUsagesAwaitingConnection = null;
for (int piid : mMutedPlayersAwaitingConnection) {
final AudioPlaybackConfiguration apc = mPlayers.get(piid);
if (apc == null) {
@@ -1254,7 +1252,6 @@
}
}
mMutedPlayersAwaitingConnection.clear();
- mMutedUsagesAwaitingConnection = null;
}
//=================================================================
@@ -1278,8 +1275,8 @@
public void handleMessage(Message msg) {
switch (msg.what) {
case MSG_L_TIMEOUT_MUTE_AWAIT_CONNECTION:
- Log.i(TAG, "Timeout for muting waiting for "
- + (AudioDeviceAttributes) msg.obj + ", unmuting");
+ sEventLogger.loglogi("Timeout for muting waiting for "
+ + (AudioDeviceAttributes) msg.obj + ", unmuting", TAG);
synchronized (mPlayerLock) {
unmutePlayersExpectingDevice();
}
diff --git a/services/core/java/com/android/server/audio/SpatializerHelper.java b/services/core/java/com/android/server/audio/SpatializerHelper.java
index c61bad4..5b26672 100644
--- a/services/core/java/com/android/server/audio/SpatializerHelper.java
+++ b/services/core/java/com/android/server/audio/SpatializerHelper.java
@@ -34,6 +34,7 @@
import android.media.ISpatializerHeadTrackingCallback;
import android.media.ISpatializerHeadTrackingModeCallback;
import android.media.ISpatializerOutputCallback;
+import android.media.MediaMetrics;
import android.media.SpatializationLevel;
import android.media.SpatializationMode;
import android.media.Spatializer;
@@ -524,6 +525,7 @@
final int deviceType = ada.getType();
final boolean wireless = isWireless(deviceType);
boolean isInList = false;
+ SADeviceState deviceUpdated = null; // non-null on update.
for (SADeviceState deviceState : mSADevices) {
if (deviceType == deviceState.mDeviceType
@@ -531,6 +533,7 @@
isInList = true;
if (forceEnable) {
deviceState.mEnabled = true;
+ deviceUpdated = deviceState;
}
break;
}
@@ -540,25 +543,54 @@
wireless ? ada.getAddress() : "");
dev.mEnabled = true;
mSADevices.add(dev);
+ deviceUpdated = dev;
}
- onRoutingUpdated();
- mAudioService.persistSpatialAudioDeviceSettings();
+ if (deviceUpdated != null) {
+ onRoutingUpdated();
+ mAudioService.persistSpatialAudioDeviceSettings();
+ logDeviceState(deviceUpdated, "addCompatibleAudioDevice");
+ }
+ }
+
+ private static final String METRICS_DEVICE_PREFIX = "audio.spatializer.device.";
+
+ // Device logging is accomplished in the Java Audio Service level.
+ // (System capabilities is done in the Native AudioPolicyManager level).
+ //
+ // There may be different devices with the same device type (aliasing).
+ // We always send the full device state info on each change.
+ private void logDeviceState(SADeviceState deviceState, String event) {
+ final String deviceName = AudioSystem.getDeviceName(deviceState.mDeviceType);
+ new MediaMetrics.Item(METRICS_DEVICE_PREFIX + deviceName)
+ .set(MediaMetrics.Property.ADDRESS, deviceState.mDeviceAddress)
+ .set(MediaMetrics.Property.ENABLED, deviceState.mEnabled ? "true" : "false")
+ .set(MediaMetrics.Property.EVENT, TextUtils.emptyIfNull(event))
+ .set(MediaMetrics.Property.HAS_HEAD_TRACKER,
+ deviceState.mHasHeadTracker ? "true" : "false") // this may be updated later.
+ .set(MediaMetrics.Property.HEAD_TRACKER_ENABLED,
+ deviceState.mHeadTrackerEnabled ? "true" : "false")
+ .record();
}
synchronized void removeCompatibleAudioDevice(@NonNull AudioDeviceAttributes ada) {
loglogi("removeCompatibleAudioDevice: dev=" + ada);
final int deviceType = ada.getType();
final boolean wireless = isWireless(deviceType);
+ SADeviceState deviceUpdated = null; // non-null on update.
for (SADeviceState deviceState : mSADevices) {
if (deviceType == deviceState.mDeviceType
&& (!wireless || ada.getAddress().equals(deviceState.mDeviceAddress))) {
deviceState.mEnabled = false;
+ deviceUpdated = deviceState;
break;
}
}
- onRoutingUpdated();
- mAudioService.persistSpatialAudioDeviceSettings();
+ if (deviceUpdated != null) {
+ onRoutingUpdated();
+ mAudioService.persistSpatialAudioDeviceSettings();
+ logDeviceState(deviceUpdated, "removeCompatibleAudioDevice");
+ }
}
/**
@@ -630,8 +662,10 @@
}
}
if (!knownDevice) {
- mSADevices.add(new SADeviceState(ada.getType(), ada.getAddress()));
+ final SADeviceState deviceState = new SADeviceState(ada.getType(), ada.getAddress());
+ mSADevices.add(deviceState);
mAudioService.persistSpatialAudioDeviceSettings();
+ logDeviceState(deviceState, "addWirelessDeviceIfNew"); // may be updated later.
}
}
@@ -1070,6 +1104,7 @@
Log.i(TAG, "setHeadTrackerEnabled enabled:" + enabled + " device:" + ada);
deviceState.mHeadTrackerEnabled = enabled;
mAudioService.persistSpatialAudioDeviceSettings();
+ logDeviceState(deviceState, "setHeadTrackerEnabled");
break;
}
}
@@ -1119,6 +1154,7 @@
if (!deviceState.mHasHeadTracker) {
deviceState.mHasHeadTracker = true;
mAudioService.persistSpatialAudioDeviceSettings();
+ logDeviceState(deviceState, "setHasHeadTracker");
}
return deviceState.mHeadTrackerEnabled;
}
@@ -1585,6 +1621,7 @@
SADeviceState devState = SADeviceState.fromPersistedString(setting);
if (devState != null) {
mSADevices.add(devState);
+ logDeviceState(devState, "setSADeviceSettings");
}
}
}
diff --git a/services/core/java/com/android/server/content/ContentService.java b/services/core/java/com/android/server/content/ContentService.java
index f93e06d..2564ae8 100644
--- a/services/core/java/com/android/server/content/ContentService.java
+++ b/services/core/java/com/android/server/content/ContentService.java
@@ -26,6 +26,7 @@
import android.annotation.RequiresPermission;
import android.annotation.UserIdInt;
import android.app.ActivityManager;
+import android.app.ActivityManager.RestrictionLevel;
import android.app.ActivityManagerInternal;
import android.app.AppGlobals;
import android.app.AppOpsManager;
@@ -52,6 +53,7 @@
import android.database.IContentObserver;
import android.database.sqlite.SQLiteException;
import android.net.Uri;
+import android.os.AppBackgroundRestrictionsInfo;
import android.os.Binder;
import android.os.Build;
import android.os.Bundle;
@@ -1544,7 +1546,8 @@
}
if (procState <= ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND || isUidActive) {
FrameworkStatsLog.write(FrameworkStatsLog.SYNC_EXEMPTION_OCCURRED,
- callingUid, getProcStateForStatsd(procState), isUidActive);
+ callingUid, getProcStateForStatsd(procState), isUidActive,
+ getRestrictionLevelForStatsd(ami.getRestrictionLevel(callingUid)));
return ContentResolver.SYNC_EXEMPTION_PROMOTE_BUCKET;
}
return ContentResolver.SYNC_EXEMPTION_NONE;
@@ -1599,6 +1602,27 @@
}
}
+ private int getRestrictionLevelForStatsd(@RestrictionLevel int level) {
+ switch (level) {
+ case ActivityManager.RESTRICTION_LEVEL_UNKNOWN:
+ return AppBackgroundRestrictionsInfo.LEVEL_UNKNOWN;
+ case ActivityManager.RESTRICTION_LEVEL_UNRESTRICTED:
+ return AppBackgroundRestrictionsInfo.LEVEL_UNRESTRICTED;
+ case ActivityManager.RESTRICTION_LEVEL_EXEMPTED:
+ return AppBackgroundRestrictionsInfo.LEVEL_EXEMPTED;
+ case ActivityManager.RESTRICTION_LEVEL_ADAPTIVE_BUCKET:
+ return AppBackgroundRestrictionsInfo.LEVEL_ADAPTIVE_BUCKET;
+ case ActivityManager.RESTRICTION_LEVEL_RESTRICTED_BUCKET:
+ return AppBackgroundRestrictionsInfo.LEVEL_RESTRICTED_BUCKET;
+ case ActivityManager.RESTRICTION_LEVEL_BACKGROUND_RESTRICTED:
+ return AppBackgroundRestrictionsInfo.LEVEL_BACKGROUND_RESTRICTED;
+ case ActivityManager.RESTRICTION_LEVEL_HIBERNATION:
+ return AppBackgroundRestrictionsInfo.LEVEL_HIBERNATION;
+ default:
+ return AppBackgroundRestrictionsInfo.LEVEL_UNKNOWN;
+ }
+ }
+
/** {@hide} */
@VisibleForTesting
public static final class ObserverNode {
diff --git a/services/core/java/com/android/server/input/InputManagerService.java b/services/core/java/com/android/server/input/InputManagerService.java
index b624d43..72612a0 100644
--- a/services/core/java/com/android/server/input/InputManagerService.java
+++ b/services/core/java/com/android/server/input/InputManagerService.java
@@ -146,6 +146,7 @@
import java.util.Map;
import java.util.Objects;
import java.util.OptionalInt;
+import java.util.function.Consumer;
/** The system implementation of {@link IInputManager} that manages input devices. */
public class InputManagerService extends IInputManager.Stub
@@ -168,6 +169,8 @@
private static final int MSG_POINTER_DISPLAY_ID_CHANGED = 7;
private static final int DEFAULT_VIBRATION_MAGNITUDE = 192;
+ private static final AdditionalDisplayInputProperties
+ DEFAULT_ADDITIONAL_DISPLAY_INPUT_PROPERTIES = new AdditionalDisplayInputProperties();
/**
* We know the issue and are working to fix it, so suppressing the toast to not annoy
@@ -281,6 +284,7 @@
// Guards per-display input properties and properties relating to the mouse pointer.
// Threads can wait on this lock to be notified the next time the display on which the mouse
// pointer is shown has changed.
+ // WARNING: Do not call other services outside of input while holding this lock.
private final Object mAdditionalDisplayInputPropertiesLock = new Object();
// Forces the PointerController to target a specific display id.
@@ -299,6 +303,11 @@
@GuardedBy("mAdditionalDisplayInputPropertiesLock")
private final SparseArray<AdditionalDisplayInputProperties> mAdditionalDisplayInputProperties =
new SparseArray<>();
+ // This contains the per-display properties that are currently applied by native code. It should
+ // be kept in sync with the properties for mRequestedPointerDisplayId.
+ @GuardedBy("mAdditionalDisplayInputPropertiesLock")
+ private final AdditionalDisplayInputProperties mCurrentDisplayProperties =
+ new AdditionalDisplayInputProperties();
@GuardedBy("mAdditionalDisplayInputPropertiesLock")
private int mIconType = PointerIcon.TYPE_NOT_SPECIFIED;
@GuardedBy("mAdditionalDisplayInputPropertiesLock")
@@ -571,27 +580,19 @@
}
private void setDisplayViewportsInternal(List<DisplayViewport> viewports) {
- synchronized (mAdditionalDisplayInputPropertiesLock) {
- final DisplayViewport[] vArray = new DisplayViewport[viewports.size()];
- for (int i = viewports.size() - 1; i >= 0; --i) {
- vArray[i] = viewports.get(i);
- }
- mNative.setDisplayViewports(vArray);
- // Always attempt to update the pointer display when viewports change.
- updatePointerDisplayId();
+ final DisplayViewport[] vArray = new DisplayViewport[viewports.size()];
+ for (int i = viewports.size() - 1; i >= 0; --i) {
+ vArray[i] = viewports.get(i);
+ }
+ mNative.setDisplayViewports(vArray);
- if (mOverriddenPointerDisplayId != Display.INVALID_DISPLAY) {
- final AdditionalDisplayInputProperties properties =
- mAdditionalDisplayInputProperties.get(mOverriddenPointerDisplayId);
- if (properties != null) {
- updatePointerIconVisibleLocked(properties.pointerIconVisible);
- updatePointerAccelerationLocked(properties.pointerAcceleration);
- return;
- }
+ // Attempt to update the pointer display when viewports change when there is no override.
+ // Take care to not make calls to window manager while holding internal locks.
+ final int pointerDisplayId = mWindowManagerCallbacks.getPointerDisplayId();
+ synchronized (mAdditionalDisplayInputPropertiesLock) {
+ if (mOverriddenPointerDisplayId == Display.INVALID_DISPLAY) {
+ updatePointerDisplayIdLocked(pointerDisplayId);
}
- updatePointerIconVisibleLocked(
- AdditionalDisplayInputProperties.DEFAULT_POINTER_ICON_VISIBLE);
- updatePointerAccelerationLocked(IInputConstants.DEFAULT_POINTER_ACCELERATION);
}
}
@@ -1743,12 +1744,7 @@
mPointerIconDisplayContext = null;
}
- synchronized (mAdditionalDisplayInputPropertiesLock) {
- setPointerIconVisible(AdditionalDisplayInputProperties.DEFAULT_POINTER_ICON_VISIBLE,
- displayId);
- setPointerAcceleration(AdditionalDisplayInputProperties.DEFAULT_POINTER_ACCELERATION,
- displayId);
- }
+ updateAdditionalDisplayInputProperties(displayId, AdditionalDisplayInputProperties::reset);
mNative.displayRemoved(displayId);
}
@@ -1835,57 +1831,13 @@
}
private void setPointerAcceleration(float acceleration, int displayId) {
- synchronized (mAdditionalDisplayInputPropertiesLock) {
- AdditionalDisplayInputProperties properties =
- mAdditionalDisplayInputProperties.get(displayId);
- if (properties == null) {
- properties = new AdditionalDisplayInputProperties();
- mAdditionalDisplayInputProperties.put(displayId, properties);
- }
- properties.pointerAcceleration = acceleration;
- if (properties.allDefaults()) {
- mAdditionalDisplayInputProperties.remove(displayId);
- }
- if (mOverriddenPointerDisplayId == displayId) {
- updatePointerAccelerationLocked(acceleration);
- }
- }
- }
-
- @GuardedBy("mAdditionalDisplayInputPropertiesLock")
- private void updatePointerAccelerationLocked(float acceleration) {
- mNative.setPointerAcceleration(acceleration);
+ updateAdditionalDisplayInputProperties(displayId,
+ properties -> properties.pointerAcceleration = acceleration);
}
private void setPointerIconVisible(boolean visible, int displayId) {
- synchronized (mAdditionalDisplayInputPropertiesLock) {
- AdditionalDisplayInputProperties properties =
- mAdditionalDisplayInputProperties.get(displayId);
- if (properties == null) {
- properties = new AdditionalDisplayInputProperties();
- mAdditionalDisplayInputProperties.put(displayId, properties);
- }
- properties.pointerIconVisible = visible;
- if (properties.allDefaults()) {
- mAdditionalDisplayInputProperties.remove(displayId);
- }
- if (mOverriddenPointerDisplayId == displayId) {
- updatePointerIconVisibleLocked(visible);
- }
- }
- }
-
- @GuardedBy("mAdditionalDisplayInputPropertiesLock")
- private void updatePointerIconVisibleLocked(boolean visible) {
- if (visible) {
- if (mIconType == PointerIcon.TYPE_CUSTOM) {
- mNative.setCustomPointerIcon(mIcon);
- } else {
- mNative.setPointerIconType(mIconType);
- }
- } else {
- mNative.setPointerIconType(PointerIcon.TYPE_NULL);
- }
+ updateAdditionalDisplayInputProperties(displayId,
+ properties -> properties.pointerIconVisible = visible);
}
private void registerPointerSpeedSettingObserver() {
@@ -2023,22 +1975,18 @@
/**
* Update the display on which the mouse pointer is shown.
- * If there is an overridden display for the mouse pointer, use that. Otherwise, query
- * WindowManager for the pointer display.
*
* @return true if the pointer displayId changed, false otherwise.
*/
- private boolean updatePointerDisplayId() {
- synchronized (mAdditionalDisplayInputPropertiesLock) {
- final int pointerDisplayId = mOverriddenPointerDisplayId != Display.INVALID_DISPLAY
- ? mOverriddenPointerDisplayId : mWindowManagerCallbacks.getPointerDisplayId();
- if (mRequestedPointerDisplayId == pointerDisplayId) {
- return false;
- }
- mRequestedPointerDisplayId = pointerDisplayId;
- mNative.setPointerDisplayId(pointerDisplayId);
- return true;
+ @GuardedBy("mAdditionalDisplayInputPropertiesLock")
+ private boolean updatePointerDisplayIdLocked(int pointerDisplayId) {
+ if (mRequestedPointerDisplayId == pointerDisplayId) {
+ return false;
}
+ mRequestedPointerDisplayId = pointerDisplayId;
+ mNative.setPointerDisplayId(pointerDisplayId);
+ applyAdditionalDisplayInputProperties();
+ return true;
}
private void handlePointerDisplayIdChanged(PointerDisplayIdChangedArgs args) {
@@ -2051,25 +1999,23 @@
args.mPointerDisplayId, args.mXPosition, args.mYPosition);
}
- private boolean setVirtualMousePointerDisplayIdBlocking(int displayId) {
- // Indicates whether this request is for removing the override.
- final boolean removingOverride = displayId == Display.INVALID_DISPLAY;
+ private boolean setVirtualMousePointerDisplayIdBlocking(int overrideDisplayId) {
+ final boolean isRemovingOverride = overrideDisplayId == Display.INVALID_DISPLAY;
+
+ // Take care to not make calls to window manager while holding internal locks.
+ final int resolvedDisplayId = isRemovingOverride
+ ? mWindowManagerCallbacks.getPointerDisplayId()
+ : overrideDisplayId;
synchronized (mAdditionalDisplayInputPropertiesLock) {
- mOverriddenPointerDisplayId = displayId;
- if (!removingOverride) {
- final AdditionalDisplayInputProperties properties =
- mAdditionalDisplayInputProperties.get(displayId);
- if (properties != null) {
- updatePointerAccelerationLocked(properties.pointerAcceleration);
- updatePointerIconVisibleLocked(properties.pointerIconVisible);
- }
- }
- if (!updatePointerDisplayId() && mAcknowledgedPointerDisplayId == displayId) {
+ mOverriddenPointerDisplayId = overrideDisplayId;
+
+ if (!updatePointerDisplayIdLocked(resolvedDisplayId)
+ && mAcknowledgedPointerDisplayId == resolvedDisplayId) {
// The requested pointer display is already set.
return true;
}
- if (removingOverride && mAcknowledgedPointerDisplayId == Display.INVALID_DISPLAY) {
+ if (isRemovingOverride && mAcknowledgedPointerDisplayId == Display.INVALID_DISPLAY) {
// The pointer display override is being removed, but the current pointer display
// is already invalid. This can happen when the PointerController is destroyed as a
// result of the removal of all input devices that can control the pointer.
@@ -2087,7 +2033,7 @@
// reported new displayId is the one we requested. This check ensures that if two
// competing overrides are requested in succession, the caller can be notified if one
// of them fails.
- return removingOverride || mAcknowledgedPointerDisplayId == displayId;
+ return isRemovingOverride || mAcknowledgedPointerDisplayId == overrideDisplayId;
}
}
@@ -2393,15 +2339,10 @@
synchronized (mAdditionalDisplayInputPropertiesLock) {
mIcon = null;
mIconType = iconType;
- if (mOverriddenPointerDisplayId != Display.INVALID_DISPLAY) {
- final AdditionalDisplayInputProperties properties =
- mAdditionalDisplayInputProperties.get(mOverriddenPointerDisplayId);
- if (properties == null || properties.pointerIconVisible) {
- mNative.setPointerIconType(mIconType);
- }
- } else {
- mNative.setPointerIconType(mIconType);
- }
+
+ if (!mCurrentDisplayProperties.pointerIconVisible) return;
+
+ mNative.setPointerIconType(mIconType);
}
}
@@ -2412,17 +2353,10 @@
synchronized (mAdditionalDisplayInputPropertiesLock) {
mIconType = PointerIcon.TYPE_CUSTOM;
mIcon = icon;
- if (mOverriddenPointerDisplayId != Display.INVALID_DISPLAY) {
- final AdditionalDisplayInputProperties properties =
- mAdditionalDisplayInputProperties.get(mOverriddenPointerDisplayId);
- if (properties == null || properties.pointerIconVisible) {
- // Only set the icon if it is not currently hidden; otherwise, it will be set
- // once it's no longer hidden.
- mNative.setCustomPointerIcon(mIcon);
- }
- } else {
- mNative.setCustomPointerIcon(mIcon);
- }
+
+ if (!mCurrentDisplayProperties.pointerIconVisible) return;
+
+ mNative.setCustomPointerIcon(mIcon);
}
}
@@ -3852,14 +3786,79 @@
(float) IInputConstants.DEFAULT_POINTER_ACCELERATION;
// The pointer acceleration for this display.
- public float pointerAcceleration = DEFAULT_POINTER_ACCELERATION;
+ public float pointerAcceleration;
// Whether the pointer icon should be visible or hidden on this display.
- public boolean pointerIconVisible = DEFAULT_POINTER_ICON_VISIBLE;
+ public boolean pointerIconVisible;
+
+ AdditionalDisplayInputProperties() {
+ reset();
+ }
public boolean allDefaults() {
return Float.compare(pointerAcceleration, DEFAULT_POINTER_ACCELERATION) == 0
&& pointerIconVisible == DEFAULT_POINTER_ICON_VISIBLE;
}
+
+ public void reset() {
+ pointerAcceleration = DEFAULT_POINTER_ACCELERATION;
+ pointerIconVisible = DEFAULT_POINTER_ICON_VISIBLE;
+ }
+ }
+
+ private void applyAdditionalDisplayInputProperties() {
+ synchronized (mAdditionalDisplayInputPropertiesLock) {
+ AdditionalDisplayInputProperties properties =
+ mAdditionalDisplayInputProperties.get(mRequestedPointerDisplayId);
+ if (properties == null) properties = DEFAULT_ADDITIONAL_DISPLAY_INPUT_PROPERTIES;
+ applyAdditionalDisplayInputPropertiesLocked(properties);
+ }
+ }
+
+ @GuardedBy("mAdditionalDisplayInputPropertiesLock")
+ private void applyAdditionalDisplayInputPropertiesLocked(
+ AdditionalDisplayInputProperties properties) {
+ // Handle changes to each of the individual properties.
+ if (properties.pointerIconVisible != mCurrentDisplayProperties.pointerIconVisible) {
+ mCurrentDisplayProperties.pointerIconVisible = properties.pointerIconVisible;
+ if (properties.pointerIconVisible) {
+ if (mIconType == PointerIcon.TYPE_CUSTOM) {
+ Objects.requireNonNull(mIcon);
+ mNative.setCustomPointerIcon(mIcon);
+ } else {
+ mNative.setPointerIconType(mIconType);
+ }
+ } else {
+ mNative.setPointerIconType(PointerIcon.TYPE_NULL);
+ }
+ }
+
+ if (properties.pointerAcceleration != mCurrentDisplayProperties.pointerAcceleration) {
+ mCurrentDisplayProperties.pointerAcceleration = properties.pointerAcceleration;
+ mNative.setPointerAcceleration(properties.pointerAcceleration);
+ }
+ }
+
+ private void updateAdditionalDisplayInputProperties(int displayId,
+ Consumer<AdditionalDisplayInputProperties> updater) {
+ synchronized (mAdditionalDisplayInputPropertiesLock) {
+ AdditionalDisplayInputProperties properties =
+ mAdditionalDisplayInputProperties.get(displayId);
+ if (properties == null) {
+ properties = new AdditionalDisplayInputProperties();
+ mAdditionalDisplayInputProperties.put(displayId, properties);
+ }
+ updater.accept(properties);
+ if (properties.allDefaults()) {
+ mAdditionalDisplayInputProperties.remove(displayId);
+ }
+ if (displayId != mRequestedPointerDisplayId) {
+ Log.i(TAG, "Not applying additional properties for display " + displayId
+ + " because the pointer is currently targeting display "
+ + mRequestedPointerDisplayId + ".");
+ return;
+ }
+ applyAdditionalDisplayInputPropertiesLocked(properties);
+ }
}
}
diff --git a/services/core/java/com/android/server/location/LocationManagerService.java b/services/core/java/com/android/server/location/LocationManagerService.java
index 31d5136..e5eed99 100644
--- a/services/core/java/com/android/server/location/LocationManagerService.java
+++ b/services/core/java/com/android/server/location/LocationManagerService.java
@@ -17,6 +17,7 @@
package com.android.server.location;
import static android.Manifest.permission.ACCESS_FINE_LOCATION;
+import static android.Manifest.permission.INTERACT_ACROSS_USERS;
import static android.Manifest.permission.WRITE_SECURE_SETTINGS;
import static android.app.compat.CompatChanges.isChangeEnabled;
import static android.content.pm.PackageManager.MATCH_DIRECT_BOOT_AWARE;
@@ -1030,8 +1031,10 @@
@Override
public void addProviderRequestListener(IProviderRequestListener listener) {
- for (LocationProviderManager manager : mProviderManagers) {
- manager.addProviderRequestListener(listener);
+ if (mContext.checkCallingOrSelfPermission(INTERACT_ACROSS_USERS) == PERMISSION_GRANTED) {
+ for (LocationProviderManager manager : mProviderManagers) {
+ manager.addProviderRequestListener(listener);
+ }
}
}
diff --git a/services/core/java/com/android/server/location/gnss/GnssNetworkConnectivityHandler.java b/services/core/java/com/android/server/location/gnss/GnssNetworkConnectivityHandler.java
index 70b8689..2e1aaf8 100644
--- a/services/core/java/com/android/server/location/gnss/GnssNetworkConnectivityHandler.java
+++ b/services/core/java/com/android/server/location/gnss/GnssNetworkConnectivityHandler.java
@@ -16,6 +16,8 @@
package com.android.server.location.gnss;
+import static android.net.NetworkCapabilities.NET_CAPABILITY_NOT_RESTRICTED;
+
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.LinkAddress;
@@ -47,7 +49,6 @@
import java.util.List;
import java.util.Map;
-
/**
* Handles network connection requests and network state change updates for AGPS data download.
*/
@@ -582,6 +583,7 @@
if (mNiHandler.getInEmergency() && mActiveSubId >= 0) {
if (DEBUG) Log.d(TAG, "Adding Network Specifier: " + Integer.toString(mActiveSubId));
networkRequestBuilder.setNetworkSpecifier(Integer.toString(mActiveSubId));
+ networkRequestBuilder.removeCapability(NET_CAPABILITY_NOT_RESTRICTED);
}
NetworkRequest networkRequest = networkRequestBuilder.build();
// Make sure we only have a single request.
diff --git a/services/core/java/com/android/server/media/projection/MediaProjectionManagerService.java b/services/core/java/com/android/server/media/projection/MediaProjectionManagerService.java
index 1937852..098e8f7 100644
--- a/services/core/java/com/android/server/media/projection/MediaProjectionManagerService.java
+++ b/services/core/java/com/android/server/media/projection/MediaProjectionManagerService.java
@@ -45,14 +45,15 @@
import android.os.UserHandle;
import android.util.ArrayMap;
import android.util.Slog;
+import android.view.ContentRecordingSession;
import android.window.WindowContainerToken;
import com.android.internal.util.ArrayUtils;
import com.android.internal.util.DumpUtils;
import com.android.server.LocalServices;
import com.android.server.SystemService;
-import com.android.server.SystemService.TargetUser;
import com.android.server.Watchdog;
+import com.android.server.wm.WindowManagerInternal;
import java.io.FileDescriptor;
import java.io.PrintWriter;
@@ -381,6 +382,27 @@
}
}
+ /**
+ * Updates the current content mirroring session.
+ */
+ @Override
+ public void setContentRecordingSession(@Nullable ContentRecordingSession incomingSession,
+ @NonNull IMediaProjection projection) {
+ final long origId = Binder.clearCallingIdentity();
+ try {
+ synchronized (mLock) {
+ if (!isValidMediaProjection(projection)) {
+ throw new SecurityException("Invalid media projection");
+ }
+ LocalServices.getService(
+ WindowManagerInternal.class).setContentRecordingSession(
+ incomingSession);
+ }
+ } finally {
+ Binder.restoreCallingIdentity(origId);
+ }
+ }
+
@Override // Binder call
public void dump(FileDescriptor fd, final PrintWriter pw, String[] args) {
if (!DumpUtils.checkDumpPermission(mContext, TAG, pw)) return;
diff --git a/services/core/java/com/android/server/pm/ApkChecksums.java b/services/core/java/com/android/server/pm/ApkChecksums.java
index 3911994..c2f2b0a 100644
--- a/services/core/java/com/android/server/pm/ApkChecksums.java
+++ b/services/core/java/com/android/server/pm/ApkChecksums.java
@@ -77,6 +77,7 @@
import java.io.OutputStream;
import java.io.RandomAccessFile;
import java.nio.ByteBuffer;
+import java.nio.ByteOrder;
import java.nio.file.Files;
import java.security.DigestException;
import java.security.InvalidParameterException;
@@ -584,7 +585,7 @@
});
checksums.put(TYPE_WHOLE_MERKLE_ROOT_4K_SHA256,
new ApkChecksum(split, TYPE_WHOLE_MERKLE_ROOT_4K_SHA256,
- generatedRootHash));
+ verityHashForFile(file, generatedRootHash)));
} catch (IOException | NoSuchAlgorithmException | DigestException e) {
Slog.e(TAG, "Error calculating WHOLE_MERKLE_ROOT_4K_SHA256", e);
}
@@ -649,19 +650,20 @@
// Skip /product folder.
// TODO(b/231354111): remove this hack once we are allowed to change SELinux rules.
if (!containsFile(Environment.getProductDirectory(), filePath)) {
- byte[] hash = VerityUtils.getFsverityRootHash(filePath);
- if (hash != null) {
- return new ApkChecksum(split, TYPE_WHOLE_MERKLE_ROOT_4K_SHA256, hash);
+ byte[] verityHash = VerityUtils.getFsverityRootHash(filePath);
+ if (verityHash != null) {
+ return new ApkChecksum(split, TYPE_WHOLE_MERKLE_ROOT_4K_SHA256, verityHash);
}
}
// v4 next
try {
ApkSignatureSchemeV4Verifier.VerifiedSigner signer =
ApkSignatureSchemeV4Verifier.extractCertificates(filePath);
- byte[] hash = signer.contentDigests.getOrDefault(CONTENT_DIGEST_VERITY_CHUNKED_SHA256,
- null);
- if (hash != null) {
- return new ApkChecksum(split, TYPE_WHOLE_MERKLE_ROOT_4K_SHA256, hash);
+ byte[] rootHash = signer.contentDigests.getOrDefault(
+ CONTENT_DIGEST_VERITY_CHUNKED_SHA256, null);
+ if (rootHash != null) {
+ return new ApkChecksum(split, TYPE_WHOLE_MERKLE_ROOT_4K_SHA256,
+ verityHashForFile(new File(filePath), rootHash));
}
} catch (SignatureNotFoundException e) {
// Nothing
@@ -671,6 +673,41 @@
return null;
}
+ /**
+ * Returns fs-verity digest as described in
+ * https://www.kernel.org/doc/html/latest/filesystems/fsverity.html#fs-verity-descriptor
+ * @param file the Merkle tree is built over
+ * @param rootHash Merkle tree root hash
+ */
+ static byte[] verityHashForFile(File file, byte[] rootHash) {
+ try {
+ ByteBuffer buffer = ByteBuffer.allocate(256); // sizeof(fsverity_descriptor)
+ buffer.order(ByteOrder.LITTLE_ENDIAN);
+ buffer.put((byte) 1); // __u8 version, must be 1
+ buffer.put((byte) 1); // __u8 hash_algorithm, FS_VERITY_HASH_ALG_SHA256
+ buffer.put((byte) 12); // __u8, FS_VERITY_LOG_BLOCKSIZE
+ buffer.put((byte) 0); // __u8, size of salt in bytes; 0 if none
+ buffer.putInt(0); // __le32 __reserved_0x04, must be 0
+ buffer.putLong(file.length()); // __le64 data_size
+ buffer.put(rootHash); // root_hash, first 32 bytes
+ final int padding = 32 + 32 + 144; // root_hash, last 32 bytes, we are using sha256.
+ // salt, 32 bytes
+ // reserved, 144 bytes
+ for (int i = 0; i < padding; ++i) {
+ buffer.put((byte) 0);
+ }
+
+ buffer.flip();
+
+ final MessageDigest md = MessageDigest.getInstance(ALGO_SHA256);
+ md.update(buffer);
+ return md.digest();
+ } catch (NoSuchAlgorithmException e) {
+ Slog.e(TAG, "Device does not support MessageDigest algorithm", e);
+ return null;
+ }
+ }
+
private static Map<Integer, ApkChecksum> extractHashFromV2V3Signature(
String split, String filePath, int types) {
Map<Integer, byte[]> contentDigests = null;
diff --git a/services/core/java/com/android/server/pm/PackageManagerServiceUtils.java b/services/core/java/com/android/server/pm/PackageManagerServiceUtils.java
index 703be16..719c3b7 100644
--- a/services/core/java/com/android/server/pm/PackageManagerServiceUtils.java
+++ b/services/core/java/com/android/server/pm/PackageManagerServiceUtils.java
@@ -1069,7 +1069,7 @@
if (ArrayUtils.isEmpty(hashInfo.rawRootHash)) {
throw new IOException("Root has not present");
}
- return hashInfo.rawRootHash;
+ return ApkChecksums.verityHashForFile(new File(filename), hashInfo.rawRootHash);
} catch (IOException ignore) {
Slog.e(TAG, "ERROR: could not load root hash from incremental install");
}
diff --git a/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java b/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java
index 6796065..cc1c943 100644
--- a/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java
+++ b/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java
@@ -603,15 +603,10 @@
final String setupWizardPackage = ArrayUtils.firstOrNull(getKnownPackages(
KnownPackages.PACKAGE_SETUP_WIZARD, userId));
grantPermissionsToSystemPackage(pm, setupWizardPackage, userId, PHONE_PERMISSIONS,
- CONTACTS_PERMISSIONS, ALWAYS_LOCATION_PERMISSIONS, CAMERA_PERMISSIONS);
+ CONTACTS_PERMISSIONS, ALWAYS_LOCATION_PERMISSIONS, CAMERA_PERMISSIONS,
+ NEARBY_DEVICES_PERMISSIONS);
grantSystemFixedPermissionsToSystemPackage(pm, setupWizardPackage, userId,
NOTIFICATION_PERMISSIONS);
- if (mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_WATCH, 0)
- || mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_AUTOMOTIVE,
- 0)) {
- grantPermissionsToSystemPackage(
- pm, setupWizardPackage, userId, NEARBY_DEVICES_PERMISSIONS);
- }
// SearchSelector
grantPermissionsToSystemPackage(pm, getDefaultSearchSelectorPackage(), userId,
diff --git a/services/core/java/com/android/server/pm/permission/PermissionManagerServiceImpl.java b/services/core/java/com/android/server/pm/permission/PermissionManagerServiceImpl.java
index 8552bba..d34682d 100644
--- a/services/core/java/com/android/server/pm/permission/PermissionManagerServiceImpl.java
+++ b/services/core/java/com/android/server/pm/permission/PermissionManagerServiceImpl.java
@@ -2516,7 +2516,6 @@
final int[] userIds = filterUserId == UserHandle.USER_ALL ? getAllUserIds()
: new int[] { filterUserId };
- boolean installPermissionsChanged = false;
boolean runtimePermissionsRevoked = false;
int[] updatedUserIds = EMPTY_INT_ARRAY;
@@ -2635,7 +2634,7 @@
UidPermissionState origState = uidState;
- boolean installPermissionsChangedForUser = false;
+ boolean changedInstallPermission = false;
if (replace) {
userState.setInstallPermissionsFixed(ps.getPackageName(), false);
@@ -2801,7 +2800,7 @@
&& origState.isPermissionGranted(permName))))) {
// Grant an install permission.
if (uidState.grantPermission(bp)) {
- installPermissionsChangedForUser = true;
+ changedInstallPermission = true;
}
} else if (bp.isRuntime()) {
boolean hardRestricted = bp.isHardRestricted();
@@ -2941,12 +2940,12 @@
}
}
if (uidState.removePermissionState(bp.getName())) {
- installPermissionsChangedForUser = true;
+ changedInstallPermission = true;
}
}
}
- if ((installPermissionsChangedForUser || replace)
+ if ((changedInstallPermission || replace)
&& !userState.areInstallPermissionsFixed(ps.getPackageName())
&& !ps.isSystem() || ps.getTransientState().isUpdatedSystemApp()) {
// This is the first that we have heard about this package, so the
@@ -2955,12 +2954,6 @@
userState.setInstallPermissionsFixed(ps.getPackageName(), true);
}
- if (installPermissionsChangedForUser) {
- installPermissionsChanged = true;
- if (replace) {
- updatedUserIds = ArrayUtils.appendInt(updatedUserIds, userId);
- }
- }
updatedUserIds = revokePermissionsNoLongerImplicitLocked(uidState,
pkg.getPackageName(), uidImplicitPermissions, uidTargetSdkVersion, userId,
updatedUserIds);
@@ -2977,12 +2970,8 @@
// Persist the runtime permissions state for users with changes. If permissions
// were revoked because no app in the shared user declares them we have to
// write synchronously to avoid losing runtime permissions state.
- // Also write synchronously if we changed any install permission for an updated app, because
- // the install permission state is likely already fixed before update, and if we lose the
- // changes here the app won't be reconsidered for newly-added install permissions.
if (callback != null) {
- callback.onPermissionUpdated(updatedUserIds,
- (replace && installPermissionsChanged) || runtimePermissionsRevoked);
+ callback.onPermissionUpdated(updatedUserIds, runtimePermissionsRevoked);
}
for (int userId : updatedUserIds) {
diff --git a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
index ea0db30..b8162cd 100644
--- a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
+++ b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java
@@ -1789,13 +1789,13 @@
}
@Override
- public BackNavigationInfo startBackNavigation() {
+ public BackNavigationInfo startBackNavigation(boolean requestAnimation) {
mAmInternal.enforceCallingPermission(START_TASKS_FROM_RECENTS,
"startBackNavigation()");
if (mBackNavigationController == null) {
return null;
}
- return mBackNavigationController.startBackNavigation(mWindowManager);
+ return mBackNavigationController.startBackNavigation(mWindowManager, requestAnimation);
}
/**
diff --git a/services/core/java/com/android/server/wm/BackNavigationController.java b/services/core/java/com/android/server/wm/BackNavigationController.java
index dac72d8..d07cc68 100644
--- a/services/core/java/com/android/server/wm/BackNavigationController.java
+++ b/services/core/java/com/android/server/wm/BackNavigationController.java
@@ -61,10 +61,6 @@
return SystemProperties.getInt("persist.wm.debug.predictive_back_screenshot", 0) != 0;
}
- private static boolean isAnimationEnabled() {
- return SystemProperties.getInt("persist.wm.debug.predictive_back_anim", 0) != 0;
- }
-
/**
* Set up the necessary leashes and build a {@link BackNavigationInfo} instance for an upcoming
* back gesture animation.
@@ -74,20 +70,21 @@
* fallback on dispatching the key event.
*/
@Nullable
- BackNavigationInfo startBackNavigation(@NonNull WindowManagerService wmService) {
- return startBackNavigation(wmService, null);
+ BackNavigationInfo startBackNavigation(@NonNull WindowManagerService wmService,
+ boolean requestAnimation) {
+ return startBackNavigation(wmService, null, requestAnimation);
}
/**
* @param tx, a transaction to be used for the attaching the animation leash.
* This is used in tests. If null, the object will be initialized with a new {@link
* SurfaceControl.Transaction}
- * @see #startBackNavigation(WindowManagerService)
+ * @see #startBackNavigation(WindowManagerService, boolean)
*/
@VisibleForTesting
@Nullable
BackNavigationInfo startBackNavigation(WindowManagerService wmService,
- @Nullable SurfaceControl.Transaction tx) {
+ @Nullable SurfaceControl.Transaction tx, boolean requestAnimation) {
if (tx == null) {
tx = new SurfaceControl.Transaction();
@@ -295,7 +292,7 @@
}
// Special handling for back to home animation
- if (backType == BackNavigationInfo.TYPE_RETURN_TO_HOME && isAnimationEnabled()
+ if (backType == BackNavigationInfo.TYPE_RETURN_TO_HOME && requestAnimation
&& prevTask != null) {
currentTask.mBackGestureStarted = true;
// Make launcher show from behind by marking its top activity as visible and
@@ -350,7 +347,7 @@
Task finalTask = currentTask;
RemoteCallback onBackNavigationDone = new RemoteCallback(result -> onBackNavigationDone(
result, finalRemovedWindowContainer, finalBackType, finalTask,
- finalprevActivity));
+ finalprevActivity, requestAnimation));
infoBuilder.setOnBackNavigationDone(onBackNavigationDone);
}
@@ -384,14 +381,14 @@
private void onBackNavigationDone(
Bundle result, WindowContainer<?> windowContainer, int backType,
- Task task, ActivityRecord prevActivity) {
+ Task task, ActivityRecord prevActivity, boolean requestAnimation) {
SurfaceControl surfaceControl = windowContainer.getSurfaceControl();
boolean triggerBack = result != null && result.getBoolean(
BackNavigationInfo.KEY_TRIGGER_BACK);
ProtoLog.d(WM_DEBUG_BACK_PREVIEW, "onBackNavigationDone backType=%s, "
+ "task=%s, prevActivity=%s", backType, task, prevActivity);
- if (backType == BackNavigationInfo.TYPE_RETURN_TO_HOME && isAnimationEnabled()) {
+ if (backType == BackNavigationInfo.TYPE_RETURN_TO_HOME && requestAnimation) {
if (triggerBack) {
if (surfaceControl != null && surfaceControl.isValid()) {
// When going back to home, hide the task surface before it is re-parented to
diff --git a/services/core/java/com/android/server/wm/ConfigurationContainer.java b/services/core/java/com/android/server/wm/ConfigurationContainer.java
index e7c03aa..fcdf175 100644
--- a/services/core/java/com/android/server/wm/ConfigurationContainer.java
+++ b/services/core/java/com/android/server/wm/ConfigurationContainer.java
@@ -126,6 +126,10 @@
mResolvedTmpConfig.setTo(mResolvedOverrideConfiguration);
resolveOverrideConfiguration(newParentConfig);
mFullConfiguration.setTo(newParentConfig);
+ // Do not inherit always-on-top property from parent, otherwise the always-on-top
+ // property is propagated to all children. In that case, newly added child is
+ // always being positioned at bottom (behind the always-on-top siblings).
+ mFullConfiguration.windowConfiguration.unsetAlwaysOnTop();
mFullConfiguration.updateFrom(mResolvedOverrideConfiguration);
onMergedOverrideConfigurationChanged();
if (!mResolvedTmpConfig.equals(mResolvedOverrideConfiguration)) {
@@ -228,6 +232,10 @@
final ConfigurationContainer parent = getParent();
if (parent != null) {
mMergedOverrideConfiguration.setTo(parent.getMergedOverrideConfiguration());
+ // Do not inherit always-on-top property from parent, otherwise the always-on-top
+ // property is propagated to all children. In that case, newly added child is
+ // always being positioned at bottom (behind the always-on-top siblings).
+ mMergedOverrideConfiguration.windowConfiguration.unsetAlwaysOnTop();
mMergedOverrideConfiguration.updateFrom(mResolvedOverrideConfiguration);
} else {
mMergedOverrideConfiguration.setTo(mResolvedOverrideConfiguration);
diff --git a/services/core/java/com/android/server/wm/ContentRecorder.java b/services/core/java/com/android/server/wm/ContentRecorder.java
index 87523f4..5d2d582 100644
--- a/services/core/java/com/android/server/wm/ContentRecorder.java
+++ b/services/core/java/com/android/server/wm/ContentRecorder.java
@@ -207,7 +207,8 @@
// Update the cached session state first, since updating the service will result in always
// returning to this instance to update recording state.
mContentRecordingSession = null;
- mDisplayContent.mWmService.setContentRecordingSession(null);
+ mDisplayContent.mWmService.mContentRecordingController.setContentRecordingSessionLocked(
+ null, mDisplayContent.mWmService);
}
/**
diff --git a/services/core/java/com/android/server/wm/WindowManagerInternal.java b/services/core/java/com/android/server/wm/WindowManagerInternal.java
index c0d7d13..9eee7ba 100644
--- a/services/core/java/com/android/server/wm/WindowManagerInternal.java
+++ b/services/core/java/com/android/server/wm/WindowManagerInternal.java
@@ -30,6 +30,7 @@
import android.os.Bundle;
import android.os.IBinder;
import android.util.Pair;
+import android.view.ContentRecordingSession;
import android.view.Display;
import android.view.IInputFilter;
import android.view.IRemoteAnimationFinishedCallback;
@@ -869,4 +870,16 @@
*/
public abstract boolean isPointInsideWindow(
@NonNull IBinder windowToken, int displayId, float displayX, float displayY);
+
+ /**
+ * Updates the content recording session. If a different session is already in progress, then
+ * the pre-existing session is stopped, and the new incoming session takes over.
+ *
+ * The DisplayContent for the new session will begin recording when
+ * {@link RootWindowContainer#onDisplayChanged} is invoked for the new {@link VirtualDisplay}.
+ * Must be invoked for a valid MediaProjection session.
+ *
+ * @param incomingSession the nullable incoming content recording session
+ */
+ public abstract void setContentRecordingSession(ContentRecordingSession incomingSession);
}
diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java
index 7a54804..9022186 100644
--- a/services/core/java/com/android/server/wm/WindowManagerService.java
+++ b/services/core/java/com/android/server/wm/WindowManagerService.java
@@ -2956,16 +2956,6 @@
}
}
- /**
- * Updates the current content mirroring session.
- */
- @Override
- public void setContentRecordingSession(@Nullable ContentRecordingSession incomingSession) {
- synchronized (mGlobalLock) {
- mContentRecordingController.setContentRecordingSessionLocked(incomingSession, this);
- }
- }
-
// TODO(multi-display): remove when no default display use case.
void prepareAppTransitionNone() {
if (!checkCallingPermission(MANAGE_APP_TOKENS, "prepareAppTransition()")) {
@@ -8242,6 +8232,14 @@
return w.getBounds().contains((int) displayX, (int) displayY);
}
}
+
+ @Override
+ public void setContentRecordingSession(@Nullable ContentRecordingSession incomingSession) {
+ synchronized (mGlobalLock) {
+ mContentRecordingController.setContentRecordingSessionLocked(incomingSession,
+ WindowManagerService.this);
+ }
+ }
}
void registerAppFreezeListener(AppFreezeListener listener) {
diff --git a/services/tests/mockingservicestests/src/com/android/server/DeviceIdleControllerTest.java b/services/tests/mockingservicestests/src/com/android/server/DeviceIdleControllerTest.java
index ac115a2..cb14864 100644
--- a/services/tests/mockingservicestests/src/com/android/server/DeviceIdleControllerTest.java
+++ b/services/tests/mockingservicestests/src/com/android/server/DeviceIdleControllerTest.java
@@ -284,7 +284,7 @@
@Override
public void onDeviceStationaryChanged(boolean isStationary) {
if (isStationary == motionExpected) {
- fail("Unexpected device stationary status: " + isStationary);
+ fail("Got unexpected device stationary status: " + isStationary);
}
this.isStationary = isStationary;
}
@@ -2096,6 +2096,70 @@
eq(SensorManager.SENSOR_DELAY_NORMAL));
}
+ @Test
+ public void testStationaryDetection_NoDoze_AfterMotion() {
+ // Short timeout for testing.
+ mConstants.MOTION_INACTIVE_TIMEOUT = 6000L;
+ doReturn(Sensor.REPORTING_MODE_CONTINUOUS).when(mMotionSensor).getReportingMode();
+ setAlarmSoon(true);
+
+ final ArgumentCaptor<AlarmManager.OnAlarmListener> regAlarmListener = ArgumentCaptor
+ .forClass(AlarmManager.OnAlarmListener.class);
+ final ArgumentCaptor<AlarmManager.OnAlarmListener> motionAlarmListener = ArgumentCaptor
+ .forClass(AlarmManager.OnAlarmListener.class);
+ doNothing().when(mAlarmManager).setWindow(
+ anyInt(), anyLong(), anyLong(), eq("DeviceIdleController.motion"),
+ motionAlarmListener.capture(), any());
+ doNothing().when(mAlarmManager).setWindow(anyInt(), anyLong(), anyLong(),
+ eq("DeviceIdleController.motion_registration"),
+ regAlarmListener.capture(), any());
+ ArgumentCaptor<SensorEventListener> listenerCaptor =
+ ArgumentCaptor.forClass(SensorEventListener.class);
+
+ StationaryListenerForTest stationaryListener = new StationaryListenerForTest();
+ spyOn(stationaryListener);
+ InOrder inOrder = inOrder(stationaryListener, mSensorManager, mAlarmManager);
+
+ stationaryListener.motionExpected = true;
+ mDeviceIdleController.registerStationaryListener(stationaryListener);
+ inOrder.verify(stationaryListener, timeout(1000L).times(1))
+ .onDeviceStationaryChanged(eq(false));
+ assertFalse(stationaryListener.isStationary);
+ inOrder.verify(mSensorManager)
+ .registerListener(listenerCaptor.capture(), eq(mMotionSensor),
+ eq(SensorManager.SENSOR_DELAY_NORMAL));
+ inOrder.verify(mAlarmManager).setWindow(
+ anyInt(), eq(mInjector.nowElapsed + mConstants.MOTION_INACTIVE_TIMEOUT), anyLong(),
+ eq("DeviceIdleController.motion"), any(), any());
+ final SensorEventListener listener = listenerCaptor.getValue();
+
+ // Trigger motion
+ listener.onSensorChanged(mock(SensorEvent.class));
+ inOrder.verify(stationaryListener, timeout(1000L).times(1))
+ .onDeviceStationaryChanged(eq(false));
+ final ArgumentCaptor<Long> registrationTimeCaptor = ArgumentCaptor.forClass(Long.class);
+ inOrder.verify(mAlarmManager).setWindow(
+ anyInt(), registrationTimeCaptor.capture(), anyLong(),
+ eq("DeviceIdleController.motion_registration"), any(), any());
+
+ // Make sure the listener is re-registered.
+ mInjector.nowElapsed = registrationTimeCaptor.getValue();
+ regAlarmListener.getValue().onAlarm();
+ inOrder.verify(mSensorManager)
+ .registerListener(eq(listener), eq(mMotionSensor),
+ eq(SensorManager.SENSOR_DELAY_NORMAL));
+ final ArgumentCaptor<Long> timeoutCaptor = ArgumentCaptor.forClass(Long.class);
+ inOrder.verify(mAlarmManager).setWindow(anyInt(), timeoutCaptor.capture(), anyLong(),
+ eq("DeviceIdleController.motion"), any(), any());
+
+ // No motion before timeout
+ stationaryListener.motionExpected = false;
+ mInjector.nowElapsed = timeoutCaptor.getValue();
+ motionAlarmListener.getValue().onAlarm();
+ inOrder.verify(stationaryListener, timeout(1000L).times(1))
+ .onDeviceStationaryChanged(eq(true));
+ }
+
private void enterDeepState(int state) {
switch (state) {
case STATE_ACTIVE:
diff --git a/services/tests/servicestests/src/com/android/server/input/InputManagerServiceTests.kt b/services/tests/servicestests/src/com/android/server/input/InputManagerServiceTests.kt
index e78f0c7..844f5d4 100644
--- a/services/tests/servicestests/src/com/android/server/input/InputManagerServiceTests.kt
+++ b/services/tests/servicestests/src/com/android/server/input/InputManagerServiceTests.kt
@@ -36,6 +36,7 @@
import org.mockito.ArgumentMatchers.eq
import org.mockito.Mock
import org.mockito.Mockito.`when`
+import org.mockito.Mockito.clearInvocations
import org.mockito.Mockito.doAnswer
import org.mockito.Mockito.never
import org.mockito.Mockito.spy
@@ -226,7 +227,8 @@
@Test
fun onDisplayRemoved_resetAllAdditionalInputProperties() {
- localService.setVirtualMousePointerDisplayId(10)
+ setVirtualMousePointerDisplayIdAndVerify(10)
+
localService.setPointerIconVisible(false, 10)
verify(native).setPointerIconType(eq(PointerIcon.TYPE_NULL))
localService.setPointerAcceleration(5f, 10)
@@ -237,9 +239,66 @@
verify(native).setPointerIconType(eq(PointerIcon.TYPE_NOT_SPECIFIED))
verify(native).setPointerAcceleration(
eq(IInputConstants.DEFAULT_POINTER_ACCELERATION.toFloat()))
+ verifyNoMoreInteractions(native)
+ // This call should not block because the virtual mouse pointer override was never removed.
localService.setVirtualMousePointerDisplayId(10)
+
verify(native).setPointerDisplayId(eq(10))
verifyNoMoreInteractions(native)
}
+
+ @Test
+ fun updateAdditionalInputPropertiesForOverrideDisplay() {
+ setVirtualMousePointerDisplayIdAndVerify(10)
+
+ localService.setPointerIconVisible(false, 10)
+ verify(native).setPointerIconType(eq(PointerIcon.TYPE_NULL))
+ localService.setPointerAcceleration(5f, 10)
+ verify(native).setPointerAcceleration(eq(5f))
+
+ localService.setPointerIconVisible(true, 10)
+ verify(native).setPointerIconType(eq(PointerIcon.TYPE_NOT_SPECIFIED))
+ localService.setPointerAcceleration(1f, 10)
+ verify(native).setPointerAcceleration(eq(1f))
+
+ // Verify that setting properties on a different display is not propagated until the
+ // pointer is moved to that display.
+ localService.setPointerIconVisible(false, 20)
+ localService.setPointerAcceleration(6f, 20)
+ verifyNoMoreInteractions(native)
+
+ clearInvocations(native)
+ setVirtualMousePointerDisplayIdAndVerify(20)
+
+ verify(native).setPointerIconType(eq(PointerIcon.TYPE_NULL))
+ verify(native).setPointerAcceleration(eq(6f))
+ }
+
+ @Test
+ fun setAdditionalInputPropertiesBeforeOverride() {
+ localService.setPointerIconVisible(false, 10)
+ localService.setPointerAcceleration(5f, 10)
+
+ verifyNoMoreInteractions(native)
+
+ setVirtualMousePointerDisplayIdAndVerify(10)
+
+ verify(native).setPointerIconType(eq(PointerIcon.TYPE_NULL))
+ verify(native).setPointerAcceleration(eq(5f))
+ }
+
+ private fun setVirtualMousePointerDisplayIdAndVerify(overrideDisplayId: Int) {
+ val thread = Thread { localService.setVirtualMousePointerDisplayId(overrideDisplayId) }
+ thread.start()
+
+ // Allow some time for the set override call to park while waiting for the native callback.
+ Thread.sleep(100 /*millis*/)
+ verify(native).setPointerDisplayId(overrideDisplayId)
+
+ service.onPointerDisplayIdChanged(overrideDisplayId, 0f, 0f)
+ testLooper.dispatchNext()
+ verify(wmCallbacks).notifyPointerDisplayIdChanged(overrideDisplayId, 0f, 0f)
+ thread.join(100 /*millis*/)
+ }
}
diff --git a/services/tests/wmtests/src/com/android/server/wm/BackNavigationControllerTests.java b/services/tests/wmtests/src/com/android/server/wm/BackNavigationControllerTests.java
index 873d9f3..2c1c38f 100644
--- a/services/tests/wmtests/src/com/android/server/wm/BackNavigationControllerTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/BackNavigationControllerTests.java
@@ -86,7 +86,7 @@
SurfaceControl.Transaction tx = mock(SurfaceControl.Transaction.class);
BackNavigationInfo backNavigationInfo = mBackNavigationController.startBackNavigation(mWm,
- tx);
+ tx, true);
assertWithMessage("BackNavigationInfo").that(backNavigationInfo).isNotNull();
assertThat(backNavigationInfo.getDepartingAnimationTarget()).isNotNull();
assertThat(backNavigationInfo.getTaskWindowConfiguration()).isNotNull();
@@ -242,7 +242,7 @@
@Nullable
private BackNavigationInfo startBackNavigation() {
- return mBackNavigationController.startBackNavigation(mWm, new StubTransaction());
+ return mBackNavigationController.startBackNavigation(mWm, new StubTransaction(), true);
}
@NonNull
diff --git a/services/tests/wmtests/src/com/android/server/wm/ConfigurationContainerTests.java b/services/tests/wmtests/src/com/android/server/wm/ConfigurationContainerTests.java
index 59b12e4..5d824e9 100644
--- a/services/tests/wmtests/src/com/android/server/wm/ConfigurationContainerTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/ConfigurationContainerTests.java
@@ -21,6 +21,7 @@
import static android.app.WindowConfiguration.ACTIVITY_TYPE_UNDEFINED;
import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM;
import static android.app.WindowConfiguration.WINDOWING_MODE_FULLSCREEN;
+import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW;
import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED;
import static android.content.pm.ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE;
import static android.content.pm.ActivityInfo.SCREEN_ORIENTATION_PORTRAIT;
@@ -210,6 +211,20 @@
}
@Test
+ public void testSetAlwaysOnTop() {
+ final TestConfigurationContainer root = new TestConfigurationContainer();
+ final TestConfigurationContainer child1 = root.addChild();
+ final TestConfigurationContainer child2 = root.addChild();
+ root.setWindowingMode(WINDOWING_MODE_MULTI_WINDOW);
+ root.setAlwaysOnTop(true);
+ final TestConfigurationContainer child3 = root.addChild();
+ assertEquals(true, root.isAlwaysOnTop());
+ assertEquals(false, child1.isAlwaysOnTop());
+ assertEquals(false, child2.isAlwaysOnTop());
+ assertEquals(false, child3.isAlwaysOnTop());
+ }
+
+ @Test
public void testSetWindowingMode() {
final TestConfigurationContainer root = new TestConfigurationContainer();
root.setWindowingMode(WINDOWING_MODE_UNDEFINED);
diff --git a/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java b/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java
index c5f785e..32f3bfe 100644
--- a/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java
@@ -2441,7 +2441,7 @@
ContentRecordingSession session = ContentRecordingSession.createDisplaySession(
tokenToMirror);
session.setDisplayId(displayId);
- mWm.setContentRecordingSession(session);
+ mWm.mContentRecordingController.setContentRecordingSessionLocked(session, mWm);
actualDC.updateRecording();
// THEN mirroring is not started, since a null surface indicates the VirtualDisplay is off.
@@ -2470,7 +2470,7 @@
ContentRecordingSession session = ContentRecordingSession.createDisplaySession(
tokenToMirror);
session.setDisplayId(displayId);
- mWm.setContentRecordingSession(session);
+ mWm.mContentRecordingController.setContentRecordingSessionLocked(session, mWm);
mWm.mRoot.onDisplayAdded(displayId);
// WHEN getting the DisplayContent for the new virtual display.
diff --git a/services/tests/wmtests/src/com/android/server/wm/TaskDisplayAreaTests.java b/services/tests/wmtests/src/com/android/server/wm/TaskDisplayAreaTests.java
index e5e0145..e8f1d23 100644
--- a/services/tests/wmtests/src/com/android/server/wm/TaskDisplayAreaTests.java
+++ b/services/tests/wmtests/src/com/android/server/wm/TaskDisplayAreaTests.java
@@ -674,8 +674,6 @@
taskDisplayArea.positionChildAt(POSITION_TOP, alwaysOnTopRootTask,
false /* includingParents */);
assertTrue(alwaysOnTopRootTask.isAlwaysOnTop());
- // Ensure always on top state is synced to the children of the root task.
- assertTrue(alwaysOnTopRootTask.getTopNonFinishingActivity().isAlwaysOnTop());
assertEquals(alwaysOnTopRootTask, taskDisplayArea.getTopRootTask());
final Task pinnedRootTask = taskDisplayArea.createRootTask(
diff --git a/services/usage/java/com/android/server/usage/TEST_MAPPING b/services/usage/java/com/android/server/usage/TEST_MAPPING
index 523d5f9..1c0c71b 100644
--- a/services/usage/java/com/android/server/usage/TEST_MAPPING
+++ b/services/usage/java/com/android/server/usage/TEST_MAPPING
@@ -20,6 +20,28 @@
]
}
],
+ "presubmit-large": [
+ {
+ "name": "CtsUsageStatsTestCases",
+ "options": [
+ {
+ "include-filter": "android.app.usage.cts.BroadcastResponseStatsTest"
+ },
+ {
+ "exclude-annotation": "androidx.test.filters.FlakyTest"
+ },
+ {
+ "exclude-annotation": "android.platform.test.annotations.FlakyTest"
+ },
+ {
+ "exclude-annotation": "androidx.test.filters.MediumTest"
+ },
+ {
+ "exclude-annotation": "androidx.test.filters.LargeTest"
+ }
+ ]
+ }
+ ],
"postsubmit": [
{
"name": "CtsUsageStatsTestCases",
diff --git a/services/usb/java/com/android/server/usb/UsbDirectMidiDevice.java b/services/usb/java/com/android/server/usb/UsbDirectMidiDevice.java
index dc96c66..15e5e64 100644
--- a/services/usb/java/com/android/server/usb/UsbDirectMidiDevice.java
+++ b/services/usb/java/com/android/server/usb/UsbDirectMidiDevice.java
@@ -80,9 +80,13 @@
// of cycles and not being permanently stuck.
private static final int BULK_TRANSFER_TIMEOUT_MILLISECONDS = 10;
+ // Arbitrary number for timeout when closing a thread
+ private static final int THREAD_JOIN_TIMEOUT_MILLISECONDS = 200;
+
private ArrayList<UsbDeviceConnection> mUsbDeviceConnections;
private ArrayList<ArrayList<UsbEndpoint>> mInputUsbEndpoints;
private ArrayList<ArrayList<UsbEndpoint>> mOutputUsbEndpoints;
+ private ArrayList<Thread> mThreads;
private UsbMidiBlockParser mMidiBlockParser = new UsbMidiBlockParser();
private int mDefaultMidiProtocol = MidiDeviceInfo.PROTOCOL_UMP_MIDI_1_0_UP_TO_64_BITS;
@@ -273,9 +277,10 @@
// to USB MIDI for each USB output.
mUsbMidiPacketConverter = new UsbMidiPacketConverter(mNumOutputs);
- mUsbDeviceConnections = new ArrayList<UsbDeviceConnection>(mUsbInterfaces.size());
- mInputUsbEndpoints = new ArrayList<ArrayList<UsbEndpoint>>(mUsbInterfaces.size());
- mOutputUsbEndpoints = new ArrayList<ArrayList<UsbEndpoint>>(mUsbInterfaces.size());
+ mUsbDeviceConnections = new ArrayList<UsbDeviceConnection>();
+ mInputUsbEndpoints = new ArrayList<ArrayList<UsbEndpoint>>();
+ mOutputUsbEndpoints = new ArrayList<ArrayList<UsbEndpoint>>();
+ mThreads = new ArrayList<Thread>();
for (int interfaceIndex = 0; interfaceIndex < mUsbInterfaces.size(); interfaceIndex++) {
ArrayList<UsbEndpoint> inputEndpoints = new ArrayList<UsbEndpoint>();
@@ -327,7 +332,7 @@
mInputUsbEndpoints.get(connectionIndex).get(endpointIndex);
final int portFinal = portNumber;
- new Thread("UsbDirectMidiDevice input thread " + portFinal) {
+ Thread newThread = new Thread("UsbDirectMidiDevice input thread " + portFinal) {
@Override
public void run() {
final UsbRequest request = new UsbRequest();
@@ -335,9 +340,12 @@
request.initialize(connectionFinal, endpointFinal);
byte[] inputBuffer = new byte[endpointFinal.getMaxPacketSize()];
while (true) {
+ if (Thread.currentThread().interrupted()) {
+ Log.w(TAG, "input thread interrupted");
+ break;
+ }
// Record time of event immediately after waking.
long timestamp = System.nanoTime();
- if (!mIsOpen) break;
final ByteBuffer byteBuffer = ByteBuffer.wrap(inputBuffer);
if (!request.queue(byteBuffer)) {
Log.w(TAG, "Cannot queue request");
@@ -362,6 +370,10 @@
convertedArray = swapEndiannessPerWord(inputBuffer,
bytesRead);
} else {
+ if (mUsbMidiPacketConverter == null) {
+ Log.w(TAG, "mUsbMidiPacketConverter is null");
+ break;
+ }
convertedArray =
mUsbMidiPacketConverter.usbMidiToRawMidi(
inputBuffer, bytesRead);
@@ -371,19 +383,28 @@
logByteArray("Input after conversion ", convertedArray,
0, convertedArray.length);
}
+
+ if ((outputReceivers == null)
+ || (outputReceivers[portFinal] == null)) {
+ Log.w(TAG, "outputReceivers is null");
+ break;
+ }
outputReceivers[portFinal].send(convertedArray, 0,
convertedArray.length, timestamp);
}
}
} catch (IOException e) {
Log.d(TAG, "reader thread exiting");
+ } catch (NullPointerException e) {
+ Log.e(TAG, "input thread: ", e);
} finally {
request.close();
}
Log.d(TAG, "input thread exit");
}
- }.start();
-
+ };
+ newThread.start();
+ mThreads.add(newThread);
portNumber++;
}
}
@@ -402,52 +423,66 @@
final int portFinal = portNumber;
final MidiEventScheduler eventSchedulerFinal = mEventSchedulers[portFinal];
- new Thread("UsbDirectMidiDevice output thread " + portFinal) {
+ Thread newThread = new Thread("UsbDirectMidiDevice output thread " + portFinal) {
@Override
public void run() {
- while (true) {
- MidiEvent event;
- try {
- event = (MidiEvent) eventSchedulerFinal.waitNextEvent();
- } catch (InterruptedException e) {
- // try again
- continue;
- }
- if (event == null) {
- break;
- }
+ try {
+ while (true) {
+ if (Thread.currentThread().interrupted()) {
+ Log.w(TAG, "output thread interrupted");
+ break;
+ }
+ MidiEvent event;
+ try {
+ event = (MidiEvent) eventSchedulerFinal.waitNextEvent();
+ } catch (InterruptedException e) {
+ Log.w(TAG, "event scheduler interrupted");
+ break;
+ }
+ if (event == null) {
+ Log.w(TAG, "event is null");
+ break;
+ }
- if (DEBUG) {
- logByteArray("Output before conversion ", event.data, 0,
- event.count);
- }
+ if (DEBUG) {
+ logByteArray("Output before conversion ", event.data, 0,
+ event.count);
+ }
- byte[] convertedArray;
- if (mIsUniversalMidiDevice) {
- // For USB, each 32 bit word of a UMP is
- // sent with the least significant byte first.
- convertedArray = swapEndiannessPerWord(event.data,
- event.count);
- } else {
- convertedArray =
- mUsbMidiPacketConverter.rawMidiToUsbMidi(
- event.data, event.count, portFinal);
- }
+ byte[] convertedArray;
+ if (mIsUniversalMidiDevice) {
+ // For USB, each 32 bit word of a UMP is
+ // sent with the least significant byte first.
+ convertedArray = swapEndiannessPerWord(event.data,
+ event.count);
+ } else {
+ if (mUsbMidiPacketConverter == null) {
+ Log.w(TAG, "mUsbMidiPacketConverter is null");
+ break;
+ }
+ convertedArray =
+ mUsbMidiPacketConverter.rawMidiToUsbMidi(
+ event.data, event.count, portFinal);
+ }
- if (DEBUG) {
- logByteArray("Output after conversion ", convertedArray, 0,
- convertedArray.length);
- }
+ if (DEBUG) {
+ logByteArray("Output after conversion ", convertedArray, 0,
+ convertedArray.length);
+ }
- connectionFinal.bulkTransfer(endpointFinal, convertedArray,
- convertedArray.length,
- BULK_TRANSFER_TIMEOUT_MILLISECONDS);
- eventSchedulerFinal.addEventToPool(event);
+ connectionFinal.bulkTransfer(endpointFinal, convertedArray,
+ convertedArray.length,
+ BULK_TRANSFER_TIMEOUT_MILLISECONDS);
+ eventSchedulerFinal.addEventToPool(event);
+ }
+ } catch (NullPointerException e) {
+ Log.e(TAG, "output thread: ", e);
}
Log.d(TAG, "output thread exit");
}
- }.start();
-
+ };
+ newThread.start();
+ mThreads.add(newThread);
portNumber++;
}
}
@@ -523,6 +558,27 @@
private void closeLocked() {
Log.d(TAG, "closeLocked()");
+
+ // Send an interrupt signal to threads.
+ for (Thread thread : mThreads) {
+ if (thread != null) {
+ thread.interrupt();
+ }
+ }
+
+ // Wait for threads to actually stop.
+ for (Thread thread : mThreads) {
+ if (thread != null) {
+ try {
+ thread.join(THREAD_JOIN_TIMEOUT_MILLISECONDS);
+ } catch (InterruptedException e) {
+ Log.w(TAG, "thread join interrupted");
+ break;
+ }
+ }
+ }
+ mThreads = null;
+
for (int i = 0; i < mEventSchedulers.length; i++) {
mMidiInputPortReceivers[i].setReceiver(null);
mEventSchedulers[i].close();
diff --git a/tests/vcn/java/com/android/server/VcnManagementServiceTest.java b/tests/vcn/java/com/android/server/VcnManagementServiceTest.java
index 54b3c40..f924b2e 100644
--- a/tests/vcn/java/com/android/server/VcnManagementServiceTest.java
+++ b/tests/vcn/java/com/android/server/VcnManagementServiceTest.java
@@ -23,6 +23,7 @@
import static android.net.NetworkCapabilities.TRANSPORT_WIFI;
import static android.net.vcn.VcnManager.VCN_STATUS_CODE_ACTIVE;
import static android.net.vcn.VcnManager.VCN_STATUS_CODE_SAFE_MODE;
+import static android.telephony.SubscriptionManager.INVALID_SUBSCRIPTION_ID;
import static android.telephony.TelephonyManager.CARRIER_PRIVILEGE_STATUS_HAS_ACCESS;
import static android.telephony.TelephonyManager.CARRIER_PRIVILEGE_STATUS_NO_ACCESS;
@@ -276,7 +277,6 @@
@Test
public void testSystemReady() throws Exception {
mVcnMgmtSvc.systemReady();
- mTestLooper.dispatchAll();
verify(mConnMgr).registerNetworkProvider(any(VcnNetworkProvider.class));
verify(mSubscriptionTracker).register();
@@ -494,8 +494,10 @@
mVcnMgmtSvc.addVcnUnderlyingNetworkPolicyListener(mMockPolicyListener);
triggerSubscriptionTrackerCbAndGetSnapshot(null, Collections.emptySet());
- mTestLooper.dispatchAll();
+ // Verify teardown after delay
+ mTestLooper.moveTimeForward(VcnManagementService.CARRIER_PRIVILEGES_LOST_TEARDOWN_DELAY_MS);
+ mTestLooper.dispatchAll();
verify(vcn).teardownAsynchronously();
verify(mMockPolicyListener).onPolicyChanged();
}
@@ -521,6 +523,92 @@
assertEquals(0, mVcnMgmtSvc.getAllVcns().size());
}
+ /**
+ * Tests an intermediate state where carrier privileges are marked as lost before active data
+ * subId changes during a SIM ejection.
+ *
+ * <p>The expected outcome is that the VCN is torn down after a delay, as opposed to
+ * immediately.
+ */
+ @Test
+ public void testTelephonyNetworkTrackerCallbackLostCarrierPrivilegesBeforeActiveDataSubChanges()
+ throws Exception {
+ setupActiveSubscription(TEST_UUID_2);
+
+ final TelephonySubscriptionTrackerCallback cb = getTelephonySubscriptionTrackerCallback();
+ final Vcn vcn = startAndGetVcnInstance(TEST_UUID_2);
+
+ // Simulate privileges lost
+ triggerSubscriptionTrackerCbAndGetSnapshot(
+ TEST_SUBSCRIPTION_ID,
+ TEST_UUID_2,
+ Collections.emptySet(),
+ Collections.emptyMap(),
+ false /* hasCarrierPrivileges */);
+
+ // Verify teardown after delay
+ mTestLooper.moveTimeForward(VcnManagementService.CARRIER_PRIVILEGES_LOST_TEARDOWN_DELAY_MS);
+ mTestLooper.dispatchAll();
+ verify(vcn).teardownAsynchronously();
+ }
+
+ @Test
+ public void testTelephonyNetworkTrackerCallbackSimSwitchesDoNotKillVcnInstances()
+ throws Exception {
+ setupActiveSubscription(TEST_UUID_2);
+
+ final TelephonySubscriptionTrackerCallback cb = getTelephonySubscriptionTrackerCallback();
+ final Vcn vcn = startAndGetVcnInstance(TEST_UUID_2);
+
+ // Simulate SIM unloaded
+ triggerSubscriptionTrackerCbAndGetSnapshot(
+ INVALID_SUBSCRIPTION_ID,
+ null /* activeDataSubscriptionGroup */,
+ Collections.emptySet(),
+ Collections.emptyMap(),
+ false /* hasCarrierPrivileges */);
+
+ // Simulate new SIM loaded right during teardown delay.
+ mTestLooper.moveTimeForward(
+ VcnManagementService.CARRIER_PRIVILEGES_LOST_TEARDOWN_DELAY_MS / 2);
+ mTestLooper.dispatchAll();
+ triggerSubscriptionTrackerCbAndGetSnapshot(TEST_UUID_2, Collections.singleton(TEST_UUID_2));
+
+ // Verify that even after the full timeout duration, the VCN instance is not torn down
+ mTestLooper.moveTimeForward(VcnManagementService.CARRIER_PRIVILEGES_LOST_TEARDOWN_DELAY_MS);
+ mTestLooper.dispatchAll();
+ verify(vcn, never()).teardownAsynchronously();
+ }
+
+ @Test
+ public void testTelephonyNetworkTrackerCallbackDoesNotKillNewVcnInstances() throws Exception {
+ setupActiveSubscription(TEST_UUID_2);
+
+ final TelephonySubscriptionTrackerCallback cb = getTelephonySubscriptionTrackerCallback();
+ final Vcn oldInstance = startAndGetVcnInstance(TEST_UUID_2);
+
+ // Simulate SIM unloaded
+ triggerSubscriptionTrackerCbAndGetSnapshot(null, Collections.emptySet());
+
+ // Config cleared, SIM reloaded & config re-added right before teardown delay, staring new
+ // vcnInstance.
+ mTestLooper.moveTimeForward(
+ VcnManagementService.CARRIER_PRIVILEGES_LOST_TEARDOWN_DELAY_MS / 2);
+ mTestLooper.dispatchAll();
+ mVcnMgmtSvc.clearVcnConfig(TEST_UUID_2, TEST_PACKAGE_NAME);
+ triggerSubscriptionTrackerCbAndGetSnapshot(TEST_UUID_2, Collections.singleton(TEST_UUID_2));
+ final Vcn newInstance = startAndGetVcnInstance(TEST_UUID_2);
+
+ // Verify that new instance was different, and the old one was torn down
+ assertTrue(oldInstance != newInstance);
+ verify(oldInstance).teardownAsynchronously();
+
+ // Verify that even after the full timeout duration, the new VCN instance is not torn down
+ mTestLooper.moveTimeForward(VcnManagementService.CARRIER_PRIVILEGES_LOST_TEARDOWN_DELAY_MS);
+ mTestLooper.dispatchAll();
+ verify(newInstance, never()).teardownAsynchronously();
+ }
+
@Test
public void testPackageChangeListenerRegistered() throws Exception {
verify(mMockContext).registerReceiver(any(BroadcastReceiver.class), argThat(filter -> {
@@ -910,8 +998,6 @@
private void setupSubscriptionAndStartVcn(
int subId, ParcelUuid subGrp, boolean isVcnActive, boolean hasCarrierPrivileges) {
mVcnMgmtSvc.systemReady();
- mTestLooper.dispatchAll();
-
triggerSubscriptionTrackerCbAndGetSnapshot(
subGrp,
Collections.singleton(subGrp),
@@ -1007,7 +1093,6 @@
private void setupTrackedCarrierWifiNetwork(NetworkCapabilities caps) {
mVcnMgmtSvc.systemReady();
- mTestLooper.dispatchAll();
final ArgumentCaptor<NetworkCallback> captor =
ArgumentCaptor.forClass(NetworkCallback.class);
@@ -1252,14 +1337,15 @@
true /* isActive */,
true /* hasCarrierPrivileges */);
- // VCN is currently active. Lose carrier privileges for TEST_PACKAGE so the VCN goes
- // inactive.
+ // VCN is currently active. Lose carrier privileges for TEST_PACKAGE and hit teardown
+ // timeout so the VCN goes inactive.
final TelephonySubscriptionSnapshot snapshot =
triggerSubscriptionTrackerCbAndGetSnapshot(
TEST_UUID_1,
Collections.singleton(TEST_UUID_1),
Collections.singletonMap(TEST_SUBSCRIPTION_ID, TEST_UUID_1),
false /* hasCarrierPrivileges */);
+ mTestLooper.moveTimeForward(VcnManagementService.CARRIER_PRIVILEGES_LOST_TEARDOWN_DELAY_MS);
mTestLooper.dispatchAll();
// Giving TEST_PACKAGE privileges again will restart the VCN (which will indicate ACTIVE