From 8e79419cc449229e649f36eb427d815b2532598b Mon Sep 17 00:00:00 2001 From: Neha Jain Date: Mon, 5 Feb 2024 18:56:32 +0000 Subject: [PATCH 01/21] Revert "Intercept clicks for non-supported split targets on work..." Revert submission 25983910-disableSplitTargets Reason for revert: b/323785395 Reverted changes: /q/submissionid:25983910-disableSplitTargets (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:158cc2505f242abc11375d947d960febb7038bb2) Merged-In: I82bb808809e0be08803f3d5dd3ac779257bb64d0 Change-Id: I82bb808809e0be08803f3d5dd3ac779257bb64d0 --- .../uioverrides/QuickstepInteractionHandler.java | 5 ++++- .../launcher3/uioverrides/QuickstepLauncher.java | 14 ++------------ .../android/launcher3/views/ActivityContext.java | 13 ------------- 3 files changed, 6 insertions(+), 26 deletions(-) diff --git a/quickstep/src/com/android/launcher3/uioverrides/QuickstepInteractionHandler.java b/quickstep/src/com/android/launcher3/uioverrides/QuickstepInteractionHandler.java index 039c0a0ad8..22f24f185a 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/QuickstepInteractionHandler.java +++ b/quickstep/src/com/android/launcher3/uioverrides/QuickstepInteractionHandler.java @@ -28,8 +28,10 @@ import android.util.Log; import android.util.Pair; import android.view.View; import android.widget.RemoteViews; +import android.widget.Toast; import android.window.SplashScreen; +import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.logging.StatsLogManager; import com.android.launcher3.model.data.ItemInfo; @@ -61,7 +63,8 @@ class QuickstepInteractionHandler implements RemoteViews.InteractionHandler { // Log metric StatsLogManager.StatsLogger logger = mLauncher.getStatsLogManager().logger(); logger.log(LAUNCHER_SPLIT_WIDGET_ATTEMPT); - mLauncher.handleIncorrectSplitTargetSelection(); + Toast.makeText(hostView.getContext(), R.string.split_widgets_not_supported, + Toast.LENGTH_SHORT).show(); return true; } Pair options = remoteResponse.getLaunchOptions(view); diff --git a/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java b/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java index ac0e53e3d2..32d10b04ef 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java +++ b/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java @@ -36,7 +36,6 @@ import static com.android.launcher3.LauncherState.OVERVIEW; import static com.android.launcher3.LauncherState.OVERVIEW_MODAL_TASK; import static com.android.launcher3.LauncherState.OVERVIEW_SPLIT_SELECT; import static com.android.launcher3.compat.AccessibilityManagerCompat.sendCustomAccessibilityEvent; -import static com.android.launcher3.config.FeatureFlags.enableSplitContextually; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_APP_LAUNCH_TAP; import static com.android.launcher3.model.data.ItemInfo.NO_MATCHING_ID; import static com.android.launcher3.popup.QuickstepSystemShortcut.getSplitSelectShortcutByPosition; @@ -677,7 +676,7 @@ public class QuickstepLauncher extends Launcher { splitSelectSource.alreadyRunningTaskId = taskWasFound ? foundTask.key.id : INVALID_TASK_ID; - if (enableSplitContextually()) { + if (FeatureFlags.enableSplitContextually()) { startSplitToHome(splitSelectSource); } else { recentsView.initiateSplitSelect(splitSelectSource); @@ -762,7 +761,7 @@ public class QuickstepLauncher extends Launcher { super.onPause(); - if (enableSplitContextually()) { + if (FeatureFlags.enableSplitContextually()) { // If Launcher pauses before both split apps are selected, exit split screen. if (!mSplitSelectStateController.isBothSplitAppsConfirmed() && !mSplitSelectStateController.isLaunchingFirstAppFullscreen()) { @@ -1353,15 +1352,6 @@ public class QuickstepLauncher extends Launcher { return (mTaskbarUIController != null && mTaskbarUIController.hasBubbles()); } - @Override - public boolean handleIncorrectSplitTargetSelection() { - if (enableSplitContextually() && !mSplitSelectStateController.isSplitSelectActive()) { - return false; - } - mSplitSelectStateController.getSplitInstructionsView().goBoing(); - return true; - } - private static final class LauncherTaskViewController extends TaskViewTouchController { diff --git a/src/com/android/launcher3/views/ActivityContext.java b/src/com/android/launcher3/views/ActivityContext.java index 230a651698..c5317e3d5c 100644 --- a/src/com/android/launcher3/views/ActivityContext.java +++ b/src/com/android/launcher3/views/ActivityContext.java @@ -154,19 +154,6 @@ public interface ActivityContext { return false; } - /** - * Handle user tapping on unsupported target when in split selection mode. - * See {@link #isSplitSelectionActive()} - * - * @return {@code true} if this method will handle the incorrect target selection, - * {@code false} if it could not be handled or if not possible to handle based on - * current split state - */ - default boolean handleIncorrectSplitTargetSelection() { - // Overridden - return false; - } - /** * The root view to support drag-and-drop and popup support. */ From 81a7d0b1911563b3d5015a35a6e16e0925b8d413 Mon Sep 17 00:00:00 2001 From: Andreas Agvard Date: Tue, 5 Mar 2024 13:31:06 +0100 Subject: [PATCH 02/21] Adds new AssistStateManager settings Flag: NONE Bug: 326143814 Test: Unit (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:d78d9bb5e2b300c68aae4c6071c913f332a994eb) Merged-In: Ie5cbae55452cf283a0ffde18e5237cebae6ee40e Change-Id: Ie5cbae55452cf283a0ffde18e5237cebae6ee40e --- .../quickstep/util/AssistStateManager.java | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/quickstep/src/com/android/quickstep/util/AssistStateManager.java b/quickstep/src/com/android/quickstep/util/AssistStateManager.java index f7437eb075..e9a06f712e 100644 --- a/quickstep/src/com/android/quickstep/util/AssistStateManager.java +++ b/quickstep/src/com/android/quickstep/util/AssistStateManager.java @@ -22,6 +22,7 @@ import com.android.launcher3.util.MainThreadInitializedObject; import com.android.launcher3.util.ResourceBasedOverride; import java.io.PrintWriter; +import java.util.Optional; /** Class to manage Assistant states. */ public class AssistStateManager implements ResourceBasedOverride { @@ -41,21 +42,21 @@ public class AssistStateManager implements ResourceBasedOverride { return false; } + /** Whether CsHelper CtS invocation path is available. */ + public Optional isCsHelperAvailable() { + return Optional.empty(); + } + + /** Whether VIS CtS invocation path is available. */ + public Optional isVisAvailable() { + return Optional.empty(); + } + /** Whether search recovery is available. */ public boolean isVisRecoveryEnabled() { return false; } - /** Whether search recovery is available. */ - public boolean isOseRecoveryEnabled() { - return false; - } - - /** Whether search recovery is available. */ - public boolean isOseShowSessionEnabled() { - return false; - } - /** Return {@code true} if the Settings toggle is enabled. */ public boolean isSettingsNavHandleEnabled() { return false; From 81d456f1d32d4061a3d74f264a61cb2636d92601 Mon Sep 17 00:00:00 2001 From: randypfohl Date: Thu, 7 Mar 2024 12:07:24 -0800 Subject: [PATCH 03/21] When mLastComputedTaskSize is empty we will recalculate and set it before determining scale and pivot Bug: 326550571 Test: manually set computed task size to 0 simulating unset circumstance, and ran logs verifying infinite, added fix, and verified logs showing the same scale before and after with get tasksize set Flag: none (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:fca7ee23ba35c35292e6f26ca051cd64c437ca27) Merged-In: I0f928885e2fc6cfc0d6a064d6e9f1c614bf7a5af Change-Id: I0f928885e2fc6cfc0d6a064d6e9f1c614bf7a5af --- quickstep/src/com/android/quickstep/views/RecentsView.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/quickstep/src/com/android/quickstep/views/RecentsView.java b/quickstep/src/com/android/quickstep/views/RecentsView.java index ea33b4d195..c333545b1f 100644 --- a/quickstep/src/com/android/quickstep/views/RecentsView.java +++ b/quickstep/src/com/android/quickstep/views/RecentsView.java @@ -5160,6 +5160,9 @@ public abstract class RecentsView Date: Thu, 7 Mar 2024 12:39:18 -0800 Subject: [PATCH 04/21] Enable Omnient master flags in client code. Bug: 327638681 Test: Manual Flag: legacy ENABLE_LONG_PRESS_NAV_HANDLE ENABLED (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:3b220c62ce97adab33d19fddc49122545d3f5989) Merged-In: Id8990ed145b4f035e5cd14e901676ebbd03733dd Change-Id: Id8990ed145b4f035e5cd14e901676ebbd03733dd --- src/com/android/launcher3/config/FeatureFlags.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/android/launcher3/config/FeatureFlags.java b/src/com/android/launcher3/config/FeatureFlags.java index 072a96ce6e..bcdf9970bb 100644 --- a/src/com/android/launcher3/config/FeatureFlags.java +++ b/src/com/android/launcher3/config/FeatureFlags.java @@ -291,7 +291,7 @@ public final class FeatureFlags { "Inject fallback app corpus result when AiAi fails to return it."); public static final BooleanFlag ENABLE_LONG_PRESS_NAV_HANDLE = - getReleaseFlag(299682306, "ENABLE_LONG_PRESS_NAV_HANDLE", TEAMFOOD, + getReleaseFlag(299682306, "ENABLE_LONG_PRESS_NAV_HANDLE", ENABLED, "Enables long pressing on the bottom bar nav handle to trigger events."); public static final BooleanFlag ENABLE_SEARCH_HAPTIC_HINT = From d11b171357fb440f813c02db306be276a9ea177e Mon Sep 17 00:00:00 2001 From: Vinit Nayak Date: Wed, 28 Feb 2024 21:36:07 -0800 Subject: [PATCH 05/21] Fix split selection for 3P launcher with animations off * When animations were off, the currentState in FallbackRecentsStateController is incorrect (we didn't need that check at all) * Surfaced a bug in MultiValueUpdateListener that is being fixed in ag/26416537 Test: 1P + 3P launcher all of the following: starting split from overview with animations and without rotation selecting second app before and after rotation Fixes: 327346105 (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:b274152194799639febe58c4fa1daa896595fd8c) Merged-In: I4f19119c30a8669bba6ced06e30773f085a78047 Change-Id: I4f19119c30a8669bba6ced06e30773f085a78047 --- .../quickstep/fallback/FallbackRecentsStateController.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/quickstep/src/com/android/quickstep/fallback/FallbackRecentsStateController.java b/quickstep/src/com/android/quickstep/fallback/FallbackRecentsStateController.java index 41c6f9bfb8..3e731e5f2b 100644 --- a/quickstep/src/com/android/quickstep/fallback/FallbackRecentsStateController.java +++ b/quickstep/src/com/android/quickstep/fallback/FallbackRecentsStateController.java @@ -117,9 +117,7 @@ public class FallbackRecentsStateController implements StateHandler Date: Mon, 11 Mar 2024 12:46:46 -0400 Subject: [PATCH 06/21] Disable slow recents animation handling Flag: N/A Fixes: 324228222 Test: programmatic delay and several gestures (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:5b9d94adc5ca18a9dd5e7cee44dc3c0168172c8c) Merged-In: I98f3575047e442a4f57582b40cc0f36f1f113356 Change-Id: I98f3575047e442a4f57582b40cc0f36f1f113356 --- .../quickstep/TouchInteractionService.java | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/quickstep/src/com/android/quickstep/TouchInteractionService.java b/quickstep/src/com/android/quickstep/TouchInteractionService.java index 415f73f1aa..788012445b 100644 --- a/quickstep/src/com/android/quickstep/TouchInteractionService.java +++ b/quickstep/src/com/android/quickstep/TouchInteractionService.java @@ -40,7 +40,6 @@ import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent.MOTION_DOWN; import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent.MOTION_MOVE; import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent.MOTION_UP; -import static com.android.quickstep.util.ActiveGestureErrorDetector.GestureEvent.RECENTS_ANIMATION_START_PENDING; import static com.android.systemui.shared.system.ActivityManagerWrapper.CLOSE_SYSTEM_WINDOWS_REASON_RECENTS; import static com.android.systemui.shared.system.QuickStepContract.KEY_EXTRA_SYSUI_PROXY; import static com.android.systemui.shared.system.QuickStepContract.KEY_EXTRA_UNFOLD_ANIMATION_FORWARDER; @@ -734,15 +733,17 @@ public class TouchInteractionService extends Service { // an ACTION_HOVER_ENTER will fire as well. boolean isHoverActionWithoutConsumer = enableCursorHoverStates() && isHoverActionWithoutConsumer(event); - if (mTaskAnimationManager.isRecentsAnimationStartPending() - && (action == ACTION_DOWN || isHoverActionWithoutConsumer)) { - ActiveGestureLog.INSTANCE.addLog( - new CompoundString("TIS.onInputEvent: ") - .append("Cannot process input event: a recents animation has been ") - .append("requested, but hasn't started."), - RECENTS_ANIMATION_START_PENDING); - return; - } + + // TODO(b/285636175): Uncomment this once WM can properly guarantee all animation callbacks +// if (mTaskAnimationManager.isRecentsAnimationStartPending() +// && (action == ACTION_DOWN || isHoverActionWithoutConsumer)) { +// ActiveGestureLog.INSTANCE.addLog( +// new CompoundString("TIS.onInputEvent: ") +// .append("Cannot process input event: a recents animation has been ") +// .append("requested, but hasn't started."), +// RECENTS_ANIMATION_START_PENDING); +// return; +// } SafeCloseable traceToken = TraceHelper.INSTANCE.allowIpcs("TIS.onInputEvent"); From 798644d1f1401a2840991b9260207b20952ff922 Mon Sep 17 00:00:00 2001 From: Jordan Silva Date: Fri, 8 Mar 2024 13:10:42 +0000 Subject: [PATCH 07/21] Fix overview live tile flickers when clicking on overview action buttons When a Live Tile is present on overview and an action is triggered (e.g., Split, Select, Screenshot), the live tile flickers due to a competing snapshot modification and animation on UI thread. The live tile is updated to switch to screenshot and at the same time the finishRecentsAnimation is triggered. This CL bumps the number of frames to wait after the view is updated to run the Runnable code. Bumping back the mDeferFrameCount to 2 solves the sync between rendering the snapshot and hiding the Live Tile. Fix: 327380570 Flag: N/A Test: Manual. Open an App -> Swipe to Overview (Live title) -> Click on Split. (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:024a1018e4c96b43d8f122bb1c614c3e3ea5bab7) Merged-In: Ibd22a58580b2e5e5b866deb4e7dc87945c7e38c4 Change-Id: Ibd22a58580b2e5e5b866deb4e7dc87945c7e38c4 --- quickstep/src/com/android/quickstep/ViewUtils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/quickstep/src/com/android/quickstep/ViewUtils.java b/quickstep/src/com/android/quickstep/ViewUtils.java index b1320674e6..3b58dfcb39 100644 --- a/quickstep/src/com/android/quickstep/ViewUtils.java +++ b/quickstep/src/com/android/quickstep/ViewUtils.java @@ -56,7 +56,7 @@ public class ViewUtils { boolean mSurfaceCallbackRegistered = false; boolean mFinished; - int mDeferFrameCount = 1; + int mDeferFrameCount = 2; FrameHandler(View view, Runnable finishCallback, BooleanSupplier cancelled) { mViewRoot = view.getViewRootImpl(); From 514185537a2144313918ae9e7d8061331859b3e8 Mon Sep 17 00:00:00 2001 From: Vinit Nayak Date: Mon, 11 Mar 2024 16:53:39 -0700 Subject: [PATCH 08/21] Update Launcher state anim duration for pinned & transient taskbar * We were syncing the duration of the animation to be at most that of the taskbar/hotseat animation but only for transient taskbar. * Now we sync for transient and pinned Fixes: 328052756 Test: Anim jank doesn't repro (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:9a3c48468b35377ef46bf2b362f68c467ecd45ad) Merged-In: I21f20cbc08a2018498dde3eff871929e5a5b7d7d Change-Id: I21f20cbc08a2018498dde3eff871929e5a5b7d7d --- .../uioverrides/states/QuickstepAtomicAnimationFactory.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/quickstep/src/com/android/launcher3/uioverrides/states/QuickstepAtomicAnimationFactory.java b/quickstep/src/com/android/launcher3/uioverrides/states/QuickstepAtomicAnimationFactory.java index 72218bf26e..8c92c7db49 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/states/QuickstepAtomicAnimationFactory.java +++ b/quickstep/src/com/android/launcher3/uioverrides/states/QuickstepAtomicAnimationFactory.java @@ -135,8 +135,7 @@ public class QuickstepAtomicAnimationFactory extends config.duration = Math.max(config.duration, scrollDuration); // Sync scroll so that it ends before or at the same time as the taskbar animation. - if (DisplayController.isTransientTaskbar(mActivity) - && mActivity.getDeviceProfile().isTaskbarPresent) { + if (mActivity.getDeviceProfile().isTaskbarPresent) { config.duration = Math.min(config.duration, TASKBAR_TO_HOME_DURATION); } overview.snapToPage(DEFAULT_PAGE, Math.toIntExact(config.duration)); From 0425766b1ab39d0e6e820e6a9da787a8349b04de Mon Sep 17 00:00:00 2001 From: Alex Chau Date: Tue, 12 Mar 2024 17:48:33 +0000 Subject: [PATCH 09/21] Allow Task menu to draw down to screen bottom - Use all available spaces minus inset to draw the task menu - Also enabled scrolling for app chi1p menu Fix: 329271577 Bug: 326952853 Test: manual Flag: Nonee (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:26e487c6acd86c668518d379f90cb84f3d89a486) Merged-In: Ibdff07043f2c64495f97e11e80209bcc3f5dcb4f Change-Id: Ibdff07043f2c64495f97e11e80209bcc3f5dcb4f --- .../orientation/LandscapePagedViewHandler.java | 6 ++++++ .../orientation/PortraitPagedViewHandler.java | 6 ++++++ .../orientation/RecentsPagedOrientationHandler.java | 3 +++ .../orientation/SeascapePagedViewHandler.java | 6 ++++++ .../com/android/quickstep/views/TaskMenuView.java | 13 +++++-------- 5 files changed, 26 insertions(+), 8 deletions(-) diff --git a/quickstep/src/com/android/quickstep/orientation/LandscapePagedViewHandler.java b/quickstep/src/com/android/quickstep/orientation/LandscapePagedViewHandler.java index 8648b56072..f345aebb0c 100644 --- a/quickstep/src/com/android/quickstep/orientation/LandscapePagedViewHandler.java +++ b/quickstep/src/com/android/quickstep/orientation/LandscapePagedViewHandler.java @@ -304,6 +304,12 @@ public class LandscapePagedViewHandler implements RecentsPagedOrientationHandler } } + @Override + public int getTaskMenuHeight(float taskInsetMargin, DeviceProfile deviceProfile, + float taskMenuX, float taskMenuY) { + return (int) (taskMenuX - taskInsetMargin); + } + @Override public void setTaskOptionsMenuLayoutOrientation(DeviceProfile deviceProfile, LinearLayout taskMenuLayout, int dividerSpacing, diff --git a/quickstep/src/com/android/quickstep/orientation/PortraitPagedViewHandler.java b/quickstep/src/com/android/quickstep/orientation/PortraitPagedViewHandler.java index 60e6a255cb..5cd97763d1 100644 --- a/quickstep/src/com/android/quickstep/orientation/PortraitPagedViewHandler.java +++ b/quickstep/src/com/android/quickstep/orientation/PortraitPagedViewHandler.java @@ -209,6 +209,12 @@ public class PortraitPagedViewHandler extends DefaultPagedViewHandler implements : thumbnailView.getMeasuredWidth()) - (2 * padding); } + @Override + public int getTaskMenuHeight(float taskInsetMargin, DeviceProfile deviceProfile, + float taskMenuX, float taskMenuY) { + return (int) (deviceProfile.availableHeightPx - taskInsetMargin - taskMenuY); + } + @Override public void setTaskOptionsMenuLayoutOrientation(DeviceProfile deviceProfile, LinearLayout taskMenuLayout, int dividerSpacing, diff --git a/quickstep/src/com/android/quickstep/orientation/RecentsPagedOrientationHandler.java b/quickstep/src/com/android/quickstep/orientation/RecentsPagedOrientationHandler.java index 01c1225c40..4b65d53172 100644 --- a/quickstep/src/com/android/quickstep/orientation/RecentsPagedOrientationHandler.java +++ b/quickstep/src/com/android/quickstep/orientation/RecentsPagedOrientationHandler.java @@ -176,6 +176,9 @@ public interface RecentsPagedOrientationHandler extends PagedOrientationHandler View taskMenuView, float taskInsetMargin, View taskViewIcon); int getTaskMenuWidth(View thumbnailView, DeviceProfile deviceProfile, @StagePosition int stagePosition); + + int getTaskMenuHeight(float taskInsetMargin, DeviceProfile deviceProfile, float taskMenuX, + float taskMenuY); /** * Sets linear layout orientation for {@link com.android.launcher3.popup.SystemShortcut} items * inside task menu view. diff --git a/quickstep/src/com/android/quickstep/orientation/SeascapePagedViewHandler.java b/quickstep/src/com/android/quickstep/orientation/SeascapePagedViewHandler.java index a964639e41..89c678c114 100644 --- a/quickstep/src/com/android/quickstep/orientation/SeascapePagedViewHandler.java +++ b/quickstep/src/com/android/quickstep/orientation/SeascapePagedViewHandler.java @@ -113,6 +113,12 @@ public class SeascapePagedViewHandler extends LandscapePagedViewHandler { } } + @Override + public int getTaskMenuHeight(float taskInsetMargin, DeviceProfile deviceProfile, + float taskMenuX, float taskMenuY) { + return (int) (deviceProfile.availableWidthPx - taskInsetMargin - taskMenuX); + } + @Override public void setSplitTaskSwipeRect(DeviceProfile dp, Rect outRect, SplitBounds splitInfo, int desiredStagePosition) { diff --git a/quickstep/src/com/android/quickstep/views/TaskMenuView.java b/quickstep/src/com/android/quickstep/views/TaskMenuView.java index 137455e23a..c9aad1a4d6 100644 --- a/quickstep/src/com/android/quickstep/views/TaskMenuView.java +++ b/quickstep/src/com/android/quickstep/views/TaskMenuView.java @@ -140,11 +140,9 @@ public class TaskMenuView extends AbstractFloatingView { @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { - if (!enableOverviewIconMenu()) { - int maxMenuHeight = calculateMaxHeight(); - if (MeasureSpec.getSize(heightMeasureSpec) > maxMenuHeight) { - heightMeasureSpec = MeasureSpec.makeMeasureSpec(maxMenuHeight, MeasureSpec.AT_MOST); - } + int maxMenuHeight = calculateMaxHeight(); + if (MeasureSpec.getSize(heightMeasureSpec) > maxMenuHeight) { + heightMeasureSpec = MeasureSpec.makeMeasureSpec(maxMenuHeight, MeasureSpec.AT_MOST); } super.onMeasure(widthMeasureSpec, heightMeasureSpec); } @@ -416,10 +414,9 @@ public class TaskMenuView extends AbstractFloatingView { * with a margin on the top and bottom. */ private int calculateMaxHeight() { - float taskBottom = mTaskView.getHeight() + mTaskView.getPersistentTranslationY(); float taskInsetMargin = getResources().getDimension(R.dimen.task_card_margin); - - return (int) (taskBottom - taskInsetMargin - getTranslationY()); + return mTaskView.getPagedOrientationHandler().getTaskMenuHeight(taskInsetMargin, + mActivity.getDeviceProfile(), getTranslationX(), getTranslationY()); } private void setOnClosingStartCallback(Runnable onClosingStartCallback) { From 1e6bf12fdb2cefcbe173d74a3db54aa06421bc5b Mon Sep 17 00:00:00 2001 From: Pat Manning Date: Wed, 13 Mar 2024 11:59:19 +0000 Subject: [PATCH 10/21] Set next page immediately on subsequent arrow/tab presses when navigating overivew. This allows the user to scroll as quickly as they want. Fix: 328749622 Test: manual Flag: NONE (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:a9a11b47c3bff4d3ec4a4f300e12895d3235fe95) Merged-In: I493841f11407e6fb9f15fd90b5a5e55fa4ed3ad3 Change-Id: I493841f11407e6fb9f15fd90b5a5e55fa4ed3ad3 --- quickstep/src/com/android/quickstep/views/RecentsView.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/quickstep/src/com/android/quickstep/views/RecentsView.java b/quickstep/src/com/android/quickstep/views/RecentsView.java index c333545b1f..1b2be4a6f6 100644 --- a/quickstep/src/com/android/quickstep/views/RecentsView.java +++ b/quickstep/src/com/android/quickstep/views/RecentsView.java @@ -4136,10 +4136,10 @@ public abstract class RecentsView Date: Wed, 13 Mar 2024 12:14:25 -0700 Subject: [PATCH 11/21] Fix bug where folder with 1 icon can exist Fix: 329357132 Flag: NONE Test: TaplDragTest (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:5645c3ec558e2b0b6d6ae1c51dbaf93803cd51cf) Merged-In: If381ff56e051c89e9f6162f8a44f8df9e2ae5060 Change-Id: If381ff56e051c89e9f6162f8a44f8df9e2ae5060 --- src/com/android/launcher3/folder/Folder.java | 3 +++ .../android/launcher3/dragging/TaplDragTest.java | 15 +++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/src/com/android/launcher3/folder/Folder.java b/src/com/android/launcher3/folder/Folder.java index ec9c27dfab..ecb5c8f186 100644 --- a/src/com/android/launcher3/folder/Folder.java +++ b/src/com/android/launcher3/folder/Folder.java @@ -1039,6 +1039,9 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo public void onDropCompleted(final View target, final DragObject d, final boolean success) { if (success) { + if (getItemCount() <= 1) { + mDeleteFolderOnDropCompleted = true; + } if (mDeleteFolderOnDropCompleted && !mItemAddedBackToSelfViaIcon && target != this) { replaceFolderWithFinalItem(); } diff --git a/tests/src/com/android/launcher3/dragging/TaplDragTest.java b/tests/src/com/android/launcher3/dragging/TaplDragTest.java index d1227d8693..bf1ba39fef 100644 --- a/tests/src/com/android/launcher3/dragging/TaplDragTest.java +++ b/tests/src/com/android/launcher3/dragging/TaplDragTest.java @@ -96,6 +96,21 @@ public class TaplDragTest extends AbstractLauncherUiTest { MAPS_APP_NAME); } + /** + * Adds two icons to the Workspace and combines them into a folder, then makes sure we are able + * to remove an icon from the folder and that the folder ceases to exist since it only has one + * icon left. + */ + @Test + public void testDragOutOfFolder() { + final HomeAppIcon playStoreIcon = createShortcutIfNotExist(STORE_APP_NAME, 0, 1); + final HomeAppIcon photosIcon = createShortcutInCenterIfNotExist(PHOTOS_APP_NAME); + FolderIcon folderIcon = photosIcon.dragToIcon(playStoreIcon); + Folder folder = folderIcon.open(); + folder.getAppIcon(STORE_APP_NAME).internalDragToWorkspace(false, false); + assertNotNull(mLauncher.getWorkspace().tryGetWorkspaceAppIcon(STORE_APP_NAME)); + assertNotNull(mLauncher.getWorkspace().tryGetWorkspaceAppIcon(PHOTOS_APP_NAME)); + } /** Drags a shortcut from a long press menu into the workspace. * 1. Open all apps and wait for load complete. From fbda2e6ccb7f76bdf608b75b8fd218a08b9ac410 Mon Sep 17 00:00:00 2001 From: Brian Isganitis Date: Mon, 11 Mar 2024 20:29:01 -0400 Subject: [PATCH 12/21] Reset stashed in Taskbar All Apps for gestures instead of IME insets. Test: Manual Flag: NONE Fix: 328960039 (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:1956246b6e7098aeaeece3760b1ea97d096d3588) Merged-In: I62c53c21bf850b7080e12086235cba28164f4d70 Change-Id: I62c53c21bf850b7080e12086235cba28164f4d70 --- .../com/android/launcher3/taskbar/TaskbarStashController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java index 629c951932..3d584642b9 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java @@ -900,12 +900,12 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba } // Only update the following flags when system gesture is not in progress. + updateStateForFlag(FLAG_STASHED_IN_TASKBAR_ALL_APPS, false); setStashedImeState(); } private void setStashedImeState() { boolean shouldStashForIme = shouldStashForIme(); - updateStateForFlag(FLAG_STASHED_IN_TASKBAR_ALL_APPS, false); if (hasAnyFlag(FLAG_STASHED_IN_APP_IME) != shouldStashForIme) { updateStateForFlag(FLAG_STASHED_IN_APP_IME, shouldStashForIme); applyState(TASKBAR_STASH_DURATION_FOR_IME, getTaskbarStashStartDelayForIme()); From f027b4eb369d70446e8d4b82cfc320ee52f3e64d Mon Sep 17 00:00:00 2001 From: Tony Wickham Date: Mon, 18 Mar 2024 19:11:57 +0000 Subject: [PATCH 13/21] Cancel animations after reading MotionPauseDetector#isPaused() Otherwise, it clears MotionPauseDetector so isPaused returns false. Fixes: 330186943 Flag: none Test: manual (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:77802d6da48320e5f5cf5c420fe31a1aa14e478e) Merged-In: I9e0982c18cc5264a1fab53077ac551d2880a6eae Change-Id: I9e0982c18cc5264a1fab53077ac551d2880a6eae --- .../touchcontrollers/NoButtonQuickSwitchTouchController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java index a92e77aa04..3a1c42dc89 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java @@ -324,7 +324,6 @@ public class NoButtonQuickSwitchTouchController implements TouchController, @Override public void onDragEnd(PointF velocity) { - cancelAnimations(); boolean horizontalFling = mSwipeDetector.isFling(velocity.x); boolean verticalFling = mSwipeDetector.isFling(velocity.y); boolean noFling = !horizontalFling && !verticalFling; @@ -353,6 +352,7 @@ public class NoButtonQuickSwitchTouchController implements TouchController, return; } InteractionJankMonitorWrapper.cancel(Cuj.CUJ_LAUNCHER_APP_SWIPE_TO_RECENTS); + cancelAnimations(); final LauncherState targetState; if (horizontalFling && verticalFling) { From 28b28e0365448e74e9b6948a8a598e42e9495461 Mon Sep 17 00:00:00 2001 From: Andreas Agvard Date: Wed, 13 Mar 2024 18:31:51 +0100 Subject: [PATCH 14/21] Removes recovery Flag: NONE Bug: 326143814 Test: Unit (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:6ce297a2ff1583e49cf3e2e1e89d1ead7f83dac0) Merged-In: Icbebeade552cb101eb4b8bae4965b4d6c972f22e Change-Id: Icbebeade552cb101eb4b8bae4965b4d6c972f22e --- .../src/com/android/quickstep/util/AssistStateManager.java | 5 ----- 1 file changed, 5 deletions(-) diff --git a/quickstep/src/com/android/quickstep/util/AssistStateManager.java b/quickstep/src/com/android/quickstep/util/AssistStateManager.java index e9a06f712e..660fc22788 100644 --- a/quickstep/src/com/android/quickstep/util/AssistStateManager.java +++ b/quickstep/src/com/android/quickstep/util/AssistStateManager.java @@ -52,11 +52,6 @@ public class AssistStateManager implements ResourceBasedOverride { return Optional.empty(); } - /** Whether search recovery is available. */ - public boolean isVisRecoveryEnabled() { - return false; - } - /** Return {@code true} if the Settings toggle is enabled. */ public boolean isSettingsNavHandleEnabled() { return false; From b24d4d5a8f18de925b0577fa86929a9c30dfb333 Mon Sep 17 00:00:00 2001 From: Schneider Victor-tulias Date: Wed, 13 Mar 2024 14:04:02 -0400 Subject: [PATCH 15/21] Update KQS task view layouts to new specs The small size of the screenshots and make text look odd. Implementing new UI specs to improve this. - Updated icon position and size - Added some blur to the thumbnail Flag: LEGACY ENABLE_KEYBOARD_QUICK_SWITCH ENABLED Fixes: 328259439 Fixes: 328692456 Test: opened KQS in dark and light mode (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:dba7cbae1adfde615060598a55b5ee0edfedef9f) Merged-In: I2b20100ddeb562291edf5f0bacbce916002eee45 Change-Id: I2b20100ddeb562291edf5f0bacbce916002eee45 --- .../keyboard_quick_switch_taskview.xml | 34 ++++++----- .../layout/keyboard_quick_switch_taskview.xml | 34 ++++++----- ...board_quick_switch_taskview_thumbnail.xml} | 0 quickstep/res/values/dimens.xml | 3 +- .../taskbar/BlurredBitmapDrawable.kt | 59 +++++++++++++++++++ .../taskbar/KeyboardQuickSwitchTaskView.java | 39 +++++++----- 6 files changed, 121 insertions(+), 48 deletions(-) rename quickstep/res/layout/{keyboard_quick_switch_thumbnail.xml => keyboard_quick_switch_taskview_thumbnail.xml} (100%) create mode 100644 quickstep/src/com/android/launcher3/taskbar/BlurredBitmapDrawable.kt diff --git a/quickstep/res/layout-land/keyboard_quick_switch_taskview.xml b/quickstep/res/layout-land/keyboard_quick_switch_taskview.xml index 69e157433a..38df75659f 100644 --- a/quickstep/res/layout-land/keyboard_quick_switch_taskview.xml +++ b/quickstep/res/layout-land/keyboard_quick_switch_taskview.xml @@ -36,19 +36,19 @@ app:layout_constraintEnd_toEndOf="parent"> + app:layout_constraintEnd_toStartOf="@id/thumbnail_2"/> + app:layout_constraintTop_toTopOf="@id/thumbnail_1" + app:layout_constraintBottom_toBottomOf="@id/thumbnail_1" + app:layout_constraintStart_toStartOf="@id/thumbnail_1" + app:layout_constraintEnd_toEndOf="@id/thumbnail_1"/> + app:layout_constraintTop_toTopOf="@id/thumbnail_2" + app:layout_constraintBottom_toBottomOf="@id/thumbnail_2" + app:layout_constraintStart_toStartOf="@id/thumbnail_2" + app:layout_constraintEnd_toEndOf="@id/thumbnail_2"/> diff --git a/quickstep/res/layout/keyboard_quick_switch_taskview.xml b/quickstep/res/layout/keyboard_quick_switch_taskview.xml index 6ed3c6ede5..c0ace9a1ae 100644 --- a/quickstep/res/layout/keyboard_quick_switch_taskview.xml +++ b/quickstep/res/layout/keyboard_quick_switch_taskview.xml @@ -36,51 +36,53 @@ app:layout_constraintEnd_toEndOf="parent"> + app:layout_constraintTop_toTopOf="@id/thumbnail_1" + app:layout_constraintBottom_toBottomOf="@id/thumbnail_1" + app:layout_constraintStart_toStartOf="@id/thumbnail_1" + app:layout_constraintEnd_toEndOf="@id/thumbnail_1"/> + app:layout_constraintTop_toTopOf="@id/thumbnail_2" + app:layout_constraintBottom_toBottomOf="@id/thumbnail_2" + app:layout_constraintStart_toStartOf="@id/thumbnail_2" + app:layout_constraintEnd_toEndOf="@id/thumbnail_2"/> diff --git a/quickstep/res/layout/keyboard_quick_switch_thumbnail.xml b/quickstep/res/layout/keyboard_quick_switch_taskview_thumbnail.xml similarity index 100% rename from quickstep/res/layout/keyboard_quick_switch_thumbnail.xml rename to quickstep/res/layout/keyboard_quick_switch_taskview_thumbnail.xml diff --git a/quickstep/res/values/dimens.xml b/quickstep/res/values/dimens.xml index 33313218a6..f90d96f3f5 100644 --- a/quickstep/res/values/dimens.xml +++ b/quickstep/res/values/dimens.xml @@ -439,8 +439,7 @@ 4dp 104dp 134dp - 28dp - 4dp + 52dp 20dp 56dp 16dp diff --git a/quickstep/src/com/android/launcher3/taskbar/BlurredBitmapDrawable.kt b/quickstep/src/com/android/launcher3/taskbar/BlurredBitmapDrawable.kt new file mode 100644 index 0000000000..8aee1aada2 --- /dev/null +++ b/quickstep/src/com/android/launcher3/taskbar/BlurredBitmapDrawable.kt @@ -0,0 +1,59 @@ +/* + * Copyright (C) 2024 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.launcher3.taskbar + +import android.graphics.Bitmap +import android.graphics.Canvas +import android.graphics.PixelFormat +import android.graphics.RenderEffect +import android.graphics.RenderNode +import android.graphics.Shader +import android.graphics.drawable.BitmapDrawable +import android.graphics.drawable.DrawableWrapper + +/* BitmapDrawable that can blur the given bitmap. */ +class BlurredBitmapDrawable(bitmap: Bitmap?, radiusX: Float, radiusY: Float) : + DrawableWrapper(BitmapDrawable(bitmap)) { + private val mBlurRenderNode: RenderNode = RenderNode("BlurredConstraintLayoutBlurNode") + + constructor(bitmap: Bitmap?, radius: Float) : this(bitmap, radius, radius) + + init { + mBlurRenderNode.setRenderEffect( + RenderEffect.createBlurEffect(radiusX, radiusY, Shader.TileMode.CLAMP) + ) + } + + override fun draw(canvas: Canvas) { + if (!canvas.isHardwareAccelerated) { + super.draw(canvas) + return + } + mBlurRenderNode.setPosition(bounds) + if (!mBlurRenderNode.hasDisplayList()) { + // Record render node if its display list is not recorded or discarded + // (which happens when it's no longer drawn by anything). + val recordingCanvas = mBlurRenderNode.beginRecording() + super.draw(recordingCanvas) + mBlurRenderNode.endRecording() + } + canvas.drawRenderNode(mBlurRenderNode) + } + + override fun getOpacity(): Int { + return PixelFormat.OPAQUE + } +} diff --git a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchTaskView.java b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchTaskView.java index a9d50b9332..5b407f0b5d 100644 --- a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchTaskView.java +++ b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchTaskView.java @@ -23,6 +23,7 @@ import android.content.res.Resources; import android.content.res.TypedArray; import android.graphics.Bitmap; import android.graphics.Canvas; +import android.graphics.drawable.Drawable; import android.util.AttributeSet; import android.view.View; import android.widget.ImageView; @@ -47,6 +48,8 @@ import kotlin.Unit; */ public class KeyboardQuickSwitchTaskView extends ConstraintLayout { + private static final float THUMBNAIL_BLUR_RADIUS = 1f; + @ColorInt private final int mBorderColor; @Nullable private BorderAnimator mBorderAnimator; @@ -89,10 +92,10 @@ public class KeyboardQuickSwitchTaskView extends ConstraintLayout { @Override protected void onFinishInflate() { super.onFinishInflate(); - mThumbnailView1 = findViewById(R.id.thumbnail1); - mThumbnailView2 = findViewById(R.id.thumbnail2); - mIcon1 = findViewById(R.id.icon1); - mIcon2 = findViewById(R.id.icon2); + mThumbnailView1 = findViewById(R.id.thumbnail_1); + mThumbnailView2 = findViewById(R.id.thumbnail_2); + mIcon1 = findViewById(R.id.icon_1); + mIcon2 = findViewById(R.id.icon_2); mContent = findViewById(R.id.content); Resources resources = mContext.getResources(); @@ -167,10 +170,7 @@ public class KeyboardQuickSwitchTaskView extends ConstraintLayout { @Nullable ImageView thumbnailView, @Nullable Task task, @Nullable ThumbnailUpdateFunction updateFunction) { - if (thumbnailView == null) { - return; - } - if (task == null) { + if (thumbnailView == null || task == null) { return; } if (updateFunction == null) { @@ -182,19 +182,30 @@ public class KeyboardQuickSwitchTaskView extends ConstraintLayout { } private void applyThumbnail( - @NonNull ImageView thumbnailView, ThumbnailData thumbnailData) { + @NonNull ImageView thumbnailView, + ThumbnailData thumbnailData) { Bitmap bm = thumbnailData == null ? null : thumbnailData.thumbnail; - thumbnailView.setVisibility(VISIBLE); - thumbnailView.setImageBitmap(bm); + if (thumbnailView.getVisibility() != VISIBLE) { + thumbnailView.setVisibility(VISIBLE); + } + thumbnailView.setImageDrawable(new BlurredBitmapDrawable(bm, THUMBNAIL_BLUR_RADIUS)); } private void applyIcon(@Nullable ImageView iconView, @Nullable Task task) { - if (iconView == null || task == null) { + if (iconView == null || task == null || task.icon == null) { return; } - iconView.setVisibility(VISIBLE); - iconView.setImageDrawable(task.icon); + Drawable.ConstantState constantState = task.icon.getConstantState(); + if (constantState == null) { + return; + } + if (iconView.getVisibility() != VISIBLE) { + iconView.setVisibility(VISIBLE); + } + // Use the bitmap directly since the drawable's scale can change + iconView.setImageDrawable( + constantState.newDrawable(getResources(), getContext().getTheme())); } protected interface ThumbnailUpdateFunction { From 00bd00fd4e97cc36a12d58283a3e6fea3d5e76ca Mon Sep 17 00:00:00 2001 From: Brandon Dayauon Date: Thu, 7 Mar 2024 10:14:44 -0800 Subject: [PATCH 16/21] Disable two line text legacy flag. Will now repurpose the twolinetoggle flag to be the flag that will make twoline text enabled/disabled. bug: 316027081 Test: presubmit manually: https://screenshot.googleplex.com/BsZGCm7DrTZLwG4 Flag: com.android.launcher3.enable_twoline_toggle Staging (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:68c18236adb5d49d5ba3c5a19187759af63a53b4) Merged-In: Idef427bad6551ae56b13e35393e076b8e000af5a Change-Id: Idef427bad6551ae56b13e35393e076b8e000af5a --- .../appprediction/PredictionRowView.java | 6 +- src/com/android/launcher3/BubbleTextView.java | 11 +- src/com/android/launcher3/DeviceProfile.java | 5 +- .../launcher3/allapps/BaseAllAppsAdapter.java | 7 +- .../launcher3/config/FeatureFlags.java | 7 +- .../launcher3/AbstractDeviceProfileTest.kt | 13 +- .../launcher3/ui/BubbleTextViewTest.java | 295 ++++++++---------- 7 files changed, 147 insertions(+), 197 deletions(-) diff --git a/quickstep/src/com/android/launcher3/appprediction/PredictionRowView.java b/quickstep/src/com/android/launcher3/appprediction/PredictionRowView.java index e1443d0987..b36fd662fe 100644 --- a/quickstep/src/com/android/launcher3/appprediction/PredictionRowView.java +++ b/quickstep/src/com/android/launcher3/appprediction/PredictionRowView.java @@ -138,9 +138,9 @@ public class PredictionRowView int totalHeight = iconHeight + iconPadding + textHeight + mVerticalPadding * 2; // Prediction row height will be 4dp bigger than the regular apps in A-Z list when two line // is not enabled. Otherwise, the extra height will increase by just the textHeight. - int extraHeight = (FeatureFlags.enableTwolineAllapps() && (!Flags.enableTwolineToggle() - || (Flags.enableTwolineToggle() && LauncherPrefs.ENABLE_TWOLINE_ALLAPPS_TOGGLE.get( - getContext())))) ? textHeight : mTopRowExtraHeight; + int extraHeight = (Flags.enableTwolineToggle() && + LauncherPrefs.ENABLE_TWOLINE_ALLAPPS_TOGGLE.get(getContext())) + ? textHeight : mTopRowExtraHeight; totalHeight += extraHeight; return getVisibility() == GONE ? 0 : totalHeight + getPaddingTop() + getPaddingBottom(); } diff --git a/src/com/android/launcher3/BubbleTextView.java b/src/com/android/launcher3/BubbleTextView.java index 4f071fe500..3ae1ce117b 100644 --- a/src/com/android/launcher3/BubbleTextView.java +++ b/src/com/android/launcher3/BubbleTextView.java @@ -285,9 +285,6 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, mDotParams.scale = 0f; mForceHideDot = false; setBackground(null); - if (FeatureFlags.enableTwolineAllapps() || FeatureFlags.ENABLE_TWOLINE_DEVICESEARCH.get()) { - setMaxLines(1); - } setTag(null); if (mIconLoadRequest != null) { @@ -299,6 +296,7 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, setAlpha(1); setScaleY(1); setTranslationY(0); + setMaxLines(1); setVisibility(VISIBLE); } @@ -428,10 +426,9 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver, * Only if actual text can be displayed in two line, the {@code true} value will be effective. */ protected boolean shouldUseTwoLine() { - return FeatureFlags.enableTwolineAllapps() && isCurrentLanguageEnglish() - && (mDisplay == DISPLAY_ALL_APPS || mDisplay == DISPLAY_PREDICTION_ROW) - && (!Flags.enableTwolineToggle() || (Flags.enableTwolineToggle() - && LauncherPrefs.ENABLE_TWOLINE_ALLAPPS_TOGGLE.get(getContext()))); + return isCurrentLanguageEnglish() && (mDisplay == DISPLAY_ALL_APPS + || mDisplay == DISPLAY_PREDICTION_ROW) && (Flags.enableTwolineToggle() + && LauncherPrefs.ENABLE_TWOLINE_ALLAPPS_TOGGLE.get(getContext())); } protected boolean isCurrentLanguageEnglish() { diff --git a/src/com/android/launcher3/DeviceProfile.java b/src/com/android/launcher3/DeviceProfile.java index 4b4bdc2ecf..f96d59ebba 100644 --- a/src/com/android/launcher3/DeviceProfile.java +++ b/src/com/android/launcher3/DeviceProfile.java @@ -1233,9 +1233,8 @@ public class DeviceProfile { if (isVerticalLayout && !mIsResponsiveGrid) { hideWorkspaceLabelsIfNotEnoughSpace(); } - if (FeatureFlags.enableTwolineAllapps() - && (!Flags.enableTwolineToggle() || (Flags.enableTwolineToggle() - && LauncherPrefs.ENABLE_TWOLINE_ALLAPPS_TOGGLE.get(context)))) { + if ((Flags.enableTwolineToggle() + && LauncherPrefs.ENABLE_TWOLINE_ALLAPPS_TOGGLE.get(context))) { // Add extra textHeight to the existing allAppsCellHeight. allAppsCellHeightPx += Utilities.calculateTextHeight(allAppsIconTextSizePx); } diff --git a/src/com/android/launcher3/allapps/BaseAllAppsAdapter.java b/src/com/android/launcher3/allapps/BaseAllAppsAdapter.java index ca587c16f0..5e5795d4e1 100644 --- a/src/com/android/launcher3/allapps/BaseAllAppsAdapter.java +++ b/src/com/android/launcher3/allapps/BaseAllAppsAdapter.java @@ -223,10 +223,9 @@ public abstract class BaseAllAppsAdapter ex public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { switch (viewType) { case VIEW_TYPE_ICON: - int layout = (FeatureFlags.enableTwolineAllapps() && - (!Flags.enableTwolineToggle() || (Flags.enableTwolineToggle() - && LauncherPrefs.ENABLE_TWOLINE_ALLAPPS_TOGGLE.get( - mActivityContext.getApplicationContext())))) + int layout = (Flags.enableTwolineToggle() + && LauncherPrefs.ENABLE_TWOLINE_ALLAPPS_TOGGLE.get( + mActivityContext.getApplicationContext())) ? R.layout.all_apps_icon_twoline : R.layout.all_apps_icon; BubbleTextView icon = (BubbleTextView) mLayoutInflater.inflate( layout, parent, false); diff --git a/src/com/android/launcher3/config/FeatureFlags.java b/src/com/android/launcher3/config/FeatureFlags.java index bcdf9970bb..262b2a1e43 100644 --- a/src/com/android/launcher3/config/FeatureFlags.java +++ b/src/com/android/launcher3/config/FeatureFlags.java @@ -158,7 +158,7 @@ public final class FeatureFlags { // TODO(Block 5): Clean up flags public static final BooleanFlag ENABLE_TWOLINE_DEVICESEARCH = getDebugFlag(201388851, - "ENABLE_TWOLINE_DEVICESEARCH", ENABLED, + "ENABLE_TWOLINE_DEVICESEARCH", DISABLED, "Enable two line label for icons with labels on device search."); public static final BooleanFlag ENABLE_ICON_IN_TEXT_HEADER = getDebugFlag(270395143, @@ -274,10 +274,7 @@ public final class FeatureFlags { // Aconfig migration complete for ENABLE_TWOLINE_ALLAPPS. public static final BooleanFlag ENABLE_TWOLINE_ALLAPPS = getDebugFlag(270390937, - "ENABLE_TWOLINE_ALLAPPS", ENABLED, "Enables two line label inside all apps."); - public static boolean enableTwolineAllapps() { - return ENABLE_TWOLINE_ALLAPPS.get() || Flags.enableTwolineAllapps(); - } + "ENABLE_TWOLINE_ALLAPPS", DISABLED, "Enables two line label inside all apps."); public static final BooleanFlag IME_STICKY_SNACKBAR_EDU = getDebugFlag(270391693, "IME_STICKY_SNACKBAR_EDU", ENABLED, "Show sticky IME edu in AllApps"); diff --git a/tests/src/com/android/launcher3/AbstractDeviceProfileTest.kt b/tests/src/com/android/launcher3/AbstractDeviceProfileTest.kt index 3ba563d0df..ffcf83f303 100644 --- a/tests/src/com/android/launcher3/AbstractDeviceProfileTest.kt +++ b/tests/src/com/android/launcher3/AbstractDeviceProfileTest.kt @@ -38,17 +38,17 @@ import com.android.launcher3.util.rule.setFlags import com.android.launcher3.util.window.CachedDisplayInfo import com.android.launcher3.util.window.WindowManagerProxy import com.google.common.truth.Truth +import org.junit.Rule +import org.mockito.kotlin.any +import org.mockito.kotlin.mock +import org.mockito.kotlin.spy +import org.mockito.kotlin.whenever import java.io.BufferedReader import java.io.File import java.io.PrintWriter import java.io.StringWriter import kotlin.math.max import kotlin.math.min -import org.junit.Rule -import org.mockito.kotlin.any -import org.mockito.kotlin.mock -import org.mockito.kotlin.spy -import org.mockito.kotlin.whenever /** * This is an abstract class for DeviceProfile tests that create an InvariantDeviceProfile based on @@ -274,7 +274,8 @@ abstract class AbstractDeviceProfileTest { isGestureMode: Boolean = true, densityDpi: Int ) { - setFlagsRule.setFlags(false, Flags.FLAG_ENABLE_TWOLINE_TOGGLE) + setFlagsRule.setFlags(true, Flags.FLAG_ENABLE_TWOLINE_TOGGLE) + LauncherPrefs.get(testContext).put(LauncherPrefs.ENABLE_TWOLINE_ALLAPPS_TOGGLE, true) val windowsBounds = perDisplayBoundsCache[displayInfo]!! val realBounds = windowsBounds[rotation] whenever(windowManagerProxy.getDisplayInfo(any())).thenReturn(displayInfo) diff --git a/tests/src/com/android/launcher3/ui/BubbleTextViewTest.java b/tests/src/com/android/launcher3/ui/BubbleTextViewTest.java index 6df3ecd078..90ded100fe 100644 --- a/tests/src/com/android/launcher3/ui/BubbleTextViewTest.java +++ b/tests/src/com/android/launcher3/ui/BubbleTextViewTest.java @@ -22,7 +22,7 @@ import static com.android.launcher3.BubbleTextView.DISPLAY_ALL_APPS; import static com.android.launcher3.BubbleTextView.DISPLAY_PREDICTION_ROW; import static com.android.launcher3.BubbleTextView.DISPLAY_SEARCH_RESULT; import static com.android.launcher3.BubbleTextView.DISPLAY_SEARCH_RESULT_SMALL; -import static com.android.launcher3.config.FeatureFlags.ENABLE_TWOLINE_ALLAPPS; +import static com.android.launcher3.LauncherPrefs.ENABLE_TWOLINE_ALLAPPS_TOGGLE; import static com.google.common.truth.Truth.assertThat; @@ -39,6 +39,7 @@ import android.view.ViewGroup; import com.android.launcher3.BubbleTextView; import com.android.launcher3.Flags; +import com.android.launcher3.LauncherPrefs; import com.android.launcher3.Utilities; import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.model.data.ItemInfoWithIcon; @@ -46,7 +47,6 @@ import com.android.launcher3.search.StringMatcherUtility; import com.android.launcher3.util.ActivityContextWrapper; import com.android.launcher3.util.FlagOp; import com.android.launcher3.util.IntArray; -import com.android.launcher3.util.TestUtil; import com.android.launcher3.views.BaseDragLayer; import org.junit.Before; @@ -96,13 +96,14 @@ public class BubbleTextViewTest { private Context mContext; private int mLimitedWidth; private AppInfo mGmailAppInfo; + private LauncherPrefs mLauncherPrefs; @Before public void setUp() throws Exception { MockitoAnnotations.initMocks(this); Utilities.enableRunningInTestHarnessForTests(); - mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE); mContext = new ActivityContextWrapper(getApplicationContext()); + mLauncherPrefs = LauncherPrefs.get(mContext); mBubbleTextView = new BubbleTextView(mContext); mBubbleTextView.reset(); @@ -130,190 +131,155 @@ public class BubbleTextViewTest { @Test public void testEmptyString_flagOn() { - mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_ALLAPPS); - try (AutoCloseable flag = TestUtil.overrideFlag(ENABLE_TWOLINE_ALLAPPS, true)) { - mItemInfoWithIcon.title = EMPTY_STRING; - mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); - mBubbleTextView.applyLabel(mItemInfoWithIcon); - mBubbleTextView.setTypeface(Typeface.MONOSPACE); - mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); + mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE); + mLauncherPrefs.put(ENABLE_TWOLINE_ALLAPPS_TOGGLE, true); + mItemInfoWithIcon.title = EMPTY_STRING; + mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); + mBubbleTextView.applyLabel(mItemInfoWithIcon); + mBubbleTextView.setTypeface(Typeface.MONOSPACE); + mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); - mBubbleTextView.onPreDraw(); + mBubbleTextView.onPreDraw(); - assertNotEquals(TWO_LINE, mBubbleTextView.getMaxLines()); - } catch (Exception e) { - throw new RuntimeException(e); - } + assertNotEquals(TWO_LINE, mBubbleTextView.getMaxLines()); } @Test public void testEmptyString_flagOff() { - mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_TWOLINE_ALLAPPS); - try (AutoCloseable flag = TestUtil.overrideFlag(ENABLE_TWOLINE_ALLAPPS, false)) { - mItemInfoWithIcon.title = EMPTY_STRING; - mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); - mBubbleTextView.applyLabel(mItemInfoWithIcon); - mBubbleTextView.setTypeface(Typeface.MONOSPACE); - mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); + mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE); + mItemInfoWithIcon.title = EMPTY_STRING; + mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); + mBubbleTextView.applyLabel(mItemInfoWithIcon); + mBubbleTextView.setTypeface(Typeface.MONOSPACE); + mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); - mBubbleTextView.onPreDraw(); + mBubbleTextView.onPreDraw(); - assertEquals(ONE_LINE, mBubbleTextView.getLineCount()); - } catch (Exception e) { - throw new RuntimeException(e); - } + assertEquals(ONE_LINE, mBubbleTextView.getLineCount()); } @Test public void testStringWithSpaceLongerThanCharLimit_flagOn() { - mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_ALLAPPS); - try (AutoCloseable flag = TestUtil.overrideFlag(ENABLE_TWOLINE_ALLAPPS, true)) { - // test string: "Battery Stats" - mItemInfoWithIcon.title = TEST_STRING_WITH_SPACE_LONGER_THAN_CHAR_LIMIT; - mBubbleTextView.applyLabel(mItemInfoWithIcon); - mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); - mBubbleTextView.setTypeface(Typeface.MONOSPACE); - mBubbleTextView.measure(mLimitedWidth, MAX_HEIGHT); + mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE); + mLauncherPrefs.put(ENABLE_TWOLINE_ALLAPPS_TOGGLE, true); + // test string: "Battery Stats" + mItemInfoWithIcon.title = TEST_STRING_WITH_SPACE_LONGER_THAN_CHAR_LIMIT; + mBubbleTextView.applyLabel(mItemInfoWithIcon); + mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); + mBubbleTextView.setTypeface(Typeface.MONOSPACE); + mBubbleTextView.measure(mLimitedWidth, MAX_HEIGHT); - mBubbleTextView.onPreDraw(); + mBubbleTextView.onPreDraw(); - assertEquals(TWO_LINE, mBubbleTextView.getLineCount()); - } catch (Exception e) { - throw new RuntimeException(e); - } + assertEquals(TWO_LINE, mBubbleTextView.getLineCount()); } @Test public void testStringWithSpaceLongerThanCharLimit_flagOff() { - mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_TWOLINE_ALLAPPS); - try (AutoCloseable flag = TestUtil.overrideFlag(ENABLE_TWOLINE_ALLAPPS, false)) { - // test string: "Battery Stats" - mItemInfoWithIcon.title = TEST_STRING_WITH_SPACE_LONGER_THAN_CHAR_LIMIT; - mBubbleTextView.applyLabel(mItemInfoWithIcon); - mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); - mBubbleTextView.setTypeface(Typeface.MONOSPACE); - mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); + mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE); + // test string: "Battery Stats" + mItemInfoWithIcon.title = TEST_STRING_WITH_SPACE_LONGER_THAN_CHAR_LIMIT; + mBubbleTextView.applyLabel(mItemInfoWithIcon); + mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); + mBubbleTextView.setTypeface(Typeface.MONOSPACE); + mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); - mBubbleTextView.onPreDraw(); + mBubbleTextView.onPreDraw(); - assertEquals(ONE_LINE, mBubbleTextView.getLineCount()); - } catch (Exception e) { - throw new RuntimeException(e); - } + assertEquals(ONE_LINE, mBubbleTextView.getLineCount()); } @Test public void testLongStringNoSpaceLongerThanCharLimit_flagOn() { - mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_ALLAPPS); - try (AutoCloseable flag = TestUtil.overrideFlag(ENABLE_TWOLINE_ALLAPPS, true)) { - // test string: "flutterappflorafy" - mItemInfoWithIcon.title = TEST_LONG_STRING_NO_SPACE_LONGER_THAN_CHAR_LIMIT; - mBubbleTextView.applyLabel(mItemInfoWithIcon); - mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); - mBubbleTextView.setTypeface(Typeface.MONOSPACE); - mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); + mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE); + mLauncherPrefs.put(ENABLE_TWOLINE_ALLAPPS_TOGGLE, true); + // test string: "flutterappflorafy" + mItemInfoWithIcon.title = TEST_LONG_STRING_NO_SPACE_LONGER_THAN_CHAR_LIMIT; + mBubbleTextView.applyLabel(mItemInfoWithIcon); + mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); + mBubbleTextView.setTypeface(Typeface.MONOSPACE); + mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); - mBubbleTextView.onPreDraw(); + mBubbleTextView.onPreDraw(); - assertEquals(ONE_LINE, mBubbleTextView.getLineCount()); - } catch (Exception e) { - throw new RuntimeException(e); - } + assertEquals(ONE_LINE, mBubbleTextView.getLineCount()); } @Test public void testLongStringNoSpaceLongerThanCharLimit_flagOff() { - mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_TWOLINE_ALLAPPS); - try (AutoCloseable flag = TestUtil.overrideFlag(ENABLE_TWOLINE_ALLAPPS, false)) { - // test string: "flutterappflorafy" - mItemInfoWithIcon.title = TEST_LONG_STRING_NO_SPACE_LONGER_THAN_CHAR_LIMIT; - mBubbleTextView.applyLabel(mItemInfoWithIcon); - mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); - mBubbleTextView.setTypeface(Typeface.MONOSPACE); - mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); + mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE); + // test string: "flutterappflorafy" + mItemInfoWithIcon.title = TEST_LONG_STRING_NO_SPACE_LONGER_THAN_CHAR_LIMIT; + mBubbleTextView.applyLabel(mItemInfoWithIcon); + mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); + mBubbleTextView.setTypeface(Typeface.MONOSPACE); + mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); - mBubbleTextView.onPreDraw(); + mBubbleTextView.onPreDraw(); - assertEquals(ONE_LINE, mBubbleTextView.getLineCount()); - } catch (Exception e) { - throw new RuntimeException(e); - } + assertEquals(ONE_LINE, mBubbleTextView.getLineCount()); } @Test public void testLongStringWithSpaceLongerThanCharLimit_flagOn() { - mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_ALLAPPS); - try (AutoCloseable flag = TestUtil.overrideFlag(ENABLE_TWOLINE_ALLAPPS, true)) { - // test string: "System UWB Field Test" - mItemInfoWithIcon.title = TEST_LONG_STRING_WITH_SPACE_LONGER_THAN_CHAR_LIMIT; - mBubbleTextView.applyLabel(mItemInfoWithIcon); - mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); - mBubbleTextView.setTypeface(Typeface.MONOSPACE); - mBubbleTextView.measure(mLimitedWidth, MAX_HEIGHT); + mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE); + mLauncherPrefs.put(ENABLE_TWOLINE_ALLAPPS_TOGGLE, true); + // test string: "System UWB Field Test" + mItemInfoWithIcon.title = TEST_LONG_STRING_WITH_SPACE_LONGER_THAN_CHAR_LIMIT; + mBubbleTextView.applyLabel(mItemInfoWithIcon); + mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); + mBubbleTextView.setTypeface(Typeface.MONOSPACE); + mBubbleTextView.measure(mLimitedWidth, MAX_HEIGHT); - mBubbleTextView.onPreDraw(); + mBubbleTextView.onPreDraw(); - assertEquals(TWO_LINE, mBubbleTextView.getLineCount()); - } catch (Exception e) { - throw new RuntimeException(e); - } + assertEquals(TWO_LINE, mBubbleTextView.getLineCount()); } @Test public void testLongStringWithSpaceLongerThanCharLimit_flagOff() { - mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_TWOLINE_ALLAPPS); - try (AutoCloseable flag = TestUtil.overrideFlag(ENABLE_TWOLINE_ALLAPPS, false)) { - // test string: "System UWB Field Test" - mItemInfoWithIcon.title = TEST_LONG_STRING_WITH_SPACE_LONGER_THAN_CHAR_LIMIT; - mBubbleTextView.applyLabel(mItemInfoWithIcon); - mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); - mBubbleTextView.setTypeface(Typeface.MONOSPACE); - mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); + mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE); + // test string: "System UWB Field Test" + mItemInfoWithIcon.title = TEST_LONG_STRING_WITH_SPACE_LONGER_THAN_CHAR_LIMIT; + mBubbleTextView.applyLabel(mItemInfoWithIcon); + mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); + mBubbleTextView.setTypeface(Typeface.MONOSPACE); + mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); - mBubbleTextView.onPreDraw(); + mBubbleTextView.onPreDraw(); - assertEquals(ONE_LINE, mBubbleTextView.getLineCount()); - } catch (Exception e) { - throw new RuntimeException(e); - } + assertEquals(ONE_LINE, mBubbleTextView.getLineCount()); } @Test public void testLongStringSymbolLongerThanCharLimit_flagOn() { - mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_ALLAPPS); - try (AutoCloseable flag = TestUtil.overrideFlag(ENABLE_TWOLINE_ALLAPPS, true)) { - // test string: "LEGO®Builder" - mItemInfoWithIcon.title = TEST_LONG_STRING_SYMBOL_LONGER_THAN_CHAR_LIMIT; - mBubbleTextView.applyLabel(mItemInfoWithIcon); - mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); - mBubbleTextView.setTypeface(Typeface.MONOSPACE); - mBubbleTextView.measure(mLimitedWidth, MAX_HEIGHT); + mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE); + mLauncherPrefs.put(ENABLE_TWOLINE_ALLAPPS_TOGGLE, true); + // test string: "LEGO®Builder" + mItemInfoWithIcon.title = TEST_LONG_STRING_SYMBOL_LONGER_THAN_CHAR_LIMIT; + mBubbleTextView.applyLabel(mItemInfoWithIcon); + mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); + mBubbleTextView.setTypeface(Typeface.MONOSPACE); + mBubbleTextView.measure(mLimitedWidth, MAX_HEIGHT); - mBubbleTextView.onPreDraw(); + mBubbleTextView.onPreDraw(); - assertEquals(TWO_LINE, mBubbleTextView.getLineCount()); - } catch (Exception e) { - throw new RuntimeException(e); - } + assertEquals(TWO_LINE, mBubbleTextView.getLineCount()); } @Test public void testLongStringSymbolLongerThanCharLimit_flagOff() { - mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_TWOLINE_ALLAPPS); - try (AutoCloseable flag = TestUtil.overrideFlag(ENABLE_TWOLINE_ALLAPPS, false)) { - // test string: "LEGO®Builder" - mItemInfoWithIcon.title = TEST_LONG_STRING_SYMBOL_LONGER_THAN_CHAR_LIMIT; - mBubbleTextView.applyLabel(mItemInfoWithIcon); - mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); - mBubbleTextView.setTypeface(Typeface.MONOSPACE); - mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); + mSetFlagsRule.disableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE); + // test string: "LEGO®Builder" + mItemInfoWithIcon.title = TEST_LONG_STRING_SYMBOL_LONGER_THAN_CHAR_LIMIT; + mBubbleTextView.applyLabel(mItemInfoWithIcon); + mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); + mBubbleTextView.setTypeface(Typeface.MONOSPACE); + mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); - mBubbleTextView.onPreDraw(); + mBubbleTextView.onPreDraw(); - assertEquals(ONE_LINE, mBubbleTextView.getLineCount()); - } catch (Exception e) { - throw new RuntimeException(e); - } + assertEquals(ONE_LINE, mBubbleTextView.getLineCount()); } @Test @@ -374,58 +340,49 @@ public class BubbleTextViewTest { @Test public void testEnsurePredictionRowIsTwoLine() { - mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_ALLAPPS); - try (AutoCloseable flag = TestUtil.overrideFlag(ENABLE_TWOLINE_ALLAPPS, true)) { - // test string: "Battery Stats" - mItemInfoWithIcon.title = TEST_STRING_WITH_SPACE_LONGER_THAN_CHAR_LIMIT; - mBubbleTextView.setDisplay(DISPLAY_PREDICTION_ROW); - mBubbleTextView.applyLabel(mItemInfoWithIcon); - mBubbleTextView.setTypeface(Typeface.MONOSPACE); - mBubbleTextView.measure(mLimitedWidth, MAX_HEIGHT); + mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE); + mLauncherPrefs.put(ENABLE_TWOLINE_ALLAPPS_TOGGLE, true); + // test string: "Battery Stats" + mItemInfoWithIcon.title = TEST_STRING_WITH_SPACE_LONGER_THAN_CHAR_LIMIT; + mBubbleTextView.setDisplay(DISPLAY_PREDICTION_ROW); + mBubbleTextView.applyLabel(mItemInfoWithIcon); + mBubbleTextView.setTypeface(Typeface.MONOSPACE); + mBubbleTextView.measure(mLimitedWidth, MAX_HEIGHT); - mBubbleTextView.onPreDraw(); + mBubbleTextView.onPreDraw(); - assertEquals(TWO_LINE, mBubbleTextView.getLineCount()); - } catch (Exception e) { - throw new RuntimeException(e); - } + assertEquals(TWO_LINE, mBubbleTextView.getLineCount()); } @Test public void modifyTitleToSupportMultiLine_whenLimitedHeight_shouldBeOneLine() { - mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_ALLAPPS); - try (AutoCloseable flag = TestUtil.overrideFlag(ENABLE_TWOLINE_ALLAPPS, true)) { - // test string: "LEGO®Builder" - mItemInfoWithIcon.title = TEST_LONG_STRING_SYMBOL_LONGER_THAN_CHAR_LIMIT; - mBubbleTextView.applyLabel(mItemInfoWithIcon); - mBubbleTextView.setTypeface(Typeface.MONOSPACE); - mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); + mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE); + mLauncherPrefs.put(ENABLE_TWOLINE_ALLAPPS_TOGGLE, true); + // test string: "LEGO®Builder" + mItemInfoWithIcon.title = TEST_LONG_STRING_SYMBOL_LONGER_THAN_CHAR_LIMIT; + mBubbleTextView.applyLabel(mItemInfoWithIcon); + mBubbleTextView.setTypeface(Typeface.MONOSPACE); + mBubbleTextView.measure(mLimitedWidth, LIMITED_HEIGHT); - mBubbleTextView.onPreDraw(); + mBubbleTextView.onPreDraw(); - assertEquals(ONE_LINE, mBubbleTextView.getLineCount()); - } catch (Exception e) { - throw new RuntimeException(e); - } + assertEquals(ONE_LINE, mBubbleTextView.getLineCount()); } @Test public void modifyTitleToSupportMultiLine_whenUnlimitedHeight_shouldBeTwoLine() { - mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_ALLAPPS); - try (AutoCloseable flag = TestUtil.overrideFlag(ENABLE_TWOLINE_ALLAPPS, true)) { - // test string: "LEGO®Builder" - mItemInfoWithIcon.title = TEST_LONG_STRING_SYMBOL_LONGER_THAN_CHAR_LIMIT; - mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); - mBubbleTextView.applyLabel(mItemInfoWithIcon); - mBubbleTextView.setTypeface(Typeface.MONOSPACE); - mBubbleTextView.measure(mLimitedWidth, MAX_HEIGHT); + mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_TWOLINE_TOGGLE); + mLauncherPrefs.put(ENABLE_TWOLINE_ALLAPPS_TOGGLE, true); + // test string: "LEGO®Builder" + mItemInfoWithIcon.title = TEST_LONG_STRING_SYMBOL_LONGER_THAN_CHAR_LIMIT; + mBubbleTextView.setDisplay(DISPLAY_ALL_APPS); + mBubbleTextView.applyLabel(mItemInfoWithIcon); + mBubbleTextView.setTypeface(Typeface.MONOSPACE); + mBubbleTextView.measure(mLimitedWidth, MAX_HEIGHT); - mBubbleTextView.onPreDraw(); + mBubbleTextView.onPreDraw(); - assertEquals(TWO_LINE, mBubbleTextView.getLineCount()); - } catch (Exception e) { - throw new RuntimeException(e); - } + assertEquals(TWO_LINE, mBubbleTextView.getLineCount()); } @Test From 2bac10b2372155cc64adafa5cfa76ecdb94c2da6 Mon Sep 17 00:00:00 2001 From: wilsonshih Date: Thu, 21 Mar 2024 11:30:39 +0800 Subject: [PATCH 17/21] Do not report finish in mergeAnimation... ...if the handler don't know how to process the transition. So the Transitions can pass that transition to next handler. Flag: NONE Bug: 328619216 Test: manual, use alt+tab to relaunch a task where it's activity is destroyed. (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:7130116894eb7f756a16da6b5ff0e754a356d50d) Merged-In: Idf3f78103a56e91806ec2f6e364c6e8e7f4e205c Change-Id: Idf3f78103a56e91806ec2f6e364c6e8e7f4e205c --- .../taskbar/KeyboardQuickSwitchViewController.java | 3 ++- .../com/android/quickstep/util/SlideInRemoteTransition.kt | 7 +------ 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchViewController.java b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchViewController.java index c830aa8640..701edd000b 100644 --- a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchViewController.java +++ b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchViewController.java @@ -151,7 +151,8 @@ public class KeyboardQuickSwitchViewController { context.getDeviceProfile().overviewPageSpacing, QuickStepContract.getWindowCornerRadius(context), AnimationUtils.loadInterpolator( - context, android.R.interpolator.fast_out_extra_slow_in))); + context, android.R.interpolator.fast_out_extra_slow_in)), + "SlideInTransition"); if (mOnDesktop) { UI_HELPER_EXECUTOR.execute(() -> SystemUiProxy.INSTANCE.get(mKeyboardQuickSwitchView.getContext()) diff --git a/quickstep/src/com/android/quickstep/util/SlideInRemoteTransition.kt b/quickstep/src/com/android/quickstep/util/SlideInRemoteTransition.kt index 9f7b46d90f..134729163e 100644 --- a/quickstep/src/com/android/quickstep/util/SlideInRemoteTransition.kt +++ b/quickstep/src/com/android/quickstep/util/SlideInRemoteTransition.kt @@ -46,12 +46,7 @@ class SlideInRemoteTransition( mergeTarget: IBinder, finishCB: IRemoteTransitionFinishedCallback ) { - - try { - finishCB.onTransitionFinished(null, Transaction()) - } catch (e: RemoteException) { - // Ignore - } + // Do not report finish if we don't know how to handle this transition. } override fun startAnimation( From ed9b5e0a5a6c2f2437daa67393a9648441fbb76a Mon Sep 17 00:00:00 2001 From: Schneider Victor-tulias Date: Wed, 13 Mar 2024 16:19:21 -0400 Subject: [PATCH 18/21] Close the KQS view when touching the gesture nav region Also, stop handling KQS open/close during gestures Flag: LEGACY ENABLE_KEYBOARD_QUICK_SWITCH ENABLED Fixes: 328689890 Fixes: 328689534 Fixes: 328692760 Test: attempted gestures while KQS is shown. attempted KQS while attempting gestures (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:14d912b062e69fe8bc4729b6f8b40e53d5b4a669) Merged-In: Idbd1f9cef09d9fbf611350d0847d94ccf8300369 Change-Id: Idbd1f9cef09d9fbf611350d0847d94ccf8300369 --- .../KeyboardQuickSwitchController.java | 6 ++- .../taskbar/TaskbarActivityContext.java | 5 +++ .../quickstep/OverviewCommandHelper.java | 8 ++++ .../quickstep/TouchInteractionService.java | 4 ++ .../android/quickstep/views/RecentsView.java | 45 ++++++++++--------- 5 files changed, 45 insertions(+), 23 deletions(-) diff --git a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchController.java b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchController.java index f15d12b12d..8566e20e14 100644 --- a/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchController.java +++ b/quickstep/src/com/android/launcher3/taskbar/KeyboardQuickSwitchController.java @@ -193,10 +193,14 @@ public final class KeyboardQuickSwitchController implements } void closeQuickSwitchView() { + closeQuickSwitchView(true); + } + + void closeQuickSwitchView(boolean animate) { if (mQuickSwitchViewController == null) { return; } - mQuickSwitchViewController.closeQuickSwitchView(true); + mQuickSwitchViewController.closeQuickSwitchView(animate); } /** diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java index 87662e6c1a..ecaf89aa58 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java @@ -1554,4 +1554,9 @@ public class TaskbarActivityContext extends BaseTaskbarContext { public float getStashedTaskbarScale() { return mControllers.stashedHandleViewController.getStashedHandleHintScale().value; } + + /** Closes the KeyboardQuickSwitchView without an animation if open. */ + public void closeKeyboardQuickSwitchView() { + mControllers.keyboardQuickSwitchController.closeQuickSwitchView(false); + } } diff --git a/quickstep/src/com/android/quickstep/OverviewCommandHelper.java b/quickstep/src/com/android/quickstep/OverviewCommandHelper.java index 65b5397fd1..56c9a00016 100644 --- a/quickstep/src/com/android/quickstep/OverviewCommandHelper.java +++ b/quickstep/src/com/android/quickstep/OverviewCommandHelper.java @@ -248,7 +248,15 @@ public class OverviewCommandHelper { case TYPE_SHOW: // already visible return true; + case TYPE_KEYBOARD_INPUT: { + if (visibleRecentsView.isHandlingTouch()) { + return true; + } + } case TYPE_HIDE: { + if (visibleRecentsView.isHandlingTouch()) { + return true; + } mKeyboardTaskFocusIndex = INVALID_PAGE; int currentPage = visibleRecentsView.getNextPage(); TaskView tv = (currentPage >= 0 diff --git a/quickstep/src/com/android/quickstep/TouchInteractionService.java b/quickstep/src/com/android/quickstep/TouchInteractionService.java index 788012445b..719c4f7f70 100644 --- a/quickstep/src/com/android/quickstep/TouchInteractionService.java +++ b/quickstep/src/com/android/quickstep/TouchInteractionService.java @@ -754,6 +754,10 @@ public class TouchInteractionService extends Service { boolean isOneHandedModeActive = mDeviceState.isOneHandedModeActive(); boolean isInSwipeUpTouchRegion = mRotationTouchHelper.isInSwipeUpTouchRegion(event); + TaskbarActivityContext tac = mTaskbarManager.getCurrentActivityContext(); + if (isInSwipeUpTouchRegion && tac != null) { + tac.closeKeyboardQuickSwitchView(); + } if ((!isOneHandedModeActive && isInSwipeUpTouchRegion) || isHoverActionWithoutConsumer) { reasonString.append(!isOneHandedModeActive && isInSwipeUpTouchRegion diff --git a/quickstep/src/com/android/quickstep/views/RecentsView.java b/quickstep/src/com/android/quickstep/views/RecentsView.java index 1b2be4a6f6..e516870de2 100644 --- a/quickstep/src/com/android/quickstep/views/RecentsView.java +++ b/quickstep/src/com/android/quickstep/views/RecentsView.java @@ -4220,30 +4220,31 @@ public abstract class RecentsView Date: Thu, 14 Mar 2024 19:12:50 -0400 Subject: [PATCH 19/21] Support toggling Taskbar All Apps with 3P Launcher. Taskbar All Apps exists regardless of the default launcher. Thus, we can toggle it on large screen devices. This CL ties registering the system action to default launcher and taskbar's enablement. Test: adb shell input keyevent 117 Test: AllAppsActionManagerTest Flag: LEGACY ENABLE_ALL_APPS_SEARCH_IN_TASKBAR ENABLED Fix: 317259709 (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:c113b277e61eb0391f050d6c12bf36711d727733) Merged-In: I26f0ed9e921beac762f3f9e6aaceb1002ad4801a Change-Id: I26f0ed9e921beac762f3f9e6aaceb1002ad4801a --- .../taskbar/LauncherTaskbarUIController.java | 7 ++ .../taskbar/TaskbarActivityContext.java | 4 + .../launcher3/taskbar/TaskbarManager.java | 36 ++++---- .../taskbar/TaskbarUIController.java | 5 + .../android/quickstep/AllAppsActionManager.kt | 90 ++++++++++++++++++ .../quickstep/TouchInteractionService.java | 38 ++------ .../quickstep/AllAppsActionManagerTest.kt | 91 +++++++++++++++++++ 7 files changed, 224 insertions(+), 47 deletions(-) create mode 100644 quickstep/src/com/android/quickstep/AllAppsActionManager.kt create mode 100644 quickstep/tests/multivalentTests/src/com/android/quickstep/AllAppsActionManagerTest.kt diff --git a/quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java b/quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java index 1e861d2fb5..30be0580ec 100644 --- a/quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java +++ b/quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java @@ -413,6 +413,13 @@ public class LauncherTaskbarUIController extends TaskbarUIController { return mTaskbarLauncherStateController.isInOverview(); } + @Override + protected boolean canToggleHomeAllApps() { + return mLauncher.isResumed() + && !mTaskbarLauncherStateController.isInOverview() + && !mLauncher.areFreeformTasksVisible(); + } + @Override public RecentsView getRecentsView() { return mLauncher.getOverviewPanel(); diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java index ecaf89aa58..cb8cd3763b 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java @@ -1559,4 +1559,8 @@ public class TaskbarActivityContext extends BaseTaskbarContext { public void closeKeyboardQuickSwitchView() { mControllers.keyboardQuickSwitchController.closeQuickSwitchView(false); } + + boolean canToggleHomeAllApps() { + return mControllers.uiController.canToggleHomeAllApps(); + } } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarManager.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarManager.java index ff33ca9779..ecbc7e7fdc 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarManager.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarManager.java @@ -23,7 +23,6 @@ import static android.view.WindowManager.LayoutParams.TYPE_NAVIGATION_BAR_PANEL; import static com.android.launcher3.BaseActivity.EVENT_DESTROYED; import static com.android.launcher3.Flags.enableUnfoldStateAnimation; -import static com.android.launcher3.LauncherState.OVERVIEW; import static com.android.launcher3.config.FeatureFlags.ENABLE_TASKBAR_NAVBAR_UNIFICATION; import static com.android.launcher3.config.FeatureFlags.enableTaskbarNoRecreate; import static com.android.launcher3.util.DisplayController.CHANGE_DENSITY; @@ -69,6 +68,7 @@ import com.android.launcher3.uioverrides.QuickstepLauncher; import com.android.launcher3.util.DisplayController; import com.android.launcher3.util.SettingsCache; import com.android.launcher3.util.SimpleBroadcastReceiver; +import com.android.quickstep.AllAppsActionManager; import com.android.quickstep.RecentsActivity; import com.android.quickstep.SystemUiProxy; import com.android.quickstep.TouchInteractionService; @@ -158,6 +158,8 @@ public class TaskbarManager { private final SimpleBroadcastReceiver mTaskbarBroadcastReceiver = new SimpleBroadcastReceiver(this::showTaskbarFromBroadcast); + private final AllAppsActionManager mAllAppsActionManager; + private final Runnable mActivityOnDestroyCallback = new Runnable() { @Override public void run() { @@ -212,12 +214,14 @@ public class TaskbarManager { private Boolean mFolded; @SuppressLint("WrongConstant") - public TaskbarManager(TouchInteractionService service) { + public TaskbarManager( + TouchInteractionService service, AllAppsActionManager allAppsActionManager) { Display display = service.getSystemService(DisplayManager.class).getDisplay(DEFAULT_DISPLAY); mContext = service.createWindowContext(display, ENABLE_TASKBAR_NAVBAR_UNIFICATION ? TYPE_NAVIGATION_BAR : TYPE_NAVIGATION_BAR_PANEL, null); + mAllAppsActionManager = allAppsActionManager; mNavigationBarPanelContext = ENABLE_TASKBAR_NAVBAR_UNIFICATION ? service.createWindowContext(display, TYPE_NAVIGATION_BAR_PANEL, null) : null; @@ -291,10 +295,10 @@ public class TaskbarManager { recreateTaskbar(); } else { // Config change might be handled without re-creating the taskbar - if (dp != null && !isTaskbarPresent(dp)) { + if (dp != null && !isTaskbarEnabled(dp)) { destroyExistingTaskbar(); } else { - if (dp != null && isTaskbarPresent(dp)) { + if (dp != null && isTaskbarEnabled(dp)) { if (ENABLE_TASKBAR_NAVBAR_UNIFICATION) { // Re-initialize for screen size change? Should this be done // by looking at screen-size change flag in configDiff in the @@ -349,7 +353,7 @@ public class TaskbarManager { } DeviceProfile dp = mUserUnlocked ? LauncherAppState.getIDP(mContext).getDeviceProfile(mContext) : null; - if (dp == null || !isTaskbarPresent(dp)) { + if (dp == null || !isTaskbarEnabled(dp)) { removeTaskbarRootViewFromWindow(); } } @@ -369,20 +373,11 @@ public class TaskbarManager { * @param homeAllAppsIntent Intent used if Taskbar is not enabled or Launcher is resumed. */ public void toggleAllApps(Intent homeAllAppsIntent) { - if (mTaskbarActivityContext == null) { + if (mTaskbarActivityContext == null || mTaskbarActivityContext.canToggleHomeAllApps()) { mContext.startActivity(homeAllAppsIntent); - return; + } else { + mTaskbarActivityContext.toggleAllAppsSearch(); } - - if (mActivity != null - && mActivity.isResumed() - && !mActivity.isInState(OVERVIEW) - && !(mActivity instanceof QuickstepLauncher l && l.areFreeformTasksVisible())) { - mContext.startActivity(homeAllAppsIntent); - return; - } - - mTaskbarActivityContext.toggleAllAppsSearch(); } /** @@ -477,9 +472,12 @@ public class TaskbarManager { DeviceProfile dp = mUserUnlocked ? LauncherAppState.getIDP(mContext).getDeviceProfile(mContext) : null; + // All Apps action is unrelated to navbar unification, so we only need to check DP. + mAllAppsActionManager.setTaskbarPresent(dp != null && dp.isTaskbarPresent); + destroyExistingTaskbar(); - boolean isTaskbarEnabled = dp != null && isTaskbarPresent(dp); + boolean isTaskbarEnabled = dp != null && isTaskbarEnabled(dp); debugWhyTaskbarNotDestroyed("recreateTaskbar: isTaskbarEnabled=" + isTaskbarEnabled + " [dp != null (i.e. mUserUnlocked)]=" + (dp != null) + " FLAG_HIDE_NAVBAR_WINDOW=" + ENABLE_TASKBAR_NAVBAR_UNIFICATION @@ -544,7 +542,7 @@ public class TaskbarManager { } } - private static boolean isTaskbarPresent(DeviceProfile deviceProfile) { + private static boolean isTaskbarEnabled(DeviceProfile deviceProfile) { return ENABLE_TASKBAR_NAVBAR_UNIFICATION || deviceProfile.isTaskbarPresent; } diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarUIController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarUIController.java index efe1e39f97..109400ee6b 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarUIController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarUIController.java @@ -197,6 +197,11 @@ public class TaskbarUIController { return false; } + /** Returns {@code true} if Home All Apps available instead of Taskbar All Apps. */ + protected boolean canToggleHomeAllApps() { + return false; + } + @CallSuper protected void dumpLogs(String prefix, PrintWriter pw) { pw.println(String.format( diff --git a/quickstep/src/com/android/quickstep/AllAppsActionManager.kt b/quickstep/src/com/android/quickstep/AllAppsActionManager.kt new file mode 100644 index 0000000000..fd2ed3ac18 --- /dev/null +++ b/quickstep/src/com/android/quickstep/AllAppsActionManager.kt @@ -0,0 +1,90 @@ +/* + * Copyright (C) 2024 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.quickstep + +import android.accessibilityservice.AccessibilityService.GLOBAL_ACTION_ACCESSIBILITY_ALL_APPS +import android.app.PendingIntent +import android.app.RemoteAction +import android.content.Context +import android.graphics.drawable.Icon +import android.view.accessibility.AccessibilityManager +import com.android.launcher3.R +import java.util.concurrent.Executor + +/** + * Registers a [RemoteAction] for toggling All Apps if needed. + * + * We need this action when either [isHomeAndOverviewSame] or [isTaskbarPresent] is `true`. When + * home and overview are the same, we can control Launcher's or Taskbar's All Apps tray. If they are + * not the same, but Taskbar is present, we can only control Taskbar's tray. + */ +class AllAppsActionManager( + private val context: Context, + private val bgExecutor: Executor, + private val createAllAppsPendingIntent: () -> PendingIntent, +) { + + /** `true` if home and overview are the same Activity. */ + var isHomeAndOverviewSame = false + set(value) { + field = value + updateSystemAction() + } + + /** `true` if Taskbar is enabled. */ + var isTaskbarPresent = false + set(value) { + field = value + updateSystemAction() + } + + /** `true` if the action should be registered. */ + var isActionRegistered = false + private set + + private fun updateSystemAction() { + val shouldRegisterAction = isHomeAndOverviewSame || isTaskbarPresent + if (isActionRegistered == shouldRegisterAction) return + isActionRegistered = shouldRegisterAction + + bgExecutor.execute { + val accessibilityManager = + context.getSystemService(AccessibilityManager::class.java) ?: return@execute + if (shouldRegisterAction) { + accessibilityManager.registerSystemAction( + RemoteAction( + Icon.createWithResource(context, R.drawable.ic_apps), + context.getString(R.string.all_apps_label), + context.getString(R.string.all_apps_label), + createAllAppsPendingIntent(), + ), + GLOBAL_ACTION_ACCESSIBILITY_ALL_APPS, + ) + } else { + accessibilityManager.unregisterSystemAction(GLOBAL_ACTION_ACCESSIBILITY_ALL_APPS) + } + } + } + + fun onDestroy() { + context + .getSystemService(AccessibilityManager::class.java) + ?.unregisterSystemAction( + GLOBAL_ACTION_ACCESSIBILITY_ALL_APPS, + ) + } +} diff --git a/quickstep/src/com/android/quickstep/TouchInteractionService.java b/quickstep/src/com/android/quickstep/TouchInteractionService.java index 719c4f7f70..b43c5201ce 100644 --- a/quickstep/src/com/android/quickstep/TouchInteractionService.java +++ b/quickstep/src/com/android/quickstep/TouchInteractionService.java @@ -31,6 +31,7 @@ import static com.android.launcher3.MotionEventsUtils.isTrackpadMotionEvent; import static com.android.launcher3.MotionEventsUtils.isTrackpadMultiFingerSwipe; import static com.android.launcher3.config.FeatureFlags.ENABLE_TRACKPAD_GESTURE; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; +import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR; import static com.android.launcher3.util.OnboardingPrefs.HOME_BOUNCE_SEEN; import static com.android.launcher3.util.window.WindowManagerProxy.MIN_TABLET_WIDTH; import static com.android.quickstep.GestureState.DEFAULT_STATE; @@ -59,14 +60,12 @@ import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_SP import static com.android.wm.shell.sysui.ShellSharedConstants.KEY_EXTRA_SHELL_STARTING_WINDOW; import android.app.PendingIntent; -import android.app.RemoteAction; import android.app.Service; import android.content.IIntentReceiver; import android.content.IIntentSender; import android.content.Intent; import android.content.res.Configuration; import android.graphics.Region; -import android.graphics.drawable.Icon; import android.os.Bundle; import android.os.IBinder; import android.os.Looper; @@ -77,7 +76,6 @@ import android.view.Choreographer; import android.view.InputDevice; import android.view.InputEvent; import android.view.MotionEvent; -import android.view.accessibility.AccessibilityManager; import androidx.annotation.BinderThread; import androidx.annotation.NonNull; @@ -88,7 +86,6 @@ import com.android.launcher3.BaseDraggingActivity; import com.android.launcher3.ConstantItem; import com.android.launcher3.EncryptionType; import com.android.launcher3.LauncherPrefs; -import com.android.launcher3.R; import com.android.launcher3.anim.AnimatedFloat; import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.provider.RestoreDbTask; @@ -101,7 +98,6 @@ import com.android.launcher3.testing.shared.TestProtocol; import com.android.launcher3.uioverrides.flags.FlagsFactory; import com.android.launcher3.uioverrides.plugins.PluginManagerWrapper; import com.android.launcher3.util.DisplayController; -import com.android.launcher3.util.Executors; import com.android.launcher3.util.LockedUserState; import com.android.launcher3.util.SafeCloseable; import com.android.launcher3.util.ScreenOnTracker; @@ -488,6 +484,7 @@ public class TouchInteractionService extends Service { private TaskbarManager mTaskbarManager; private Function mSwipeUpProxyProvider = i -> null; + private AllAppsActionManager mAllAppsActionManager; @Override public void onCreate() { @@ -497,7 +494,9 @@ public class TouchInteractionService extends Service { mMainChoreographer = Choreographer.getInstance(); mAM = ActivityManagerWrapper.getInstance(); mDeviceState = new RecentsAnimationDeviceState(this, true); - mTaskbarManager = new TaskbarManager(this); + mAllAppsActionManager = new AllAppsActionManager( + this, UI_HELPER_EXECUTOR, this::createAllAppsPendingIntent); + mTaskbarManager = new TaskbarManager(this, mAllAppsActionManager); mRotationTouchHelper = mDeviceState.getRotationTouchHelper(); mInputConsumer = InputConsumerController.getRecentsAnimationInputConsumer(); BootAwarePreloader.start(this); @@ -590,16 +589,7 @@ public class TouchInteractionService extends Service { } private void onOverviewTargetChange(boolean isHomeAndOverviewSame) { - Executors.UI_HELPER_EXECUTOR.execute(() -> { - AccessibilityManager am = getSystemService(AccessibilityManager.class); - - if (isHomeAndOverviewSame) { - am.registerSystemAction( - createAllAppsAction(), GLOBAL_ACTION_ACCESSIBILITY_ALL_APPS); - } else { - am.unregisterSystemAction(GLOBAL_ACTION_ACCESSIBILITY_ALL_APPS); - } - }); + mAllAppsActionManager.setHomeAndOverviewSame(isHomeAndOverviewSame); StatefulActivity newOverviewActivity = mOverviewComponentObserver.getActivityInterface() .getCreatedActivity(); @@ -609,13 +599,12 @@ public class TouchInteractionService extends Service { mTISBinder.onOverviewTargetChange(); } - private RemoteAction createAllAppsAction() { + private PendingIntent createAllAppsPendingIntent() { final Intent homeIntent = new Intent(mOverviewComponentObserver.getHomeIntent()) .setAction(INTENT_ACTION_ALL_APPS_TOGGLE); - final PendingIntent actionPendingIntent; if (FeatureFlags.ENABLE_ALL_APPS_SEARCH_IN_TASKBAR.get()) { - actionPendingIntent = new PendingIntent(new IIntentSender.Stub() { + return new PendingIntent(new IIntentSender.Stub() { @Override public void send(int code, Intent intent, String resolvedType, IBinder allowlistToken, IIntentReceiver finishedReceiver, @@ -624,18 +613,12 @@ public class TouchInteractionService extends Service { } }); } else { - actionPendingIntent = PendingIntent.getActivity( + return PendingIntent.getActivity( this, GLOBAL_ACTION_ACCESSIBILITY_ALL_APPS, homeIntent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE); } - - return new RemoteAction( - Icon.createWithResource(this, R.drawable.ic_apps), - getString(R.string.all_apps_label), - getString(R.string.all_apps_label), - actionPendingIntent); } @UiThread @@ -678,8 +661,7 @@ public class TouchInteractionService extends Service { mDeviceState.destroy(); SystemUiProxy.INSTANCE.get(this).clearProxy(); - getSystemService(AccessibilityManager.class) - .unregisterSystemAction(GLOBAL_ACTION_ACCESSIBILITY_ALL_APPS); + mAllAppsActionManager.onDestroy(); mTaskbarManager.destroy(); sConnected = false; diff --git a/quickstep/tests/multivalentTests/src/com/android/quickstep/AllAppsActionManagerTest.kt b/quickstep/tests/multivalentTests/src/com/android/quickstep/AllAppsActionManagerTest.kt new file mode 100644 index 0000000000..73b35e8a5c --- /dev/null +++ b/quickstep/tests/multivalentTests/src/com/android/quickstep/AllAppsActionManagerTest.kt @@ -0,0 +1,91 @@ +/* + * Copyright (C) 2024 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.quickstep + +import android.app.PendingIntent +import android.content.IIntentSender +import androidx.test.ext.junit.runners.AndroidJUnit4 +import androidx.test.platform.app.InstrumentationRegistry +import com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR +import com.android.launcher3.util.TestUtil +import com.google.common.truth.Truth.assertThat +import java.util.concurrent.Semaphore +import java.util.concurrent.TimeUnit.SECONDS +import org.junit.Test +import org.junit.runner.RunWith + +private const val TIMEOUT = 5L + +@RunWith(AndroidJUnit4::class) +class AllAppsActionManagerTest { + private val callbackSemaphore = Semaphore(0) + private val bgExecutor = UI_HELPER_EXECUTOR + + private val allAppsActionManager = + AllAppsActionManager( + InstrumentationRegistry.getInstrumentation().targetContext, + bgExecutor, + ) { + callbackSemaphore.release() + PendingIntent(IIntentSender.Default()) + } + + @Test + fun taskbarPresent_actionRegistered() { + allAppsActionManager.isTaskbarPresent = true + assertThat(callbackSemaphore.tryAcquire(TIMEOUT, SECONDS)).isTrue() + assertThat(allAppsActionManager.isActionRegistered).isTrue() + } + + @Test + fun homeAndOverviewSame_actionRegistered() { + allAppsActionManager.isHomeAndOverviewSame = true + assertThat(callbackSemaphore.tryAcquire(TIMEOUT, SECONDS)).isTrue() + assertThat(allAppsActionManager.isActionRegistered).isTrue() + } + + @Test + fun toggleTaskbar_destroyedAfterActionRegistered_actionUnregistered() { + allAppsActionManager.isTaskbarPresent = true + assertThat(callbackSemaphore.tryAcquire(TIMEOUT, SECONDS)).isTrue() + + allAppsActionManager.isTaskbarPresent = false + TestUtil.runOnExecutorSync(bgExecutor) {} // Force system action to unregister. + assertThat(allAppsActionManager.isActionRegistered).isFalse() + } + + @Test + fun toggleTaskbar_destroyedBeforeActionRegistered_pendingActionUnregistered() { + allAppsActionManager.isTaskbarPresent = true + allAppsActionManager.isTaskbarPresent = false + + TestUtil.runOnExecutorSync(bgExecutor) {} // Force system action to unregister. + assertThat(callbackSemaphore.tryAcquire(TIMEOUT, SECONDS)).isTrue() + assertThat(allAppsActionManager.isActionRegistered).isFalse() + } + + @Test + fun changeHome_sameAsOverviewBeforeActionUnregistered_actionRegisteredAgain() { + allAppsActionManager.isHomeAndOverviewSame = true // Initialize to same. + assertThat(callbackSemaphore.tryAcquire(TIMEOUT, SECONDS)).isTrue() + + allAppsActionManager.isHomeAndOverviewSame = false + allAppsActionManager.isHomeAndOverviewSame = true + assertThat(callbackSemaphore.tryAcquire(TIMEOUT, SECONDS)).isTrue() + assertThat(allAppsActionManager.isActionRegistered).isTrue() + } +} From c53d86ba94d44eebeba0827a0fb3580c80abd1d4 Mon Sep 17 00:00:00 2001 From: Bill Yi Date: Tue, 26 Mar 2024 13:44:56 -0700 Subject: [PATCH 20/21] Import translations. DO NOT MERGE ANYWHERE Auto-generated-cl: translation import Bug: 328603775 (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:b06d115b1fb261636dbe99e69fbf9d846ce77413) Merged-In: Ic2989766561a25c68064303d71578201910bcf72 Change-Id: Ic2989766561a25c68064303d71578201910bcf72 --- quickstep/res/values-as/strings.xml | 4 ++-- quickstep/res/values-bg/strings.xml | 2 +- quickstep/res/values-bs/strings.xml | 2 +- quickstep/res/values-cs/strings.xml | 2 +- quickstep/res/values-de/strings.xml | 2 +- quickstep/res/values-en-rAU/strings.xml | 2 +- quickstep/res/values-en-rGB/strings.xml | 2 +- quickstep/res/values-en-rIN/strings.xml | 2 +- quickstep/res/values-es-rUS/strings.xml | 2 +- quickstep/res/values-es/strings.xml | 2 +- quickstep/res/values-fr-rCA/strings.xml | 2 +- quickstep/res/values-hi/strings.xml | 2 +- quickstep/res/values-hr/strings.xml | 2 +- quickstep/res/values-hy/strings.xml | 2 +- quickstep/res/values-in/strings.xml | 2 +- quickstep/res/values-is/strings.xml | 2 +- quickstep/res/values-it/strings.xml | 2 +- quickstep/res/values-kn/strings.xml | 2 +- quickstep/res/values-ko/strings.xml | 2 +- quickstep/res/values-ky/strings.xml | 2 +- quickstep/res/values-ne/strings.xml | 4 ++-- quickstep/res/values-pa/strings.xml | 2 +- quickstep/res/values-pt/strings.xml | 2 +- quickstep/res/values-te/strings.xml | 4 ++-- quickstep/res/values-tr/strings.xml | 4 ++-- quickstep/res/values-uk/strings.xml | 2 +- quickstep/res/values-vi/strings.xml | 2 +- quickstep/res/values-zh-rHK/strings.xml | 2 +- quickstep/res/values-zh-rTW/strings.xml | 2 +- res/values-af/strings.xml | 13 +++++-------- res/values-am/strings.xml | 9 +++------ res/values-ar/strings.xml | 9 +++------ res/values-as/strings.xml | 11 ++++------- res/values-az/strings.xml | 9 +++------ res/values-b+sr+Latn/strings.xml | 9 +++------ res/values-be/strings.xml | 9 +++------ res/values-bg/strings.xml | 9 +++------ res/values-bn/strings.xml | 11 ++++------- res/values-bs/strings.xml | 9 +++------ res/values-ca/strings.xml | 9 +++------ res/values-cs/strings.xml | 9 +++------ res/values-da/strings.xml | 9 +++------ res/values-de/strings.xml | 9 +++------ res/values-el/strings.xml | 9 +++------ res/values-en-rAU/strings.xml | 9 +++------ res/values-en-rCA/strings.xml | 9 +++------ res/values-en-rGB/strings.xml | 9 +++------ res/values-en-rIN/strings.xml | 9 +++------ res/values-en-rXC/strings.xml | 9 +++------ res/values-es-rUS/strings.xml | 15 ++++++--------- res/values-es/strings.xml | 11 ++++------- res/values-et/strings.xml | 9 +++------ res/values-eu/strings.xml | 11 ++++------- res/values-fa/strings.xml | 9 +++------ res/values-fi/strings.xml | 9 +++------ res/values-fr-rCA/strings.xml | 13 +++++-------- res/values-fr/strings.xml | 9 +++------ res/values-gl/strings.xml | 9 +++------ res/values-gu/strings.xml | 9 +++------ res/values-hi/strings.xml | 9 +++------ res/values-hr/strings.xml | 9 +++------ res/values-hu/strings.xml | 9 +++------ res/values-hy/strings.xml | 9 +++------ res/values-in/strings.xml | 9 +++------ res/values-is/strings.xml | 9 +++------ res/values-it/strings.xml | 9 +++------ res/values-iw/strings.xml | 11 ++++------- res/values-ja/strings.xml | 9 +++------ res/values-ka/strings.xml | 9 +++------ res/values-kk/strings.xml | 9 +++------ res/values-km/strings.xml | 9 +++------ res/values-kn/strings.xml | 9 +++------ res/values-ko/strings.xml | 9 +++------ res/values-ky/strings.xml | 9 +++------ res/values-lo/strings.xml | 9 +++------ res/values-lt/strings.xml | 9 +++------ res/values-lv/strings.xml | 11 ++++------- res/values-mk/strings.xml | 9 +++------ res/values-ml/strings.xml | 9 +++------ res/values-mn/strings.xml | 9 +++------ res/values-mr/strings.xml | 9 +++------ res/values-ms/strings.xml | 9 +++------ res/values-my/strings.xml | 9 +++------ res/values-nb/strings.xml | 9 +++------ res/values-ne/strings.xml | 15 ++++++--------- res/values-nl/strings.xml | 13 +++++-------- res/values-or/strings.xml | 9 +++------ res/values-pa/strings.xml | 9 +++------ res/values-pl/strings.xml | 9 +++------ res/values-pt-rPT/strings.xml | 11 ++++------- res/values-pt/strings.xml | 9 +++------ res/values-ro/strings.xml | 9 +++------ res/values-ru/strings.xml | 9 +++------ res/values-si/strings.xml | 9 +++------ res/values-sk/strings.xml | 9 +++------ res/values-sl/strings.xml | 9 +++------ res/values-sq/strings.xml | 9 +++------ res/values-sr/strings.xml | 9 +++------ res/values-sv/strings.xml | 11 ++++------- res/values-sw/strings.xml | 9 +++------ res/values-ta/strings.xml | 11 ++++------- res/values-te/strings.xml | 9 +++------ res/values-th/strings.xml | 9 +++------ res/values-tl/strings.xml | 9 +++------ res/values-tr/strings.xml | 9 +++------ res/values-uk/strings.xml | 11 ++++------- res/values-ur/strings.xml | 9 +++------ res/values-uz/strings.xml | 9 +++------ res/values-vi/strings.xml | 9 +++------ res/values-zh-rCN/strings.xml | 9 +++------ res/values-zh-rHK/strings.xml | 9 +++------ res/values-zh-rTW/strings.xml | 9 +++------ res/values-zu/strings.xml | 9 +++------ 113 files changed, 307 insertions(+), 559 deletions(-) diff --git a/quickstep/res/values-as/strings.xml b/quickstep/res/values-as/strings.xml index 88c50e0b07..4a05bff76f 100644 --- a/quickstep/res/values-as/strings.xml +++ b/quickstep/res/values-as/strings.xml @@ -113,8 +113,8 @@ "আপোনাৰ ৰুটিনৰ ওপৰত আধাৰিত এপৰ পৰামৰ্শ পাওক" "টাস্কবাৰ পিন কৰিবলৈ বিভাজকত দীঘলীয়া সময় টিপি থাকক" "টাস্কবাৰৰ জৰিয়তে অধিক কাৰ্য সম্পাদন কৰক" - "টাস্কবাৰটো সদায় দেখুৱাওক" - "আপোনাৰ স্ক্ৰীণৰ তলত সদায় টাস্কবাৰটো দেখুৱাবলৈ বিভাজকডাল স্পৰ্শ কৰি ধৰি ৰাখক" + "টাস্কবাৰডাল সদায় দেখুৱাওক" + "আপোনাৰ স্ক্ৰীনৰ তলত সদায় টাস্কবাৰডাল দেখুৱাবলৈ বিভাজকডাল স্পৰ্শ কৰি ধৰি ৰাখক" "বন্ধ কৰক" "হ’ল" "গৃহপৃষ্ঠা" diff --git a/quickstep/res/values-bg/strings.xml b/quickstep/res/values-bg/strings.xml index d1f59e80ab..59de8defb7 100644 --- a/quickstep/res/values-bg/strings.xml +++ b/quickstep/res/values-bg/strings.xml @@ -113,7 +113,7 @@ "Получавайте предложения за приложения според навиците си" "Натиснете продължително разделителя, за да фиксирате лентата на задачите" "Правете повече неща с лентата на задачите" - "Постоянно показване на лентата на задачите" + "Лентата на задачите да се показва винаги" "За да фиксирате лентата на задачите най-долу на екрана, докоснете и задръжте разделителя" "Затваряне" "Готово" diff --git a/quickstep/res/values-bs/strings.xml b/quickstep/res/values-bs/strings.xml index eb777b4287..549091f885 100644 --- a/quickstep/res/values-bs/strings.xml +++ b/quickstep/res/values-bs/strings.xml @@ -113,7 +113,7 @@ "Dobijajte prijedloge aplikacija zasnovane na vašoj rutini" "Pritisnite i zadržite razdjelnik da zakačite traku zadataka" "Uradite više pomoću trake zadataka" - "Stalan prikaz trake zadataka" + "Stalni prikaz trake zadataka" "Da se traka zadataka uvijek prikazuje na dnu ekrana, dodirnite i zadržite razdjelnik" "Zatvori" "Gotovo" diff --git a/quickstep/res/values-cs/strings.xml b/quickstep/res/values-cs/strings.xml index 151a09a04e..96c0b4b027 100644 --- a/quickstep/res/values-cs/strings.xml +++ b/quickstep/res/values-cs/strings.xml @@ -114,7 +114,7 @@ "Dlouhým stisknutím oddělovače připnete panel aplikací" "Více možností s panelem aplikací" "Stálé zobrazení panelu aplikací" - "Pokud chcete ve spodní části obrazovky stále zobrazovat panel aplikací, podržte oddělovač" + "Pokud chcete, aby se panel aplikací vždy zobrazoval ve spodní části obrazovky, podržte oddělovač." "Zavřít" "Hotovo" "Domů" diff --git a/quickstep/res/values-de/strings.xml b/quickstep/res/values-de/strings.xml index 926fef2ee2..f09e78cb54 100644 --- a/quickstep/res/values-de/strings.xml +++ b/quickstep/res/values-de/strings.xml @@ -133,7 +133,7 @@ "Taskleisten-Teiler" "Nach oben / Nach links verschieben" "Nach unten / Nach rechts verschieben" - "{count,plural, =1{# weitere App anzeigen.}other{# weitere Apps anzeigen.}}" + "{count,plural, =1{# weitere App anzeigen}other{# weitere Apps anzeigen}}" "%1$s und %2$s" "Hinzufügen einer App zum Desktop" "Abbrechen" diff --git a/quickstep/res/values-en-rAU/strings.xml b/quickstep/res/values-en-rAU/strings.xml index 10aeee5e9a..5aa85ca48d 100644 --- a/quickstep/res/values-en-rAU/strings.xml +++ b/quickstep/res/values-en-rAU/strings.xml @@ -114,7 +114,7 @@ "Long press on the divider to pin the Taskbar" "Do more with the Taskbar" "Always show the Taskbar" - "To always show the Taskbar on the bottom of your screen, touch & hold the divider" + "To always show the Taskbar on the bottom of your screen, touch and hold the divider" "Close" "Done" "Home" diff --git a/quickstep/res/values-en-rGB/strings.xml b/quickstep/res/values-en-rGB/strings.xml index 10aeee5e9a..5aa85ca48d 100644 --- a/quickstep/res/values-en-rGB/strings.xml +++ b/quickstep/res/values-en-rGB/strings.xml @@ -114,7 +114,7 @@ "Long press on the divider to pin the Taskbar" "Do more with the Taskbar" "Always show the Taskbar" - "To always show the Taskbar on the bottom of your screen, touch & hold the divider" + "To always show the Taskbar on the bottom of your screen, touch and hold the divider" "Close" "Done" "Home" diff --git a/quickstep/res/values-en-rIN/strings.xml b/quickstep/res/values-en-rIN/strings.xml index 10aeee5e9a..5aa85ca48d 100644 --- a/quickstep/res/values-en-rIN/strings.xml +++ b/quickstep/res/values-en-rIN/strings.xml @@ -114,7 +114,7 @@ "Long press on the divider to pin the Taskbar" "Do more with the Taskbar" "Always show the Taskbar" - "To always show the Taskbar on the bottom of your screen, touch & hold the divider" + "To always show the Taskbar on the bottom of your screen, touch and hold the divider" "Close" "Done" "Home" diff --git a/quickstep/res/values-es-rUS/strings.xml b/quickstep/res/values-es-rUS/strings.xml index 6fd4cc3e33..213aff50bb 100644 --- a/quickstep/res/values-es-rUS/strings.xml +++ b/quickstep/res/values-es-rUS/strings.xml @@ -114,7 +114,7 @@ "Mantén presionado el divisor para fijar la Barra de tareas" "Aprovecha mejor la Barra de tareas" "Mostrar siempre la Barra de tareas" - "Mantén presionado el divisor para mostrar la Barra de tareas" + "Mantén presionado el divisor para mostrar siempre la Barra de tareas en la parte inferior de la pantalla" "Cerrar" "Listo" "Botón de inicio" diff --git a/quickstep/res/values-es/strings.xml b/quickstep/res/values-es/strings.xml index 994ad6c16c..64d01a4db2 100644 --- a/quickstep/res/values-es/strings.xml +++ b/quickstep/res/values-es/strings.xml @@ -114,7 +114,7 @@ "Mantén pulsado el divisor para fijar la barra de tareas" "Sácale más partido a la barra de tareas" "Mostrar siempre la barra de tareas" - "Para mostrar siempre la barra de tareas, mantén pulsada la línea divisoria" + "Para mostrar siempre la barra de tareas en la parte inferior, mantén pulsada la línea divisoria" "Cerrar" "Hecho" "Inicio" diff --git a/quickstep/res/values-fr-rCA/strings.xml b/quickstep/res/values-fr-rCA/strings.xml index 95caefdbc9..68ca935516 100644 --- a/quickstep/res/values-fr-rCA/strings.xml +++ b/quickstep/res/values-fr-rCA/strings.xml @@ -114,7 +114,7 @@ "Maintenez le doigt sur le séparateur pour épingler la barre des tâches" "Faites-en plus avec la barre des tâches" "Toujours afficher la Barre des tâches" - "Touj. afficher Barre des tâches en bas de l\'écran : maint. le doigt sur le séparat." + "Pour toujours afficher la Barre des tâches en bas de l\'écran, maintenez le doigt sur le séparateur" "Fermer" "OK" "Accueil" diff --git a/quickstep/res/values-hi/strings.xml b/quickstep/res/values-hi/strings.xml index 2a97eb1a02..1216746a4f 100644 --- a/quickstep/res/values-hi/strings.xml +++ b/quickstep/res/values-hi/strings.xml @@ -114,7 +114,7 @@ "टास्कबार को पिन करने के लिए डिवाइडर को दबाकर रखें" "टास्कबार की मदद से कई और काम करें" "टास्कबार को हमेशा दिखाएं" - "स्क्रीन के नीचे टास्कबार दिखाने के लिए, डिवाइडर दबाकर रखें" + "टास्कबार को हमेशा अपनी स्क्रीन के नीचे दिखाने के लिए, डिवाइडर दबाकर रखें" "बंद करें" "हो गया" "होम" diff --git a/quickstep/res/values-hr/strings.xml b/quickstep/res/values-hr/strings.xml index ee52d99730..26ae082ae9 100644 --- a/quickstep/res/values-hr/strings.xml +++ b/quickstep/res/values-hr/strings.xml @@ -133,7 +133,7 @@ "Razdjelnik trake sa zadacima" "Premjesti gore/lijevo" "Premjesti dolje/desno" - "{count,plural, =1{Prikaži više aplikacija (još #).}one{Prikaži više aplikacija (još #).}few{Prikaži više aplikacija (još #).}other{Prikaži više aplikacija (još #).}}" + "{count,plural, =1{Prikaži još # aplikaciju}one{Prikaži još # aplikaciju}few{Prikaži još # aplikacije}other{Prikaži još # aplikacija}}" "%1$s i %2$s" "Dodavanje aplikacije na radnu površinu" "Odustani" diff --git a/quickstep/res/values-hy/strings.xml b/quickstep/res/values-hy/strings.xml index c770564f14..af613a6e9b 100644 --- a/quickstep/res/values-hy/strings.xml +++ b/quickstep/res/values-hy/strings.xml @@ -114,7 +114,7 @@ "Հավելվածների վահանակն ամրացնելու համար երկար սեղմեք բաժանարարի վրա" "Օգտվեք հավելվածների վահանակի բոլոր հնարավորություններից" "Ամրացրեք հավելվածների վահանակը" - "Էկրանի ներքևում հավելվածների վահանակն ամրացնելու համար երկար հպեք բաժանիչին" + "Հավելվածների վահանակն էկրանի ներքևում ամրացնելու համար հպեք և պահեք բաժանիչը" "Փակել" "Պատրաստ է" "Սկիզբ" diff --git a/quickstep/res/values-in/strings.xml b/quickstep/res/values-in/strings.xml index 12ebae0f34..5ced56f194 100644 --- a/quickstep/res/values-in/strings.xml +++ b/quickstep/res/values-in/strings.xml @@ -133,7 +133,7 @@ "Pemisah Taskbar" "Pindahkan ke atas/kiri" "Pindahkan ke bawah/kanan" - "{count,plural, =1{Tampilkan # aplikasi lain.}other{Tampilkan # aplikasi lain.}}" + "{count,plural, =1{Tampilkan # aplikasi lainnya.}other{Tampilkan # aplikasi lainnya.}}" "%1$s dan %2$s" "Menambahkan aplikasi ke Desktop" "Batalkan" diff --git a/quickstep/res/values-is/strings.xml b/quickstep/res/values-is/strings.xml index ae809a538b..09249bc1dd 100644 --- a/quickstep/res/values-is/strings.xml +++ b/quickstep/res/values-is/strings.xml @@ -113,7 +113,7 @@ "Fáðu forritatillögur sem byggjast á rútínunni þinni" "Haltu skiptingu forritastikunnar inni til að festa hana" "Nýttu forritastikuna betur" - "Haltu forritastikunni sýnilegri" + "Halda forritastikunni sýnilegri" "Haltu skjáskiptingunni neðst á skjánum inni til að halda forritastikunni sýnilegri" "Loka" "Lokið" diff --git a/quickstep/res/values-it/strings.xml b/quickstep/res/values-it/strings.xml index b6cc105330..961a2ff7d6 100644 --- a/quickstep/res/values-it/strings.xml +++ b/quickstep/res/values-it/strings.xml @@ -128,7 +128,7 @@ "Barra delle app visualizzata" "Barra delle app nascosta" "Barra di navigazione" - "Mostra sempre barra delle app" + "Mostra sempre barra app" "Cambia modalità di navigazione" "Divisore barra delle app" "Sposta in alto/a sinistra" diff --git a/quickstep/res/values-kn/strings.xml b/quickstep/res/values-kn/strings.xml index 2f72dd0132..023f7b5156 100644 --- a/quickstep/res/values-kn/strings.xml +++ b/quickstep/res/values-kn/strings.xml @@ -114,7 +114,7 @@ "ಟಾಸ್ಕ್ ಬಾರ್ ಅನ್ನು ಪಿನ್ ಮಾಡಲು ಡಿವೈಡರ್ ಮೇಲೆ ದೀರ್ಘಕಾಲ ಒತ್ತಿರಿ" "ಟಾಸ್ಕ್‌ಬಾರ್ ಮೂಲಕ ಹೆಚ್ಚಿನದನ್ನು ಮಾಡಿ" "ಯಾವಾಗಲೂ ಟಾಸ್ಕ್‌ಬಾರ್ ಅನ್ನು ತೋರಿಸಿ" - "ಯಾವಾಗಲೂ ನಿಮ್ಮ ಸ್ಕ್ರೀನ್‌ನ ಕೆಳಭಾಗದಲ್ಲಿ ಟಾಸ್ಕ್ ಬಾರ್ ಅನ್ನು ತೋರಿಸಲು, ಡಿವೈಡರ್ ಅನ್ನು ಸ್ಪರ್ಶಿಸಿ, ಹೋಲ್ಡ್ ಮಾಡಿ" + "ಯಾವಾಗಲೂ ನಿಮ್ಮ ಸ್ಕ್ರೀನ್‌ನ ಕೆಳಭಾಗದಲ್ಲಿ ಟಾಸ್ಕ್ ಬಾರ್ ಅನ್ನು ತೋರಿಸಲು, ಡಿವೈಡರ್ ಅನ್ನು ಸ್ಪರ್ಶಿಸಿ ಹಿಡಿದಿಟ್ಟುಕೊಳ್ಳಿ" "ಮುಚ್ಚಿರಿ" "ಆಯಿತು" "ಮುಖಪುಟ" diff --git a/quickstep/res/values-ko/strings.xml b/quickstep/res/values-ko/strings.xml index 39f16e8858..b83bfa2e0b 100644 --- a/quickstep/res/values-ko/strings.xml +++ b/quickstep/res/values-ko/strings.xml @@ -114,7 +114,7 @@ "구분선을 길게 눌러 태스크 바를 고정합니다." "태스크 바 최대한 활용하기" "태스크 바 항상 표시" - "화면 하단에 태스크 바를 항상 표시하려면 구분선을 길게 터치" + "화면 하단에 태스크 바를 항상 표시하려면 구분선을 길게 터치하세요." "닫기" "완료" "홈" diff --git a/quickstep/res/values-ky/strings.xml b/quickstep/res/values-ky/strings.xml index d90174cf62..c758411e09 100644 --- a/quickstep/res/values-ky/strings.xml +++ b/quickstep/res/values-ky/strings.xml @@ -114,7 +114,7 @@ "Тапшырмалар панелин кадап коюу үчүн бөлгүчтү коё бербей басып туруңуз" "Тапшырмалар тактасы менен көбүрөөк нерселерди аткарыңыз" "Тапшырмалар панелин ар дайым көрсөтүү" - "Экрандын ылдый жагында Тапшырмалар панелин ар дайым көрсөтүү үчүн бөлгүчтү коё бербей басып туруңуз" + "Тапшырмалар панелин экрандын ылдый жагында ар дайым көрсөтүү үчүн бөлгүчтү коё бербей басыңыз" "Жабуу" "Бүттү" "Башкы бет" diff --git a/quickstep/res/values-ne/strings.xml b/quickstep/res/values-ne/strings.xml index f7569a13e2..8e2e44f588 100644 --- a/quickstep/res/values-ne/strings.xml +++ b/quickstep/res/values-ne/strings.xml @@ -45,7 +45,7 @@ "सिफारिस गरिएका एपहरू देखाउने सुविधा असक्षम पारिएको छ" "पूर्वानुमान गरिएको एप: %1$s" "आफ्नो डिभाइस रोटेट गर्नुहोस्" - "इसारामार्फत गरिने नेभिगेसनको ट्युटोरियल पूरा गर्न कृपया आफ्नो डिभाइस रोटेट गर्नुहोस्" + "जेस्चर नेभिगेसनको ट्युटोरियल पूरा गर्न कृपया आफ्नो डिभाइस रोटेट गर्नुहोस्" "स्क्रिनको सबैभन्दा दायाँ किनारा वा सबैभन्दा बायाँ किनाराबाट स्वाइप गर्नुहोस्" "स्क्रिनको दायाँ वा बायाँ किनाराबाट मध्य भागसम्म स्वाइप गर्नुहोस् अनि औँला उठाउनुहोस्" "तपाईंले स्क्रिनको दायाँ किनाराबाट स्वाइप गरेर अघिल्लो स्क्रिनमा फर्कने तरिका सिक्नुभयो। अब एउटा एपबाट अर्को एपमा जाने तरिका सिक्नुहोस्।" @@ -72,7 +72,7 @@ "स्क्रिनको फेदबाट माथितिर स्वाइप गर्नुहोस्" "स्क्रिनबाट औँला उठाउनुअघि एपको विन्डोमा केही बेर छोइराख्नुहोस्" "सीधै माथितिर स्वाइप गर्नुहोस् अनि रोकिनुहोस्" - "तपाईंले इसाराहरू प्रयोग गर्ने तरिका सिक्नुभयो। इसारा अफ गर्न सेटिङमा जानुहोस्।" + "तपाईंले जेस्चरहरू प्रयोग गर्ने तरिका सिक्नुभयो। इसारा अफ गर्न सेटिङमा जानुहोस्।" "तपाईंले \"एउटा एपबाट अर्को एपमा जानुहोस्\" नामक इसारा प्रयोग गर्ने तरिका सिक्नुभयो" "एउटा एपबाट अर्को एपमा जान स्वाइप गर्नुहोस्" "एउटा एपबाट अर्कोमा जान स्क्रिनको फेदबाट माथितिर स्वाइप गर्नुहोस्, छोइराख्नुहोस् अनि औँला उठाउनुहोस्।" diff --git a/quickstep/res/values-pa/strings.xml b/quickstep/res/values-pa/strings.xml index 5b52cb775a..2888969b03 100644 --- a/quickstep/res/values-pa/strings.xml +++ b/quickstep/res/values-pa/strings.xml @@ -114,7 +114,7 @@ "ਟਾਸਕਬਾਰ \'ਤੇ ਪਿੰਨ ਕਰਨ ਲਈ ਵਿਭਾਜਕ \'ਤੇ ਦਬਾਈ ਰੱਖੋ" "ਟਾਸਕਬਾਰ ਦਾ ਹੋਰ ਲਾਹਾ ਲਓ" "ਹਮੇਸ਼ਾਂ ਟਾਸਕਬਾਰ ਦਿਖਾਉਣਾ" - "ਆਪਣੀ ਸਕ੍ਰੀਨ ਦੇ ਹੇਠਾਂ ਟਾਸਕਬਾਰ ਨੂੰ ਹਮੇਸ਼ਾਂ ਦਿਖਾਉਣ ਲਈ, ਵੰਡੋ ਨੂੰ ਸਪਰਸ਼ ਕਰ ਕੇ ਰੱਖੋ" + "ਆਪਣੀ ਸਕ੍ਰੀਨ ਦੇ ਹੇਠਾਂ ਹਮੇਸ਼ਾਂ ਟਾਸਕਬਾਰ ਦਿਖਾਉਣ ਲਈ, ਵਿਭਾਜਕ ਨੂੰ ਸਪਰਸ਼ ਕਰ ਕੇ ਰੱਖੋ" "ਬੰਦ ਕਰੋ" "ਸਮਝ ਲਿਆ" "ਘਰ" diff --git a/quickstep/res/values-pt/strings.xml b/quickstep/res/values-pt/strings.xml index c129187506..2fdf05dd2d 100644 --- a/quickstep/res/values-pt/strings.xml +++ b/quickstep/res/values-pt/strings.xml @@ -113,7 +113,7 @@ "Receba sugestões de apps com base na sua rotina" "Mantenha o separador pressionado para fixar a Barra de tarefas" "Aproveite ainda mais a Barra de tarefas" - "Sempre mostrar a Barra de tarefas" + "Sempre mostrar a Barra de tarefas" "Toque e pressione o divisor para sempre mostrar a Barra de tarefas na parte de baixo da tela" "Fechar" "Concluído" diff --git a/quickstep/res/values-te/strings.xml b/quickstep/res/values-te/strings.xml index efa6a54b0f..1c422037fc 100644 --- a/quickstep/res/values-te/strings.xml +++ b/quickstep/res/values-te/strings.xml @@ -113,8 +113,8 @@ "మీ రొటీన్ ఆధారంగా యాప్ సూచనలను పొందండి" "టాస్క్‌బార్‌ను పిన్ చేయడానికి డివైడర్‌ను ఎక్కువసేపు నొక్కండి" "టాస్క్‌బార్‌తో మరిన్ని చేయండి" - "ఎల్లప్పుడూ టాస్క్‌బార్‌ని చూపించండి" - "ఎల్లప్పుడూ మీ స్క్రీన్ దిగువున టాస్క్‌బార్‌ను చూపడానికి, డివైడర్‌ను తాకి, నొక్కి ఉంచండి" + "టాస్క్‌బార్‌ను నిరంతరం చూపండి" + "మీ స్క్రీన్ దిగువున టాస్క్‌బార్‌ను నిరంతరం చూపడానికి, డివైడర్‌ను తాకి, నొక్కి ఉంచండి" "మూసివేయండి" "పూర్తయింది" "మొదటి ట్యాబ్" diff --git a/quickstep/res/values-tr/strings.xml b/quickstep/res/values-tr/strings.xml index 5a45e2988d..cedfa2fd93 100644 --- a/quickstep/res/values-tr/strings.xml +++ b/quickstep/res/values-tr/strings.xml @@ -113,8 +113,8 @@ "Rutininize göre uygulama önerileri alın" "Görev çubuğunu sabitlemek için ayırıcıya uzun basın" "Görev çubuğuyla daha fazla şey yapın" - "Görev çubuğunu her zaman göster" - "Görev çubuğunu, ekranınızın alt tarafında her zaman göstermek için ayırıcıya dokunup basılı tutun" + "Görev çubuğunu sabitleyin" + "Ayırıcıya dokunup basılı tuttuğunuzda görev çubuğu ekranın alt kısmına sabitlenir" "Kapat" "Bitti" "Ana ekran" diff --git a/quickstep/res/values-uk/strings.xml b/quickstep/res/values-uk/strings.xml index c20c213e00..71257c8fbc 100644 --- a/quickstep/res/values-uk/strings.xml +++ b/quickstep/res/values-uk/strings.xml @@ -114,7 +114,7 @@ "Утримуйте розділювач, щоб закріпити панель завдань" "Більше можливостей завдяки панелі завдань" "Завжди показувати панель завдань" - "Щоб завжди показувати панель завдань унизу екрана, натисніть і втримуйте розділювач" + "Щоб завжди показувати панель завдань унизу екрана, натисніть і втримуйте роздільник" "Закрити" "Готово" "Головний екран" diff --git a/quickstep/res/values-vi/strings.xml b/quickstep/res/values-vi/strings.xml index ef6f172ebd..626c569ba5 100644 --- a/quickstep/res/values-vi/strings.xml +++ b/quickstep/res/values-vi/strings.xml @@ -114,7 +114,7 @@ "Nhấn và giữ trên đường phân chia để ghim Thanh tác vụ" "Làm nhiều việc hơn qua Thanh tác vụ" "Luôn hiện Taskbar" - "Để luôn hiện Taskbar ở cuối màn hình, hãy nhấn và giữ trên đường phân chia" + "Để luôn hiện Taskbar ở cuối màn hình, hãy nhấn và giữ đường phân chia" "Đóng" "Xong" "Màn hình chính" diff --git a/quickstep/res/values-zh-rHK/strings.xml b/quickstep/res/values-zh-rHK/strings.xml index b0f44b2e0d..d01211dbb0 100644 --- a/quickstep/res/values-zh-rHK/strings.xml +++ b/quickstep/res/values-zh-rHK/strings.xml @@ -113,7 +113,7 @@ "獲取符合日常習慣的應用程式建議" "長按分隔線即可固定工作列" "工作列助你事半功倍" - "永遠顯示工作列" + "一律顯示工作列" "如要持續在畫面底部顯示工作列,請按住分隔線" "關閉" "完成" diff --git a/quickstep/res/values-zh-rTW/strings.xml b/quickstep/res/values-zh-rTW/strings.xml index 2190c54dcf..142f8832cb 100644 --- a/quickstep/res/values-zh-rTW/strings.xml +++ b/quickstep/res/values-zh-rTW/strings.xml @@ -133,7 +133,7 @@ "工作列分隔線" "移到上方/左側" "移到底部/右側" - "{count,plural, =1{顯示另外 # 個應用程式。}other{顯示另外 # 個應用程式。}}" + "{count,plural, =1{再多顯示 # 個應用程式。}other{再多顯示 # 個應用程式。}}" "「%1$s」和「%2$s」" "新增應用程式至桌面" "取消" diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml index e733104db2..1e1b3f3a3a 100644 --- a/res/values-af/strings.xml +++ b/res/values-af/strings.xml @@ -31,10 +31,8 @@ "Programinligting vir %1$s" "Stoor apppaar" "%1$s | %2$s" - - - - + "Hierdie apppaar word nie op hierdie toestel gesteun nie" + "Vou die toestel oop om hierdie apppaar te gebruik" "Raak en hou om \'n legstuk te skuif." "Dubbeltik en hou om \'n legstuk te skuif of gebruik gepasmaakte handelinge." "%1$d × %2$d" @@ -127,8 +125,8 @@ "Verander instellings" "Wys kennisgewingkolle" "Ontwikkelaaropsies" - "Voeg programikone by tuisskerm" - "Vir nuwe programme" + "Voeg appikone by tuisskerm" + "Vir nuwe apps" "Onbekend" "Verwyder" "Soek" @@ -137,8 +135,7 @@ "%1$s installeer tans; %2$s voltooi" "%1$s laai tans af, %2$s voltooid" "%1$s wag tans om te installeer" - - + "%1$s is geargiveer. Tik om af te laai." "Programopdatering word vereis" "Die program vir hierdie ikoon is nie opgedateer nie. Jy kan dit handmatig opdateer om hierdie kortpad weer te aktiveer, of die ikoon verwyder." "Dateer op" diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml index 1c9a729d13..e404506a43 100644 --- a/res/values-am/strings.xml +++ b/res/values-am/strings.xml @@ -31,10 +31,8 @@ "የመተግበሪያ መረጃ ለ%1$s" "የመተግበሪያ ጥምረትን ያስቀምጡ" "%1$s | %2$s" - - - - + "ይህ የመተግበሪያ ጥምረት በዚህ መሣሪያ ላይ አይደገፍም" + "ይህን የመተግበሪያ ጥምረት ለመጠቀም መሣሪያን ይዘርጉ" "ምግብርን ለማንቀሳቀስ ይንኩ እና ይያዙ።" "ምግብርን ለማንቀሳቀስ ወይም ብጁ እርምጃዎችን ለመጠቀም ሁለቴ መታ ያድርጉ እና ይያዙ።" "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s በመጫን ላይ፣ %2$s ተጠናቅቋል" "%1$s በመውረድ ላይ፣ %2$s ተጠናቋል" "%1$s ለመጫን በመጠበቅ ላይ" - - + "%1$s በማህደር ተቀምጧል። ለማውረድ መታ ያድርጉ።" "መተግበሪያ ማዘመን አስፈላጊ ነው" "የዚህ አዶ መተግበሪያ አልተዘመነም። ይህን አቋራጭ ዳግም ለማንቃት በራስዎ ማዘመን ወይም አዶውን ማስወገድ ይችላሉ።" "አዘምን" diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml index 4624784ad3..e1b98fb5c3 100644 --- a/res/values-ar/strings.xml +++ b/res/values-ar/strings.xml @@ -31,10 +31,8 @@ "‏معلومات تطبيق %1$s" "حفظ إعدادات ميزة \"استخدام تطبيقين في الوقت نفسه\"" "%1$s | ‏%2$s" - - - - + "لا يمكن استخدام هذين التطبيقَين في الوقت نفسه على هذا الجهاز" + "افتح الجهاز لاستخدام هذين التطبيقَين في الوقت نفسه" "انقر مع الاستمرار لنقل أداة." "انقر مرتين مع تثبيت إصبعك لنقل أداة أو استخدام الإجراءات المخصّصة." "%1$d × %2$d" @@ -137,8 +135,7 @@ "جارٍ تثبيت %1$s، مستوى التقدم: %2$s" "جارٍ تنزيل %1$s، اكتمل %2$s" "%1$s في انتظار التثبيت" - - + "تمت أرشفة تطبيق %1$s. انقر للتنزيل." "مطلوب تحديث التطبيق" "لم يتمّ تحديث التطبيق الخاص بهذا الرمز. يمكنك تحديث التطبيق يدويًا لإعادة تفعيل هذا الاختصار أو إزالة الرمز." "تحديث" diff --git a/res/values-as/strings.xml b/res/values-as/strings.xml index 3deac7eb40..940e2dbcda 100644 --- a/res/values-as/strings.xml +++ b/res/values-as/strings.xml @@ -31,10 +31,8 @@ "%1$sৰ বাবে এপৰ তথ্য" "এপৰ পেয়াৰ ছেভ কৰক" "%1$s | %2$s" - - - - + "এই ডিভাইচটোত এই এপ্‌ পেয়াৰ কৰাৰ সুবিধাটো সমৰ্থিত নহয়" + "এই এপ্‌ পেয়াৰ কৰাৰ সুবিধাটো ব্যৱহাৰ কৰিবলৈ ডিভাইচটো আনফ’ল্ড কৰক" "ৱিজেট স্থানান্তৰ কৰিবলৈ টিপি ধৰি ৰাখক।" "কোনো ৱিজেট স্থানান্তৰ কৰিবলৈ দুবাৰ টিপি ধৰি ৰাখক অথবা কাষ্টম কাৰ্য ব্যৱহাৰ কৰক।" "%1$d × %2$d" @@ -120,7 +118,7 @@ "গৃহ স্ক্ৰীন ঘূৰোৱাৰ অনুমতি দিয়ক" "ফ\'নটো যেতিয়া ঘূৰোৱা হয়" "জাননী বিন্দু" - "অন আছে" + "অন কৰা আছে" "অফ আছে" "জাননীৰ এক্সেছৰ প্ৰয়োজন" "জাননী সম্পৰ্কীয় বিন্দুবোৰ দেখুৱাবলৈ %1$sৰ বাবে এপৰ জাননীসমূহ অন কৰক" @@ -137,8 +135,7 @@ "%1$s ইনষ্টল কৰি থকা হৈছে, %2$s সম্পূৰ্ণ হৈছে" "%1$s ডাউনল’ড কৰি থকা হৈছে, %2$s সম্পূৰ্ণ হ’ল" "%1$s ইনষ্টল হোৱালৈ অপেক্ষা কৰি থকা হৈছে" - - + "%1$s আৰ্কাইভ কৰা হৈছে। ডাউনল’ড কৰিবলৈ টিপক।" "এপ্‌টো আপডে’ট কৰা প্ৰয়োজন" "এই চিহ্নটোৰ এপ্‌টো আপডে’ট কৰা হোৱা নাই। আপুনি এই শ্বৰ্টকাটটো পুনৰ সক্ষম কৰিবলৈ মেনুৱেলী আপডে’ট কৰিব পাৰে অথবা চিহ্নটো আঁতৰাব পাৰে।" "আপডে’ট কৰক" diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml index 966fe9bebb..d11c4a7225 100644 --- a/res/values-az/strings.xml +++ b/res/values-az/strings.xml @@ -31,10 +31,8 @@ "%1$s ilə bağlı tətbiq məlumatı" "Tətbiq cütünü saxlayın" "%1$s | %2$s" - - - - + "Bu tətbiq cütü bu cihazda dəstəklənmir" + "Bu tətbiq cütündən istifadə üçün cihazı açın" "Vidceti daşımaq üçün toxunub saxlayın." "Vidceti daşımaq üçün iki dəfə toxunub saxlayın və ya fərdi əməliyyatlardan istifadə edin." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s quraşdırır, %2$s tamamlanıb" "%1$s endirilir, %2$s tamamlandı" "%1$s yüklənmək üçün gözləyir" - - + "%1$s arxivləndi. Endirmək üçün toxunun." "Tətbiqin güncəllənməsi tələb edilir" "Bu ikona üçün tətbiq güncəllənməyib. Bu qısayolu yenidən aktivləşdirmək üçün manual olaraq güncəlləyə və ya ikonanı silə bilərsiniz." "Güncəlləyin" diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml index 2e08d5cf07..b99ec65e39 100644 --- a/res/values-b+sr+Latn/strings.xml +++ b/res/values-b+sr+Latn/strings.xml @@ -31,10 +31,8 @@ "Informacije o aplikaciji za: %1$s" "Sačuvaj par aplikacija" "%1$s | %2$s" - - - - + "Ovaj par aplikacija nije podržan na ovom uređaju" + "Otvorite uređaj da biste koristili ovaj par aplikacija" "Dodirnite i zadržite radi pomeranja vidžeta." "Dvaput dodirnite i zadržite da biste pomerali vidžet ili koristite prilagođene radnje." "%1$d×%2$d" @@ -137,8 +135,7 @@ "%1$s se instalira, %2$s gotovo" "%1$s se preuzima, završeno je %2$s" "%1$s čeka na instaliranje" - - + "Aplikacija %1$s je arhivirana. Dodirnite da biste je preuzeli." "Treba da ažurirate aplikaciju" "Aplikacija za ovu ikonu nije ažurirana. Možete da je ručno ažurirate da biste ponovo omogućili ovu prečicu ili uklonite ikonu." "Ažuriraj" diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml index 6c4c6dd714..c9784256fb 100644 --- a/res/values-be/strings.xml +++ b/res/values-be/strings.xml @@ -31,10 +31,8 @@ "Інфармацыя пра праграму для: %1$s" "Захаваць спалучэнне праграм" "%1$s | %2$s" - - - - + "Дадзенае спалучэнне праграм не падтрымліваецца на гэтай прыладзе" + "Каб выкарыстоўваць гэта спалучэнне праграм, раскладзіце прыладу" "Націсніце і ўтрымлівайце віджэт для перамяшчэння." "Дакраніцеся двойчы і ўтрымлівайце, каб перамясціць віджэт або выкарыстоўваць спецыяльныя дзеянні." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Усталёўваецца праграма \"%1$s\", завершана %2$s" "Ідзе спампоўка %1$s, %2$s завершана" "%1$s чакае ўсталёўкі" - - + "Праграма \"%1$s\" знаходзіцца ў архіве. Націсніце, каб спампаваць." "Неабходна абнавіць праграму" "Гэта версія праграмы састарэла. Абнавіце праграму ўручную, каб зноў карыстацца гэтым ярлыком, або выдаліце значок." "Абнавіць" diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml index b3882976f8..769c538924 100644 --- a/res/values-bg/strings.xml +++ b/res/values-bg/strings.xml @@ -31,10 +31,8 @@ "Информация за приложението за %1$s" "Запазване на двойката приложения" "%1$s | %2$s" - - - - + "Тази двойка приложения не се поддържа на устройството" + "Отворете устройството, за да използвате тази двойка приложения" "Докоснете и задръжте за преместване на приспособление" "Докоснете двукратно и задръжте за преместване на приспособление или използвайте персонал. действия." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s се инсталира, %2$s завършено" "%1$s се изтегля. Завършено: %2$s" "%1$s изчаква инсталиране" - - + "Приложението %1$s е архивирано. Докоснете за изтегляне." "Изисква се актуализация на приложението" "Приложението за тази икона не е актуализирано. Можете да го актуализирате ръчно, за да активирате отново този пряк път, или да премахнете иконата." "Актуализиране" diff --git a/res/values-bn/strings.xml b/res/values-bn/strings.xml index e71b5784f0..cc6a8aac90 100644 --- a/res/values-bn/strings.xml +++ b/res/values-bn/strings.xml @@ -31,10 +31,8 @@ "%1$s-এর জন্য অ্যাপ সম্পর্কিত তথ্য" "অ্যাপ পেয়ার সেভ করুন" "%1$s | %2$s" - - - - + "এই ডিভাইসে এই অ্যাপ পেয়ারটি কাজ করে না" + "এই অ্যাপ পেয়ার ব্যবহার করতে ডিভাইস আনফোল্ড করুন" "কোনও উইজেট সরাতে সেটি টাচ করে ধরে রাখুন।" "একটি উইজেট সরাতে বা কাস্টম অ্যাকশন ব্যবহার করতে ডবল ট্যাপ করে ধরে রাখুন।" "%1$d × %2$d" @@ -120,7 +118,7 @@ "হোম স্ক্রিন রোটেট করার অনুমতি দিন" "যখন ফোনটি ঘোরানো হয়" "বিজ্ঞপ্তি ডট" - "চালু" + "চালু করা আছে" "বন্ধ" "বিজ্ঞপ্তিতে অ্যাক্সেস প্রয়োজন" "বিজ্ঞপ্তির ডটগুলি দেখানোর জন্য, %1$s এর অ্যাপ বিজ্ঞপ্তি চালু করুন" @@ -137,8 +135,7 @@ "%1$s ইনস্টল করা হচ্ছে, %2$s সম্পূর্ণ হয়েছে" "%1$s ডাউনলোড হচ্ছে %2$s সম্পন্ন হয়েছে" "%1$s ইনস্টলের অপেক্ষায় রয়েছে" - - + "%1$s আর্কাইভ করা হয়েছে। ডাউনলোড করতে ট্যাপ করুন।" "অ্যাপটি আপডেট করা প্রয়োজন" "এই আইকনের জন্য অ্যাপটি আপডেট করা নেই। এই শর্টকার্ট আবার চালু করতে, আপনি ম্যানুয়ালি আপডেট করতে বা সরিয়ে দিতে পারবেন।" "আপডেট করুন" diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml index fd143bfee9..0c4356174d 100644 --- a/res/values-bs/strings.xml +++ b/res/values-bs/strings.xml @@ -31,10 +31,8 @@ "Informacije o aplikaciji %1$s" "Sačuvaj par aplikacija" "%1$s | %2$s" - - - - + "Par aplikacija nije podržan na uređaju" + "Otklopite uređaj da koristite ovaj par aplikacija" "Dodirnite i zadržite da pomjerite vidžet." "Dvaput dodirnite i zadržite da pomjerite vidžet ili da koristite prilagođene radnje." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Instaliranje aplikacije %1$s, završeno je %2$s" "%1$s se preuzima, završeno %2$s" "%1$s čeka da se instalira" - - + "Arhivirana je aplikacija %1$s. Dodirnite je da je preuzmete." "Potrebno je ažurirati aplikaciju" "Aplikacija za ovu ikonu nije ažurirana. Možete je ažurirati ručno da ponovo omogućite ovu prečicu ili možete ukloniti ikonu." "Ažuriraj" diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml index f970e2c3a8..37d8626f9a 100644 --- a/res/values-ca/strings.xml +++ b/res/values-ca/strings.xml @@ -31,10 +31,8 @@ "Informació de l\'aplicació %1$s" "Desa la parella d\'aplicacions" "%1$s | %2$s" - - - - + "Aquesta parella d\'aplicacions no s\'admet en aquest dispositiu" + "Desplega el dispositiu per utilitzar aquesta parella d\'aplicacions" "Fes doble toc i mantén premut per moure un widget." "Fes doble toc i mantén premut per moure un widget o per utilitzar accions personalitzades." "%1$d × %2$d" @@ -137,8 +135,7 @@ "S\'està instal·lant %1$s; s\'ha completat un %2$s" "S\'està baixant %1$s, %2$s completat" "S\'està esperant per instal·lar %1$s" - - + "L\'aplicació %1$s està arxivada. Toca per baixar." "Cal actualitzar l\'aplicació" "L\'aplicació d\'aquesta icona no està actualitzada. Pots actualitzar-la manualment per tornar a activar aquesta drecera o pots suprimir la icona." "Actualitza" diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml index 329405efae..2def07ca44 100644 --- a/res/values-cs/strings.xml +++ b/res/values-cs/strings.xml @@ -31,10 +31,8 @@ "Informace o aplikaci %1$s" "Uložit pár aplikací" "%1$s | %2$s" - - - - + "Tento pár aplikací není na tomto zařízení podporován" + "Pokud chcete použít tento pár aplikací, rozložte zařízení" "Widget přesunete klepnutím a podržením." "Dvojitým klepnutím a podržením přesunete widget, případně použijte vlastní akce." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Instalace aplikace %1$s, dokončeno %2$s" "Stahování aplikace %1$s (dokončeno %2$s)" "Instalace aplikace %1$s čeká na zahájení" - - + "Aplikace %1$s je archivována. Klepnutím ji stáhnete." "Je nutná aktualizace aplikace" "Aplikace pro tuto ikonu není nainstalována. Můžete ji ručně aktualizovat, aby zkratka znovu fungovala, případně můžete ikonu odstranit." "Aktualizovat" diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml index 64618a7171..57053e6856 100644 --- a/res/values-da/strings.xml +++ b/res/values-da/strings.xml @@ -31,10 +31,8 @@ "Appinfo for %1$s" "Gem appsammenknytning" "%1$s | %2$s" - - - - + "Denne appsammenknytning understøttes ikke på enheden" + "Fold enheden ud for at bruge denne appsammenknytning" "Hold en widget nede for at flytte den." "Tryk to gange, og hold en widget nede for at flytte den eller bruge tilpassede handlinger." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s installeres. %2$s fuldført" "%1$s downloades. %2$s er gennemført" "%1$s venter på at installere" - - + "%1$s er arkiveret Tryk for at downloade." "Appen skal opdateres" "Appen, der tilhører dette ikon, er ikke opdateret. Du kan opdatere appen manuelt for at genaktivere denne genvej, eller du kan fjerne ikonet." "Opdater" diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml index 7f520f26b3..5eff0b058c 100644 --- a/res/values-de/strings.xml +++ b/res/values-de/strings.xml @@ -31,10 +31,8 @@ "App-Info für %1$s" "App-Paar speichern" "%1$s | %2$s" - - - - + "Dieses App-Paar wird auf diesem Gerät nicht unterstützt" + "Gerät aufklappen, um dieses App-Paar zu verwenden" "Zum Verschieben des Widgets berühren und halten" "Doppeltippen und halten, um ein Widget zu bewegen oder benutzerdefinierte Aktionen zu nutzen." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s wird installiert, %2$s abgeschlossen" "%1$s wird heruntergeladen, %2$s abgeschlossen" "Warten auf Installation von %1$s" - - + "%1$s ist archiviert. Zum Herunterladen tippen." "App-Update erforderlich" "Die App für dieses Symbol wurde noch nicht aktualisiert. Du kannst sie manuell aktualisieren, um die Verknüpfung wieder zu aktivieren, oder das Symbol entfernen." "Aktualisieren" diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml index d85543d719..d868040aca 100644 --- a/res/values-el/strings.xml +++ b/res/values-el/strings.xml @@ -31,10 +31,8 @@ "Πληροφορίες εφαρμογής για %1$s" "Αποθήκευση ζεύγους εφαρμογών" "%1$s | %2$s" - - - - + "Αυτό το ζεύγος εφαρμογών δεν υποστηρίζεται σε αυτή τη συσκευή" + "Ξεδιπλώστε τη συσκευή για να χρησιμοποιήσετε αυτό το ζεύγος εφαρμογών" "Πατήστε παρατετ. για μετακίνηση γραφ. στοιχείου." "Πατήστε δύο φορές παρατεταμένα για μετακίνηση γραφικού στοιχείου ή χρήση προσαρμοσμένων ενεργειών." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Έχει ολοκληρωθεί το %2$s της εγκατάστασης της εφαρμογής %1$s" "Λήψη %1$s, ολοκληρώθηκε %2$s" "%1$s σε αναμονή για εγκατάσταση" - - + "Η εφαρμογή %1$s είναι αρχειοθετημένη. Πατήστε για λήψη." "Απαιτείται ενημέρωση της εφαρμογής" "Η εφαρμογή για αυτό το εικονίδιο δεν έχει ενημερωθεί. Μπορείτε να την ενημερώσετε μη αυτόματα για να ενεργοποιήσετε ξανά τη συγκεκριμένη συντόμευση ή να καταργήσετε το εικονίδιο." "Ενημέρωση" diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml index 45af2c5dc6..cee4d2ac58 100644 --- a/res/values-en-rAU/strings.xml +++ b/res/values-en-rAU/strings.xml @@ -31,10 +31,8 @@ "App info for %1$s" "Save app pair" "%1$s | %2$s" - - - - + "This app pair isn\'t supported on this device" + "Unfold device to use this app pair" "Touch and hold to move a widget." "Double-tap & hold to move a widget or use custom actions." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s installing, %2$s complete" "%1$s downloading, %2$s complete" "%1$s waiting to install" - - + "%1$s is archived. Tap to download." "App update required" "The app for this icon isn\'t updated. You can update manually to re-enable this shortcut or remove the icon." "Update" diff --git a/res/values-en-rCA/strings.xml b/res/values-en-rCA/strings.xml index e997044693..87cd9eb110 100644 --- a/res/values-en-rCA/strings.xml +++ b/res/values-en-rCA/strings.xml @@ -31,10 +31,8 @@ "App info for %1$s" "Save app pair" "%1$s | %2$s" - - - - + "This app pair isn\'t supported on this device" + "Unfold device to use this app pair" "Touch and hold to move a widget." "Double-tap and hold to move a widget or use custom actions." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s installing, %2$s complete" "%1$s downloading, %2$s complete" "%1$s waiting to install" - - + "%1$s is archived. Tap to download." "App update required" "The app for this icon isn\'t updated. You can update manually to re-enable this shortcut, or remove the icon." "Update" diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml index 45af2c5dc6..cee4d2ac58 100644 --- a/res/values-en-rGB/strings.xml +++ b/res/values-en-rGB/strings.xml @@ -31,10 +31,8 @@ "App info for %1$s" "Save app pair" "%1$s | %2$s" - - - - + "This app pair isn\'t supported on this device" + "Unfold device to use this app pair" "Touch and hold to move a widget." "Double-tap & hold to move a widget or use custom actions." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s installing, %2$s complete" "%1$s downloading, %2$s complete" "%1$s waiting to install" - - + "%1$s is archived. Tap to download." "App update required" "The app for this icon isn\'t updated. You can update manually to re-enable this shortcut or remove the icon." "Update" diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml index 45af2c5dc6..cee4d2ac58 100644 --- a/res/values-en-rIN/strings.xml +++ b/res/values-en-rIN/strings.xml @@ -31,10 +31,8 @@ "App info for %1$s" "Save app pair" "%1$s | %2$s" - - - - + "This app pair isn\'t supported on this device" + "Unfold device to use this app pair" "Touch and hold to move a widget." "Double-tap & hold to move a widget or use custom actions." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s installing, %2$s complete" "%1$s downloading, %2$s complete" "%1$s waiting to install" - - + "%1$s is archived. Tap to download." "App update required" "The app for this icon isn\'t updated. You can update manually to re-enable this shortcut or remove the icon." "Update" diff --git a/res/values-en-rXC/strings.xml b/res/values-en-rXC/strings.xml index ae8664107b..ae84841eb1 100644 --- a/res/values-en-rXC/strings.xml +++ b/res/values-en-rXC/strings.xml @@ -31,10 +31,8 @@ "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‏‏‏‎‎‏‎‏‏‏‏‏‏‏‏‎‎‎‎‏‎‎‎‎‏‏‏‎‏‏‏‏‏‏‎‎‏‏‎‏‏‎‎‏‏‏‎‏‎‏‎‏‎‎‎‎‏‎‎‎‏‎‏‎‎‎App info for %1$s‎‏‎‎‏‎" "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‏‏‏‎‎‏‏‏‎‎‏‏‎‎‎‎‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‎‏‏‏‏‎‎‏‏‎‎‎‎‏‏‏‎‎‎‎‎‎‏‏‎‎‎‎‏‎‎‎‏‏‎Save app pair‎‏‎‎‏‎" "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‏‎‏‏‏‎‎‎‎‎‏‎‎‎‏‏‏‎‎‏‎‏‎‏‏‏‏‎‏‎‏‏‎‎‏‎‎‎‏‏‎‎‎‎‏‏‏‎‏‏‏‏‎‏‎‏‏‎‏‏‏‎‎‏‎‎‏‎‎‏‏‎%1$s‎‏‎‎‏‏‏‎ | ‎‏‎‎‏‏‎%2$s‎‏‎‎‏‏‏‎‎‏‎‎‏‎" - - - - + "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‏‎‏‎‏‏‏‏‏‏‎‏‎‏‎‎‏‎‎‏‏‏‎‎‎‏‏‎‎‏‎‏‏‎‏‏‎‏‎‏‏‏‏‎‎‏‏‎‏‎‎‎‎‏‎‎‏‏‎‎‎‎‎‎‎This app pair isn\'t supported on this device‎‏‎‎‏‎" + "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‏‎‏‏‏‏‏‏‏‎‏‎‏‏‏‏‎‎‎‎‏‎‎‏‏‏‏‏‏‏‎‏‎‎‏‎‎‎‏‏‏‎‏‎‏‏‏‎‎‎‎‎‎‎‏‎‎‎‎‏‏‎‏‎‎Unfold device to use this app pair‎‏‎‎‏‎" "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‏‎‏‏‎‎‎‏‏‏‎‎‏‎‏‎‎‎‎‏‏‏‎‏‏‎‎‎‏‏‎‎‏‏‎‎‎‏‎‎‎‎‏‎‏‎‎‏‎‎‎‏‏‎‎‎‎‎‏‎‏‎‎‏‎Touch & hold to move a widget.‎‏‎‎‏‎" "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‏‎‏‎‎‏‎‏‏‏‏‎‏‏‏‏‏‎‏‎‏‎‎‎‎‎‎‎‏‏‏‏‎‎‎‎‏‏‎‏‎‏‏‎‎‎‎‎‎‏‎‏‎‎‎‎‎‎‎‎‎‏‏‎‎Double-tap & hold to move a widget or use custom actions.‎‏‎‎‏‎" "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‏‎‏‎‎‎‎‎‏‏‏‎‎‏‏‎‏‎‎‏‏‏‏‏‏‎‎‏‏‎‎‏‏‎‏‎‎‎‎‎‎‏‎‏‎‎‎‏‎‎‎‎‎‏‎‎‎‏‎‏‏‏‏‏‎%1$d × %2$d‎‏‎‎‏‎" @@ -137,8 +135,7 @@ "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‏‏‏‎‏‎‎‎‏‎‏‏‎‎‎‎‏‎‏‎‎‎‏‎‏‎‎‎‎‏‏‏‏‏‎‎‎‎‎‏‎‏‏‎‎‎‎‏‏‏‏‎‎‏‎‏‏‎‏‎‏‎‏‎‏‎‎‏‎‎‏‏‎%1$s‎‏‎‎‏‏‏‎ installing, ‎‏‎‎‏‏‎%2$s‎‏‎‎‏‏‏‎ complete‎‏‎‎‏‎" "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‏‏‏‏‏‎‎‏‏‏‎‏‏‎‎‎‏‏‏‏‎‏‎‏‏‎‎‏‎‏‏‎‎‏‎‎‏‏‏‏‎‎‎‏‎‏‏‏‏‎‎‏‏‏‎‏‏‎‏‎‏‎‏‎‎‎‎‏‎‎‏‏‎%1$s‎‏‎‎‏‏‏‎ downloading, ‎‏‎‎‏‏‎%2$s‎‏‎‎‏‏‏‎ complete‎‏‎‎‏‎" "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‏‏‏‏‎‎‎‎‏‏‏‏‎‎‏‎‎‏‎‎‏‏‏‏‏‏‎‏‏‎‏‎‎‏‎‎‎‎‎‏‎‎‎‏‎‎‏‏‏‏‏‎‏‎‏‏‎‎‎‏‏‏‎‎‏‎‎‏‎‎‏‏‎%1$s‎‏‎‎‏‏‏‎ waiting to install‎‏‎‎‏‎" - - + "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‏‏‏‏‏‏‏‏‎‏‎‎‏‏‏‏‏‏‏‏‏‏‏‏‎‎‎‏‏‏‏‏‏‏‎‎‎‎‏‏‎‏‏‏‏‎‏‏‏‎‏‎‏‎‏‎‏‎‎‏‎‏‎‎‎‎‎‏‎‎‏‏‎%1$s‎‏‎‎‏‏‏‎ is archived. Tap to download.‎‏‎‎‏‎" "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‎‎‏‏‏‎‎‏‎‏‎‏‏‏‎‏‎‏‏‏‎‏‏‏‎‏‎‏‏‎‎‏‏‏‏‎‏‎‏‎‏‎‏‏‎‏‏‎‎‏‎‏‏‏‏‏‏‎‏‎‎App update required‎‏‎‎‏‎" "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‏‎‏‏‏‎‎‏‏‏‏‏‎‏‏‎‏‏‏‎‏‎‏‏‎‏‏‎‏‏‎‎‎‎‎‏‏‎‏‏‎‏‏‏‎‎‏‎‏‏‏‎‏‏‏‎‏‏‎‎‎‎‏‎‎The app for this icon isn\'t updated. You can update manually to re-enable this shortcut, or remove the icon.‎‏‎‎‏‎" "‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‎‏‏‎‏‏‏‏‏‏‎‏‏‏‏‏‎‎‎‏‏‏‎‎‏‏‏‏‎‏‎‎‎‏‏‏‏‏‏‎‏‏‏‎‏‏‎‏‎‎‎‏‏‏‏‎‎‏‏‏‎‏‏‎‎‏‎‏‏‎‎‏‎‎Update‎‏‎‎‏‎" diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml index 9f613a2bce..a7259a2634 100644 --- a/res/values-es-rUS/strings.xml +++ b/res/values-es-rUS/strings.xml @@ -31,10 +31,8 @@ "Información de la app de %1$s" "Guardar vinculación de apps" "%1$s | %2$s" - - - - + "No se admite esta vinculación de apps en este dispositivo" + "Abre el dispositivo para usar esta vinculación de apps" "Mantén presionado para mover un widget." "Presiona dos veces y mantén presionado para mover un widget o usar acciones personalizadas." "%1$d × %2$d" @@ -120,14 +118,14 @@ "Permitir la rotación de la pantalla principal" "Al girar el teléfono" "Puntos de notificación" - "Activado" - "Desactivado" + "Activados" + "Desactivados" "Se necesita acceso a las notificaciones" "Para mostrar los puntos de notificación, activa las notificaciones de la app para %1$s" "Cambiar la configuración" "Mostrar puntos de notificación" "Opciones para desarrolladores" - "Agrega íconos de las apps a la pantalla principal" + "Agregar íconos de las apps a la pantalla principal" "Para nuevas apps" "Desconocido" "Eliminar" @@ -137,8 +135,7 @@ "Se está instalando %1$s; %2$s completado" "Se completó el %2$s de la descarga de %1$s" "Instalación de %1$s en espera" - - + "%1$s está archivada. Presiona para descargar." "Es necesario actualizar la app" "No se actualizó la app de este ícono. Puedes actualizarla manualmente para rehabilitar el acceso directo, o bien quitar el ícono." "Actualizar" diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml index 8fd21173a3..176bfe368b 100644 --- a/res/values-es/strings.xml +++ b/res/values-es/strings.xml @@ -31,10 +31,8 @@ "Información de la aplicación %1$s" "Guardar aplicaciones emparejadas" "%1$s | %2$s" - - - - + "El dispositivo no admite esta aplicación emparejada" + "Despliega el dispositivo para usar esta aplicación emparejada" "Mantén pulsado un widget para moverlo" "Toca dos veces y mantén pulsado un widget para moverlo o usar acciones personalizadas." "%1$d × %2$d" @@ -128,7 +126,7 @@ "Mostrar puntos de notificación" "Opciones para desarrolladores" "Añadir iconos de aplicaciones a la pantalla de inicio" - "Añade el icono de una aplicación nueva instalada a la pantalla de inicio" + "Para aplicaciones nuevas" "Desconocido" "Quitar" "Buscar" @@ -137,8 +135,7 @@ "Instalando %1$s, %2$s completado" "Descargando %1$s (%2$s completado)" "Esperando para instalar %1$s" - - + "%1$s está archivada. Toca para descargarla." "Debes actualizar la aplicación" "La aplicación de este icono no está actualizada. Puedes actualizarla manualmente para volver a habilitar este acceso directo o puedes eliminar el icono." "Actualizar" diff --git a/res/values-et/strings.xml b/res/values-et/strings.xml index 09744477b0..830abf00a8 100644 --- a/res/values-et/strings.xml +++ b/res/values-et/strings.xml @@ -31,10 +31,8 @@ "Rakenduse teave: %1$s" "Salvesta rakendusepaar" "%1$s | %2$s" - - - - + "See rakendusepaar ei ole selles seadmes toetatud" + "Selle rakendusepaari kasutamiseks voltige seade lahti" "Vidina teisaldamiseks puudutage ja hoidke all." "Vidina teisaldamiseks või kohandatud toimingute kasutamiseks topeltpuudutage ja hoidke all." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Üksust %1$s installitakse, %2$s on valmis" "Rakenduse %1$s allalaadimine, %2$s on valmis" "%1$s on installimise ootel" - - + "%1$s on arhiivitud. Puudutage allalaadimiseks." "Rakendust tuleb värskendada" "Selle ikooni rakendust pole värskendatud. Otsetee uuesti lubamiseks võite rakendust käsitsi värskendada või ikooni eemaldada." "Värskenda" diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml index 8c6bc2204f..f269c25b8f 100644 --- a/res/values-eu/strings.xml +++ b/res/values-eu/strings.xml @@ -31,10 +31,8 @@ "%1$s aplikazioari buruzko informazioa" "Gorde aplikazio parea" "%1$s | %2$s" - - - - + "Aplikazio pare hori ez da onartzen gailu honetan" + "Zabaldu gailua aplikazio pare hau erabiltzeko" "Eduki sakatuta widget bat mugitzeko." "Sakatu birritan eta eduki sakatuta widget bat mugitzeko edo ekintza pertsonalizatuak erabiltzeko." "%1$d × %2$d" @@ -115,7 +113,7 @@ "Aplikazio parea: %1$s eta %2$s" "Horma-papera eta estiloa" "Editatu orri nagusia" - "Hasierako pantailaren ezarpenak" + "Orri nagusiaren ezarpenak" "Administratzaileak desgaitu du" "Eman orri nagusia biratzeko baimena" "Telefonoa biratzean" @@ -137,8 +135,7 @@ "%1$s instalatzen, %2$s osatuta" "%1$s deskargatzen, %2$s osatuta" "%1$s instalatzeko zain" - - + "%1$s artxibatuta dago. Deskargatzeko, sakatu hau." "Aplikazioa eguneratu egin behar da" "Ikonoaren aplikazioa ez dago eguneratuta. Lasterbidea berriro gaitzeko, eskuz egunera dezakezu aplikazioa. Bestela, kendu ikonoa." "Eguneratu" diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml index d05feae79f..feaf7242a9 100644 --- a/res/values-fa/strings.xml +++ b/res/values-fa/strings.xml @@ -31,10 +31,8 @@ "‏اطلاعات برنامه %1$s" "ذخیره جفت برنامه" "%1$s | %2$s" - - - - + "از این جفت برنامه در این دستگاه پشتیبانی نمی‌شود" + "برای استفاده از این جفت برنامه، دستگاه را باز کنید" "برای جابه‌جا کردن ابزارک، لمس کنید و نگه دارید." "برای جابه‌جا کردن ابزارک یا استفاده از کنش‌های سفارشی، دوضربه بزنید و نگه دارید." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s درحال نصب است، %2$s تکمیل شده است" "درحال بارگیری %1$s، %2$s کامل شد" "%1$s درانتظار نصب" - - + "%1$s بایگانی شده است. برای بارگیری ضربه بزنید." "برنامه باید به‌روز شود" "برنامه برای این نماد به‌روز نشده است. می‌توانید آن را به‌صورت دستی به‌روز کنید تا میان‌بر دوباره فعال شود، یا نماد را بردارید." "به‌روزرسانی" diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml index 8b3c160dca..3198a03cbc 100644 --- a/res/values-fi/strings.xml +++ b/res/values-fi/strings.xml @@ -31,10 +31,8 @@ "Sovellustiedot: %1$s" "Tallenna sovelluspari" "%1$s | %2$s" - - - - + "Sovellusparia ei tueta tällä laitteella" + "Avaa taitettu laite, niin voit käyttää sovellusparia" "Kosketa pitkään, niin voit siirtää widgetiä." "Kaksoisnapauta ja paina pitkään, niin voit siirtää widgetiä tai käyttää muokattuja toimintoja." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s asennetaan, %2$s valmis" "%1$s latautuu, valmiina %2$s" "%1$s odottaa asennusta" - - + "%1$s on arkistoitu. Lataa napauttamalla." "Sovelluspäivitys vaaditaan" "Kuvakkeen sovellusta ei ole päivitetty. Voit ottaa pikakuvakkeen uudelleen käyttöön päivittämällä sovelluksen tai poistaa kuvakkeen." "Päivitä" diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml index c3b8d99e5f..6ddeeef145 100644 --- a/res/values-fr-rCA/strings.xml +++ b/res/values-fr-rCA/strings.xml @@ -27,14 +27,12 @@ "Widgets désactivés en mode sans échec" "Le raccourci n\'est pas disponible" "Accueil" - "Écran partagé" + "Écran divisé" "Renseignements sur l\'appli pour %1$s" "Enregistrer la paire d\'applications" "%1$s | %2$s" - - - - + "Cette paire d\'applications n\'est pas prise en charge sur cet appareil" + "Déplier l\'appareil pour utiliser cette paire d\'applications" "Maintenez le doigt sur un widget pour le déplacer." "Touchez 2x un widget et maintenez le doigt dessus pour le déplacer ou utiliser des actions personnalisées." "%1$d × %2$d" @@ -119,7 +117,7 @@ "Cette fonction est désactivée par votre administrateur" "Autoriser la rotation de l\'écran d\'accueil" "Lorsque vous faites pivoter le téléphone" - "Points de notification" + "Pastilles de notification" "Activé" "Désactivé" "L\'accès aux notifications est requis" @@ -137,8 +135,7 @@ "Installation de l\'application %1$s en cours, %2$s terminée" "Téléchargement de %1$s : %2$s" "%1$s en attente d\'installation" - - + "L\'application %1$s est archivée. Toucher pour télécharger." "Mise à jour de l\'application requise" "L\'application pour cette icône n\'est pas à jour. Vous pouvez soit la mettre à jour manuellement pour réactiver ce raccourci, soit retirer l\'icône." "Mettre à jour" diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml index 60612d6632..fdeae1cb0f 100644 --- a/res/values-fr/strings.xml +++ b/res/values-fr/strings.xml @@ -31,10 +31,8 @@ "Infos sur l\'appli pour %1$s" "Enregistrer la paire d\'applis" "%1$s | %2$s" - - - - + "Cette paire d\'applications n\'est pas prise en charge sur cet appareil" + "Dépliez l\'appareil pour utiliser cette paire d\'applications" "Appuyez de manière prolongée sur un widget pour le déplacer." "Appuyez deux fois et maintenez la pression pour déplacer widget ou utiliser actions personnalisées." "%1$d x %2$d" @@ -137,8 +135,7 @@ "Installation de %1$s… (%2$s terminés)" "%1$s en cours de téléchargement, %2$s effectué(s)" "%1$s en attente d\'installation" - - + "L\'application %1$s est archivée. Appuyez pour télécharger." "Mise à jour de l\'appli requise" "L\'appli correspondant à cette icône n\'est pas mise à jour. Vous pouvez la mettre à jour manuellement pour réactiver le raccourci ou supprimer l\'icône." "Modifier" diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml index d10718189a..9388948f47 100644 --- a/res/values-gl/strings.xml +++ b/res/values-gl/strings.xml @@ -31,10 +31,8 @@ "Información da aplicación para %1$s" "Gardar emparellamento de aplicacións" "%1$s | %2$s" - - - - + "O dispositivo non admite este emparellamento de aplicacións" + "Desprega o dispositivo para usar este emparellamento de aplicacións" "Mantén premido un widget para movelo." "Toca dúas veces un widget e manteno premido para movelo ou utiliza accións personalizadas." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Instalando %1$s, %2$s completado" "Descargando %1$s (%2$s completado)" "Esperando para instalar %1$s" - - + "%1$s está no arquivo. Toca para descargar esta aplicación." "É necesario actualizar a aplicación" "A aplicación á que corresponde esta icona non está actualizada. Podes actualizala manualmente para activar de novo este atallo, ou ben quitar a icona." "Actualizar" diff --git a/res/values-gu/strings.xml b/res/values-gu/strings.xml index 0a79661834..ec6d99495b 100644 --- a/res/values-gu/strings.xml +++ b/res/values-gu/strings.xml @@ -31,10 +31,8 @@ "%1$s માટે ઍપ માહિતી" "ઍપની જોડી સાચવો" "%1$s | %2$s" - - - - + "આ ડિવાઇસ પર, આ ઍપની જોડીને સપોર્ટ આપવામાં આવતો નથી" + "આ ઍપની જોડીનો ઉપયોગ કરવા માટે, ડિવાઇસને અનફોલ્ડ કરો" "વિજેટ ખસેડવા ટચ કરીને થોડી વાર દબાવી રાખો." "વિજેટ ખસેડવા બે વાર ટૅપ કરીને દબાવી રાખો અથવા કસ્ટમ ક્રિયાઓનો ઉપયોગ કરો." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s ઇન્સ્ટૉલ કરી રહ્યાં છીએ, %2$s પૂર્ણ થયું" "%1$s ડાઉનલોડ કરી રહ્યાં છે, %2$s પૂર્ણ" "%1$s, ઇન્સ્ટૉલ થવાની રાહ જોઈ રહ્યું છે" - - + "%1$s આર્કાઇવ કરી છે. ડાઉનલોડ કરવા માટે ટૅપ કરો." "ઍપને અપડેટ કરવી જરૂરી છે" "આ આઇકન માટે ઍપ અપડેટ કરવામાં આવી નથી. તમે આ શૉર્ટકટ ફરી ચાલુ કરવા અથવા આઇકન કાઢી નાખવા માટે ઍપને મેન્યુઅલી અપડેટ કરી શકો છો." "અપડેટ કરો" diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml index be0d496cae..f0431490da 100644 --- a/res/values-hi/strings.xml +++ b/res/values-hi/strings.xml @@ -31,10 +31,8 @@ "%1$s के लिए ऐप्लिकेशन की जानकारी" "साथ में इस्तेमाल किए जा सकने वाले ऐप्लिकेशन की जानकारी सेव करें" "%1$s | %2$s" - - - - + "साथ में इस्तेमाल किए जा सकने वाले ये ऐप्लिकेशन, इस डिवाइस पर काम नहीं कर सकते" + "साथ में इस्तेमाल किए जा सकने वाले ये ऐप्लिकेशन इस्तेमाल करने के लिए डिवाइस को अनफ़ोल्ड करें" "किसी विजेट को एक से दूसरी जगह ले जाने के लिए, उसे दबाकर रखें." "किसी विजेट को एक से दूसरी जगह ले जाने के लिए, उस पर दो बार टैप करके दबाकर रखें या पसंद के मुताबिक कार्रवाइयां इस्तेमाल करें." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s इंस्टॉल किया जा रहा है, %2$s पूरा हो गया" "%1$s डाउनलोड हो रहा है, %2$s पूरी हुई" "%1$s के इंस्टॉल होने की प्रतीक्षा की जा रही है" - - + "%1$s को संग्रहित किया गया. डाउनलोड करने के लिए टैप करें." "ऐप्लिकेशन को अपडेट करना ज़रूरी है" "इस आइकॉन का ऐप्लिकेशन अपडेट नहीं है. इस शॉर्टकट को फिर से चालू करने या आइकॉन को हटाने के लिए, ऐप्लिकेशन को मैन्युअल रूप से अपडेट किया जा सकता है." "अपडेट करें" diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml index 2ae18df31a..f40252b14b 100644 --- a/res/values-hr/strings.xml +++ b/res/values-hr/strings.xml @@ -31,10 +31,8 @@ "Informacije o aplikaciji %1$s" "Spremi par aplikacija" "%1$s | %2$s" - - - - + "Taj par aplikacija nije podržan na ovom uređaju" + "Otvorite uređaj da biste upotrebljavali ovaj par aplikacija" "Dodirnite i zadržite da biste premjestili widget." "Dvaput dodirnite i zadržite pritisak da biste premjestili widget ili upotrijebite prilagođene radnje" "%1$d × %2$d" @@ -137,8 +135,7 @@ "Instaliranje aplikacije %1$s, %2$s dovršeno" "Preuzimanje aplikacije %1$s, dovršeno %2$s" "Čekanje na instaliranje aplikacije %1$s" - - + "Aplikacija %1$s je arhivirana. Dodirnite za preuzimanje." "Aplikacija se treba ažurirati" "Aplikacija ove ikone nije ažurirana. Možete ručno ažurirati da biste ponovo omogućili ovaj prečac ili uklonite ikonu." "Ažuriraj" diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml index 6e2cfe6289..6fc5f286da 100644 --- a/res/values-hu/strings.xml +++ b/res/values-hu/strings.xml @@ -31,10 +31,8 @@ "Alkalmazásinformáció a következőhöz: %1$s" "Alkalmazáspár mentése" "%1$s | %2$s" - - - - + "Ezt az alkalmazáspárt nem támogatja az eszköz" + "Hajtsa ki az eszközt az alkalmazáspár használatához" "Tartsa lenyomva a modult az áthelyezéshez." "Modul áthelyezéséhez koppintson duplán, tartsa nyomva az ujját, vagy használjon egyéni műveleteket." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Folyamatban van a(z) %1$s telepítése, %2$s kész" "A(z) %1$s letöltése, %2$s kész" "A(z) %1$s telepítésre vár" - - + "%1$s archiválva. Koppintson a letöltéshez." "Alkalmazásfrissítés szükséges" "Az ikonhoz tartozó alkalmazás nincs frissítve. A parancsikon újbóli engedélyezéséhez frissítse az alkalmazást, vagy távolítsa ez az ikont." "Frissítés" diff --git a/res/values-hy/strings.xml b/res/values-hy/strings.xml index c3461ae591..83a4559c54 100644 --- a/res/values-hy/strings.xml +++ b/res/values-hy/strings.xml @@ -31,10 +31,8 @@ "Տեղեկություններ %1$s հավելվածի մասին" "Պահել հավելվածների զույգը" "%1$s | %2$s" - - - - + "Հավելվածների զույգը չի աջակցվում այս սարքում" + "Բացեք սարքը՝ այս հավելվածների զույգն օգտագործելու համար" "Հպեք և պահեք՝ վիջեթ տեղափոխելու համար։" "Կրկնակի հպեք և պահեք՝ վիջեթ տեղափոխելու համար, կամ օգտվեք հատուկ գործողություններից։" "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s հավելվածը տեղադրվում է, կատարված է %2$s-ը" "%1$s–ի ներբեռնում (%2$s)" "%1$s-ի տեղադրման սպասում" - - + "%1$s հավելվածն արխիվացված է։ Հպեք՝ ներբեռնելու համար:" "Պահանջվում է թարմացնել հավելվածը" "Հավելվածը հնացել է։ Թարմացրեք այն ձեռքով, որպեսզի շարունակեք օգտագործել դյուրանցումը, կամ հեռացրեք հավելվածի պատկերակը։" "Թարմացնել" diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml index d2cbca6ef2..edf62a4f62 100644 --- a/res/values-in/strings.xml +++ b/res/values-in/strings.xml @@ -31,10 +31,8 @@ "Info aplikasi untuk %1$s" "Simpan pasangan aplikasi" "%1$s | %2$s" - - - - + "Pasangan aplikasi ini tidak didukung di perangkat ini" + "Buka perangkat untuk menggunakan pasangan aplikasi ini" "Sentuh lama untuk memindahkan widget." "Ketuk dua kali & tahan untuk memindahkan widget atau gunakan tindakan khusus." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s sedang diinstal, %2$s selesai" "%1$s sedang didownload, %2$s selesai" "%1$s menunggu dipasang" - - + "%1$s diarsipkan. Ketuk untuk mendownload." "Aplikasi perlu diupdate" "Aplikasi untuk ikon ini belum diupdate. Anda dapat mengupdate secara manual untuk mengaktifkan kembali pintasan ini, atau hapus ikon." "Update" diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml index 98272cd0f4..b75f61fa13 100644 --- a/res/values-is/strings.xml +++ b/res/values-is/strings.xml @@ -31,10 +31,8 @@ "Upplýsingar um forrit fyrir %1$s" "Vista forritapar" "%1$s | %2$s" - - - - + "Þetta forritapar er ekki stutt í þessu tæki" + "Opnaðu tæki til að nota þetta forritapar" "Haltu fingri á græju til að færa hana." "Ýttu tvisvar og haltu fingri á græju til að færa hana eða notaðu sérsniðnar aðgerðir." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Setur upp %1$s, %2$s lokið" "%1$s í niðurhali, %2$s lokið" "%1$s bíður uppsetningar" - - + "%1$s er í geymslu. Ýttu til að sækja." "Uppfæra þarf forritið" "Forritið fyrir þetta tákn er ekki uppfært. Þú getur uppfært það handvirkt til að kveikja aftur á þessari flýtileið eða fjarlægt táknið." "Uppfæra" diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml index 93a20ea092..0c76ba9680 100644 --- a/res/values-it/strings.xml +++ b/res/values-it/strings.xml @@ -31,10 +31,8 @@ "Informazioni sull\'app %1$s" "Salva coppia di app" "%1$s | %2$s" - - - - + "Questa coppia di app non è supportata su questo dispositivo" + "Apri il dispositivo per usare questa coppia di app" "Tocca e tieni premuto per spostare un widget." "Tocca due volte e tieni premuto per spostare un widget o per usare le azioni personalizzate." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Installazione di %1$s, completamento: %2$s" "Download di %1$s in corso, %2$s completato" "%1$s in attesa di installazione" - - + "App %1$s archiviata. Tocca per scaricare." "È necessario aggiornare l\'app" "L\'app relativa a questa icona non è aggiornata. Puoi eseguire manualmente l\'aggiornamento per riattivare questa scorciatoia oppure rimuovere l\'icona." "Aggiorna" diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml index 6e2b42a0ab..3132e2dc93 100644 --- a/res/values-iw/strings.xml +++ b/res/values-iw/strings.xml @@ -31,10 +31,8 @@ "‏פרטים על האפליקציה %1$s" "שמירה של צמד אפליקציות" "%1$s | %2$s" - - - - + "צמד האפליקציות הזה לא נתמך במכשיר הזה" + "צריך לפתוח את המכשיר כדי להשתמש בצמד האפליקציות הזה" "להעברת ווידג\'ט למקום אחר לוחצים עליו לחיצה ארוכה." "כדי להעביר ווידג\'ט למקום אחר או להשתמש בפעולות מותאמות אישית, יש ללחוץ פעמיים ולא להרפות." "%1$d × %2$d" @@ -117,7 +115,7 @@ "עריכה של מסך הבית" "הגדרות של מסך הבית" "הושבת על ידי מנהל המערכת שלך" - "אישור לסיבוב מסך הבית" + "סיבוב מסך הבית" "כאשר מסובבים את הטלפון" "סימני ההתראות" "מופעל" @@ -137,8 +135,7 @@ "%1$s בתהליך התקנה, %2$s הושלמו" "הורדת %1$s מתבצעת, %2$s הושלמו" "מחכה להתקנה של %1$s" - - + "אפליקציית %1$s הועברה לארכיון. יש להקיש כדי להוריד." "נדרש עדכון לאפליקציה" "האפליקציה של הסמל הזה לא מעודכנת. אפשר לעדכן אותה ידנית כדי להפעיל מחדש את קיצור הדרך הזה, או להסיר את הסמל." "עדכון" diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml index 25c3392270..7f6846cd91 100644 --- a/res/values-ja/strings.xml +++ b/res/values-ja/strings.xml @@ -31,10 +31,8 @@ "%1$s のアプリ情報" "アプリのペア設定を保存" "%1$s | %2$s" - - - - + "このデバイスは、このアプリのペア設定に対応していません" + "このアプリのペア設定を使用するには、デバイスを開いてください" "長押ししてウィジェットを移動させます。" "ウィジェットをダブルタップして長押ししながら移動するか、カスタム操作を使用してください。" "%1$dx%2$d" @@ -137,8 +135,7 @@ "%1$s をインストールしています: %2$s 完了" "%1$sをダウンロード中、%2$s完了" "%1$sのインストール待ち" - - + "%1$s はアーカイブ済みです。ダウンロードするにはタップします。" "アプリの更新が必要" "このアイコンのアプリは更新されていません。手動で更新して、このショートカットを再度有効にできます。また、アイコンを削除することもできます。" "更新" diff --git a/res/values-ka/strings.xml b/res/values-ka/strings.xml index 884e28221c..ae3b1e6414 100644 --- a/res/values-ka/strings.xml +++ b/res/values-ka/strings.xml @@ -31,10 +31,8 @@ "%1$s-ის აპის ინფო" "აპთა წყვილის შენახვა" "%1$s | %2$s" - - - - + "ამ მოწყობილობაზე აღნიშნული აპთა წყვილი არ არის მხარდაჭერილი" + "გაშალეთ მოწყობილობა ამ აპთა წყვილის გამოსაყენებლად" "შეხებით აირჩიეთ და გეჭიროთ ვიჯეტის გადასაადგილებლად." "ორმაგი შეხებით აირჩიეთ და გეჭიროთ ვიჯეტის გადასაადგილებლად ან მორგებული მოქმედებების გამოსაყენებლად." "%1$d × %2$d" @@ -137,8 +135,7 @@ "ინსტალირდება %1$s, %2$s დასრულებულია" "მიმდინარეობს %1$s-ის ჩამოტვირთვა, %2$s დასრულდა" "%1$s ელოდება ინსტალაციას" - - + "%1$s დაარქივებულია. შეეხეთ ჩამოსატვირთად." "საჭიროა აპის განახლება" "ამ ხატულის აპი განახლებული არ არის. შეგიძლიათ, ხელით განაახლოთ ამ მალსახმობის ხელახლა გასააქტიურებლად, ან ამოშალოთ ხატულა." "განახლება" diff --git a/res/values-kk/strings.xml b/res/values-kk/strings.xml index eb25105469..70384830c4 100644 --- a/res/values-kk/strings.xml +++ b/res/values-kk/strings.xml @@ -31,10 +31,8 @@ "%1$s қолданбасы туралы ақпарат" "Қолданбаларды жұптау әрекетін сақтау" "%1$s | %2$s" - - - - + "Бұл құрылғы қолданбаларды жұптау функциясын қолдамайды." + "Қолданбаларды жұптау функциясын пайдалану үшін құрылғыны ашыңыз." "Виджетті жылжыту үшін басып тұрыңыз." "Виджетті жылжыту үшін екі рет түртіңіз де, ұстап тұрыңыз немесе арнаулы әрекеттерді пайдаланыңыз." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s орнатылуда, %2$s аяқталды" "%1$s жүктелуде, %2$s аяқталды" "%1$s орнату күтілуде" - - + "%1$s мұрағатталды. Жүктеп алу үшін түртіңіз." "Қолданбаны жаңарту қажет" "Осы белгіше үшін қолданба жаңартылмаған. Оны қолмен жаңартып, осы таңбашаны қайта іске қоса аласыз немесе белгішені өшіріп тастаңыз." "Жаңарту" diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml index fd2cd4eb0e..1297deefbc 100644 --- a/res/values-km/strings.xml +++ b/res/values-km/strings.xml @@ -31,10 +31,8 @@ "ព័ត៌មានកម្មវិធី​សម្រាប់ %1$s" "រក្សាទុកគូកម្មវិធី" "%1$s | %2$s" - - - - + "មិនអាចប្រើគូកម្មវិធីនេះនៅលើឧបករណ៍នេះបានទេ" + "លាឧបករណ៍ ដើម្បីប្រើគូកម្មវិធីនេះ" "ចុចឱ្យជាប់​ដើម្បីផ្លាស់ទី​ធាតុក្រាហ្វិក​។" "ចុចពីរដង រួចសង្កត់ឱ្យជាប់ ដើម្បីផ្លាស់ទី​ធាតុក្រាហ្វិក ឬប្រើ​សកម្មភាព​តាមបំណង​។" "%1$d × %2$d" @@ -137,8 +135,7 @@ "កំពុង​ដំឡើង %1$s, បាន​បញ្ចប់ %2$s" "កំពុងដោនឡូត %1$s បានបញ្ចប់ %2$s" "%1$s កំពុងរង់ចាំការដំឡើង" - - + "%1$s ត្រូវបានទុក​ក្នុង​បណ្ណសារ។ សូមចុចដើម្បីទាញយក។" "តម្រូវឱ្យមាន​កំណែកម្មវិធីថ្មី" "កម្មវិធីសម្រាប់​រូបតំណាងនេះ​មិនត្រូវបានដំឡើងកំណែ​ទេ។ អ្នកអាច​ដំឡើងកំណែ​ដោយផ្ទាល់ ដើម្បីបើក​ផ្លូវកាត់នេះឡើងវិញ ឬលុបរូបតំណាងនេះ។" "ដំឡើងកំណែ" diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml index b24a679985..2832941591 100644 --- a/res/values-kn/strings.xml +++ b/res/values-kn/strings.xml @@ -31,10 +31,8 @@ "%1$s ಗಾಗಿ ಆ್ಯಪ್ ಮಾಹಿತಿ" "ಆ್ಯಪ್ ಜೋಡಿ ಉಳಿಸಿ" "%1$s | %2$s" - - - - + "ಈ ಆ್ಯಪ್ ಜೋಡಿಯು ಈ ಸಾಧನದಲ್ಲಿ ಬೆಂಬಲಿತವಾಗಿಲ್ಲ" + "ಈ ಆ್ಯಪ್ ಜೋಡಿಯನ್ನು ಬಳಸಲು ಸಾಧನವನ್ನು ಅನ್‌ಫೋಲ್ಡ್ ಮಾಡಿ" "ವಿಜೆಟ್ ಸರಿಸಲು ಸ್ಪರ್ಶಿಸಿ ಮತ್ತು ಹಿಡಿದುಕೊಳ್ಳಿ." "ವಿಜೆಟ್ ಸರಿಸಲು ಅಥವಾ ಕಸ್ಟಮ್ ಕ್ರಿಯೆಗಳನ್ನು ಬಳಸಲು ಡಬಲ್-ಟ್ಯಾಪ್ ಮಾಡಿ ಮತ್ತು ಹಿಡಿದುಕೊಳ್ಳಿ." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s ಇನ್‌ಸ್ಟಾಲ್ ಮಾಡಲಾಗುತ್ತಿದೆ, %2$s ಪೂರ್ಣಗೊಂಡಿದೆ" "%1$s ಡೌನ್‌ಲೋಡ್‌ ಮಾಡಲಾಗುತ್ತಿದೆ, %2$s ಪೂರ್ಣಗೊಂಡಿದೆ" "%1$s ಸ್ಥಾಪಿಸಲು ಕಾಯಲಾಗುತ್ತಿದೆ" - - + "%1$s ಅನ್ನು ಆರ್ಕೈವ್ ಮಾಡಲಾಗಿದೆ. ಡೌನ್‌ಲೋಡ್ ಮಾಡಲು ಟ್ಯಾಪ್ ಮಾಡಿ." "ಆ್ಯಪ್ ಅಪ್‌ಡೇಟ್ ಅಗತ್ಯವಿದೆ" "ಈ ಐಕಾನ್‌ಗಾಗಿ ಆ್ಯಪ್ ಅನ್ನು ಅಪ್‌ಡೇಟ್ ಮಾಡಲಾಗಿಲ್ಲ. ಈ ಶಾರ್ಟ್‌ಕಟ್ ಅನ್ನು ಮರು-ಸಕ್ರಿಯಗೊಳಿಸಲು ನೀವು ಹಸ್ತಚಾಲಿತವಾಗಿ ಅಪ್‌ಡೇಟ್ ಮಾಡಬಹುದು ಅಥವಾ ಐಕಾನ್ ಅನ್ನು ತೆಗೆದುಹಾಕಬಹುದು." "ಅಪ್‌ಡೇಟ್ ಮಾಡಿ" diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml index b64bb151a7..5c1e854ce1 100644 --- a/res/values-ko/strings.xml +++ b/res/values-ko/strings.xml @@ -31,10 +31,8 @@ "%1$s 앱 정보" "앱 페어링 저장" "%1$s | %2$s" - - - - + "이 앱 페어링은 이 기기에서 지원되지 않습니다" + "이 앱 페어링을 사용하려면 기기를 펼치세요" "길게 터치하여 위젯을 이동하세요." "두 번 탭한 다음 길게 터치하여 위젯을 이동하거나 맞춤 작업을 사용하세요." "%1$d×%2$d" @@ -137,8 +135,7 @@ "%1$s 설치 중, %2$s 완료" "%1$s 다운로드 중, %2$s 완료" "%1$s 설치 대기 중" - - + "%1$s 앱이 보관처리되었습니다. 다운로드하려면 탭하세요." "앱 업데이트 필요" "바로가기 아이콘의 앱이 업데이트되지 않았습니다. 직접 업데이트하여 앱 바로가기를 다시 사용할 수 있도록 하거나 아이콘을 삭제하세요." "업데이트" diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml index c4fd5fe08b..7c32fe64e0 100644 --- a/res/values-ky/strings.xml +++ b/res/values-ky/strings.xml @@ -31,10 +31,8 @@ "%1$s колдонмосу жөнүндө маалымат" "Эки колдонмону бир маалда пайдаланууну сактоо" "%1$s | %2$s" - - - - + "Бул эки колдонмону бул түзмөктө бир маалда пайдаланууга болбойт" + "Бул эки колдонмону бир маалда пайдалануу үчүн түзмөктү ачыңыз" "Виджетти кое бербей басып туруп жылдырыңыз." "Виджетти жылдыруу үчүн эки жолу таптап, кармап туруңуз же ыңгайлаштырылган аракеттерди колдонуңуз." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s орнотулууда, %2$s аткарылды" "%1$s жүктөлүп алынууда, %2$s аяктады" "%1$s орнотулушу күтүлүүдө" - - + "%1$s архивделди. Жүктөп алуу үчүн тийип коюңуз." "Колдонмону жаңыртыңыз" "Бул сүрөтчөнүн колдонмосу жаңыртылган эмес. Ыкчам баскычты кайра иштетүү үчүн аны кол менен жаңыртып же сүрөтчөнү өчүрүп койсоңуз болот." "Жаңыртуу" diff --git a/res/values-lo/strings.xml b/res/values-lo/strings.xml index ed4c9ed068..0ff2d4ee3f 100644 --- a/res/values-lo/strings.xml +++ b/res/values-lo/strings.xml @@ -31,10 +31,8 @@ "ຂໍ້ມູນແອັບສຳລັບ %1$s" "ບັນທຶກຈັບຄູ່ແອັບ" "%1$s | %2$s" - - - - + "ການຈັບຄູ່ແອັບນີ້ບໍ່ຮອງຮັບຢູ່ອຸປະກອນນີ້" + "ກາງອຸປະກອນອອກເພື່ອໃຊ້ການຈັບຄູ່ແອັບນີ້" "ແຕະຄ້າງໄວ້ເພື່ອຍ້າຍວິດເຈັດ." "ແຕະສອງເທື່ອຄ້າງໄວ້ເພື່ອຍ້າຍວິດເຈັດ ຫຼື ໃຊ້ຄຳສັ່ງກຳນົດເອງ." "%1$d × %2$d" @@ -137,8 +135,7 @@ "ກຳລັງຕິດຕັ້ງ %1$s, %2$s ສຳເລັດແລ້ວ" "%1$s ກຳ​ລັງ​ດາວ​ໂຫຼດ, %2$s ສຳ​ເລັດ" "%1$s ກຳ​ລັງ​ລໍ​ຖ້າ​ຕິດ​ຕັ້ງ" - - + "%1$s ຖືກເກັບໄວ້ໃນແຟ້ມ. ແຕະເພື່ອດາວໂຫລດ." "ຈຳເປັນຕ້ອງອັບເດດແອັບ" "ບໍ່ໄດ້ອັບເດດແອັບສຳລັບໄອຄອນນີ້. ທ່ານສາມາດອັບເດດເອງໄດ້ເພື່ອເປີດການນຳໃຊ້ທາງລັດນີ້ຄືນໃໝ່ ຫຼື ລຶບໄອຄອນດັ່ງກ່າວອອກ." "ອັບເດດ" diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml index c014d46960..ef81b96551 100644 --- a/res/values-lt/strings.xml +++ b/res/values-lt/strings.xml @@ -31,10 +31,8 @@ "Programos „%1$s“ informacija" "Išsaugoti programų porą" "%1$s | %2$s" - - - - + "Ši programų pora šiame įrenginyje nepalaikoma" + "Atlenkite įrenginį, kad galėtumėte naudoti šią programų porą." "Dukart pal. ir palaik., kad perkeltumėte valdiklį." "Dukart palieskite ir palaikykite, kad perkeltumėte valdiklį ar naudotumėte tinkintus veiksmus." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Įdiegiama: „%1$s“; baigta: %2$s" "Atsisiunčiama programa „%1$s“, %2$s baigta" "Laukiama, kol bus įdiegta programa „%1$s“" - - + "„%1$s“ suarchyvuota. Palieskite, kad atsisiųstumėte." "Būtina atnaujinti programą" "Šios piktogramos programa neatnaujinta. Galite patys atnaujinti, kad iš naujo įgalintumėte šį spartųjį klavišą, arba pašalinkite piktogramą." "Atnaujinti" diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml index 73c21fd5c7..d04afa1661 100644 --- a/res/values-lv/strings.xml +++ b/res/values-lv/strings.xml @@ -31,10 +31,8 @@ "%1$s: informācija par lietotni" "Saglabāt lietotņu pāri" "%1$s | %2$s" - - - - + "Šis lietotņu pāris netiek atbalstīts šajā ierīcē" + "Atveriet ierīci, lai izmantotu šo lietotņu pāri" "Lai pārvietotu logrīku, pieskarieties un turiet." "Lai pārvietotu logrīku, uz tā veiciet dubultskārienu un turiet. Varat arī veikt pielāgotas darbības." "%1$d × %2$d" @@ -120,7 +118,7 @@ "Atļaut sākuma ekrāna pagriešanu" "Pagriežot tālruni" "Paziņojumu punkti" - "Ieslēgts" + "Ieslēgti" "Izslēgts" "Nepieciešama piekļuve paziņojumiem" "Lai tiktu rādīti paziņojumu punkti, ieslēdziet paziņojumus lietotnei %1$s." @@ -137,8 +135,7 @@ "Notiek lietotnes “%1$s” instalēšana. Norise: %2$s." "Lietotnes %1$s lejupielāde (%2$s pabeigti)" "Notiek %1$s instalēšana" - - + "Lietotne %1$s ir arhivēta. Pieskarieties, lai lejupielādētu." "Lietotne ir jāatjaunina" "Šai ikonai paredzētā lietotne nav atjaunināta. Varat to atjaunināt manuāli, lai atkārtoti iespējotu šo saīsni, vai noņemt ikonu." "Atjaunināt" diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml index 3aa17c7496..184d7cce52 100644 --- a/res/values-mk/strings.xml +++ b/res/values-mk/strings.xml @@ -31,10 +31,8 @@ "Податоци за апликација за %1$s" "Зачувај го парот апликации" "%1$s | %2$s" - - - - + "Паров апликации не е поддржан на уредов" + "Отворете го уредот за да го користите паров апликации" "Допрете и задржете за да преместите виџет." "Допрете двапати и задржете за да преместите виџет или користете приспособени дејства." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s се инсталира, %2$s завршено" "Се презема %1$s, %2$s завршено" "%1$s чека да се инсталира" - - + "%1$s е архивирана. Допрете за преземање." "Потребно е ажурирање на апликацијата" "Апликацијата за оваа икона не е ажурирана. Може да ажурирате рачно за да повторно се овозможи кратенкава или отстранете ја иконата." "Ажурирај" diff --git a/res/values-ml/strings.xml b/res/values-ml/strings.xml index c0cee96786..3952b22ee4 100644 --- a/res/values-ml/strings.xml +++ b/res/values-ml/strings.xml @@ -31,10 +31,8 @@ "%1$s എന്നതിന്റെ ആപ്പ് വിവരങ്ങൾ" "ആപ്പ് ജോടി സംരക്ഷിക്കുക" "%1$s | %2$s" - - - - + "ഈ ഉപകരണത്തിൽ ഈ ആപ്പ് ജോടിക്ക് പിന്തുണയില്ല" + "ഈ ആപ്പ് ജോടി ഉപയോഗിക്കാൻ ഉപകരണം അൺഫോൾഡ് ചെയ്യുക" "വിജറ്റ് നീക്കാൻ സ്‌പർശിച്ച് പിടിക്കുക." "വിജറ്റ് നീക്കാൻ ഡബിൾ ടാപ്പ് ചെയ്യൂ, ഹോൾഡ് ചെയ്യൂ അല്ലെങ്കിൽ ഇഷ്‌ടാനുസൃത പ്രവർത്തനങ്ങൾ ഉപയോഗിക്കൂ." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s ഇൻസ്‌റ്റാൾ ചെയ്യുന്നു, %2$s പൂർത്തിയായി" "%1$s ഡൗൺലോഡ് ചെയ്യുന്നു, %2$s പൂർത്തിയായി" "ഇൻസ്റ്റാൾ ചെയ്യാൻ %1$s കാക്കുന്നു" - - + "%1$s ആർക്കൈവ് ചെയ്തു. ഡൗൺലോഡ് ചെയ്യാൻ ടാപ്പ് ചെയ്യുക." "ആപ്പ് അപ്‌ഡേറ്റ് ചെയ്യേണ്ടതുണ്ട്" "ഈ ഐക്കണിനുള്ള ആപ്പ് അപ്‌ഡേറ്റ് ചെയ്തിട്ടില്ല. ഈ കുറുക്കുവഴി വീണ്ടും പ്രവർത്തനക്ഷമമാക്കാൻ നിങ്ങൾക്ക് നേരിട്ട് അപ്‌ഡേറ്റ് ചെയ്യാം അല്ലെങ്കിൽ ഐക്കൺ നീക്കം ചെയ്യാം." "അപ്ഡേറ്റ് ചെയ്യുക" diff --git a/res/values-mn/strings.xml b/res/values-mn/strings.xml index 3a66990d53..7a73041abe 100644 --- a/res/values-mn/strings.xml +++ b/res/values-mn/strings.xml @@ -31,10 +31,8 @@ "%1$s-н аппын мэдээлэл" "Апп хослуулалтыг хадгалах" "%1$s | %2$s" - - - - + "Энэ апп хослуулалтыг уг төхөөрөмж дээр дэмждэггүй" + "Энэ апп хослуулалтыг ашиглахын тулд төхөөрөмжийг дэлгэнэ үү" "Виджетийг зөөх бол хүрээд, удаан дарна уу." "Виджетийг зөөх эсвэл захиалгат үйлдлийг ашиглахын тулд хоёр товшоод, удаан дарна уу." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s-г суулгаж байна. %2$s дууссан" "%1$s-г татаж байна, %2$s татсан" "%1$s нь суулгахыг хүлээж байна" - - + "%1$s-г архивласан. Татахын тулд товшино уу." "Аппын шинэчлэлт шаардлагатай" "Энэ дүрс тэмдгийн аппыг шинэчлээгүй. Та энэ товчлолыг дахин идэвхжүүлэх эсвэл дүрсийг хасахын тулд гараар шинэчлэх боломжтой." "Шинэчлэх" diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml index a0b0cd0e53..c54f6141bb 100644 --- a/res/values-mr/strings.xml +++ b/res/values-mr/strings.xml @@ -31,10 +31,8 @@ "%1$s साठी ॲपशी संबंधित माहिती" "ॲपची जोडी सेव्ह करा" "%1$s | %2$s" - - - - + "या ॲपची जोडीला या डिव्हाइसवर सपोर्ट नाही" + "ही ॲपची जोडी वापरण्यासाठी डिव्हाइस अनफोल्ड करा" "विजेट हलवण्यासाठी स्पर्श करा आणि धरून ठेवा." "विजेट हलवण्यासाठी किंवा कस्टम कृती वापरण्यासाठी दोनदा टॅप करा आणि धरून ठेवा." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s इंस्टॉल करत आहे, %2$s पूर्ण झाले" "%1$s डाउनलोड होत आहे , %2$s पूर्ण झाले" "%1$s इंस्टॉल करण्याची प्रतिक्षा करत आहे" - - + "%1$s संग्रहित केले आहे. डाउनलोड करण्यासाठी टॅप करा." "अ‍ॅप अपडेट करणे आवश्‍यक आहे" "या आयकनसाठी अ‍ॅप अपडेट केलेले नाही. हा शॉटकर्ट पुन्हा सुरू करण्यासाठी तुम्ही मॅन्युअली अपडेट करू शकता किंवा आयकन काढून टाका." "अपडेट करा" diff --git a/res/values-ms/strings.xml b/res/values-ms/strings.xml index 05b286cb2a..ac7f8ed080 100644 --- a/res/values-ms/strings.xml +++ b/res/values-ms/strings.xml @@ -31,10 +31,8 @@ "Maklumat apl untuk %1$s" "Simpan gandingan apl" "%1$s | %2$s" - - - - + "Gandingan apl ini tidak disokong pada peranti ini" + "Buka lipatan peranti untuk menggunakan gandingan apl ini" "Sentuh & tahan untuk menggerakkan widget." "Ketik dua kali & tahan untuk menggerakkan widget atau menggunakan tindakan tersuai." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s dipasang, %2$s selesai" "%1$s memuat turun, %2$s selesai" "%1$s menunggu untuk dipasang" - - + "%1$s diarkibkan. Ketik untuk muat turun." "Kemas kini apl diperlukan" "Apl untuk ikon ini tidak dikemas kini. Anda boleh mengemas kini secara manual untuk mendayakan semula pintasan atau mengalih keluar ikon." "Kemas kini" diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml index 38430dfcb3..c3067bb2f5 100644 --- a/res/values-my/strings.xml +++ b/res/values-my/strings.xml @@ -31,10 +31,8 @@ "%1$s အတွက် အက်ပ်အချက်အလက်" "အက်ပ်တွဲချိတ်ခြင်း သိမ်းရန်" "%1$s | %2$s" - - - - + "ဤအက်ပ်တွဲချိတ်ခြင်းကို ဤစက်တွင် ပံ့ပိုးမထားပါ" + "ဤအက်ပ်တွဲချိတ်ခြင်းကို သုံးရန် စက်ကိုဖြန့်ပါ" "ဝိဂျက်ကို ရွှေ့ရန် တို့ပြီး ဖိထားပါ။" "ဝိဂျက်ကို ရွှေ့ရန် (သို့) စိတ်ကြိုက်လုပ်ဆောင်ချက်များကို သုံးရန် နှစ်ချက်တို့ပြီး ဖိထားပါ။" "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s ကို ထည့်သွင်းနေသည်၊ %2$s ပြီးပါပြီ" "%1$s ဒေါင်းလုဒ်လုပ်နေသည်၊ %2$s ပြီးပါပြီ" "%1$s ကိုထည့်သွင်းရန်စောင့်နေသည်" - - + "%1$s ကို သိမ်းထားသည်။ ဒေါင်းလုဒ်လုပ်ရန် တို့ပါ။" "အက်ပ်ကို အပ်ဒိတ်လုပ်ရန် လိုအပ်သည်" "ဤသင်္ကေတအတွက် အက်ပ်ကို အပ်ဒိတ်လုပ်မထားပါ။ ဤဖြတ်လမ်းလင့်ခ်ကို ပြန်ဖွင့်ရန် ကိုယ်တိုင်အပ်ဒိတ်လုပ်နိုင်သည် (သို့) သင်္ကေတကို ဖယ်ရှားနိုင်သည်။" "အပ်ဒိတ်လုပ်ရန်" diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml index d6a640b99a..72ac454fa4 100644 --- a/res/values-nb/strings.xml +++ b/res/values-nb/strings.xml @@ -31,10 +31,8 @@ "Appinformasjon for %1$s" "Lagre apptilkoblingen" "%1$s | %2$s" - - - - + "Denne apptilkoblingen støttes ikke på denne enheten" + "Åpne enheten for å bruke denne apptilkoblingen" "Trykk og hold for å flytte en modul." "Dobbelttrykk og hold inne for å flytte en modul eller bruke tilpassede handlinger." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s installerer, %2$s er fullført" "Laster ned %1$s, %2$s er fullført" "Venter på å installere %1$s" - - + "%1$s er arkivert. Trykk for å laste den ned." "Appen må oppdateres" "Appen for dette ikonet er ikke oppdatert. Du kan oppdatere manuelt for å aktivere denne snarveien igjen, eller du kan fjerne ikonet." "Oppdater" diff --git a/res/values-ne/strings.xml b/res/values-ne/strings.xml index 7ecf5974d3..d9b4efd348 100644 --- a/res/values-ne/strings.xml +++ b/res/values-ne/strings.xml @@ -31,10 +31,8 @@ "%1$s का हकमा एपसम्बन्धी जानकारी" "एपको पेयर सेभ गर्नुहोस्" "%1$s | %2$s" - - - - + "यस डिभाइसमा यो एप पेयर प्रयोग गर्न मिल्दैन" + "यो एप पेयर प्रयोग गर्न डिभाइस अनफोल्ड गर्नुहोस्" "कुनै विजेट सार्न डबल ट्याप गरेर छोइराख्नुहोस्।" "कुनै विजेट सार्न वा आफ्नो रोजाइका कारबाही प्रयोग गर्न डबल ट्याप गरेर छोइराख्नुहोस्।" "%1$d × %2$d" @@ -119,13 +117,13 @@ "तपाईँको प्रशासकद्वारा असक्षम गरिएको" "होम स्क्रिन रोटेट हुन दिइयोस्" "फोन घुमाउँदा" - "सूचनाको प्रतीक जनाउने थोप्लाहरू" + "नोटिफिकेसन डट" "सक्रिय" "निष्क्रिय" "सूचनासम्बन्धी पहुँच आवश्यक हुन्छ" - "सूचनाको प्रतीक जनाउने थोप्लाहरू देखाउन %1$s को एपसम्बन्धी सूचनाहरूलाई अन गर्नुहोस्" + "नोटिफिकेसन डट देखाउन %1$s को एपसम्बन्धी सूचनाहरूलाई अन गर्नुहोस्" "सेटिङहरू बदल्नुहोस्" - "सूचनाको प्रतीक जनाउने थोप्लाहरू देखाउनुहोस्" + "नोटिफिकेसन डट देखाउनुहोस्" "विकासकर्ताका लागि उपलब्ध विकल्पहरू" "एपका आइकनहरू होम स्क्रिनमा राखियोस्" "नयाँ एपका लागि" @@ -137,8 +135,7 @@ "%1$s इन्स्टल गरिँदै छ, %2$s पूरा भयो" "%1$s डाउनलोड गर्दै, %2$s सम्पन्‍न" "%1$s स्थापना गर्न प्रतीक्षा गर्दै" - - + "%1$s अभिलेखमा राखिएको छ। डाउनलोड गर्न ट्याप गर्नुहोस्।" "एप अपडेट गरिनु पर्छ" "यो आइकनले जनाउने एप अपडेट गरिएको छैन। तपाईं यो सर्टकट फेरि अन गर्न म्यानुअल रूपमा अपडेट गर्न सक्नुहुन्छ वा आइकन नै हटाउनुहोस्।" "अपडेट गर्नुहोस्" diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml index 3f39854933..dd7ddeb5f7 100644 --- a/res/values-nl/strings.xml +++ b/res/values-nl/strings.xml @@ -31,10 +31,8 @@ "App-info voor %1$s" "App-paar opslaan" "%1$s | %2$s" - - - - + "Dit app-paar wordt niet ondersteund op dit apparaat" + "Vouw het apparaat open om dit app-paar te gebruiken" "Tik en houd vast om een widget te verplaatsen." "Dubbeltik en houd vast om een widget te verplaatsen of aangepaste acties te gebruiken." "%1$d × %2$d" @@ -127,7 +125,7 @@ "Instellingen wijzigen" "Toon meldingsstipjes" "Ontwikkelaarsopties" - "App-iconen toevoegen aan startscherm" + "App-iconen op startscherm" "Voor nieuwe apps" "Onbekend" "Verwijderen" @@ -137,8 +135,7 @@ "%1$s installeren, %2$s voltooid" "%1$s wordt gedownload, %2$s voltooid" "%1$s wacht op installatie" - - + "%1$s is gearchiveerd Tik om te downloaden." "App-update vereist" "De app voor dit icoon is niet geüpdatet. Je kunt handmatig updaten om deze snelkoppeling weer aan te zetten of het icoon verwijderen." "Updaten" @@ -186,7 +183,7 @@ "Filteren" "Mislukt: %1$s" "Privéruimte" - "Privé-apps vergrendeld en verborgen houden" + "Houd privé-apps vergrendeld en verborgen" "Privé" "Instellingen voor privéruimte" "Privéruimte vergrendelen/ontgrendelen" diff --git a/res/values-or/strings.xml b/res/values-or/strings.xml index 181e01072f..9b71abbeaa 100644 --- a/res/values-or/strings.xml +++ b/res/values-or/strings.xml @@ -31,10 +31,8 @@ "%1$s ପାଇଁ ଆପ ସୂଚନା" "ଆପ ପେୟାର ସେଭ କରନ୍ତୁ" "%1$s | %2$s" - - - - + "ଏହି ଆପ ପେୟାର ଏ ଡିଭାଇସରେ ସମର୍ଥିତ ନୁହେଁ" + "ଏହି ଆପ ପେୟାରକୁ ବ୍ୟବହାର କରିବା ପାଇଁ ଡିଭାଇସକୁ ଅନଫୋଲ୍ଡ କରନ୍ତୁ" "ଏକ ୱିଜେଟକୁ ମୁଭ୍ କରିବା ପାଇଁ ସ୍ପର୍ଶ କରି ଧରି ରଖନ୍ତୁ।" "ଏକ ୱିଜେଟକୁ ମୁଭ୍ କରିବା ପାଇଁ ଦୁଇଥର-ଟାପ୍ କରି ଧରି ରଖନ୍ତୁ କିମ୍ବା କଷ୍ଟମ୍ କାର୍ଯ୍ୟଗୁଡ଼ିକୁ ବ୍ୟବହାର କରନ୍ତୁ।" "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s ଇନଷ୍ଟଲ୍ କରାଯାଉଛି, %2$s ସମ୍ପୂର୍ଣ୍ଣ ହୋଇଛି" "%1$s ଡାଉନଲୋଡ୍‌ ହେଉଛି, %2$s ସମ୍ପୂର୍ଣ୍ଣ" "%1$s ଇନଷ୍ଟଲ୍‌ ହେବାକୁ ଅପେକ୍ଷା କରିଛି" - - + "%1$sକୁ ଆର୍କାଇଭ କରାଯାଇଛି। ଡାଉନଲୋଡ୍ କରିବା ପାଇଁ ଟାପ୍‌ କରନ୍ତୁ।" "ଆପକୁ ଅପଡେଟ କରିବା ଆବଶ୍ୟକ" "ଏହି ଆଇକନ ପାଇଁ ଆପକୁ ଅପଡେଟ କରାଯାଇନାହିଁ। ଏହି ସର୍ଟକଟକୁ ପୁଣି-ସକ୍ଷମ କରିବା ପାଇଁ ଆପଣ ମାନୁଆଲୀ ଅପଡେଟ କରିପାରିବେ କିମ୍ବା ଆଇକନଟିକୁ କାଢ଼ି ଦେଇପାରିବେ।" "ଅପଡେଟ କରନ୍ତୁ" diff --git a/res/values-pa/strings.xml b/res/values-pa/strings.xml index 3d04230230..7ed539f64b 100644 --- a/res/values-pa/strings.xml +++ b/res/values-pa/strings.xml @@ -31,10 +31,8 @@ "%1$s ਲਈ ਐਪ ਜਾਣਕਾਰੀ" "ਐਪ ਜੋੜਾਬੱਧ ਰੱਖਿਅਤ ਕਰੋ" "%1$s | %2$s" - - - - + "ਇਸ ਐਪ ਜੋੜਾਬੱਧ ਦਾ ਇਸ ਡੀਵਾਈਸ \'ਤੇ ਸਮਰਥਨ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ" + "ਇਸ ਐਪ ਜੋੜਾਬੱਧ ਨੂੰ ਵਰਤਣ ਲਈ ਡੀਵਾਈਸ ਨੂੰ ਅਣਫੋਲਡ ਕਰੋ" "ਕਿਸੇ ਵਿਜੇਟ ਨੂੰ ਲਿਜਾਉਣ ਲਈ ਸਪਰਸ਼ ਕਰਕੇ ਰੱਖੋ।" "ਵਿਜੇਟ ਲਿਜਾਉਣ ਲਈ ਜਾਂ ਵਿਉਂਂਤੀਆਂ ਕਾਰਵਾਈਆਂ ਵਰਤਣ ਲਈ ਦੋ ਵਾਰ ਟੈਪ ਕਰਕੇ ਦਬਾ ਕੇ ਰੱਖੋ।" "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s ਨੂੰ ਸਥਾਪਤ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ, %2$s ਪੂਰਾ ਹੋਇਆ" "%1$s ਡਾਉਨਲੋਡ ਹੋਰ ਰਿਹਾ ਹੈ, %2$s ਸੰਪੂਰਣ" "%1$s ਸਥਾਪਤ ਕਰਨ ਦੀ ਉਡੀਕ ਕਰ ਰਿਹਾ ਹੈ" - - + "%1$s ਪੁਰਾਲੇਖਬੱਧ ਹੈ। ਡਾਊਨਲੋਡ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ।" "ਐਪ ਨੂੰ ਅੱਪਡੇਟ ਕਰਨ ਦੀ ਲੋੜ ਹੈ" "ਇਸ ਪ੍ਰਤੀਕ ਲਈ ਐਪ ਨੂੰ ਅੱਪਡੇਟ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ। ਇਸ ਸ਼ਾਰਟਕੱਟ ਨੂੰ ਮੁੜ-ਚਾਲੂ ਕਰਨ ਜਾਂ ਪ੍ਰਤੀਕ ਨੂੰ ਹਟਾਉਣ ਲਈ ਤੁਸੀਂ ਹੱਥੀਂ ਅੱਪਡੇਟ ਕਰ ਸਕਦੇ ਹੋ।" "ਅੱਪਡੇਟ ਕਰੋ" diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml index 6c0b7853a7..e382ba9703 100644 --- a/res/values-pl/strings.xml +++ b/res/values-pl/strings.xml @@ -31,10 +31,8 @@ "Informacje o aplikacji: %1$s" "Zapisz parę aplikacji" "%1$s | %2$s" - - - - + "Ta para aplikacji nie jest obsługiwana na tym urządzeniu" + "Otwórz urządzenie, aby użyć tej pary aplikacji" "Naciśnij i przytrzymaj, aby przenieść widżet." "Naciśnij dwukrotnie i przytrzymaj, aby przenieść widżet lub użyć działań niestandardowych." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Instaluję aplikację %1$s, postęp: %2$s" "Pobieranie elementu %1$s, ukończono: %2$s" "%1$s oczekuje na instalację" - - + "Aplikacja %1$s jest zarchiwizowana. Kliknij, aby ją pobrać." "Wymagana aktualizacja aplikacji" "Aplikacja z tą ikoną nie jest aktualizowana. Możesz zaktualizować ją ręcznie, aby ponownie uruchomić ten skrót, lub usunąć ikonę." "Aktualizuj" diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml index 18c3ca95e6..da08937739 100644 --- a/res/values-pt-rPT/strings.xml +++ b/res/values-pt-rPT/strings.xml @@ -31,10 +31,8 @@ "Informações da app para %1$s" "Guardar par de apps" "%1$s | %2$s" - - - - + "Este par de apps não é suportado neste dispositivo" + "Abra o dispositivo para usar este par de apps" "Toque sem soltar para mover um widget." "Toque duas vezes sem soltar para mover um widget ou utilizar ações personalizadas." "%1$d × %2$d" @@ -137,8 +135,7 @@ "A instalar %1$s, %2$s concluído" "A transferir o %1$s, %2$s concluído" "A aguardar a instalação do %1$s" - - + "A app %1$s está arquivada. Toque para transferir." "Atualização da app necessária" "A app deste ícone não está atualizada. Pode atualizar manualmente para reativar este atalho ou remover o ícone." "Atualizar" @@ -186,7 +183,7 @@ "Filtrar" "Falhou: %1$s" "Espaço privado" - "Mantenha as apps privadas bloqueadas e ocultas" + "Mantém as apps privadas bloqueadas e ocultas" "Privado" "Definições do espaço privado" "Bloquear/desbloquear espaço privado" diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml index 7db0e0dff6..10111aae13 100644 --- a/res/values-pt/strings.xml +++ b/res/values-pt/strings.xml @@ -31,10 +31,8 @@ "Informações do app %1$s" "Salvar par de apps" "%1$s | %2$s" - - - - + "Este Par de apps não está disponível no dispositivo" + "Abra o dispositivo para usar este Par de apps" "Toque e pressione para mover um widget." "Toque duas vezes e mantenha a tela pressionada para mover um widget ou usar ações personalizadas." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Instalando %1$s. %2$s concluído" "Fazendo download de %1$s, %2$s concluído" "Aguardando instalação de %1$s" - - + "O app %1$s está arquivado. Toque para baixar." "Atualização obrigatória do app" "O app desse ícone não está atualizado. Você pode remover o ícone ou atualizar o app manualmente para reativar esse atalho." "Atualizar" diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml index e7bd42d7a5..9eab793ddb 100644 --- a/res/values-ro/strings.xml +++ b/res/values-ro/strings.xml @@ -31,10 +31,8 @@ "Informații despre aplicație pentru %1$s" "Salvează perechea de aplicații" "%1$s | %2$s" - - - - + "Perechea de aplicații nu este acceptată pe acest dispozitiv" + "Deschide dispozitivul ca să folosești această pereche de aplicații" "Atinge și ține apăsat pentru a muta un widget." "Atinge de două ori și ține apăsat pentru a muta un widget sau folosește acțiuni personalizate." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s se instalează, %2$s finalizat" "%1$s se descarcă (finalizat %2$s)" "%1$s așteaptă instalarea" - - + "%1$s s-a arhivat. Atinge pentru a descărca." "Este necesară actualizarea aplicației" "Aplicația pentru această pictogramă nu este actualizată. Poți să actualizezi manual ca să reactivezi comanda rapidă sau să elimini pictograma." "Actualizează" diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml index e944627466..1e8407a915 100644 --- a/res/values-ru/strings.xml +++ b/res/values-ru/strings.xml @@ -31,10 +31,8 @@ "Сведения о приложении \"%1$s\"" "Сохранить настройки одновременного использования двух приложений" "%1$s | %2$s" - - - - + "Одновременно использовать эти два приложения на устройстве нельзя." + "Чтобы одновременно использовать эти два приложения, разложите устройство." "Чтобы переместить виджет, нажмите на него и удерживайте" "Чтобы использовать специальные действия или перенести виджет, нажмите на него дважды и удерживайте." "%1$d x %2$d" @@ -137,8 +135,7 @@ "Установка приложения \"%1$s\" (выполнено %2$s)" "Скачивается \"%1$s\" (%2$s)" "Ожидание установки \"%1$s\"" - - + "Приложение \"%1$s\" находится в архиве. Нажмите, чтобы скачать" "Обновите приложение" "Эта версия приложения устарела. Обновите его вручную, чтобы снова пользоваться ярлыком, или удалите значок." "Обновить" diff --git a/res/values-si/strings.xml b/res/values-si/strings.xml index d34c43f7c2..ad5d1586fd 100644 --- a/res/values-si/strings.xml +++ b/res/values-si/strings.xml @@ -31,10 +31,8 @@ "%1$s සඳහා යෙදුම් තතු" "යෙදුම් යුගල සුරකින්න" "%1$s | %2$s" - - - - + "මෙම යෙදුම් යුගලය මෙම උපාංගයෙහි සහාය නොදක්වයි" + "මෙම යෙදුම් යුගලය භාවිතා කිරීමට උපාංගය දිගහරින්න" "විජට් එකක් ගෙන යාමට ස්පර්ශ කර අල්ලා ගෙන සිටින්න." "විජට් එකක් ගෙන යාමට හෝ අභිරුචි ක්‍රියා භාවිත කිරීමට දෙවරක් තට්ටු කර අල්ලා ගෙන සිටින්න." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s ස්ථාපනය කරමින්, %2$s සම්පූර්ණයි" "%1$s බාගත කරමින්, %2$s සම්පූර්ණයි" "%1$s ස්ථාපනය කිරීමට බලා සිටිමින්" - - + "%1$s ලේඛනාරක්ෂණය කර ඇත. බාගැනීමට තට්ටු කරන්න" "යෙදුම් යාවත්කාලීනයක් අවශ්‍යයි" "මෙම නිරූපකය සඳහා යෙදුම යාවත්කාලීන කර නැත. ඔබට මෙම කෙටි මඟ යළි සබල කිරීමට හෝ නිරූපකය ඉවත් කිරීමට හස්තීයව යාවත්කාලීන කළ හැකිය." "යාවත්කාලීන කරන්න" diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml index 743a7b4f71..b4b67a1bc4 100644 --- a/res/values-sk/strings.xml +++ b/res/values-sk/strings.xml @@ -31,10 +31,8 @@ "Informácie o aplikácii pre %1$s" "Uložiť pár aplikácií" "%1$s | %2$s" - - - - + "Tento pár aplikácií nie je v tomto zariadení podporovaný" + "Ak chcete používať tento pár aplikácií, rozložte zariadenie" "Pridržaním presuňte miniaplikáciu." "Dvojitým klepnutím a pridržaním presuňte miniaplikáciu alebo použite vlastné akcie." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Inštaluje sa %1$s. Dokončené: %2$s." "Sťahuje sa aplikácia %1$s. Stiahnuté: %2$s" "Aplikácia %1$s čaká na inštaláciu" - - + "Aplikácia %1$s je archivovaná. Stiahnite klepnutím." "Vyžaduje sa aktualizácia aplikácie" "Aplikácia, ktorú zastupuje táto ikona, nie je aktualizovaná. Môžete ju ručne aktualizovať, aby odkaz znova fungoval, prípadne môžete ikonu odstrániť." "Aktualizovať" diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml index 9051805e2e..9472e44a07 100644 --- a/res/values-sl/strings.xml +++ b/res/values-sl/strings.xml @@ -31,10 +31,8 @@ "Podatki o aplikaciji za: %1$s" "Shrani par aplikacij" "%1$s | %2$s" - - - - + "Ta par aplikacij ni podprt v tej napravi" + "Razprite napravo, če želite uporabljati ta par aplikacij" "Pridržite pripomoček, da ga premaknete." "Dvakrat se dotaknite pripomočka in ga pridržite, da ga premaknete, ali pa uporabite dejanja po meri." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s se namešča, dokončano: %2$s" "Prenašanje aplikacije %1$s; preneseno %2$s" "Aplikacija %1$s čaka na namestitev" - - + "Aplikacija %1$s je arhivirana. Dotaknite se za prenos." "Zahtevana je posodobitev aplikacije" "Aplikacija za to ikono ni posodobljena. Lahko jo ročno posodobite, da znova omogočite to bližnjico, ali pa odstranite ikono." "Posodobi" diff --git a/res/values-sq/strings.xml b/res/values-sq/strings.xml index be2db9caad..bfc6fb3944 100644 --- a/res/values-sq/strings.xml +++ b/res/values-sq/strings.xml @@ -31,10 +31,8 @@ "Informacioni i aplikacionit për %1$s" "Ruaj çiftin e aplikacioneve" "%1$s | %2$s" - - - - + "Ky çift aplikacionesh nuk mbështetet në këtë pajisje" + "Shpalose pajisjen për të përdorur këtë çift aplikacionesh" "Prek dhe mbaj shtypur një miniaplikacion për ta zhvendosur." "Trokit dy herë dhe mbaje shtypur një miniapliikacion për ta zhvendosur atë ose për të përdorur veprimet e personalizuara." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s po instalohet, %2$s i përfunduar" "%1$s po shkarkohet, %2$s të përfunduara" "%1$s po pret të instalohet" - - + "%1$s është arkivuar. Trokit për të shkarkuar." "Kërkohet përditësimi i aplikacionit" "Aplikacioni për këtë ikonë nuk është përditësuar. Mund ta përditësosh manualisht për të riaktivizuar këtë shkurtore ose hiq ikonën." "Përditëso" diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml index 020d60d69a..270654df30 100644 --- a/res/values-sr/strings.xml +++ b/res/values-sr/strings.xml @@ -31,10 +31,8 @@ "Информације о апликацији за: %1$s" "Сачувај пар апликација" "%1$s | %2$s" - - - - + "Овај пар апликација није подржан на овом уређају" + "Отворите уређај да бисте користили овај пар апликација" "Додирните и задржите ради померања виџета." "Двапут додирните и задржите да бисте померали виџет или користите прилагођене радње." "%1$d×%2$d" @@ -137,8 +135,7 @@ "%1$s се инсталира, %2$s готово" "%1$s се преузима, завршено је %2$s" "%1$s чека на инсталирање" - - + "Апликација %1$s је архивирана. Додирните да бисте је преузели." "Треба да ажурирате апликацију" "Апликација за ову икону није ажурирана. Можете да је ручно ажурирате да бисте поново омогућили ову пречицу или уклоните икону." "Ажурирај" diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml index 0ab3cfd89a..32c52d8b4c 100644 --- a/res/values-sv/strings.xml +++ b/res/values-sv/strings.xml @@ -31,10 +31,8 @@ "Appinformation för %1$s" "Spara appar som ska användas tillsammans" "%1$s | %2$s" - - - - + "De här apparna som ska användas tillsammans stöds inte på den här enheten" + "Vik upp enheten för att använda de här apparna som ska användas tillsammans" "Tryck länge för att flytta en widget." "Tryck snabbt två gånger och håll kvar för att flytta en widget eller använda anpassade åtgärder." "%1$d × %2$d" @@ -118,7 +116,7 @@ "Startinställningar" "Inaktiverat av administratören" "Tillåt rotering av startskärmen" - "När mobilen vrids" + "När telefonen vrids" "Aviseringsprickar" "På" "Av" @@ -137,8 +135,7 @@ "%1$s installeras. %2$s har slutförts" "%1$s laddas ned, %2$s klart" "%1$s väntar på installation" - - + "%1$s har arkiverats. Tryck för att ladda ned." "Du måste uppdatera appen" "Appen för den här ikonen har inte uppdaterats. Du kan uppdatera den manuellt för att återaktivera genvägen eller ta bort ikonen." "Uppdatera" diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml index 8bfb82cdfa..193c92ecbc 100644 --- a/res/values-sw/strings.xml +++ b/res/values-sw/strings.xml @@ -31,10 +31,8 @@ "Maelezo ya programu ya %1$s" "Hifadhi jozi ya programu" "%1$s | %2$s" - - - - + "Jozi hii ya programu haitumiki kwenye kifaa hiki" + "Fungua kifaa ili utumie jozi hii ya programu" "Gusa na ushikilie ili usogeze wijeti." "Gusa mara mbili na ushikilie ili usogeze wijeti au utumie vitendo maalum." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Inasakinisha %1$s, imekamilika %2$s" "%1$s inapakuliwa, %2$s imekamilika" "%1$s inasubiri kusakinisha" - - + "%1$s imewekwa kwenye kumbukumbu. Gusa ili uipakue." "Unahitaji kusasisha programu" "Programu ya aikoni hii haijasasishwa. Unaweza kusasisha mwenyewe ili uruhusu upya njia hii ya mkato au uondoe aikoni." "Sasisha" diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml index d99f7df860..2f79f4043f 100644 --- a/res/values-ta/strings.xml +++ b/res/values-ta/strings.xml @@ -31,10 +31,8 @@ "%1$sக்கான ஆப்ஸ் தகவல்கள்" "ஆப்ஸ் ஜோடியைச் சேமி" "%1$s | %2$s" - - - - + "இந்தச் சாதனத்தில் இந்த ஆப்ஸ் ஜோடி ஆதரிக்கப்படவில்லை" + "இந்த ஆப்ஸ் ஜோடியைப் பயன்படுத்த சாதனத்தை விரியுங்கள்" "விட்ஜெட்டை நகர்த்தத் தொட்டுப் பிடிக்கவும்." "விட்ஜெட்டை நகர்த்த இருமுறை தட்டிப் பிடிக்கவும் அல்லது பிரத்தியேகச் செயல்களைப் பயன்படுத்தவும்." "%1$d × %2$d" @@ -127,7 +125,7 @@ "அமைப்புகளை மாற்று" "அறிவிப்புப் புள்ளிகளைக் காட்டு" "டெவெலப்பர் விருப்பங்கள்" - "முகப்புத் திரையில் ஆப்ஸ் ஐகான்களைச் சேர்" + "முகப்புத் திரையில் ஆப்ஸ் ஐகான்களைச் சேர்த்தல்" "புதிய ஆப்ஸை நிறுவும்போது" "தெரியாதது" "அகற்று" @@ -137,8 +135,7 @@ "%1$s நிறுவப்படுகிறது, %2$s முடிந்தது" "%1$sஐப் பதிவிறக்குகிறது, %2$s முடிந்தது" "%1$sஐ நிறுவுவதற்காகக் காத்திருக்கிறது" - - + "%1$s காப்பிடப்பட்டுள்ளது. பதிவிறக்க தட்டுங்கள்." "ஆப்ஸைப் புதுப்பியுங்கள்" "இந்த ஐகானுக்கான ஆப்ஸ் புதுப்பிக்கப்படவில்லை. இந்த ஷார்ட்கட்டை மீண்டும் இயக்கவோ ஐகானை அகற்றவோ நீங்களாகவே புதுப்பிக்கலாம்." "புதுப்பி" diff --git a/res/values-te/strings.xml b/res/values-te/strings.xml index 1dd743b996..5f104e2efe 100644 --- a/res/values-te/strings.xml +++ b/res/values-te/strings.xml @@ -31,10 +31,8 @@ "%1$s కోసం యాప్ సమాచారం" "యాప్ పెయిర్‌ను సేవ్ చేయండి" "%1$s | %2$s" - - - - + "ఈ పరికరంలో ఈ యాప్ పెయిర్ సపోర్ట్ చేయదు" + "ఈ యాప్ పెయిర్‌ను ఉపయోగించడానికి పరికరాన్ని అన్‌ఫోల్డ్ చేయండి" "విడ్జెట్‌ను తరలించడానికి తాకి & నొక్కి ఉంచండి." "విడ్జెట్‌ను తరలించడానికి లేదా అనుకూల చర్యలను ఉపయోగించడానికి రెండుసార్లు నొక్కండి & హోల్డ్ చేయి." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s‌ను ఇన్‌స్టాల్ చేయడం, %2$s పూర్తయింది" "%1$s డౌన్‌లోడ్ అవుతోంది, %2$s పూర్తయింది" "%1$s ఇన్‌స్టాల్ కావడానికి వేచి ఉంది" - - + "%1$s ఆర్కైవ్ చేయబడింది. డౌన్‌లోడ్ చేయడానికి ట్యాప్ చేయండి." "యాప్‌ను అప్‌డేట్ చేయడం అవసరం" "ఈ చిహ్నం కోసం యాప్ అప్‌డేట్ చేయబడలేదు. మీరు ఈ షార్ట్‌కట్‌ను మళ్లీ ఎనేబుల్ చేయడానికి మాన్యువల్‌గా అప్‌డేట్ చేయవచ్చు లేదా చిహ్నాన్ని తీసివేయవచ్చు." "అప్‌డేట్ చేయండి" diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml index 6d21989ed3..c3c2c20f18 100644 --- a/res/values-th/strings.xml +++ b/res/values-th/strings.xml @@ -31,10 +31,8 @@ "ข้อมูลแอปสำหรับ %1$s" "บันทึกคู่แอป" "%1$s | %2$s" - - - - + "ไม่รองรับคู่แอปนี้ในอุปกรณ์เครื่องนี้" + "กางอุปกรณ์เพื่อใช้คู่แอปนี้" "แตะค้างไว้เพื่อย้ายวิดเจ็ต" "แตะสองครั้งค้างไว้เพื่อย้ายวิดเจ็ตหรือใช้การดำเนินการที่กำหนดเอง" "%1$d × %2$d" @@ -137,8 +135,7 @@ "กำลังติดตั้ง %1$s เสร็จแล้ว %2$s" "กำลังดาวน์โหลด %1$s เสร็จแล้ว %2$s" "%1$s กำลังรอติดตั้ง" - - + "เก็บถาวร %1$s แล้ว แตะเพื่อดาวน์โหลด" "ต้องอัปเดตแอป" "แอปสำหรับไอคอนนี้ยังไม่ได้อัปเดต คุณอัปเดตด้วยตนเองได้โดยเปิดใช้ทางลัดนี้อีกครั้งหรือนำไอคอนออก" "อัปเดต" diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml index 7ce7e4a552..8e4dc1dc3d 100644 --- a/res/values-tl/strings.xml +++ b/res/values-tl/strings.xml @@ -31,10 +31,8 @@ "Impormasyon ng app para sa %1$s" "I-save ang pares ng app" "%1$s | %2$s" - - - - + "Hindi sinusuportahan sa device na ito ang pares ng app na ito" + "I-unfold ang device para magamit ang pares ng app na ito" "Pindutin nang matagal para ilipat ang widget." "I-double tap at pindutin nang matagal para ilipat ang widget o gumamit ng mga custom na pagkilos." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Ini-install ang %1$s, %2$s kumpleto" "Dina-download na ang %1$s, tapos na ang %2$s" "Hinihintay nang mag-install ang %1$s" - - + "Naka-archive ang %1$s. I-tap para i-download." "Kinakailangang i-update ang app" "Hindi updated ang app para sa icon na ito. Puwede kang manual na mag-update para ma-enable ulit ang shortcut na ito, o alisin ang icon." "I-update" diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml index 3dc40bd528..7633940228 100644 --- a/res/values-tr/strings.xml +++ b/res/values-tr/strings.xml @@ -31,10 +31,8 @@ "%1$s uygulama bilgileri" "Uygulama çiftini kaydedin" "%1$s | %2$s" - - - - + "Bu uygulama çifti bu cihazda desteklenmiyor" + "Bu uygulama çiftini kullanmak için katlanmış durumda olan cihazı açın" "Widget\'ı taşımak için dokunup basılı tutun." "Widget\'ı taşımak veya özel işlemleri kullanmak için iki kez dokunup basılı tutun." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s yükleniyor, %2$s tamamlandı" "%1$s indiriliyor, %2$s tamamlandı" "%1$s uygulaması yüklenmek için bekliyor" - - + "%1$s arşivlendi. İndirmek için dokunun." "Uygulama güncellemesi gerekli" "Bu simgenin uygulaması güncellenmemiş. Simgeyi kaldırabilir ya da uygulamayı manuel olarak güncelleyerek bu kısayolu yeniden etkinleştirebilirsiniz." "Güncelle" diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml index 54824ae87c..7f56e1b151 100644 --- a/res/values-uk/strings.xml +++ b/res/values-uk/strings.xml @@ -31,10 +31,8 @@ "Інформація про додаток для %1$s" "Зберегти пару додатків" "%1$s | %2$s" - - - - + "Ці два додатки не можна одночасно використовувати на цьому пристрої" + "Розкладіть пристрій, щоб одночасно використовувати ці два додатки" "Натисніть і втримуйте, щоб перемістити віджет." "Двічі натисніть і втримуйте віджет, щоб перемістити його або виконати інші дії." "%1$d × %2$d" @@ -113,7 +111,7 @@ "Папка \"%1$s\", елементів: %2$d" "Папка \"%1$s\", елементів: %2$d або більше" "Одночасне використання двох додатків: %1$s і %2$s" - "Оформлення і стиль" + "Оформлення й стиль" "Редагувати головний екран" "Налаштування головного екрана" "Вимкнув адміністратор" @@ -137,8 +135,7 @@ "%1$s встановлюється, виконано %2$s" "%1$s завантажується, %2$s" "%1$s очікує на завантаження" - - + "Додаток %1$s заархівовано. Натисніть, щоб завантажити." "Потрібно оновити додаток" "Додаток для цього значка не оновлено. Ви можете оновити його вручну, щоб знову ввімкнути цю швидку команду, або можете вилучити значок." "Оновити" diff --git a/res/values-ur/strings.xml b/res/values-ur/strings.xml index 69ac32d9d7..c945bab555 100644 --- a/res/values-ur/strings.xml +++ b/res/values-ur/strings.xml @@ -31,10 +31,8 @@ "‏%1$s کے لیے ایپ کی معلومات" "ایپس کے جوڑے کو محفوظ کریں" "%1$s | %2$s" - - - - + "ایپس کا یہ جوڑا اس آلے پر تعاون یافتہ نہیں ہے" + "ایپس کے اس جوڑے کا استعمال کرنے کیلئے آلے کو اَن فولڈ کریں" "ویجیٹ منتقل کرنے کے لیے ٹچ کریں اور پکڑ کر رکھیں۔" "ویجیٹ کو منتقل کرنے یا حسب ضرورت کارروائیاں استعمال کرنے کے لیے دوبار تھپتھپائیں اور پکڑ کر رکھیں۔" "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s انسٹال کی جا رہی ہے، %2$s مکمل ہو گئی" "%1$s ڈاؤن لوڈ ہو رہا ہے، %2$s مکمل ہو گیا" "%1$s انسٹال ہونے کا انتظار کر رہی ہے" - - + "%1$s کو آرکائیو کر لیا گیا ہے۔ ڈاؤن لوڈ کرنے کیلئے تھپتھپائیں۔" "ایپ کی اپ ڈیٹ درکار ہے" "اس آئیکن کیلئے ایپ کو اپ ڈیٹ نہیں کیا گیا ہے۔ آپ اس شارٹ کٹ کو دوبارہ فعال کرنے کے لیے دستی طور پر اپ ڈیٹ کر سکتے ہیں، یا آئیکن کو ہٹا سکتے ہیں۔" "اپ ڈیٹ کریں" diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml index 57e1100ec8..4fbacb7925 100644 --- a/res/values-uz/strings.xml +++ b/res/values-uz/strings.xml @@ -31,10 +31,8 @@ "%1$s ilovasi axboroti" "Ilova juftini saqlash" "%1$s | %2$s" - - - - + "Bu ilova jufti ushbu qurilmada ishlamaydi" + "Bu ilova juftidan foydalanish uchun qurilmani oching" "Vidjetni bosib turgan holatda suring." "Ikki marta bosib va bosib turgan holatda vidjetni tanlang yoki maxsus amaldan foydalaning." "%1$d × %2$d" @@ -137,8 +135,7 @@ "%1$s oʻrnatlmoqda, %2$s yakunlandi" "%1$s yuklab olinmoqda, %2$s bajarildi" "%1$s ilovasi o‘rnatilishi kutilmoqda" - - + "%1$s arxivlangan. Yuklab olish uchun bosing." "Ilovani yangilash zarur" "Bu belgi uchun ilova yangilanmagan. Ushbu yorliqni qayta yoqish uchun oddiy usulda yangilashingiz yoki belgini olib tashlashingiz mumkin." "Yangilash" diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml index 06490662cc..290adacca4 100644 --- a/res/values-vi/strings.xml +++ b/res/values-vi/strings.xml @@ -31,10 +31,8 @@ "Thông tin ứng dụng cho %1$s" "Lưu cặp ứng dụng" "%1$s | %2$s" - - - - + "Cặp ứng dụng này không hoạt động được trên thiết bị này" + "Hãy mở thiết bị để dùng cặp ứng dụng này" "Chạm và giữ để di chuyển một tiện ích." "Nhấn đúp và giữ để di chuyển một tiện ích hoặc sử dụng các thao tác tùy chỉnh." "%1$d × %2$d" @@ -137,8 +135,7 @@ "Đang cài đặt %1$s, hoàn tất %2$s" "Đang tải xuống %1$s, %2$s hoàn tất" "Đang chờ cài đặt %1$s" - - + "Đã lưu trữ %1$s Nhấn để tải xuống." "Cần cập nhật ứng dụng" "Ứng dụng cho biểu tượng này chưa được cập nhật. Bạn có thể cập nhật theo cách thủ công để bật lại phím tắt này hoặc xóa biểu tượng." "Cập nhật" diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml index b1b238528a..26f42d89be 100644 --- a/res/values-zh-rCN/strings.xml +++ b/res/values-zh-rCN/strings.xml @@ -31,10 +31,8 @@ "%1$s 的应用信息" "保存应用对" "%1$s | %2$s" - - - - + "在该设备上无法使用此应用对" + "展开设备即可使用此应用对" "轻触并按住即可移动微件。" "点按两次并按住微件即可移动该微件或使用自定义操作。" "%1$d × %2$d" @@ -137,8 +135,7 @@ "正在安装%1$s,已完成 %2$s" "正在下载%1$s,已完成 %2$s" "%1$s正在等待安装" - - + "已归档“%1$s”。点按即可下载。" "需要更新应用" "此图标对应的应用未更新。您可以手动更新以重新启用该快捷方式,或者移除此图标。" "更新" diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml index 642b14954c..ff71ad26ff 100644 --- a/res/values-zh-rHK/strings.xml +++ b/res/values-zh-rHK/strings.xml @@ -31,10 +31,8 @@ "%1$s 的應用程式資料" "儲存應用程式配對" "%1$s | %2$s" - - - - + "此裝置不支援此應用程式配對" + "打開裝置即可使用此應用程式配對" "輕觸並按住即可移動小工具。" "㩒兩下之後㩒住,就可以郁小工具或者用自訂操作。" "%1$d × %2$d" @@ -137,8 +135,7 @@ "正在安裝「%1$s」(已完成 %2$s)" "正在下載 %1$s,已完成 %2$s" "正在等待安裝 %1$s" - - + "「%1$s」已封存。輕按即可下載。" "必須更新應用程式" "你尚未更新這個圖示代表的應用程式。你可以手動更新以重新啟用此快速鍵,或者移除圖示。" "更新" diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml index 4a47f40864..1385fcedbc 100644 --- a/res/values-zh-rTW/strings.xml +++ b/res/values-zh-rTW/strings.xml @@ -31,10 +31,8 @@ "「%1$s」的應用程式資訊" "儲存應用程式配對" "%1$s | %2$s" - - - - + "這部裝置不支援這組應用程式配對" + "展開裝置即可使用這組應用程式配對" "按住即可移動小工具。" "輕觸兩下並按住即可移動小工具或使用自訂操作。" "%1$d × %2$d" @@ -137,8 +135,7 @@ "正在安裝「%1$s」(已完成 %2$s)" "正在下載「%1$s」,已完成 %2$s" "正在等待安裝「%1$s」" - - + "已封存「%1$s」。輕觸即可下載。" "必須更新應用程式" "這個圖示代表的應用程式未更新。手動更新即可重新啟用這個捷徑,你也可以移除圖示。" "更新" diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml index 432a19ab8a..8388bb7303 100644 --- a/res/values-zu/strings.xml +++ b/res/values-zu/strings.xml @@ -31,10 +31,8 @@ "Ulwazi lwe-App ye-%1$s" "Londoloza i-app ebhangqiwe" "%1$s | %2$s" - - - - + "Lokhu kubhanqwa kwe-app akusekelwa kule divayisi" + "Vula idivayisi ukuze usebenzise lokhu kubhanqwa kwe-app" "Thinta uphinde ubambe ukuze uhambise iwijethi." "Thepha kabili uphinde ubambe ukuze uhambise iwijethi noma usebenzise izindlela ezingokwezifiso." "%1$d × %2$d" @@ -137,8 +135,7 @@ "I-%1$s iyafakwa, seyiqede %2$s" "I-%1$s iyalandwa, %2$s kuqediwe" "%1$s ilinde ukufakwa" - - + "I-%1$s ifakwe kungobo yomlando. Thepha ukuze udawunilode." "Kudingeka isibuyekezo se-app" "I-app yalesi sithonjana ibuyekeziwe. Ungabuyekeza mathupha ukuze uphinde unike amandla lesi sinqamuleli, noma ususe isithonjana." "Vuselela" From ad6a49777480eb69540d015fde9dcf0892da8843 Mon Sep 17 00:00:00 2001 From: Bill Yi Date: Mon, 8 Apr 2024 11:55:29 -0700 Subject: [PATCH 21/21] Import translations. DO NOT MERGE ANYWHERE Bug: 328603775 Auto-generated-cl: translation import (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:f481ffe589d4bc647da9c358d1c61471a684f6f0) Merged-In: Ie6ae0a3a4e99f7f7d93e89c17abc5c95de32a83d Change-Id: Ie6ae0a3a4e99f7f7d93e89c17abc5c95de32a83d --- quickstep/res/values-af/strings.xml | 2 +- quickstep/res/values-ar/strings.xml | 6 +++--- quickstep/res/values-b+sr+Latn/strings.xml | 2 +- quickstep/res/values-ca/strings.xml | 2 +- quickstep/res/values-cs/strings.xml | 4 ++-- quickstep/res/values-es-rUS/strings.xml | 2 +- quickstep/res/values-es/strings.xml | 2 +- quickstep/res/values-eu/strings.xml | 2 +- quickstep/res/values-fi/strings.xml | 4 ++-- quickstep/res/values-gl/strings.xml | 2 +- quickstep/res/values-hi/strings.xml | 6 +++--- quickstep/res/values-hu/strings.xml | 2 +- quickstep/res/values-hy/strings.xml | 4 ++-- quickstep/res/values-in/strings.xml | 6 +++--- quickstep/res/values-iw/strings.xml | 2 +- quickstep/res/values-kn/strings.xml | 2 +- quickstep/res/values-ky/strings.xml | 10 +++++----- quickstep/res/values-mk/strings.xml | 4 ++-- quickstep/res/values-my/strings.xml | 2 +- quickstep/res/values-nl/strings.xml | 2 +- quickstep/res/values-pa/strings.xml | 2 +- quickstep/res/values-pt-rPT/strings.xml | 4 ++-- quickstep/res/values-sk/strings.xml | 2 +- quickstep/res/values-sl/strings.xml | 2 +- quickstep/res/values-sr/strings.xml | 2 +- quickstep/res/values-zh-rCN/strings.xml | 2 +- res/values-af/strings.xml | 2 +- res/values-ar/strings.xml | 4 ++-- res/values-as/strings.xml | 4 ++-- res/values-b+sr+Latn/strings.xml | 2 +- res/values-bs/strings.xml | 2 +- res/values-ca/strings.xml | 4 ++-- res/values-cs/strings.xml | 2 +- res/values-de/strings.xml | 2 +- res/values-es-rUS/strings.xml | 2 +- res/values-eu/strings.xml | 2 +- res/values-fr-rCA/strings.xml | 2 +- res/values-fr/strings.xml | 6 +++--- res/values-gl/strings.xml | 4 ++-- res/values-hi/strings.xml | 4 ++-- res/values-hy/strings.xml | 6 +++--- res/values-in/strings.xml | 6 +++--- res/values-is/strings.xml | 4 ++-- res/values-iw/strings.xml | 2 +- res/values-ja/strings.xml | 4 ++-- res/values-kn/strings.xml | 2 +- res/values-ky/strings.xml | 8 ++++---- res/values-mk/strings.xml | 2 +- res/values-mr/strings.xml | 6 +++--- res/values-ms/strings.xml | 4 ++-- res/values-my/strings.xml | 2 +- res/values-ne/strings.xml | 4 ++-- res/values-nl/strings.xml | 4 ++-- res/values-or/strings.xml | 4 ++-- res/values-pl/strings.xml | 2 +- res/values-ru/strings.xml | 2 +- res/values-sr/strings.xml | 2 +- res/values-sv/strings.xml | 2 +- res/values-tl/strings.xml | 2 +- res/values-zh-rCN/strings.xml | 6 +++--- res/values-zh-rTW/strings.xml | 2 +- 61 files changed, 100 insertions(+), 100 deletions(-) diff --git a/quickstep/res/values-af/strings.xml b/quickstep/res/values-af/strings.xml index 308b4115e0..ba78a28b56 100644 --- a/quickstep/res/values-af/strings.xml +++ b/quickstep/res/values-af/strings.xml @@ -93,7 +93,7 @@ "toestel" "Stelselnavigasie-instellings" "Deel" - "Skermkiekie" + "Skermskoot" "Verdeel" "Tik op ’n ander app om verdeelde skerm te gebruik" "Kies ’n ander app as jy verdeelde skerm wil gebruik" diff --git a/quickstep/res/values-ar/strings.xml b/quickstep/res/values-ar/strings.xml index 4ed610f3d2..d25b211a4a 100644 --- a/quickstep/res/values-ar/strings.xml +++ b/quickstep/res/values-ar/strings.xml @@ -21,7 +21,7 @@ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> "تثبيت" "شكل مجاني" - "ليست هناك عناصر تم استخدامها مؤخرًا" + "ما مِن عناصر تم استخدامها مؤخرًا" "إعدادات استخدام التطبيق" "محو الكل" "التطبيقات المستخدمة مؤخرًا" @@ -96,10 +96,10 @@ "لقطة شاشة" "تقسيم" "انقر على تطبيق آخر لاستخدام وضع تقسيم الشاشة." - "اختَر تطبيقًا آخر لاستخدام \"وضع تقسيم الشاشة\"." + "اختَر تطبيقًا آخر لاستخدام \"وضع تقسيم الشاشة\"" "إلغاء" "الخروج من وضع تقسيم الشاشة" - "اختَر تطبيقًا آخر لاستخدام \"وضع تقسيم الشاشة\"." + "اختَر تطبيقًا آخر لاستخدام \"وضع تقسيم الشاشة\"" "لا يسمح التطبيق أو لا تسمح مؤسستك بهذا الإجراء." "التطبيقات المصغّرة غير متوفّرة حاليًا، يرجى اختيار تطبيق آخر." "هل تريد تخطي الدليل التوجيهي للتنقّل؟" diff --git a/quickstep/res/values-b+sr+Latn/strings.xml b/quickstep/res/values-b+sr+Latn/strings.xml index ba2cd6a98c..5d7652b63d 100644 --- a/quickstep/res/values-b+sr+Latn/strings.xml +++ b/quickstep/res/values-b+sr+Latn/strings.xml @@ -111,7 +111,7 @@ "Prevucite na stranu da biste koristili 2 aplikacije odjednom" "Sporo prevucite nagore da biste videli traku zadataka" "Dobijajte predloge aplikacija na osnovu rutine" - "Dugo pritiskajte razdelnik da biste zakačili traku zadataka" + "Dugo pritisnite razdelnik da biste zakačili traku zadataka" "Uradite više pomoću trake zadataka" "Uvek prikazuj traku zadataka" "Da bi traka zadataka uvek bila prikazana u dnu ekrana, dodirnite i zadržite razdelnik" diff --git a/quickstep/res/values-ca/strings.xml b/quickstep/res/values-ca/strings.xml index 79748e0594..c16b64e909 100644 --- a/quickstep/res/values-ca/strings.xml +++ b/quickstep/res/values-ca/strings.xml @@ -128,7 +128,7 @@ "Es mostra la Barra de tasques" "S\'ha amagat la Barra de tasques" "Barra de navegació" - "Mostra Barra de tasques" + "Barra de tasques sempre visible" "Canvia el mode de navegació" "Separador de la Barra de tasques" "Mou a la part superior o a l\'esquerra" diff --git a/quickstep/res/values-cs/strings.xml b/quickstep/res/values-cs/strings.xml index 96c0b4b027..1e58c9c087 100644 --- a/quickstep/res/values-cs/strings.xml +++ b/quickstep/res/values-cs/strings.xml @@ -21,7 +21,7 @@ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> "Připnout" "Neomezený režim" - "Žádné nedávné položky" + "Žádné položky z nedávné doby" "Nastavení využití aplikací" "Vymazat vše" "Poslední aplikace" @@ -111,7 +111,7 @@ "Přetáhněte aplikaci na stranu a používejte tak dvě najednou" "Panel aplikací zobrazíte pomalým přejetím prstem nahoru" "Dostávejte návrhy aplikací podle toho, jaké používáte" - "Dlouhým stisknutím oddělovače připnete panel aplikací" + "Dlouhým stisknutím oddělovače panel aplikací připnete" "Více možností s panelem aplikací" "Stálé zobrazení panelu aplikací" "Pokud chcete, aby se panel aplikací vždy zobrazoval ve spodní části obrazovky, podržte oddělovač." diff --git a/quickstep/res/values-es-rUS/strings.xml b/quickstep/res/values-es-rUS/strings.xml index 213aff50bb..66cf7b9429 100644 --- a/quickstep/res/values-es-rUS/strings.xml +++ b/quickstep/res/values-es-rUS/strings.xml @@ -128,7 +128,7 @@ "Barra de tareas visible" "Barra de tareas oculta" "Barra de navegación" - "Ver siempre Barra de tareas" + "Barra de tareas visible" "Cambiar el modo de navegación" "Divisor de la Barra de tareas" "Mover a la parte superior o izquierda" diff --git a/quickstep/res/values-es/strings.xml b/quickstep/res/values-es/strings.xml index 64d01a4db2..0152b84b68 100644 --- a/quickstep/res/values-es/strings.xml +++ b/quickstep/res/values-es/strings.xml @@ -128,7 +128,7 @@ "Barra de tareas visible" "Barra de tareas oculta" "Barra de navegación" - "Barra de Tareas visible" + "Barra de tareas visible" "Cambiar el modo de navegación" "Divisor de Barra de Tareas" "Mover arriba/a la izquierda" diff --git a/quickstep/res/values-eu/strings.xml b/quickstep/res/values-eu/strings.xml index 17e4df3a92..4fe02c882b 100644 --- a/quickstep/res/values-eu/strings.xml +++ b/quickstep/res/values-eu/strings.xml @@ -109,7 +109,7 @@ "Biratu pantaila" "Zereginen barra erabiltzeko argibideak" "Bi aplikazio batera erabiltzeko, arrastatu bat albo batera" - "Zereginen barra ikusteko, pasatu hatza gora poliki" + "Zereginen barra ikusteko, pasatu hatza gora mantso" "Jaso aplikazioen iradokizunak erabileran oinarrituta" "Zereginen barra ainguratzeko, sakatu zatitzailea luze" "Egin gauza gehiago zereginen barrarekin" diff --git a/quickstep/res/values-fi/strings.xml b/quickstep/res/values-fi/strings.xml index 5f5701635e..b92ef0522e 100644 --- a/quickstep/res/values-fi/strings.xml +++ b/quickstep/res/values-fi/strings.xml @@ -108,9 +108,9 @@ "Ohita" "Käännä näyttö" "Tehtäväpalkin ohje" - "Vedä sovellus sivuun, ja voit käyttää kahta sovellusta" + "Vedä sovellus sivuun ja käytä kahta sovellusta" "Näytä tehtäväpalkki pyyhkäisemällä ylös hitaasti" - "Sovellussuosituksia käytön perusteella" + "Vastaanota sovellussuosituksia käytön perusteella" "Kiinnitä tehtäväpalkki painamalla jakajaa pitkään" "Vinkkejä tehtäväpalkin tehokkaampaan käyttöön" "Näytä tehtäväpalkki aina" diff --git a/quickstep/res/values-gl/strings.xml b/quickstep/res/values-gl/strings.xml index 8b69179317..2207f17856 100644 --- a/quickstep/res/values-gl/strings.xml +++ b/quickstep/res/values-gl/strings.xml @@ -111,7 +111,7 @@ "Arrastra unha aplicación cara a un lado para usar dúas á vez" "Pasa o dedo amodo cara arriba para ver a barra de tarefas" "Obtén suxestións de aplicacións en función da túa rutina" - "Mantén premida a liña divisoria para fixar a Barra de tarefas" + "Mantén premida a liña divisoria para fixar a barra de tarefas" "Tira máis proveito da barra de tarefas" "Mostrar sempre a barra de tarefas" "Para fixar a barra de tarefas na parte inferior, mantén premida a liña divisoria" diff --git a/quickstep/res/values-hi/strings.xml b/quickstep/res/values-hi/strings.xml index 1216746a4f..51351cb49f 100644 --- a/quickstep/res/values-hi/strings.xml +++ b/quickstep/res/values-hi/strings.xml @@ -21,9 +21,9 @@ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> "पिन करें" "फ़्रीफ़ॉर्म" - "हाल ही में इस्तेमाल किया गया कोई ऐप्लिकेशन नहीं है" + "हाल ही का कोई आइटम नहीं है" "ऐप्लिकेशन इस्तेमाल की सेटिंग" - "सभी ऐप्लिकेशन बंद करें" + "सभी हटाएं" "हाल ही में इस्तेमाल किए गए ऐप्लिकेशन" "टास्क बंद किया गया" "%1$s, %2$s" @@ -109,7 +109,7 @@ "स्क्रीन घुमाएं" "टास्कबार का ट्यूटोरियल" "किसी ऐप को किनारे की ओर ड्रैग करके 2 ऐप एक साथ इस्तेमाल करें" - "टास्कबार दिखाने के लिए, ऊपर की ओर धीरे से स्वाइप करें" + "टास्कबार देखने के लिए, ऊपर की ओर धीरे से स्वाइप करें" "डिवाइस के इस्तेमाल के आधार पर ऐप्लिकेशन के सुझाव पाएं" "टास्कबार को पिन करने के लिए डिवाइडर को दबाकर रखें" "टास्कबार की मदद से कई और काम करें" diff --git a/quickstep/res/values-hu/strings.xml b/quickstep/res/values-hu/strings.xml index ff784c34a4..7ea486d4d2 100644 --- a/quickstep/res/values-hu/strings.xml +++ b/quickstep/res/values-hu/strings.xml @@ -128,7 +128,7 @@ "Feladatsáv megjelenítve" "Feladatsáv elrejtve" "Navigációs sáv" - "Mindig megjelenő feladatsáv" + "Mindig megjelenő Feladatsáv" "Navigációs mód módosítása" "Feladatsáv-elválasztó" "Mozgatás felülre vagy a bal oldalra" diff --git a/quickstep/res/values-hy/strings.xml b/quickstep/res/values-hy/strings.xml index af613a6e9b..367d378724 100644 --- a/quickstep/res/values-hy/strings.xml +++ b/quickstep/res/values-hy/strings.xml @@ -96,10 +96,10 @@ "Սքրինշոթ անել" "Տրոհել" "Հպեք այլ հավելվածի՝ տրոհված էկրանից օգտվելու համար" - "Ընտրեք այլ հավելված՝ կիսված էկրանից օգտվելու համար" + "Ընտրեք այլ հավելված՝ տրոհված էկրանից օգտվելու համար" "Չեղարկել" "Դուրս գալ տրոհված էկրանի ռեժիմից" - "Ընտրեք այլ հավելված՝ կիսված էկրանից օգտվելու համար" + "Ընտրեք այլ հավելված՝ տրոհված էկրանից օգտվելու համար" "Այս գործողությունն արգելված է հավելվածի կամ ձեր կազմակերպության կողմից" "Վիջեթները ներկայումս չեն աջակցվում. ընտրեք այլ հավելված" "Բաց թողնե՞լ նավիգացիայի ուղեցույցը" diff --git a/quickstep/res/values-in/strings.xml b/quickstep/res/values-in/strings.xml index 5ced56f194..6208796516 100644 --- a/quickstep/res/values-in/strings.xml +++ b/quickstep/res/values-in/strings.xml @@ -96,10 +96,10 @@ "Screenshot" "Pisahkan" "Ketuk aplikasi lain untuk memakai layar terpisah" - "Pilih aplikasi lain untuk menggunakan layar terpisah" + "Pilih aplikasi lain untuk dibuka di layar terpisah" "Batal" "Keluar dari pemilihan layar terpisah" - "Pilih aplikasi lain untuk memakai layar terpisah" + "Pilih aplikasi lain untuk dibuka di layar terpisah" "Tindakan ini tidak diizinkan oleh aplikasi atau organisasi Anda" "Widget saat ini tidak didukung, pilih aplikasi lain" "Lewati tutorial gestur?" @@ -112,7 +112,7 @@ "Geser perlahan ke atas untuk menampilkan Taskbar" "Dapatkan saran aplikasi berdasarkan rutinitas Anda" "Tekan lama pemisah untuk menyematkan Taskbar" - "Lakukan lebih banyak dengan Taskbar" + "Lakukan lebih banyak hal dengan Taskbar" "Selalu tampilkan Taskbar" "Untuk selalu menampilkan Taskbar di bagian bawah layar Anda, sentuh & tahan pembatasnya" "Tutup" diff --git a/quickstep/res/values-iw/strings.xml b/quickstep/res/values-iw/strings.xml index f862f9ae5b..f84db183f2 100644 --- a/quickstep/res/values-iw/strings.xml +++ b/quickstep/res/values-iw/strings.xml @@ -110,7 +110,7 @@ "הסבר על סרגל האפליקציות" "כדי להשתמש בשתי אפליקציות בו-זמנית, צריך לגרור אפליקציה לצד" "צריך להחליק לאט למעלה כדי להציג את סרגל האפליקציות" - "קבלת הצעות לאפליקציות על סמך השימוש השגרתי שלך" + "אפשר לקבל הצעות לאפליקציות על סמך השימוש השגרתי שלך" "כדי להצמיד את סרגל האפליקציות, לוחצים לחיצה ארוכה על המחיצה" "פעולות נוספות שאפשר לעשות עם סרגל האפליקציות" "תמיד להציג את סרגל האפליקציות" diff --git a/quickstep/res/values-kn/strings.xml b/quickstep/res/values-kn/strings.xml index 023f7b5156..6759404c4e 100644 --- a/quickstep/res/values-kn/strings.xml +++ b/quickstep/res/values-kn/strings.xml @@ -111,7 +111,7 @@ "ಒಂದೇ ಬಾರಿಗೆ 2 ಆ್ಯಪ್‌ಗಳನ್ನು ಬಳಸಲು ಆ್ಯಪ್ ಅನ್ನು ಬದಿಗೆ ಎಳೆಯಿರಿ" "ಟಾಸ್ಕ್‌ಬಾರ್ ಕಾಣುವಂತೆ ಮಾಡಲು ನಿಧಾನವಾಗಿ ಮೇಲಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ" "ನಿಮ್ಮ ದಿನಚರಿಯ ಆಧಾರದ ಮೇಲೆ ಆ್ಯಪ್ ಸಲಹೆಗಳನ್ನು ಪಡೆಯಿರಿ" - "ಟಾಸ್ಕ್ ಬಾರ್ ಅನ್ನು ಪಿನ್ ಮಾಡಲು ಡಿವೈಡರ್ ಮೇಲೆ ದೀರ್ಘಕಾಲ ಒತ್ತಿರಿ" + "ಟಾಸ್ಕ್‌‌ಬಾರ್ ಅನ್ನು ಪಿನ್ ಮಾಡಲು ಡಿವೈಡರ್ ಮೇಲೆ ದೀರ್ಘಕಾಲ ಒತ್ತಿರಿ" "ಟಾಸ್ಕ್‌ಬಾರ್ ಮೂಲಕ ಹೆಚ್ಚಿನದನ್ನು ಮಾಡಿ" "ಯಾವಾಗಲೂ ಟಾಸ್ಕ್‌ಬಾರ್ ಅನ್ನು ತೋರಿಸಿ" "ಯಾವಾಗಲೂ ನಿಮ್ಮ ಸ್ಕ್ರೀನ್‌ನ ಕೆಳಭಾಗದಲ್ಲಿ ಟಾಸ್ಕ್ ಬಾರ್ ಅನ್ನು ತೋರಿಸಲು, ಡಿವೈಡರ್ ಅನ್ನು ಸ್ಪರ್ಶಿಸಿ ಹಿಡಿದಿಟ್ಟುಕೊಳ್ಳಿ" diff --git a/quickstep/res/values-ky/strings.xml b/quickstep/res/values-ky/strings.xml index c758411e09..9920b028f7 100644 --- a/quickstep/res/values-ky/strings.xml +++ b/quickstep/res/values-ky/strings.xml @@ -108,11 +108,11 @@ "Өткрп жиберүү" "Экранды буруу" "Тапшырмалар тактасы жөнүндө маалымат" - "2 колдонмону бир убакта пайдалануу үчүн капталга сүйрөңүз" + "2 колдонмону бир убакта пайдалануу үчүн капталга сүйрөйсүз" "Тапшырмалар тактасын көрүү үчүн экранды жай өйдө сүрүңүз" - "Программаңыздын негизинде сунушталган колдонмолорду алуу" - "Тапшырмалар панелин кадап коюу үчүн бөлгүчтү коё бербей басып туруңуз" - "Тапшырмалар тактасы менен көбүрөөк нерселерди аткарыңыз" + "Аракеттериңизге негизделген сунуштарды алып турасыз" + "Тапшырмалар тактасын кадап коюу үчүн бөлгүчтү коё бербей басып турасыз" + "Тапшырмалар тактасы менен көбүрөөк иш бүтүрөсүз" "Тапшырмалар панелин ар дайым көрсөтүү" "Тапшырмалар панелин экрандын ылдый жагында ар дайым көрсөтүү үчүн бөлгүчтү коё бербей басыңыз" "Жабуу" @@ -128,7 +128,7 @@ "Тапшырмалар панели көрсөтүлдү" "Тапшырмалар панели жашырылды" "Чабыттоо тилкеси" - "Тапшырмалар панелин ар дайым көрсөтүү" + "Такта ар дайым көрүнсүн" "Өтүү режимин өзгөртүү" "Тапшырмалар панелин бөлгүч" "Жогорку/сол бурчка жылдыруу" diff --git a/quickstep/res/values-mk/strings.xml b/quickstep/res/values-mk/strings.xml index 560c80c0f6..a36f7b5f5c 100644 --- a/quickstep/res/values-mk/strings.xml +++ b/quickstep/res/values-mk/strings.xml @@ -108,8 +108,8 @@ "Прескокни" "Ротирајте го екранот" "Обука за лентата со задачи" - "Повлечете апликација настрана за да користите 2 апликации" - "Полека повлечете нагоре за да се прикаже лентата со задачи" + "Повлечете апликација настрана за да користите 2 апликации одеднаш" + "Полека повлечете нагоре за да се прикаже „Лентата со задачи“" "Добивајте предлози за апликации според вашата рутина" "Притиснете долго на разделникот за да ја закачите „Лентата со задачи“" "Правете сешто со „Лентата со задачи“" diff --git a/quickstep/res/values-my/strings.xml b/quickstep/res/values-my/strings.xml index d30156e751..e8f2e1fda2 100644 --- a/quickstep/res/values-my/strings.xml +++ b/quickstep/res/values-my/strings.xml @@ -128,7 +128,7 @@ "Taskbar ပြထားသည်" "Taskbar ဖျောက်ထားသည်" "လမ်းညွှန်ဘား" - "Taskbar အမြဲပြပါ" + "Taskbar အမြဲပြရန်" "ရွှေ့ကြည့်သည့်မုဒ် ပြောင်းရန်" "လုပ်ဆောင်စရာဘား ပိုင်းခြားစနစ်" "အပေါ်/ဘယ်ဘက်သို့ ရွှေ့ရန်" diff --git a/quickstep/res/values-nl/strings.xml b/quickstep/res/values-nl/strings.xml index aa6654641c..12cadbbefd 100644 --- a/quickstep/res/values-nl/strings.xml +++ b/quickstep/res/values-nl/strings.xml @@ -96,7 +96,7 @@ "Screenshot" "Splitsen" "Tik op nog een app om je scherm te splitsen" - "Kies andere app om gesplitst scherm te gebruiken" + "Kies een andere app om gesplitst scherm te gebruiken" "Annuleren" "Sluit de selectie voor gesplitst scherm" "Kies andere app om gesplitst scherm te gebruiken" diff --git a/quickstep/res/values-pa/strings.xml b/quickstep/res/values-pa/strings.xml index 2888969b03..e467303622 100644 --- a/quickstep/res/values-pa/strings.xml +++ b/quickstep/res/values-pa/strings.xml @@ -21,7 +21,7 @@ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> "ਪਿੰਨ ਕਰੋ" "ਫ੍ਰੀਫਾਰਮ" - "ਕੋਈ ਹਾਲੀਆ ਆਈਟਮਾਂ ਨਹੀਂ" + "ਕੋਈ ਹਾਲੀਆ ਆਈਟਮ ਨਹੀਂ" "ਐਪ ਵਰਤੋਂ ਦੀਆਂ ਸੈਟਿੰਗਾਂ" "ਸਭ ਕਲੀਅਰ ਕਰੋ" "ਹਾਲੀਆ ਐਪਾਂ" diff --git a/quickstep/res/values-pt-rPT/strings.xml b/quickstep/res/values-pt-rPT/strings.xml index 85fe2fbf61..bacdcf07a7 100644 --- a/quickstep/res/values-pt-rPT/strings.xml +++ b/quickstep/res/values-pt-rPT/strings.xml @@ -36,7 +36,7 @@ "Aceda facilmente às suas apps mais utilizadas, diretamente no ecrã principal. As sugestões mudam em função das suas rotinas. As apps na última fila passam para o ecrã principal." "Aceda facilmente às suas apps mais utilizadas no ecrã principal. As sugestões mudam em função das suas rotinas. As apps na fila dos favoritos passam para o ecrã principal." "Obter sugestões de apps" - "Não, obrigado" + "Não" "Definições" "As apps mais utilizadas aparecem aqui e mudam em função das rotinas." "Arraste as apps para fora da última fila para ver sugestões de apps." @@ -109,7 +109,7 @@ "Rodar ecrã" "Educação da Barra de tarefas" "Arraste uma app para o lado para usar 2 apps em simultâneo" - "Deslize lentamente para cima para mostrar a Barra de tarefas" + "Deslize lentamente para cima para ver a Barra de tarefas" "Receba sugestões de apps baseadas na sua rotina" "Mantenha o divisor premido para fixar a Barra de tarefas" "Faça mais com a Barra de tarefas" diff --git a/quickstep/res/values-sk/strings.xml b/quickstep/res/values-sk/strings.xml index 22a7c0c298..49acd720ea 100644 --- a/quickstep/res/values-sk/strings.xml +++ b/quickstep/res/values-sk/strings.xml @@ -96,7 +96,7 @@ "Snímka obrazovky" "Rozdeliť" "Obrazovku rozdelíte klepnutím na inú aplikáciu" - "Na použitie rozdelenej obrazovky vyberte inú aplikáciu" + "Na použitie rozdelenej obrazovky vyberte ďalšiu aplikáciu" "Zrušiť" "Ukončite výber rozdelenej obrazovky" "Na použitie rozd. obrazovky vyberte inú aplikáciu" diff --git a/quickstep/res/values-sl/strings.xml b/quickstep/res/values-sl/strings.xml index 9a36faa3bb..9f7a92843a 100644 --- a/quickstep/res/values-sl/strings.xml +++ b/quickstep/res/values-sl/strings.xml @@ -128,7 +128,7 @@ "Opravilna vrstica je prikazana" "Opravilna vrstica je skrita" "Vrstica za krmarjenje" - "Stalen prikaz opravilne vrstice" + "Stalen prikaz oprav. vrstice" "Spreminjanje načina navigacije" "Razdelilnik opravilne vrstice" "Premakni na vrh/levo" diff --git a/quickstep/res/values-sr/strings.xml b/quickstep/res/values-sr/strings.xml index 36b89f6817..a7bce7b365 100644 --- a/quickstep/res/values-sr/strings.xml +++ b/quickstep/res/values-sr/strings.xml @@ -111,7 +111,7 @@ "Превуците на страну да бисте користили 2 апликације одједном" "Споро превуците нагоре да бисте видели траку задатака" "Добијајте предлоге апликација на основу рутине" - "Дуго притискајте разделник да бисте закачили траку задатака" + "Дуго притисните разделник да бисте закачили траку задатака" "Урадите више помоћу траке задатака" "Увек приказуј траку задатака" "Да би трака задатака увек била приказана у дну екрана, додирните и задржите разделник" diff --git a/quickstep/res/values-zh-rCN/strings.xml b/quickstep/res/values-zh-rCN/strings.xml index 62269f0f22..f542c9eca2 100644 --- a/quickstep/res/values-zh-rCN/strings.xml +++ b/quickstep/res/values-zh-rCN/strings.xml @@ -109,7 +109,7 @@ "旋转屏幕" "任务栏教程" "将一个应用拖到一侧,即可同时使用两个应用" - "缓慢向上滑动即可显示任务栏" + "缓慢上滑即可显示任务栏" "根据您的日常使用习惯获得应用建议" "长按分隔线即可固定任务栏" "体验任务栏的更多功能" diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml index 1e1b3f3a3a..262038d202 100644 --- a/res/values-af/strings.xml +++ b/res/values-af/strings.xml @@ -82,7 +82,7 @@ "Lys werkprogramme" "Verwyder" "Deïnstalleer" - "Programinligting" + "Appinligting" "Installeer privaat" "Installeer" "Moenie voorstel nie" diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml index e1b98fb5c3..618e994b7f 100644 --- a/res/values-ar/strings.xml +++ b/res/values-ar/strings.xml @@ -29,7 +29,7 @@ "الشاشة الرئيسية" "تقسيم الشاشة" "‏معلومات تطبيق %1$s" - "حفظ إعدادات ميزة \"استخدام تطبيقين في الوقت نفسه\"" + "حفظ استخدام التطبيقين معًا" "%1$s | ‏%2$s" "لا يمكن استخدام هذين التطبيقَين في الوقت نفسه على هذا الجهاز" "افتح الجهاز لاستخدام هذين التطبيقَين في الوقت نفسه" @@ -38,7 +38,7 @@ "%1$d × %2$d" "‏العرض %1$d الطول %2$d" "أداة %1$s" - "انقر مع الاستمرار على التطبيق المصغّر لنقله إلى الشاشة الرئيسية." + "انقر مع الاستمرار على التطبيق المصغّر لنقله إلى الشاشة الرئيسية" "إضافة إلى الشاشة الرئيسية" "تمت إضافة الأداة %1$s إلى الشاشة الرئيسية." "اقتراحات" diff --git a/res/values-as/strings.xml b/res/values-as/strings.xml index 940e2dbcda..0abdd363c8 100644 --- a/res/values-as/strings.xml +++ b/res/values-as/strings.xml @@ -182,11 +182,11 @@ "আনপজ কৰক" "ফিল্টাৰ" "বিফল: %1$s" - "ব্যক্তিগত স্পে’চ" + "প্ৰাইভেট স্পে\'চ" "ব্যক্তিগত এপ্‌সমূহ লক কৰি লুকুৱাই ৰাখক" "ব্যক্তিগত" "ব্যক্তিগত স্পে’চৰ ছেটিং" - "ব্যক্তিগত স্পে’চ লক/আনলক কৰক" + "প্ৰাইভেট স্পে\'চ লক/আনলক কৰক" "লক কৰক" "ব্যক্তিগত স্পে’চৰ স্থানান্তৰণ" "এপ্‌ ইনষ্টল কৰক" diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml index b99ec65e39..a3b80a6204 100644 --- a/res/values-b+sr+Latn/strings.xml +++ b/res/values-b+sr+Latn/strings.xml @@ -82,7 +82,7 @@ "Lista poslovnih aplikacija" "Ukloni" "Deinstaliraj" - "Infor. o aplikaciji" + "Podaci o aplikaciji" "Instaliraj na privatni" "Instaliraj" "Ne predlaži aplikaciju" diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml index 0c4356174d..50f7a2e8e3 100644 --- a/res/values-bs/strings.xml +++ b/res/values-bs/strings.xml @@ -38,7 +38,7 @@ "%1$d × %2$d" "Širina %1$d, visina %2$d" "Vidžet %1$s" - "Dodirnite i držite vidžet da ga pomjerate po početnom ekranu" + "Dodirnite i zadržite vidžet da ga pomjerate po početnom ekranu" "Dodaj na početni ekran" "Vidžet %1$s je dodan na početni ekran" "Prijedlozi" diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml index 37d8626f9a..6825237134 100644 --- a/res/values-ca/strings.xml +++ b/res/values-ca/strings.xml @@ -113,7 +113,7 @@ "Parella d\'aplicacions: %1$s i %2$s" "Estil i fons de pantalla" "Edita la pantalla d\'inici" - "Config. pantalla d\'inici" + "Configuració de la pantalla d\'inici" "Desactivada per l\'administrador" "Permet la rotació de la pantalla d\'inici" "En girar el telèfon" @@ -189,7 +189,7 @@ "Bloqueja o desbloqueja Espai privat" "Bloqueja" "Canvia a Espai privat" - "Instal·la aplicacions" + "Instal·la apps" "Instal·la les aplicacions a Espai privat" "Menú addicional" diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml index 2def07ca44..ebc7e20994 100644 --- a/res/values-cs/strings.xml +++ b/res/values-cs/strings.xml @@ -29,7 +29,7 @@ "Domů" "Rozdělit obrazovku" "Informace o aplikaci %1$s" - "Uložit pár aplikací" + "Uložit dvojici aplikací" "%1$s | %2$s" "Tento pár aplikací není na tomto zařízení podporován" "Pokud chcete použít tento pár aplikací, rozložte zařízení" diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml index 5eff0b058c..8dcb567f1f 100644 --- a/res/values-de/strings.xml +++ b/res/values-de/strings.xml @@ -183,7 +183,7 @@ "Filter" "Fehler: %1$s" "Privates Profil" - "Hier kannst du deine privaten Apps verstecken und sperren" + "Hier kannst du deine privaten Apps verbergen und sperren" "Privat" "Einstellungen für privaten Bereich" "Privaten Bereich sperren/entsperren" diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml index a7259a2634..dbb109ba66 100644 --- a/res/values-es-rUS/strings.xml +++ b/res/values-es-rUS/strings.xml @@ -29,7 +29,7 @@ "Pantalla principal" "Pantalla dividida" "Información de la app de %1$s" - "Guardar vinculación de apps" + "Guardar vinculación" "%1$s | %2$s" "No se admite esta vinculación de apps en este dispositivo" "Abre el dispositivo para usar esta vinculación de apps" diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml index f269c25b8f..047ef0a53b 100644 --- a/res/values-eu/strings.xml +++ b/res/values-eu/strings.xml @@ -113,7 +113,7 @@ "Aplikazio parea: %1$s eta %2$s" "Horma-papera eta estiloa" "Editatu orri nagusia" - "Orri nagusiaren ezarpenak" + "Orri nagusiko ezarpenak" "Administratzaileak desgaitu du" "Eman orri nagusia biratzeko baimena" "Telefonoa biratzean" diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml index 6ddeeef145..4d7c44312e 100644 --- a/res/values-fr-rCA/strings.xml +++ b/res/values-fr-rCA/strings.xml @@ -29,7 +29,7 @@ "Accueil" "Écran divisé" "Renseignements sur l\'appli pour %1$s" - "Enregistrer la paire d\'applications" + "Enr. paire d\'applis" "%1$s | %2$s" "Cette paire d\'applications n\'est pas prise en charge sur cet appareil" "Déplier l\'appareil pour utiliser cette paire d\'applications" diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml index fdeae1cb0f..f6803053b3 100644 --- a/res/values-fr/strings.xml +++ b/res/values-fr/strings.xml @@ -118,8 +118,8 @@ "Autoriser la rotation de l\'écran d\'accueil" "Lorsque vous faites pivoter le téléphone" "Pastilles de notification" - "Activé" - "Désactivé" + "Activées" + "Désactivées" "Accès aux notifications requis" "Pour afficher les pastilles de notification, activez les notifications de l\'application %1$s" "Modifier les paramètres" @@ -189,7 +189,7 @@ "Verrouiller/Déverrouiller Espace privé" "Verrouiller" "Transition vers Espace privé" - "Installer des applis" + "Installer applis" "Installer des applis dans l\'espace privé" "Dépassement" diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml index 9388948f47..038821efb0 100644 --- a/res/values-gl/strings.xml +++ b/res/values-gl/strings.xml @@ -29,7 +29,7 @@ "Inicio" "Pantalla dividida" "Información da aplicación para %1$s" - "Gardar emparellamento de aplicacións" + "Gardar parella de apps" "%1$s | %2$s" "O dispositivo non admite este emparellamento de aplicacións" "Desprega o dispositivo para usar este emparellamento de aplicacións" @@ -82,7 +82,7 @@ "Lista de aplicacións de traballo" "Quitar" "Desinstalar" - "Info. da aplicación" + "Información da app" "Instalar en privado" "Instalar" "Non suxerir aplicación" diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml index f0431490da..8636ed1880 100644 --- a/res/values-hi/strings.xml +++ b/res/values-hi/strings.xml @@ -29,7 +29,7 @@ "होम स्क्रीन" "स्प्लिट स्क्रीन" "%1$s के लिए ऐप्लिकेशन की जानकारी" - "साथ में इस्तेमाल किए जा सकने वाले ऐप्लिकेशन की जानकारी सेव करें" + "ऐप पेयर सेव करें" "%1$s | %2$s" "साथ में इस्तेमाल किए जा सकने वाले ये ऐप्लिकेशन, इस डिवाइस पर काम नहीं कर सकते" "साथ में इस्तेमाल किए जा सकने वाले ये ऐप्लिकेशन इस्तेमाल करने के लिए डिवाइस को अनफ़ोल्ड करें" @@ -183,7 +183,7 @@ "फ़िल्टर" "पूरा नहीं हुआ: %1$s" "प्राइवेट स्पेस" - "निजी ऐप्लिकेशन, लॉक करें और छिपाकर रखें" + "निजी ऐप्लिकेशन को लॉक करके और छिपाकर रखें" "निजी" "प्राइवेट स्पेस सेटिंग" "प्राइवेट स्पेस को लॉक करें/अनलॉक करें" diff --git a/res/values-hy/strings.xml b/res/values-hy/strings.xml index 83a4559c54..ef77cd98a5 100644 --- a/res/values-hy/strings.xml +++ b/res/values-hy/strings.xml @@ -29,7 +29,7 @@ "Հիմնական էկրան" "Տրոհել էկրանը" "Տեղեկություններ %1$s հավելվածի մասին" - "Պահել հավելվածների զույգը" + "Պահել հավելվ. զույգը" "%1$s | %2$s" "Հավելվածների զույգը չի աջակցվում այս սարքում" "Բացեք սարքը՝ այս հավելվածների զույգն օգտագործելու համար" @@ -186,9 +186,9 @@ "Անձնական հավելվածները պահեք կողպված և թաքցված" "Անձնական" "Անձնական տարածքի կարգավորումներ" - "Կողպել/ապակողպել անձնական տարածքը" + "Կողպել/ապակողպել մասնավոր տարածքը" "Կողպում" - "Անցում անձնական տարածք" + "Անցում մասնավոր տարածք" "Հավելվածների տեղադրում" "Հավելվածների տեղադրում անձնական տարածքում" "Լրացուցիչ ընտրացանկ" diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml index edf62a4f62..0fdae966c1 100644 --- a/res/values-in/strings.xml +++ b/res/values-in/strings.xml @@ -32,7 +32,7 @@ "Simpan pasangan aplikasi" "%1$s | %2$s" "Pasangan aplikasi ini tidak didukung di perangkat ini" - "Buka perangkat untuk menggunakan pasangan aplikasi ini" + "Bentangkan perangkat untuk menggunakan pasangan aplikasi ini" "Sentuh lama untuk memindahkan widget." "Ketuk dua kali & tahan untuk memindahkan widget atau gunakan tindakan khusus." "%1$d × %2$d" @@ -183,13 +183,13 @@ "Filter" "Gagal: %1$s" "Ruang pribadi" - "Tetap kunci dan sembunyikan aplikasi pribadi" + "Kunci dan sembunyikan aplikasi pribadi" "Pribadi" "Setelan Ruang Pribadi" "Kunci/Buka Kunci Ruang Pribadi" "Kunci" "Ruang Pribadi Bertransisi" - "Menginstal aplikasi" + "Instal aplikasi" "Instal aplikasi ke Ruang Pribadi" "Menu tambahan" diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml index b75f61fa13..51c2e522b5 100644 --- a/res/values-is/strings.xml +++ b/res/values-is/strings.xml @@ -186,10 +186,10 @@ "Haltu einkaforritum læstum og földum" "Lokað" "Stillingar einkarýmis" - "Læsaeinkarými/taka einkarými úr lás" + "Læsa leynirými/taka leynirými úr lás" "Læsa" "Einkarými að breytast" "Setja upp forrit" - "Setja upp forrit í einkarými" + "Setja upp forrit í leynirými" "Yfirflæði" diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml index 3132e2dc93..461a25e54d 100644 --- a/res/values-iw/strings.xml +++ b/res/values-iw/strings.xml @@ -29,7 +29,7 @@ "בית" "מסך מפוצל" "‏פרטים על האפליקציה %1$s" - "שמירה של צמד אפליקציות" + "שמירת צמד אפליקציות" "%1$s | %2$s" "צמד האפליקציות הזה לא נתמך במכשיר הזה" "צריך לפתוח את המכשיר כדי להשתמש בצמד האפליקציות הזה" diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml index 7f6846cd91..5b3e221001 100644 --- a/res/values-ja/strings.xml +++ b/res/values-ja/strings.xml @@ -123,7 +123,7 @@ "通知へのアクセス権限が必要" "通知ドットを表示するには、「%1$s」のアプリ通知を ON にしてください" "設定を変更" - "通知ドットの表示" + "通知ドットを表示" "開発者向けオプション" "ホーム画面にアプリのアイコンを追加" "新しいアプリをダウンロードしたときに自動で追加します" @@ -183,7 +183,7 @@ "フィルタ" "失敗: %1$s" "プライベート スペース" - "限定公開アプリをロックして非表示" + "プライベート アプリをロック / 非表示状態に保つ" "プライベート" "プライベート スペースの設定" "プライベート スペースをロック / ロック解除する" diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml index 2832941591..fa9a33243f 100644 --- a/res/values-kn/strings.xml +++ b/res/values-kn/strings.xml @@ -29,7 +29,7 @@ "ಹೋಮ್" "ಸ್ಪ್ಲಿಟ್ ಸ್ಕ್ರೀನ್" "%1$s ಗಾಗಿ ಆ್ಯಪ್ ಮಾಹಿತಿ" - "ಆ್ಯಪ್ ಜೋಡಿ ಉಳಿಸಿ" + "ಆ್ಯಪ್ ಪೇರ್ ಸೇವ್ ಮಾಡಿ" "%1$s | %2$s" "ಈ ಆ್ಯಪ್ ಜೋಡಿಯು ಈ ಸಾಧನದಲ್ಲಿ ಬೆಂಬಲಿತವಾಗಿಲ್ಲ" "ಈ ಆ್ಯಪ್ ಜೋಡಿಯನ್ನು ಬಳಸಲು ಸಾಧನವನ್ನು ಅನ್‌ಫೋಲ್ಡ್ ಮಾಡಿ" diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml index 7c32fe64e0..4c73a208f6 100644 --- a/res/values-ky/strings.xml +++ b/res/values-ky/strings.xml @@ -29,7 +29,7 @@ "Башкы экран" "Экранды бөлүү" "%1$s колдонмосу жөнүндө маалымат" - "Эки колдонмону бир маалда пайдаланууну сактоо" + "Колдонмолорду сактап коюу" "%1$s | %2$s" "Бул эки колдонмону бул түзмөктө бир маалда пайдаланууга болбойт" "Бул эки колдонмону бир маалда пайдалануу үчүн түзмөктү ачыңыз" @@ -182,11 +182,11 @@ "Улантуу" "Чыпкалоо" "Аткарылган жок: %1$s" - "Жеке чөйрө" + "Жеке мейкиндик" "Жеке колдонмолорду кулпулап жана жашырып коюңуз" "Жеке" - "Жеке чөйрөнүн параметрлери" - "Жеке чөйрөнү кулпулоо/кулпусун ачуу" + "Жеке мейкиндиктин параметрлери" + "Жеке мейкиндикти кулпулоо/кулпусун ачуу" "Кулпулоо" "Жеке чөйрөгө өтүү" "Колдонмолорду орнотуу" diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml index 184d7cce52..6a4dd26f0b 100644 --- a/res/values-mk/strings.xml +++ b/res/values-mk/strings.xml @@ -189,7 +189,7 @@ "Заклучување/отклучување на „Приватен простор“" "Брава" "Префрлање на „Приватен простор“" - "Инсталирање апликации" + "Инсталирајте апликации" "Инсталирање апликации во „Приватен простор“" "Проширено балонче" diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml index c54f6141bb..bf83246d56 100644 --- a/res/values-mr/strings.xml +++ b/res/values-mr/strings.xml @@ -117,7 +117,7 @@ "आपल्या प्रशासकाने अक्षम केले" "होम स्क्रीन फिरवण्‍याची अनुमती द्या" "फोन फिरवला जातो तेव्हा" - "सूचना बिंदू" + "नोटिफिकेशन डॉट" "सुरू" "बंद" "सूचनांच्या अ‍ॅक्सेसची आवश्यकता आहे" @@ -145,8 +145,8 @@ "होम स्क्रीनवर जोडा" "आयटम येथे हलवा" "आयटम मुख्य स्क्रीनवर जोडला" - "आयटम काढला" - "पूर्ववत करा" + "आयटम काढून टाकला" + "पहिल्यासारखे करा" "आयटम हलवा" "%3$s मधील %1$s पंक्ती %2$s स्तंभ यावर हलवा" "%1$s स्थानावर हलवा" diff --git a/res/values-ms/strings.xml b/res/values-ms/strings.xml index ac7f8ed080..0f3d20d73a 100644 --- a/res/values-ms/strings.xml +++ b/res/values-ms/strings.xml @@ -182,8 +182,8 @@ "Nyahjeda" "Tapis" "Gagal: %1$s" - "Ruang peribadi" - "Pastikan apl peribadi kekal dikunci dan disembunyikan" + "Ruang privasi" + "Kunci dan sembunyikan apl peribadi" "Peribadi" "Tetapan Ruang Peribadi" "Kunci/Buka kunci Ruang Peribadi" diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml index c3067bb2f5..05736a50f3 100644 --- a/res/values-my/strings.xml +++ b/res/values-my/strings.xml @@ -38,7 +38,7 @@ "%1$d × %2$d" "အလျား %1$d နှင့် အမြင့် %2$d" "%1$s ဝိဂျက်" - "ပင်မစာမျက်နှာတွင်ရွှေ့ရန် ဝိဂျက်ကို တို့ထိ၍ ဖိထားပါ" + "ဝိဂျက်ကို တို့ထိ၍ ဖိထားပြီး ပင်မစာမျက်နှာပေါ်တွင် နေရာအမျိုးမျိုးသို့ ရွှေ့နိုင်သည်" "ပင်မစာမျက်နှာတွင် ထည့်ရန်" "%1$s ဝိဂျက်ကို ပင်မစာမျက်နှာတွင် ထည့်လိုက်ပြီ" "အကြံပြုချက်" diff --git a/res/values-ne/strings.xml b/res/values-ne/strings.xml index d9b4efd348..246e2947b6 100644 --- a/res/values-ne/strings.xml +++ b/res/values-ne/strings.xml @@ -78,8 +78,8 @@ "मन पर्ने ट्रे अब कुनै ठाँउ छैन" "एपको सूची" "खोज परिणामहरू" - "व्यक्तिगत अनुप्रयोगहरूको सूची" - "कार्यसम्बन्धी अनुप्रयोगहरूको सूची" + "व्यक्तिगत एपहरूको सूची" + "कार्यसम्बन्धी एपहरूको सूची" "हटाउनुहोस्" "अनइन्स्टल गर्नुहोस्" "एपसम्बन्धी जानकारी" diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml index dd7ddeb5f7..19600a04bf 100644 --- a/res/values-nl/strings.xml +++ b/res/values-nl/strings.xml @@ -38,7 +38,7 @@ "%1$d × %2$d" "%1$d breed en %2$d hoog" "Widget %1$s" - "Tik op de widget en houd vast om deze te verplaatsen op het startscherm" + "Houd je vinger op de widget om deze te verplaatsen op het startscherm" "Toevoegen aan startscherm" "Widget %1$s toegevoegd aan startscherm" "Suggesties" @@ -172,7 +172,7 @@ "Werkprofiel" "Werk-apps hebben badges en zijn zichtbaar voor je IT-beheerder" "OK" - "Werk-apps zijn onderbroken" + "Werk-apps zijn gepauzeerd" "Je krijgt geen meldingen van je werk-apps" "Je werk-apps kunnen je geen meldingen sturen, je batterij niet gebruiken en geen toegang krijgen tot je locatie" "Je krijgt geen telefoongesprekken, tekstberichten of meldingen van je werk-apps" diff --git a/res/values-or/strings.xml b/res/values-or/strings.xml index 9b71abbeaa..44a85ca8e7 100644 --- a/res/values-or/strings.xml +++ b/res/values-or/strings.xml @@ -82,7 +82,7 @@ "କାର୍ଯ୍ୟକାରୀ ଆପ୍‌ ତାଲିକା" "କାଢ଼ି ଦିଅନ୍ତୁ" "ଅନଇନଷ୍ଟଲ କରନ୍ତୁ" - "ଆପ୍‌ ସୂଚନା" + "ଆପ ସୂଚନା" "ପ୍ରାଇଭେଟରେ ଇନଷ୍ଟଲ କର" "ଇନଷ୍ଟଲ୍‌ କରନ୍ତୁ" "ଆପ ପରାମର୍ଶ ଦିଅନ୍ତୁ ନାହିଁ" @@ -146,7 +146,7 @@ "ଆଇଟମ୍‌କୁ ଏଠାକୁ ଘୁଞ୍ଚାନ୍ତୁ" "ହୋମ ସ୍କ୍ରିନରେ ଆଇଟମ ଯୋଗ କରାଗଲା" "ଆଇଟମକୁ କାଢ଼ି ଦିଆଯାଇଛି" - "ପୂର୍ବବତ୍‍" + "ପୂର୍ବବତ କରନ୍ତୁ" "ଆଇଟମ୍‌ ଘୁଞ୍ଚାନ୍ତୁ" "%3$sରେ ଧାଡି %1$s ସ୍ତମ୍ଭ %2$sକୁ ମୁଭ କରନ୍ତୁ" "%1$s ସ୍ଥିତିକୁ ନିଅନ୍ତୁ" diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml index e382ba9703..b9436026cf 100644 --- a/res/values-pl/strings.xml +++ b/res/values-pl/strings.xml @@ -123,7 +123,7 @@ "Wymagany jest dostęp do powiadomień" "Aby pokazywać kropki powiadomień, włącz powiadomienia aplikacji %1$s" "Zmień ustawienia" - "Pokaż kropki powiadomień" + "Pokazuj kropki powiadomień" "Opcje programisty" "Dodawaj ikony aplikacji do ekranu głównego" "W przypadku nowych aplikacji" diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml index 1e8407a915..0b429669d5 100644 --- a/res/values-ru/strings.xml +++ b/res/values-ru/strings.xml @@ -29,7 +29,7 @@ "Главный экран" "Разделить экран" "Сведения о приложении \"%1$s\"" - "Сохранить настройки одновременного использования двух приложений" + "Сохранить приложения" "%1$s | %2$s" "Одновременно использовать эти два приложения на устройстве нельзя." "Чтобы одновременно использовать эти два приложения, разложите устройство." diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml index 270654df30..03eb6039ca 100644 --- a/res/values-sr/strings.xml +++ b/res/values-sr/strings.xml @@ -82,7 +82,7 @@ "Листа пословних апликација" "Уклони" "Деинсталирај" - "Инфор. о апликацији" + "Подаци о апликацији" "Инсталирај на приватни" "Инсталирај" "Не предлажи апликацију" diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml index 32c52d8b4c..dab8407bab 100644 --- a/res/values-sv/strings.xml +++ b/res/values-sv/strings.xml @@ -29,7 +29,7 @@ "Startskärm" "Delad skärm" "Appinformation för %1$s" - "Spara appar som ska användas tillsammans" + "Spara app-par" "%1$s | %2$s" "De här apparna som ska användas tillsammans stöds inte på den här enheten" "Vik upp enheten för att använda de här apparna som ska användas tillsammans" diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml index 8e4dc1dc3d..16c9cb8d64 100644 --- a/res/values-tl/strings.xml +++ b/res/values-tl/strings.xml @@ -29,7 +29,7 @@ "Home" "Split screen" "Impormasyon ng app para sa %1$s" - "I-save ang pares ng app" + "I-save ang app pair" "%1$s | %2$s" "Hindi sinusuportahan sa device na ito ang pares ng app na ito" "I-unfold ang device para magamit ang pares ng app na ito" diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml index 26f42d89be..4c95167da5 100644 --- a/res/values-zh-rCN/strings.xml +++ b/res/values-zh-rCN/strings.xml @@ -29,16 +29,16 @@ "主屏幕" "分屏" "%1$s 的应用信息" - "保存应用对" + "保存应用组合" "%1$s | %2$s" "在该设备上无法使用此应用对" - "展开设备即可使用此应用对" + "展开设备即可使用此应用组合" "轻触并按住即可移动微件。" "点按两次并按住微件即可移动该微件或使用自定义操作。" "%1$d × %2$d" "宽 %1$d,高 %2$d" "“%1$s”微件" - "轻触并按住此微件即可在主屏幕上随意移动它" + "轻触并按住此微件即可在主屏幕上随意移动" "添加到主屏幕" "已将“%1$s”微件添加到主屏幕" "建议" diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml index 1385fcedbc..451efc7bc1 100644 --- a/res/values-zh-rTW/strings.xml +++ b/res/values-zh-rTW/strings.xml @@ -38,7 +38,7 @@ "%1$d × %2$d" "寬度為 %1$d,高度為 %2$d" "「%1$s」小工具" - "按住小工具即可將它移到主畫面上的任何位置" + "按住小工具即可拖曳到主畫面的任何位置" "新增至主畫面" "已將「%1$s」小工具新增到主畫面" "建議"