diff options
153 files changed, 3084 insertions, 1783 deletions
diff --git a/Android.mk b/Android.mk index 4d52055b9bf2..45438ade8598 100644 --- a/Android.mk +++ b/Android.mk @@ -859,6 +859,7 @@ framework_docs_LOCAL_DROIDDOC_OPTIONS := \ -since $(SRC_API_DIR)/22.txt 22 \ -since $(SRC_API_DIR)/23.txt 23 \ -since $(SRC_API_DIR)/24.txt 24 \ + -since $(SRC_API_DIR)/25.txt 25 \ -werror -hide 111 -hide 113 \ -overview $(LOCAL_PATH)/core/java/overview.html diff --git a/core/java/android/app/ResourcesManager.java b/core/java/android/app/ResourcesManager.java index 55bb878a9941..4916c1c1f5c7 100644 --- a/core/java/android/app/ResourcesManager.java +++ b/core/java/android/app/ResourcesManager.java @@ -840,19 +840,22 @@ public class ResourcesManager { tmpConfig = new Configuration(); } tmpConfig.setTo(config); + + // Get new DisplayMetrics based on the DisplayAdjustments given + // to the ResourcesImpl. Update a copy if the CompatibilityInfo + // changed, because the ResourcesImpl object will handle the + // update internally. + DisplayAdjustments daj = r.getDisplayAdjustments(); + if (compat != null) { + daj = new DisplayAdjustments(daj); + daj.setCompatibilityInfo(compat); + } + dm = getDisplayMetrics(displayId, daj); + if (!isDefaultDisplay) { - // Get new DisplayMetrics based on the DisplayAdjustments given - // to the ResourcesImpl. Udate a copy if the CompatibilityInfo - // changed, because the ResourcesImpl object will handle the - // update internally. - DisplayAdjustments daj = r.getDisplayAdjustments(); - if (compat != null) { - daj = new DisplayAdjustments(daj); - daj.setCompatibilityInfo(compat); - } - dm = getDisplayMetrics(displayId, daj); applyNonDefaultDisplayMetricsToConfiguration(dm, tmpConfig); } + if (hasOverrideConfiguration) { tmpConfig.updateFrom(key.mOverrideConfiguration); } diff --git a/core/java/android/bluetooth/BluetoothAdapter.java b/core/java/android/bluetooth/BluetoothAdapter.java index d419d0384f5c..0ad46e6f239e 100644 --- a/core/java/android/bluetooth/BluetoothAdapter.java +++ b/core/java/android/bluetooth/BluetoothAdapter.java @@ -2015,7 +2015,7 @@ public final class BluetoothAdapter { final private IBluetoothManagerCallback mManagerCallback = new IBluetoothManagerCallback.Stub() { public void onBluetoothServiceUp(IBluetooth bluetoothService) { - if (VDBG) Log.d(TAG, "onBluetoothServiceUp: " + bluetoothService); + if (DBG) Log.d(TAG, "onBluetoothServiceUp: " + bluetoothService); mServiceLock.writeLock().lock(); mService = bluetoothService; @@ -2037,7 +2037,7 @@ public final class BluetoothAdapter { } public void onBluetoothServiceDown() { - if (VDBG) Log.d(TAG, "onBluetoothServiceDown: " + mService); + if (DBG) Log.d(TAG, "onBluetoothServiceDown: " + mService); try { mServiceLock.writeLock().lock(); @@ -2065,7 +2065,7 @@ public final class BluetoothAdapter { } public void onBrEdrDown() { - if (VDBG) Log.i(TAG, "on QBrEdrDown: "); + if (DBG) Log.i(TAG, "onBrEdrDown:"); } }; diff --git a/core/java/android/content/pm/ShortcutInfo.java b/core/java/android/content/pm/ShortcutInfo.java index ed0ac5386176..a854b899a82a 100644 --- a/core/java/android/content/pm/ShortcutInfo.java +++ b/core/java/android/content/pm/ShortcutInfo.java @@ -46,7 +46,7 @@ import java.util.List; import java.util.Set; /** - * Represents a "launcher shortcut" that can be published via {@link ShortcutManager}. + * Represents a shortcut that can be published via {@link ShortcutManager}. * * @see ShortcutManager */ @@ -776,17 +776,17 @@ public final class ShortcutInfo implements Parcelable { * activity is published using * {@link ShortcutManager#addDynamicShortcuts(List)} or * {@link ShortcutManager#setDynamicShortcuts(List)}, - * the first main activity defined in the application's <code>AndroidManifest.xml</code> + * the first main activity defined in the app's <code>AndroidManifest.xml</code> * file is used. * * <li>Only "main" activities—ones that define the {@link Intent#ACTION_MAIN} * and {@link Intent#CATEGORY_LAUNCHER} intent filters—can be target * activities. * - * <li>By default, the first main activity defined in the application manifest is + * <li>By default, the first main activity defined in the app's manifest is * the target activity. * - * <li>A target activity must belong to the publisher application. + * <li>A target activity must belong to the publisher app. * </ul> * * @see ShortcutInfo#getActivity() @@ -802,7 +802,7 @@ public final class ShortcutInfo implements Parcelable { * * <p>Icons are not available on {@link ShortcutInfo} instances * returned by {@link ShortcutManager} or {@link LauncherApps}. The default launcher - * application can use {@link LauncherApps#getShortcutIconDrawable(ShortcutInfo, int)} + * app can use {@link LauncherApps#getShortcutIconDrawable(ShortcutInfo, int)} * or {@link LauncherApps#getShortcutBadgedIconDrawable(ShortcutInfo, int)} to fetch * shortcut icons. * @@ -933,8 +933,8 @@ public final class ShortcutInfo implements Parcelable { } /** - * Sets categories for a shortcut. Launcher applications may use this information to - * categorise shortcuts. + * Sets categories for a shortcut. Launcher apps may use this information to + * categorize shortcuts. * * @see #SHORTCUT_CATEGORY_CONVERSATION * @see ShortcutInfo#getCategories() @@ -953,9 +953,9 @@ public final class ShortcutInfo implements Parcelable { * {@link ShortcutManager#addDynamicShortcuts(List)} or * {@link ShortcutManager#setDynamicShortcuts(List)}. * - * <p>A shortcut can launch any intent that the publisher application has permission to + * <p>A shortcut can launch any intent that the publisher app has permission to * launch. For example, a shortcut can launch an unexported activity within the publisher - * application. A shortcut intent doesn't have to point at the target activity. + * app. A shortcut intent doesn't have to point at the target activity. * * <p>The given {@code intent} can contain extras, but these extras must contain values * of primitive types in order for the system to persist these values. @@ -970,7 +970,9 @@ public final class ShortcutInfo implements Parcelable { /** * Sets multiple intents instead of a single intent, in order to launch an activity with - * other activities in back stack. Use {@link TaskStackBuilder} to build intents. + * other activities in back stack. Use {@link TaskStackBuilder} to build intents. The + * last element in the list represents the only intent that doesn't place an activity on + * the back stack. * See the {@link ShortcutManager} javadoc for details. * * @see Builder#setIntent(Intent) @@ -1006,9 +1008,9 @@ public final class ShortcutInfo implements Parcelable { } /** - * Extras that application can set for any purpose. + * Extras that the app can set for any purpose. * - * <p>Applications can store arbitrary shortcut metadata in extras and retrieve the + * <p>Apps can store arbitrary shortcut metadata in extras and retrieve the * metadata later using {@link ShortcutInfo#getExtras()}. */ @NonNull @@ -1029,7 +1031,7 @@ public final class ShortcutInfo implements Parcelable { /** * Returns the ID of a shortcut. * - * <p>Shortcut IDs are unique within each publisher application and must be stable across + * <p>Shortcut IDs are unique within each publisher app and must be stable across * devices so that shortcuts will still be valid when restored on a different device. * See {@link ShortcutManager} for details. */ @@ -1039,7 +1041,7 @@ public final class ShortcutInfo implements Parcelable { } /** - * Return the package name of the publisher application. + * Return the package name of the publisher app. */ @NonNull public String getPackage() { @@ -1050,7 +1052,7 @@ public final class ShortcutInfo implements Parcelable { * Return the target activity. * * <p>This has nothing to do with the activity that this shortcut will launch. - * Launcher applications should show the launcher icon for the returned activity alongside + * Launcher apps should show the launcher icon for the returned activity alongside * this shortcut. * * @see Builder#setActivity @@ -1102,7 +1104,7 @@ public final class ShortcutInfo implements Parcelable { } /** - * Return the shorter description of a shortcut. + * Return the short description of a shortcut. * * @see Builder#setShortLabel(CharSequence) */ @@ -1117,7 +1119,7 @@ public final class ShortcutInfo implements Parcelable { } /** - * Return the longer description of a shortcut. + * Return the long description of a shortcut. * * @see Builder#setLongLabel(CharSequence) */ @@ -1161,7 +1163,7 @@ public final class ShortcutInfo implements Parcelable { * Returns the intent that is executed when the user selects this shortcut. * If setIntents() was used, then return the last intent in the array. * - * <p>Launcher applications <b>cannot</b> see the intent. If a {@link ShortcutInfo} is + * <p>Launcher apps <b>cannot</b> see the intent. If a {@link ShortcutInfo} is * obtained via {@link LauncherApps}, then this method will always return null. * Launchers can only start a shortcut intent with {@link LauncherApps#startShortcut}. * @@ -1180,7 +1182,7 @@ public final class ShortcutInfo implements Parcelable { /** * Return the intent set with {@link Builder#setIntents(Intent[])}. * - * <p>Launcher applications <b>cannot</b> see the intents. If a {@link ShortcutInfo} is + * <p>Launcher apps <b>cannot</b> see the intents. If a {@link ShortcutInfo} is * obtained via {@link LauncherApps}, then this method will always return null. * Launchers can only start a shortcut intent with {@link LauncherApps#startShortcut}. * @@ -1219,15 +1221,15 @@ public final class ShortcutInfo implements Parcelable { /** * "Rank" of a shortcut, which is a non-negative, sequential value that's unique for each - * {@link #getActivity} for each of the two kinds, dynamic shortcuts and manifest shortcuts. + * {@link #getActivity} for each of the two types of shortcuts (static and dynamic). * - * <p>Because manifest shortcuts and dynamic shortcuts have overlapping ranks, - * when a launcher application shows shortcuts for an activity, it should first show - * the manifest shortcuts followed by the dynamic shortcuts. Within each of those categories, + * <p>Because static shortcuts and dynamic shortcuts have overlapping ranks, + * when a launcher app shows shortcuts for an activity, it should first show + * the static shortcuts, followed by the dynamic shortcuts. Within each of those categories, * shortcuts should be sorted by rank in ascending order. * - * <p>"Floating" shortcuts (i.e. shortcuts that are neither dynamic nor manifest) will all - * have rank 0, because there's no sorting for them. + * <p><em>Floating shortcuts</em>, or shortcuts that are neither static nor dynamic, will all + * have rank 0, because they aren't sorted. * * See the {@link ShortcutManager}'s class javadoc for details. * @@ -1274,7 +1276,7 @@ public final class ShortcutInfo implements Parcelable { } /** - * Extras that application can set to any purposes. + * Extras that the app can set for any purpose. * * @see Builder#setExtras(PersistableBundle) */ @@ -1339,12 +1341,13 @@ public final class ShortcutInfo implements Parcelable { } /** - * Return whether a shortcut is published from AndroidManifest.xml or not. If {@code true}, - * it's also {@link #isImmutable()}. + * Return whether a shortcut is static; that is, whether a shortcut is + * published from AndroidManifest.xml. If {@code true}, the shortcut is + * also {@link #isImmutable()}. * * <p>When an app is upgraded and a shortcut is no longer published from AndroidManifest.xml, - * this will be set to {@code false}. If the shortcut is not pinned, then it'll just disappear. - * However, if it's pinned, it will still be alive, and {@link #isEnabled()} will be + * this will be set to {@code false}. If the shortcut is not pinned, then it'll disappear. + * However, if it's pinned, it will still be visible, {@link #isEnabled()} will be * {@code false} and {@link #isImmutable()} will be {@code true}. */ public boolean isDeclaredInManifest() { @@ -1358,7 +1361,7 @@ public final class ShortcutInfo implements Parcelable { } /** - * @return true if pinned but neither dynamic nor manifest. + * @return true if pinned but neither static nor dynamic. * @hide */ public boolean isFloating() { @@ -1374,9 +1377,10 @@ public final class ShortcutInfo implements Parcelable { * Return if a shortcut is immutable, in which case it cannot be modified with any of * {@link ShortcutManager} APIs. * - * <p>All manifest shortcuts are immutable. When a manifest shortcut is pinned and then - * disabled because the app is upgraded and its AndroidManifest.xml no longer publishes it, - * {@link #isDeclaredInManifest()} returns {@code false}, but it is still immutable. + * <p>All static shortcuts are immutable. When a static shortcut is pinned and is then + * disabled because it doesn't appear in AndroidManifest.xml for a newer version of the + * app, {@link #isDeclaredInManifest()} returns {@code false}, but the shortcut + * is still immutable. * * <p>All shortcuts originally published via the {@link ShortcutManager} APIs * are all mutable. @@ -1561,7 +1565,7 @@ public final class ShortcutInfo implements Parcelable { } /** - * Replaces the intent + * Replaces the intent. * * @throws IllegalArgumentException when extra is not compatible with {@link PersistableBundle}. * diff --git a/core/java/android/content/pm/ShortcutManager.java b/core/java/android/content/pm/ShortcutManager.java index 96ad67c6f3ab..a93870ece823 100644 --- a/core/java/android/content/pm/ShortcutManager.java +++ b/core/java/android/content/pm/ShortcutManager.java @@ -31,87 +31,90 @@ import com.android.internal.annotations.VisibleForTesting; import java.util.List; /** - * The ShortcutManager manages "launcher shortcuts" (or simply "shortcuts"). Shortcuts provide - * users - * with quick access to activities other than an application's main activity in the currently-active + * The ShortcutManager manages an app's <em>shortcuts</em>. Shortcuts provide users + * with quick access to activities other than an app's main activity in the currently-active * launcher. For example, - * an email application may publish the "compose new email" action, which will directly open the + * an email app may publish the "compose new email" action, which will directly open the * compose activity. The {@link ShortcutInfo} class contains information about each of the * shortcuts themselves. * - * <h3>Dynamic Shortcuts and Manifest Shortcuts</h3> + * <h3>Static Shortcuts and Dynamic Shortcuts</h3> * - * There are two ways to publish shortcuts: manifest shortcuts and dynamic shortcuts. + * <p> + * There are two ways to publish shortcuts: static shortcuts and dynamic shortcuts. * * <ul> - * <li>Manifest shortcuts are declared in a resource - * XML, which is referenced in the publisher application's <code>AndroidManifest.xml</code> file. - * Manifest shortcuts are published when an application is installed, - * and the details of these shortcuts change when an application is upgraded with an updated XML + * <li>Static shortcuts are declared in a resource + * XML file, which is referenced in the publisher app's <code>AndroidManifest.xml</code> file. + * Static shortcuts are published when an app is installed, + * and the details of these shortcuts change when an app is upgraded with an updated XML * file. - * Manifest shortcuts are immutable, and their + * Static shortcuts are immutable, and their * definitions, such as icons and labels, cannot be changed dynamically without upgrading the - * publisher application. + * publisher app. * - * <li>Dynamic shortcuts are published at runtime using the {@link ShortcutManager} APIs. - * Applications can publish, update, and remove dynamic shortcuts at runtime. + * <li>Dynamic shortcuts are published at runtime using this class's APIs. + * Apps can publish, update, and remove dynamic shortcuts at runtime. * </ul> * - * <p>Only "main" activities—activities that handle the {@code MAIN} action and the + * <p>Only main activities—activities that handle the {@code MAIN} action and the * {@code LAUNCHER} category—can have shortcuts. - * If an application has multiple main activities, these activities will have different sets + * If an app has multiple main activities, these activities have different sets * of shortcuts. * - * <p>Dynamic shortcuts and manifest shortcuts are shown in the currently active launcher when - * the user long-presses on an application launcher icon. The actual gesture may be different - * depending on the launcher application. + * <p>Static shortcuts and dynamic shortcuts are shown in the currently active launcher when + * the user long-presses on an app's launcher icon. + * + * <p class="note"><strong>Note: </strong>The actual gesture may be different + * depending on the launcher app. * * <p>Each launcher icon can have at most {@link #getMaxShortcutCountPerActivity()} number of - * dynamic and manifest shortcuts combined. + * static and dynamic shortcuts combined. * * * <h3>Pinning Shortcuts</h3> * - * Launcher applications allow users to "pin" shortcuts so they're easier to access. Both manifest + * <p> + * Launcher apps allow users to <em>pin</em> shortcuts so they're easier to access. Both static * and dynamic shortcuts can be pinned. * Pinned shortcuts <b>cannot</b> be removed by publisher - * applications; they're removed only when the user removes them, - * when the publisher application is uninstalled, or when the - * user performs the "clear data" action on the publisher application from the device's Settings - * application. + * apps; they're removed only when the user removes them, + * when the publisher app is uninstalled, or when the + * user performs the <strong>clear data</strong> action on the publisher app from the device's Settings + * app. * - * <p>However, the publisher application can <em>disable</em> pinned shortcuts so they cannot be + * <p>However, the publisher app can <em>disable</em> pinned shortcuts so they cannot be * started. See the following sections for details. * * * <h3>Updating and Disabling Shortcuts</h3> * * <p>When a dynamic shortcut is pinned, even when the publisher removes it as a dynamic shortcut, - * the pinned shortcut will still be visible and launchable. This allows an application to have + * the pinned shortcut will still be visible and launchable. This allows an app to have * more than {@link #getMaxShortcutCountPerActivity()} number of shortcuts. * * <p>For example, suppose {@link #getMaxShortcutCountPerActivity()} is 5: - * <ul> - * <li>A chat application publishes 5 dynamic shortcuts for the 5 most recent - * conversations, "c1" - "c5". + * <ol> + * <li>A chat app publishes 5 dynamic shortcuts for the 5 most recent + * conversations (c1, c2, ..., c5). * * <li>The user pins all 5 of the shortcuts. * - * <li>Later, the user has started 3 additional conversations ("c6", "c7", and "c8"), - * so the publisher application + * <li>Later, the user has started 3 additional conversations (c6, c7, and c8), + * so the publisher app * re-publishes its dynamic shortcuts. The new dynamic shortcut list is: - * "c4", "c5", "c6", "c7", and "c8". - * The publisher application has to remove "c1", "c2", and "c3" because it can't have more than + * c4, c5, ..., c8. + * The publisher app has to remove c1, c2, and c3 because it can't have more than * 5 dynamic shortcuts. * - * <li>However, even though "c1", "c2" and "c3" are no longer dynamic shortcuts, the pinned + * <li>However, even though c1, c2, and c3 are no longer dynamic shortcuts, the pinned * shortcuts for these conversations are still available and launchable. * * <li>At this point, the user can access a total of 8 shortcuts that link to activities in - * the publisher application, including the 3 pinned - * shortcuts, even though it's allowed to have at most 5 dynamic shortcuts. + * the publisher app, including the 3 pinned + * shortcuts, even though an app can have at most 5 dynamic shortcuts. * - * <li>The application can use {@link #updateShortcuts(List)} to update any of the existing + * <li>The app can use {@link #updateShortcuts(List)} to update <em>any</em> of the existing * 8 shortcuts, when, for example, the chat peers' icons have changed. * </ul> * The {@link #addDynamicShortcuts(List)} and {@link #setDynamicShortcuts(List)} methods @@ -121,104 +124,108 @@ import java.util.List; * lists of shortcuts to dynamic shortcuts. * * - * <h4>Disabling Manifest Shortcuts</h4> - * When an application is upgraded and the new version - * no longer uses a manifest shortcut that appeared in the previous version, this deprecated - * shortcut will no longer be published as a manifest shortcut. + * <h4>Disabling Static Shortcuts</h4> + * When an app is upgraded and the new version + * no longer uses a static shortcut that appeared in the previous version, this deprecated + * shortcut will no longer be published as a static shortcut. * * <p>If the deprecated shortcut is pinned, then the pinned shortcut will remain on the launcher, * but it will be disabled automatically. - * Note that, in this case, the pinned shortcut is no longer a manifest shortcut, but it's - * still <b>immutable</b> and cannot be updated using the {@link ShortcutManager} APIs. + * Note that, in this case, the pinned shortcut is no longer a static shortcut, but it's + * still <b>immutable</b>. Therefore, it cannot be updated using this class's APIs. * * * <h4>Disabling Dynamic Shortcuts</h4> * Sometimes pinned shortcuts become obsolete and may not be usable. For example, a pinned shortcut - * to a group chat will be unusable when the associated group chat is deleted. In cases like this, - * applications should use {@link #disableShortcuts(List)}, which will remove the specified dynamic - * shortcuts and also make any specified pinned shortcuts un-launchable. + * to a group chat becomes unusable when the associated group chat is deleted. In cases like this, + * apps should use {@link #disableShortcuts(List)}, which removes the specified dynamic + * shortcuts and also makes any specified pinned shortcuts un-launchable. * The {@link #disableShortcuts(List, CharSequence)} method can also be used to disabled shortcuts * and show users a custom error message when they attempt to launch the disabled shortcuts. * * - * <h3>Publishing Manifest Shortcuts</h3> + * <h3>Publishing Static Shortcuts</h3> * - * In order to add manifest shortcuts to your application, first add + * <p> + * In order to add static shortcuts to your app, first add * {@code <meta-data android:name="android.app.shortcuts" />} to your main activity in * AndroidManifest.xml: * <pre> - * <manifest xmlns:android="http://schemas.android.com/apk/res/android" - * package="com.example.myapplication"> - * <application . . .> - * <activity android:name="Main"> - * <intent-filter> - * <action android:name="android.intent.action.MAIN" /> - * <category android:name="android.intent.category.LAUNCHER" /> - * </intent-filter> - * <b><meta-data android:name="android.app.shortcuts" android:resource="@xml/shortcuts"/></b> - * </activity> - * </application> - * </manifest> + *<manifest xmlns:android="http://schemas.android.com/apk/res/android" + * package="com.example.myapplication"> + * <application ... > + * <activity android:name="Main"> + * <intent-filter> + * <action android:name="android.intent.action.MAIN" /> + * <category android:name="android.intent.category.LAUNCHER" /> + * </intent-filter> + * <strong><meta-data android:name="android.app.shortcuts" + * android:resource="@xml/shortcuts" /></strong> + * </activity> + * </application> + *</manifest> * </pre> * - * Then, define your application's manifest shortcuts in the <code>res/xml/shortcuts.xml</code> + * Then, define your app's static shortcuts in the <code>res/xml/shortcuts.xml</code> * file: * <pre> - * <shortcuts xmlns:android="http://schemas.android.com/apk/res/android" > - * <shortcut - * android:shortcutId="compose" - * android:enabled="true" - * android:icon="@drawable/compose_icon" - * android:shortcutShortLabel="@string/compose_shortcut_short_label1" - * android:shortcutLongLabel="@string/compose_shortcut_long_label1" - * android:shortcutDisabledMessage="@string/compose_disabled_message1" - * > - * <intent - * android:action="android.intent.action.VIEW" - * android:targetPackage="com.example.myapplication" - * android:targetClass="com.example.myapplication.ComposeActivity" /> - * <!-- more intents can go here; see below --> - * <categories android:name="android.shortcut.conversation" /> - * </shortcut> - * <!-- more shortcuts can go here --> - * </shortcuts> + *<shortcuts xmlns:android="http://schemas.android.com/apk/res/android"> + * <shortcut + * android:shortcutId="compose" + * android:enabled="true" + * android:icon="@drawable/compose_icon" + * android:shortcutShortLabel="@string/compose_shortcut_short_label1" + * android:shortcutLongLabel="@string/compose_shortcut_long_label1" + * android:shortcutDisabledMessage="@string/compose_disabled_message1"> + * <intent + * android:action="android.intent.action.VIEW" + * android:targetPackage="com.example.myapplication" + * android:targetClass="com.example.myapplication.ComposeActivity" /> + * <!-- If your shortcut is associated with multiple intents, include them + * here. The last intent in the list is what the user sees when they + * launch this shortcut. --> + * <categories android:name="android.shortcut.conversation" /> + * </shortcut> + * <!-- Specify more shortcuts here. --> + *</shortcuts> * </pre> * - * The following list includes descriptions for the different attributes within a manifest shortcut: + * The following list includes descriptions for the different attributes within a static shortcut: * <dl> - * <dt>android:shortcutId</dt> + * <dt>{@code android:shortcutId}</dt> * <dd>Mandatory shortcut ID</dd> * - * <dt>android:enabled</dt> + * <dt>{@code android:enabled}</dt> * <dd>Default is {@code true}. Can be set to {@code false} in order - * to disable a manifest shortcut that was published in a previous version and and set a custom - * disabled message. If a custom disabled message is not needed, then a manifest shortcut can + * to disable a static shortcut that was published in a previous version and set a custom + * disabled message. If a custom disabled message is not needed, then a static shortcut can * be simply removed from the XML file rather than keeping it with {@code enabled="false"}.</dd> * - * <dt>android:icon</dt> + * <dt>{@code android:icon}</dt> * <dd>Shortcut icon.</dd> * - * <dt>android:shortcutShortLabel</dt> + * <dt>{@code android:shortcutShortLabel}</dt> * <dd>Mandatory shortcut short label. * See {@link ShortcutInfo.Builder#setShortLabel(CharSequence)}.</dd> * - * <dt>android:shortcutLongLabel</dt> + * <dt>{@code android:shortcutLongLabel}</dt> * <dd>Shortcut long label. * See {@link ShortcutInfo.Builder#setLongLabel(CharSequence)}.</dd> * - * <dt>android:shortcutDisabledMessage</dt> + * <dt>{@code android:shortcutDisabledMessage}</dt> * <dd>When {@code android:enabled} is set to * {@code false}, this attribute is used to display a custom disabled message.</dd> * - * <dt>intent</dt> + * <dt>{@code intent}</dt> * <dd>Intent to launch when the user selects the shortcut. * {@code android:action} is mandatory. * See <a href="{@docRoot}guide/topics/ui/settings.html#Intents">Using intents</a> for the * other supported tags. - * You can provide multiple intents for a single shortcut so that an activity is launched - * with other activities in the back stack. See {@link android.app.TaskStackBuilder} for details. + * You can provide multiple intents for a single shortcut so that the last defined activity is launched + * with the other activities in the <a href="/guide/components/tasks-and-back-stack.html">back stack</a>. + * See {@link android.app.TaskStackBuilder} for details. * </dd> - * <dt>categories</dt> + * <dt>{@code categories}</dt> * <dd>Specify shortcut categories. Currently only * {@link ShortcutInfo#SHORTCUT_CATEGORY_CONVERSATION} is defined in the framework. * </dd> @@ -226,64 +233,68 @@ import java.util.List; * * <h3>Publishing Dynamic Shortcuts</h3> * - * Applications can publish dynamic shortcuts with {@link #setDynamicShortcuts(List)} + * <p> + * Apps can publish dynamic shortcuts with {@link #setDynamicShortcuts(List)} * or {@link #addDynamicShortcuts(List)}. The {@link #updateShortcuts(List)} method can also be * used to update existing, mutable shortcuts. * Use {@link #removeDynamicShortcuts(List)} or {@link #removeAllDynamicShortcuts()} to remove * dynamic shortcuts. * - * <p>Example: + * <p>The following code snippet shows how to create a single dynamic shortcut: * <pre> - * ShortcutManager shortcutManager = getSystemService(ShortcutManager.class); + *ShortcutManager shortcutManager = getSystemService(ShortcutManager.class); * - * ShortcutInfo shortcut = new ShortcutInfo.Builder(this, "id1") - * .setIntent(new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.mysite.com/"))) - * .setShortLabel("Web site") - * .setLongLabel("Open the web site") - * .setIcon(Icon.createWithResource(context, R.drawable.icon_website)) - * .build(); + *ShortcutInfo shortcut = new ShortcutInfo.Builder(this, "id1") + * .setShortLabel("Web site") + * .setLongLabel("Open the web site") + * .setIcon(Icon.createWithResource(context, R.drawable.icon_website)) + * .setIntent(new Intent(Intent.ACTION_VIEW, + * Uri.parse("https://www.mysite.example.com/"))) + * .build(); * - * shortcutManager.setDynamicShortcuts(Arrays.asList(shortcut)); + *shortcutManager.setDynamicShortcuts(Arrays.asList(shortcut)); * </pre> * * * <h3>Shortcut Intents</h3> + * <p> * Dynamic shortcuts can be published with any set of {@link Intent#addFlags Intent} flags. * Typically, {@link Intent#FLAG_ACTIVITY_CLEAR_TASK} is specified, possibly along with other - * flags; otherwise, if the application is already running, the application is simply brought to + * flags; otherwise, if the app is already running, the app is simply brought to * the foreground, and the target activity may not appear. * * <p>The {@link ShortcutInfo.Builder#setIntents(Intent[])} method can be used instead of * {@link ShortcutInfo.Builder#setIntent(Intent)} with {@link android.app.TaskStackBuilder} * in order to launch an activity with other activities in the back stack. * When the user selects a shortcut to load an activity with a back stack, - * then presses the back key, a "parent" activity will be shown instead of the user being - * navigated back to the launcher. + * then presses the back key, a parent activity from the same app will be shown + * instead of the user being navigated back to the launcher. * - * <p>Manifest shortcuts can also have multiple intents to achieve the same effect. + * <p>Static shortcuts can also have multiple intents to achieve the same effect. * In order to associate multiple {@link Intent} objects with a shortcut, simply list multiple * <code><intent></code> elements within a single <code><shortcut></code> element. - * The last intent specifies what the user will see when they launch a shortcut. + * The last intent specifies what the user sees when they launch a shortcut. * - * <p>Manifest shortcuts <b>cannot</b> have custom intent flags. - * The first intent of a manifest shortcut will always have {@link Intent#FLAG_ACTIVITY_NEW_TASK} + * <p>Static shortcuts <b>cannot</b> have custom intent flags. + * The first intent of a static shortcut will always have {@link Intent#FLAG_ACTIVITY_NEW_TASK} * and {@link Intent#FLAG_ACTIVITY_CLEAR_TASK} set. - * This means, when the application is already running, all the existing activities will be - * destroyed when a manifest shortcut is launched. + * This means, when the app is already running, all the existing activities will be + * destroyed when a static shortcut is launched. * If this behavior is not desirable, you can use a <em>trampoline activity</em>, * or an invisible activity that starts another activity in {@link Activity#onCreate}, * then calls {@link Activity#finish()}. * The first activity should include an attribute setting - * of {@code android:taskAffinity=""} in the application's <code>AndroidManifest.xml</code> - * file, and the intent within the manifest shortcut should point at this first activity. + * of {@code android:taskAffinity=""} in the app's <code>AndroidManifest.xml</code> + * file, and the intent within the static shortcut should point at this first activity. * * * <h3>Showing New Information in a Shortcut</h3> + * <p> * In order to avoid confusion, you should not use {@link #updateShortcuts(List)} to update * a shortcut so that it contains conceptually different information. * - * <p>For example, a phone application may publish the most frequently called contact as a dynamic - * shortcut. Over time, this contact may change; when it does, the application should + * <p>For example, a phone app may publish the most frequently called contact as a dynamic + * shortcut. Over time, this contact may change. When it does, the app should * represent the changed contact with a new shortcut that contains a different ID, using either * {@link #setDynamicShortcuts(List)} or {@link #addDynamicShortcuts(List)}, rather than updating * the existing shortcut with {@link #updateShortcuts(List)}. @@ -291,7 +302,7 @@ import java.util.List; * it to reference a different contact will likely confuse the user. * * <p>On the other hand, when the - * contact's information has changed, such as the name or picture, the application should + * contact's information has changed, such as the name or picture, the app should * use {@link #updateShortcuts(List)} so that the pinned shortcut is updated too. * * @@ -299,21 +310,21 @@ import java.util.List; * When the launcher displays the shortcuts that are associated with a particular launcher icon, * the shortcuts should appear in the following order: * <ul> - * <li>First show manifest shortcuts + * <li>First show static shortcuts * (if {@link ShortcutInfo#isDeclaredInManifest()} is {@code true}), * and then show dynamic shortcuts (if {@link ShortcutInfo#isDynamic()} is {@code true}). - * <li>Within each category of shortcuts (manifest and dynamic), sort the shortcuts in order + * <li>Within each category of shortcuts (static and dynamic), sort the shortcuts in order * of increasing rank according to {@link ShortcutInfo#getRank()}. * </ul> - * <p>Shortcut ranks are non-negative sequential integers + * <p>Shortcut ranks are non-negative, sequential integers * that determine the order in which shortcuts appear, assuming that the shortcuts are all in * the same category. * Ranks of existing shortcuts can be updated with - * {@link #updateShortcuts(List)}; you can use {@link #addDynamicShortcuts(List)} and - * {@link #setDynamicShortcuts(List)}, too. + * {@link #updateShortcuts(List)}. You can also use {@link #addDynamicShortcuts(List)} and + * {@link #setDynamicShortcuts(List)}. * * <p>Ranks are auto-adjusted so that they're unique for each target activity in each category - * (dynamic or manifest). For example, if there are 3 dynamic shortcuts with ranks 0, 1 and 2, + * (static or dynamic). For example, if there are 3 dynamic shortcuts with ranks 0, 1 and 2, * adding another dynamic shortcut with a rank of 1 represents a request to place this shortcut at * the second position. * In response, the third and fourth shortcuts move closer to the bottom of the shortcut list, @@ -321,119 +332,120 @@ import java.util.List; * * <h3>Rate Limiting</h3> * + * <p> * Calls to {@link #setDynamicShortcuts(List)}, {@link #addDynamicShortcuts(List)}, and - * {@link #updateShortcuts(List)} may be rate-limited when called by background applications, or - * applications with no foreground activity or service. When you attempt to call these methods - * from a background application after exceeding the rate limit, these APIs return {@code false}. + * {@link #updateShortcuts(List)} may be rate-limited when called by <em>background apps</em>, or + * apps with no foreground activity or service. When you attempt to call these methods + * from a background app after exceeding the rate limit, these APIs return {@code false}. * - * <p>Applications with a foreground activity or service are not rate-limited. + * <p>Apps with a foreground activity or service are not rate-limited. * - * <p>Rate-limiting will be reset upon certain events, so that even background applications - * can call these APIs again until the rate limit is reached again. + * <p>Rate-limiting is reset upon certain events, so that even background apps + * can call these APIs until the rate limit is reached again. * These events include the following: * <ul> - * <li>When an application comes to the foreground. - * <li>When the system locale changes. - * <li>When the user performs an "inline reply" action on a notification. + * <li>An app comes to the foreground. + * <li>The system locale changes. + * <li>The user performs the <strong>inline reply</strong> action on a notification. * </ul> * * <p>When rate-limiting is active, {@link #isRateLimitingActive()} returns {@code true}. * * <h4>Resetting rate-limiting for testing</h4> * - * If your application is rate-limited during development or testing, you can use the - * "Reset ShortcutManager rate-limiting" development option or the following adb command to reset - * it: - * <pre> - * adb shell cmd shortcut reset-throttling [ --user USER-ID ] + * <p> + * If your app is rate-limited during development or testing, you can use the + * <strong>Reset ShortcutManager rate-limiting</strong> development option or + * the following {@code adb} command to reset it: + * <pre class="no-pretty-print"> + *$ adb shell cmd shortcut reset-throttling [ --user USER-ID ] * </pre> * * <h3>Handling System Locale Changes</h3> * - * Applications should update dynamic and pinned shortcuts when the system locale changes + * <p> + * Apps should update dynamic and pinned shortcuts when the system locale changes * using the {@link Intent#ACTION_LOCALE_CHANGED} broadcast. * - * <p>When the system locale changes, rate-limiting is reset, so even background applications - * can set dynamic shortcuts, add dynamic shortcuts, and update shortcuts until the rate limit - * is reached again. + * <p>When the system locale changes, rate-limiting is reset, so even background apps + * can add and update dynamic shortcuts until the rate limit is reached again. * * * <h3>Backup and Restore</h3> * - * When an application has the {@code android:allowBackup="true"} attribute assignment included + * <p> + * When an app has the {@code android:allowBackup="true"} attribute assignment included * in its <code>AndroidManifest.xml</code> file, pinned shortcuts are * backed up automatically and are restored when the user sets up a new device. * - * <h4>Categories of Shortcuts that are Backed Up</h4> + * <h4>Categories of shortcuts that are backed up</h4> * * <ul> * <li>Pinned shortcuts are backed up. Bitmap icons are not backed up by the system, - * but launcher applications should back them up and restore them so that the user still sees icons - * for pinned shortcuts on the launcher. Applications can always use + * so launcher apps should back them up and restore them so that the user still sees icons + * for pinned shortcuts on the launcher. Apps can always use * {@link #updateShortcuts(List)} to re-publish icons. * - * <li>Manifest shortcuts are not backed up, but when an application is re-installed on a new - * device, they are re-published from the <code>AndroidManifest.xml</code> file, anyway. + * <li>Static shortcuts aren't backed up, but when an app is re-installed on a new + * device, they are re-published from the <code>AndroidManifest.xml</code> file. * - * <li>Dynamic shortcuts are <b>not</b> backed up. + * <li>Dynamic shortcuts <b>aren't</b> backed up. * </ul> * - * <p>Because dynamic shortcuts are not restored, it is recommended that applications check + * <p>Because dynamic shortcuts are not restored, it is recommended that apps check * currently-published dynamic shortcuts using {@link #getDynamicShortcuts()} * each time they are launched, and they should re-publish * dynamic shortcuts when necessary. * * <pre> - * public class MainActivity extends Activity { - * public void onCreate(Bundle savedInstanceState) { - * super.onCreate(savedInstanceState); - * - * ShortcutManager shortcutManager = getSystemService(ShortcutManager.class); - * - * if (shortcutManager.getDynamicShortcuts().size() == 0) { - * // Application restored; re-publish dynamic shortcuts. - * - * if (shortcutManager.getPinnedShortcuts().size() > 0) { - * // Pinned shortcuts have been restored. Use updateShortcuts() to make sure - * // they have up-to-date information. - * } - * } - * } - * : - * - * } + *public class MainActivity extends Activity { + * public void onCreate(Bundle savedInstanceState) { + * super.onCreate(savedInstanceState); + * ShortcutManager shortcutManager = + * getSystemService(ShortcutManager.class); + * + * if (shortcutManager.getDynamicShortcuts().size() == 0) { + * // Application restored. Need to re-publish dynamic shortcuts. + * if (shortcutManager.getPinnedShortcuts().size() > 0) { + * // Pinned shortcuts have been restored. Use + * // updateShortcuts() to make sure they contain + * // up-to-date information. + * } + * } + * } + * // ... + *} * </pre> * * * <h4>Backup/restore and shortcut IDs</h4> - * - * Because pinned shortcuts are backed up and restored on new devices, shortcut IDs should be - * meaningful across devices; that is, IDs should contain either stable, constant strings - * or server-side identifiers, + * <p> + * Because pinned shortcuts are backed up and restored on new devices, shortcut IDs + * should contain either stable, constant strings or server-side identifiers, * rather than identifiers generated locally that might not make sense on other devices. * * * <h3>Report Shortcut Usage and Prediction</h3> - * - * Launcher applications may be capable of predicting which shortcuts will most likely be + * <p> + * Launcher apps may be capable of predicting which shortcuts will most likely be * used at a given time by examining the shortcut usage history data. * - * <p>In order to provide launchers with such data, publisher applications should + * <p>In order to provide launchers with such data, publisher apps should * report the shortcuts that are used with {@link #reportShortcutUsed(String)} * when a shortcut is selected, * <b>or when an action equivalent to a shortcut is taken by the user even if it wasn't started * with the shortcut</b>. * - * <p>For example, suppose a GPS navigation application supports "navigate to work" as a shortcut. + * <p>For example, suppose a navigation app supports "navigate to work" as a shortcut. * It should then report when the user selects this shortcut <b>and</b> when the user chooses - * to navigate to work within the application itself. - * This helps the launcher application + * to navigate to work within the app itself. + * This helps the launcher app * learn that the user wants to navigate to work at a certain time every * weekday, and it can then show this shortcut in a suggestion list at the right time. * * <h3>Launcher API</h3> * - * The {@link LauncherApps} class provides APIs for launcher applications to access shortcuts. + * The {@link LauncherApps} class provides APIs for launcher apps to access shortcuts. * * * <h3>Direct Boot and Shortcuts</h3> @@ -465,7 +477,7 @@ public class ShortcutManager { } /** - * Publish the list of shortcuts. All existing dynamic shortcuts from the caller application + * Publish the list of shortcuts. All existing dynamic shortcuts from the caller app * will be replaced. If there are already pinned shortcuts with the same IDs, * the mutable pinned shortcuts are updated. * @@ -488,7 +500,7 @@ public class ShortcutManager { } /** - * Return all dynamic shortcuts from the caller application. + * Return all dynamic shortcuts from the caller app. * * @throws IllegalStateException when the user is locked. */ @@ -503,7 +515,7 @@ public class ShortcutManager { } /** - * Return all manifest shortcuts from the caller application. + * Return all static (manifest) shortcuts from the caller app. * * @throws IllegalStateException when the user is locked. */ @@ -554,7 +566,7 @@ public class ShortcutManager { } /** - * Delete all dynamic shortcuts from the caller application. + * Delete all dynamic shortcuts from the caller app. * * @throws IllegalStateException when the user is locked. */ @@ -567,7 +579,7 @@ public class ShortcutManager { } /** - * Return all pinned shortcuts from the caller application. + * Return all pinned shortcuts from the caller app. * * @throws IllegalStateException when the user is locked. */ @@ -661,7 +673,7 @@ public class ShortcutManager { /** * Re-enable pinned shortcuts that were previously disabled. If the target shortcuts - * already enabled, this method does nothing. + * are already enabled, this method does nothing. * * @throws IllegalArgumentException If trying to enable immutable shortcuts. * @@ -684,7 +696,7 @@ public class ShortcutManager { } /** - * Return the maximum number of dynamic and manifest shortcuts that each launcher icon + * Return the maximum number of static and dynamic shortcuts that each launcher icon * can have at a time. */ public int getMaxShortcutCountPerActivity() { @@ -697,7 +709,7 @@ public class ShortcutManager { } /** - * Return the number of times the caller application can call the rate-limited APIs + * Return the number of times the caller app can call the rate-limited APIs * before the rate limit counter is reset. * * @see #getRateLimitResetTime() @@ -729,7 +741,7 @@ public class ShortcutManager { } /** - * Return {@code true} when rate-limiting is active for the caller application. + * Return {@code true} when rate-limiting is active for the caller app. * * <p>See the class level javadoc for details. * @@ -769,13 +781,13 @@ public class ShortcutManager { } /** - * Applications that publish shortcuts should call this method - * whenever the user selects the shortcut containing the given ID or when the user completes - * an action in the application that is equivalent to selecting the shortcut. + * Apps that publish shortcuts should call this method whenever the user + * selects the shortcut containing the given ID or when the user completes + * an action in the app that is equivalent to selecting the shortcut. * For more details, see the Javadoc for the {@link ShortcutManager} class * * <p>The information is accessible via {@link UsageStatsManager#queryEvents} - * Typically, launcher applications use this information to build a prediction model + * Typically, launcher apps use this information to build a prediction model * so that they can promote the shortcuts that are likely to be used at the moment. * * @throws IllegalStateException when the user is locked. @@ -790,9 +802,9 @@ public class ShortcutManager { } /** - * Called internally when an application is considered to have come to foreground + * Called internally when an app is considered to have come to the foreground * even when technically it's not. This method resets the throttling for this package. - * For example, when the user sends an "inline reply" on an notification, the system UI will + * For example, when the user sends an "inline reply" on a notification, the system UI will * call it. * * @hide diff --git a/core/java/android/net/NetworkStats.java b/core/java/android/net/NetworkStats.java index 25806fa77674..f65a50f02df3 100644 --- a/core/java/android/net/NetworkStats.java +++ b/core/java/android/net/NetworkStats.java @@ -904,7 +904,8 @@ public class NetworkStats implements Parcelable { if (pool.isEmpty()) { return true; } - Entry moved = addTrafficToApplications(tunIface, underlyingIface, tunIfaceTotal, pool); + Entry moved = + addTrafficToApplications(tunUid, tunIface, underlyingIface, tunIfaceTotal, pool); deductTrafficFromVpnApp(tunUid, underlyingIface, moved); if (!moved.isEmpty()) { @@ -919,9 +920,9 @@ public class NetworkStats implements Parcelable { * Initializes the data used by the migrateTun() method. * * This is the first pass iteration which does the following work: - * (1) Adds up all the traffic through tun0. - * (2) Adds up all the traffic through the tunUid's underlyingIface + * (1) Adds up all the traffic through the tunUid's underlyingIface * (both foreground and background). + * (2) Adds up all the traffic through tun0 excluding traffic from the vpn app itself. */ private void tunAdjustmentInit(int tunUid, String tunIface, String underlyingIface, Entry tunIfaceTotal, Entry underlyingIfaceTotal) { @@ -941,8 +942,9 @@ public class NetworkStats implements Parcelable { underlyingIfaceTotal.add(recycle); } - if (recycle.tag == TAG_NONE && Objects.equals(tunIface, recycle.iface)) { - // Add up all tunIface traffic. + if (recycle.uid != tunUid && recycle.tag == TAG_NONE + && Objects.equals(tunIface, recycle.iface)) { + // Add up all tunIface traffic excluding traffic from the vpn app itself. tunIfaceTotal.add(recycle); } } @@ -958,13 +960,15 @@ public class NetworkStats implements Parcelable { return pool; } - private Entry addTrafficToApplications(String tunIface, String underlyingIface, + private Entry addTrafficToApplications(int tunUid, String tunIface, String underlyingIface, Entry tunIfaceTotal, Entry pool) { Entry moved = new Entry(); Entry tmpEntry = new Entry(); tmpEntry.iface = underlyingIface; for (int i = 0; i < size; i++) { - if (Objects.equals(iface[i], tunIface)) { + // the vpn app is excluded from the redistribution but all moved traffic will be + // deducted from the vpn app (see deductTrafficFromVpnApp below). + if (Objects.equals(iface[i], tunIface) && uid[i] != tunUid) { if (tunIfaceTotal.rxBytes > 0) { tmpEntry.rxBytes = pool.rxBytes * rxBytes[i] / tunIfaceTotal.rxBytes; } else { diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java index 1fdb0cd370f4..81d0cf29ba9e 100755 --- a/core/java/android/provider/Settings.java +++ b/core/java/android/provider/Settings.java @@ -6863,6 +6863,12 @@ public final class Settings { public static final String DOCK_SOUNDS_ENABLED = "dock_sounds_enabled"; /** + * Whether to play a sound for dock events, only when an accessibility service is on. + * @hide + */ + public static final String DOCK_SOUNDS_ENABLED_WHEN_ACCESSIBILITY = "dock_sounds_enabled_when_accessbility"; + + /** * URI for the "device locked" (keyguard shown) sound. * @hide */ @@ -7992,11 +7998,45 @@ public final class Settings { public static final String PAC_CHANGE_DELAY = "pac_change_delay"; /** + * Don't attempt to detect captive portals. + * + * @hide + */ + public static final int CAPTIVE_PORTAL_MODE_IGNORE = 0; + + /** + * When detecting a captive portal, display a notification that + * prompts the user to sign in. + * + * @hide + */ + public static final int CAPTIVE_PORTAL_MODE_PROMPT = 1; + + /** + * When detecting a captive portal, immediately disconnect from the + * network and do not reconnect to that network in the future. + * + * @hide + */ + public static final int CAPTIVE_PORTAL_MODE_AVOID = 2; + + /** + * What to do when connecting a network that presents a captive portal. + * Must be one of the CAPTIVE_PORTAL_MODE_* constants above. + * + * The default for this setting is CAPTIVE_PORTAL_MODE_PROMPT. + * @hide + */ + public static final String CAPTIVE_PORTAL_MODE = "captive_portal_mode"; + + /** * Setting to turn off captive portal detection. Feature is enabled by * default and the setting needs to be set to 0 to disable it. * + * @deprecated use CAPTIVE_PORTAL_MODE_IGNORE to disable captive portal detection * @hide */ + @Deprecated public static final String CAPTIVE_PORTAL_DETECTION_ENABLED = "captive_portal_detection_enabled"; diff --git a/core/java/android/util/DisplayMetrics.java b/core/java/android/util/DisplayMetrics.java index f4db4d6611ea..b7099b642e98 100644 --- a/core/java/android/util/DisplayMetrics.java +++ b/core/java/android/util/DisplayMetrics.java @@ -268,6 +268,10 @@ public class DisplayMetrics { } public void setTo(DisplayMetrics o) { + if (this == o) { + return; + } + widthPixels = o.widthPixels; heightPixels = o.heightPixels; density = o.density; diff --git a/core/java/com/android/internal/hardware/AmbientDisplayConfiguration.java b/core/java/com/android/internal/hardware/AmbientDisplayConfiguration.java new file mode 100644 index 000000000000..cf1bf62cdeb2 --- /dev/null +++ b/core/java/com/android/internal/hardware/AmbientDisplayConfiguration.java @@ -0,0 +1,87 @@ +/* + * Copyright (C) 2016 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.internal.hardware; + +import com.android.internal.R; + +import android.content.Context; +import android.provider.Settings; +import android.text.TextUtils; + +public class AmbientDisplayConfiguration { + + private final Context mContext; + + public AmbientDisplayConfiguration(Context context) { + mContext = context; + } + + public boolean enabled(int user) { + return pulseOnNotificationEnabled(user) + || pulseOnPickupEnabled(user) + || pulseOnDoubleTapEnabled(user); + } + + public boolean available() { + return pulseOnNotificationAvailable() || pulseOnPickupAvailable() + || pulseOnDoubleTapAvailable(); + } + + public boolean pulseOnNotificationEnabled(int user) { + return boolSetting(Settings.Secure.DOZE_ENABLED, user) && pulseOnNotificationAvailable(); + } + + public boolean pulseOnNotificationAvailable() { + return ambientDisplayAvailable(); + } + + public boolean pulseOnPickupEnabled(int user) { + return boolSetting(Settings.Secure.DOZE_PULSE_ON_PICK_UP, user) + && pulseOnPickupAvailable(); + } + + public boolean pulseOnPickupAvailable() { + return mContext.getResources().getBoolean(R.bool.config_dozePulsePickup) + && ambientDisplayAvailable(); + } + + public boolean pulseOnDoubleTapEnabled(int user) { + return boolSetting(Settings.Secure.DOZE_PULSE_ON_DOUBLE_TAP, user) + && pulseOnDoubleTapAvailable(); + } + + public boolean pulseOnDoubleTapAvailable() { + return !TextUtils.isEmpty(doubleTapSensorType()) && ambientDisplayAvailable(); + } + + public String doubleTapSensorType() { + return mContext.getResources().getString(R.string.config_dozeDoubleTapSensorType); + } + + public String ambientDisplayComponent() { + return mContext.getResources().getString(R.string.config_dozeComponent); + } + + private boolean ambientDisplayAvailable() { + return !TextUtils.isEmpty(ambientDisplayComponent()); + } + + private boolean boolSetting(String name, int user) { + return Settings.Secure.getIntForUser(mContext.getContentResolver(), name, 1, user) != 0; + } + +} diff --git a/core/java/com/android/internal/view/IInputConnectionWrapper.java b/core/java/com/android/internal/view/IInputConnectionWrapper.java index 644c7e90f8b0..4f7b106a83fe 100644 --- a/core/java/com/android/internal/view/IInputConnectionWrapper.java +++ b/core/java/com/android/internal/view/IInputConnectionWrapper.java @@ -580,7 +580,13 @@ public abstract class IInputConnectionWrapper extends IInputContext.Stub { return; } if (grantUriPermission) { - inputContentInfo.requestPermission(); + try { + inputContentInfo.requestPermission(); + } catch (Exception e) { + Log.e(TAG, "InputConnectionInfo.requestPermission() failed", e); + args.callback.setCommitContentResult(false, args.seq); + return; + } } final boolean result = ic.commitContent(inputContentInfo, flags, (Bundle) args.arg2); diff --git a/core/jni/android_util_AssetManager.cpp b/core/jni/android_util_AssetManager.cpp index 428159a75e87..98bf28be923f 100644 --- a/core/jni/android_util_AssetManager.cpp +++ b/core/jni/android_util_AssetManager.cpp @@ -175,7 +175,7 @@ static void verifySystemIdmaps() } // Generic idmap parameters - const char* argv[7]; + const char* argv[8]; int argc = 0; struct stat st; @@ -186,25 +186,24 @@ static void verifySystemIdmaps() argv[argc++] = AssetManager::TARGET_APK_PATH; argv[argc++] = AssetManager::IDMAP_DIR; - // Directories to scan for overlays: if OVERLAY_SKU_DIR_PROPERTY is defined, - // use OVERLAY_DIR/<value of OVERLAY_SKU_DIR_PROPERTY> if exists, otherwise - // use OVERLAY_DIR if exists. + // Directories to scan for overlays: if OVERLAY_THEME_DIR_PROPERTY is defined, + // use OVERLAY_DIR/<value of OVERLAY_THEME_DIR_PROPERTY> in addition to OVERLAY_DIR. char subdir[PROP_VALUE_MAX]; - int len = __system_property_get(AssetManager::OVERLAY_SKU_DIR_PROPERTY, subdir); - String8 overlayPath; + int len = __system_property_get(AssetManager::OVERLAY_THEME_DIR_PROPERTY, subdir); if (len > 0) { - overlayPath = String8(AssetManager::OVERLAY_DIR) + "/" + subdir; - } else { - overlayPath = String8(AssetManager::OVERLAY_DIR); + String8 overlayPath = String8(AssetManager::OVERLAY_DIR) + "/" + subdir; + if (stat(overlayPath.string(), &st) == 0) { + argv[argc++] = overlayPath.string(); + } } - if (stat(overlayPath.string(), &st) == 0) { - argv[argc++] = overlayPath.string(); + if (stat(AssetManager::OVERLAY_DIR, &st) == 0) { + argv[argc++] = AssetManager::OVERLAY_DIR; } // Finally, invoke idmap (if any overlay directory exists) if (argc > 5) { execv(AssetManager::IDMAP_BIN, (char* const*)argv); - ALOGE("failed to execl for idmap: %s", strerror(errno)); + ALOGE("failed to execv for idmap: %s", strerror(errno)); exit(1); // should never get here } else { exit(0); diff --git a/core/res/res/drawable-watch/scrollbar_vertical_thumb.xml b/core/res/res/drawable-watch/scrollbar_vertical_thumb.xml new file mode 100644 index 000000000000..51aced25e619 --- /dev/null +++ b/core/res/res/drawable-watch/scrollbar_vertical_thumb.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2016 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. +--> + +<shape xmlns:android="http://schemas.android.com/apk/res/android" + android:tint="?attr/colorControlNormal" + android:shape="rectangle"> + <solid android:color="#39757575" /> + <size android:height="10dp" /> + <corners android:radius="2dp" /> +</shape> diff --git a/core/res/res/drawable-watch/scrollbar_vertical_track.xml b/core/res/res/drawable-watch/scrollbar_vertical_track.xml new file mode 100644 index 000000000000..5a04b1ca0b2c --- /dev/null +++ b/core/res/res/drawable-watch/scrollbar_vertical_track.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2016 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. +--> +<shape xmlns:android="http://schemas.android.com/apk/res/android" + android:tint="?attr/colorControlNormal" + android:shape="rectangle"> + <solid android:color="#39ffffff" /> + <size android:width="4dp" /> +</shape> diff --git a/core/res/res/layout-notround-watch/alert_dialog_title_material.xml b/core/res/res/layout-notround-watch/alert_dialog_title_material.xml index 307c6db91c3a..0ab56f95efbe 100644 --- a/core/res/res/layout-notround-watch/alert_dialog_title_material.xml +++ b/core/res/res/layout-notround-watch/alert_dialog_title_material.xml @@ -22,6 +22,7 @@ android:gravity="top|center_horizontal" android:minHeight="@dimen/alert_dialog_title_height"> <ImageView android:id="@+id/icon" + android:adjustViewBounds="true" android:maxHeight="24dp" android:maxWidth="24dp" android:layout_marginTop="8dp" diff --git a/core/res/res/layout-round-watch/alert_dialog_title_material.xml b/core/res/res/layout-round-watch/alert_dialog_title_material.xml index 7e71e4180341..aefe28f7f359 100644 --- a/core/res/res/layout-round-watch/alert_dialog_title_material.xml +++ b/core/res/res/layout-round-watch/alert_dialog_title_material.xml @@ -14,24 +14,31 @@ ~ See the License for the specific language governing permissions and ~ limitations under the License --> -<FrameLayout +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" - android:gravity="top|center_horizontal" - android:minHeight="@dimen/alert_dialog_title_height"> - <ImageView android:id="@+id/icon" - android:maxHeight="24dp" - android:maxWidth="24dp" - android:layout_marginTop="12dp" - android:layout_gravity="center_horizontal" - android:layout_width="wrap_content" + android:orientation="vertical" + android:gravity="top|center_horizontal"> + <FrameLayout + android:adjustViewBounds="true" + android:layout_width="match_parent" android:layout_height="wrap_content" - android:src="@null" /> + android:minHeight="@dimen/screen_percentage_15"> + <ImageView android:id="@+id/icon" + android:adjustViewBounds="true" + android:maxHeight="24dp" + android:maxWidth="24dp" + android:layout_marginTop="@dimen/screen_percentage_10" + android:layout_marginBottom="8dp" + android:layout_gravity="center_horizontal" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:src="@null" /> + </FrameLayout> <TextView android:id="@+id/alertTitle" style="?android:attr/windowTitleStyle" - android:layout_marginTop="36dp" android:layout_marginBottom="8dp" android:layout_width="match_parent" android:layout_height="wrap_content" /> -</FrameLayout> +</LinearLayout> diff --git a/core/res/res/values-watch/colors_device_defaults.xml b/core/res/res/values-watch/colors_device_defaults.xml index 9150cc409e13..15786b4a23f8 100644 --- a/core/res/res/values-watch/colors_device_defaults.xml +++ b/core/res/res/values-watch/colors_device_defaults.xml @@ -18,4 +18,7 @@ overlaying new theme colors. --> <resources> <color name="button_normal_device_default_dark">@color/btn_default_material_dark</color> + <!-- Use the same value as for accent_device_default_dark but start with #99, + i.e. 60% opacity --> + <color name="accent_device_default_dark_60_percent_opacity">#995E97f6</color> </resources> diff --git a/core/res/res/values-watch/config_material.xml b/core/res/res/values-watch/config_material.xml index 104d122e01d3..529f18b78e4d 100644 --- a/core/res/res/values-watch/config_material.xml +++ b/core/res/res/values-watch/config_material.xml @@ -29,4 +29,8 @@ <!-- Always overscan by default to ensure onApplyWindowInsets will always be called. --> <bool name="config_windowOverscanByDefault">true</bool> + + <!-- Style the scrollbars accoridngly. --> + <drawable name="config_scrollbarThumbVertical">@drawable/scrollbar_vertical_thumb</drawable> + <drawable name="config_scrollbarTrackVertical">@drawable/scrollbar_vertical_track</drawable> </resources> diff --git a/core/res/res/values-watch/styles_material.xml b/core/res/res/values-watch/styles_material.xml index 8a080d9c155d..af4207ed4e6f 100644 --- a/core/res/res/values-watch/styles_material.xml +++ b/core/res/res/values-watch/styles_material.xml @@ -95,7 +95,7 @@ please see styles_device_defaults.xml. </style> <style name="DialogWindowTitle.Material"> - <item name="maxLines">3</item> + <item name="maxLines">@empty</item> <item name="scrollHorizontally">false</item> <item name="textAppearance">@style/TextAppearance.Material.DialogWindowTitle</item> <item name="gravity">@integer/config_dialogTextGravity</item> diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml index 6e252ad59999..e4382a2f6aa6 100644 --- a/core/res/res/values/config.xml +++ b/core/res/res/values/config.xml @@ -1178,9 +1178,13 @@ <integer-array name="config_dynamicHysteresisLuxLevels"> </integer-array> - <!-- This flag requires config_dozeSensorLuxLevels to have one or more entries and only affects - the screen brightness while dozing. The screen brightness of a device is based off of a - ring buffer of the last n seconds of ambient light sensor sample readings. + <!-- This flag requires config_dozeBrightnessBacklightValues to have two or more entries; it is + recommended that config_screenBrightnessDoze be greater than or equal to all these entries + since this value is used as the doze screen brightness until a new sensor sample is + acquired. This flag only affects the screen brightness while dozing. + + The screen brightness of a device is based off of a ring buffer of the last n seconds of + ambient light sensor sample readings. If this flag is true, then this buffer is cleared and the screen brightness is based off of ambient light sensor readings that are obtained while the device is dozing. This mode may @@ -1742,6 +1746,12 @@ turned off and the screen off animation has been performed. --> <bool name="config_dozeAfterScreenOff">false</bool> + <!-- Doze: should the TYPE_PICK_UP_GESTURE sensor be used as a pulse signal. --> + <bool name="config_dozePulsePickup">false</bool> + + <!-- Type of the double tap sensor. Empty if double tap is not supported. --> + <string name="config_dozeDoubleTapSensorType" translatable="false"></string> + <!-- Power Management: Specifies whether to decouple the auto-suspend state of the device from the display on/off state. diff --git a/core/res/res/values/config_material.xml b/core/res/res/values/config_material.xml index 29494db40557..840a551f914f 100644 --- a/core/res/res/values/config_material.xml +++ b/core/res/res/values/config_material.xml @@ -37,4 +37,8 @@ <!-- The amount to offset when scrolling to a selection in an AlertDialog --> <dimen name="config_alertDialogSelectionScrollOffset">0dp</dimen> + + <!-- Style the scrollbars accoridngly. --> + <drawable name="config_scrollbarThumbVertical">@drawable/scrollbar_handle_material</drawable> + <drawable name="config_scrollbarTrackVertical">@null</drawable> </resources> diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml index 02ba32f98876..23a3bf14d709 100644 --- a/core/res/res/values/symbols.xml +++ b/core/res/res/values/symbols.xml @@ -2680,6 +2680,9 @@ <java-symbol type="string" name="config_emergency_call_number" /> <java-symbol type="array" name="config_emergency_mcc_codes" /> + <java-symbol type="string" name="config_dozeDoubleTapSensorType" /> + <java-symbol type="bool" name="config_dozePulsePickup" /> + <!-- Used for MimeIconUtils. --> <java-symbol type="drawable" name="ic_doc_apk" /> <java-symbol type="drawable" name="ic_doc_audio" /> diff --git a/core/res/res/values/themes_material.xml b/core/res/res/values/themes_material.xml index 0eb4c8d86928..ff8693bbbdad 100644 --- a/core/res/res/values/themes_material.xml +++ b/core/res/res/values/themes_material.xml @@ -212,9 +212,9 @@ please see themes_device_defaults.xml. <item name="scrollbarDefaultDelayBeforeFade">400</item> <item name="scrollbarSize">10dp</item> <item name="scrollbarThumbHorizontal">@drawable/scrollbar_handle_material</item> - <item name="scrollbarThumbVertical">@drawable/scrollbar_handle_material</item> + <item name="scrollbarThumbVertical">@drawable/config_scrollbarThumbVertical</item> <item name="scrollbarTrackHorizontal">@null</item> - <item name="scrollbarTrackVertical">@null</item> + <item name="scrollbarTrackVertical">@drawable/config_scrollbarTrackVertical</item> <!-- Text selection handle attributes --> <item name="textSelectHandleLeft">@drawable/text_select_handle_left_material</item> @@ -573,9 +573,9 @@ please see themes_device_defaults.xml. <item name="scrollbarDefaultDelayBeforeFade">400</item> <item name="scrollbarSize">10dp</item> <item name="scrollbarThumbHorizontal">@drawable/scrollbar_handle_material</item> - <item name="scrollbarThumbVertical">@drawable/scrollbar_handle_material</item> + <item name="scrollbarThumbVertical">@drawable/config_scrollbarThumbVertical</item> <item name="scrollbarTrackHorizontal">@null</item> - <item name="scrollbarTrackVertical">@null</item> + <item name="scrollbarTrackVertical">@drawable/config_scrollbarTrackVertical</item> <!-- Text selection handle attributes --> <item name="textSelectHandleLeft">@drawable/text_select_handle_left_material</item> diff --git a/core/tests/coretests/src/android/net/NetworkStatsTest.java b/core/tests/coretests/src/android/net/NetworkStatsTest.java index 9074f8a97132..d48a67a4c72f 100644 --- a/core/tests/coretests/src/android/net/NetworkStatsTest.java +++ b/core/tests/coretests/src/android/net/NetworkStatsTest.java @@ -454,7 +454,7 @@ public class NetworkStatsTest extends TestCase { .addValues(underlyingIface, tunUid, SET_FOREGROUND, TAG_NONE, 0L, 0L, 0L, 0L, 0L); assertTrue(delta.migrateTun(tunUid, tunIface, underlyingIface)); - assertEquals(21, delta.size()); + assertEquals(20, delta.size()); // tunIface and TEST_IFACE entries are not changed. assertValues(delta, 0, tunIface, 10100, SET_DEFAULT, TAG_NONE, ROAMING_NO, @@ -478,38 +478,89 @@ public class NetworkStatsTest extends TestCase { // Existing underlying Iface entries are updated assertValues(delta, 9, underlyingIface, 10100, SET_DEFAULT, TAG_NONE, ROAMING_NO, - 44783L, 54L, 13829L, 60L, 0L); + 44783L, 54L, 14178L, 62L, 0L); assertValues(delta, 10, underlyingIface, 10100, SET_FOREGROUND, TAG_NONE, ROAMING_NO, 0L, 0L, 0L, 0L, 0L); // VPN underlying Iface entries are updated assertValues(delta, 11, underlyingIface, tunUid, SET_DEFAULT, TAG_NONE, ROAMING_NO, - 28304L, 27L, 1719L, 12L, 0L); + 28304L, 27L, 1L, 2L, 0L); assertValues(delta, 12, underlyingIface, tunUid, SET_FOREGROUND, TAG_NONE, ROAMING_NO, 0L, 0L, 0L, 0L, 0L); // New entries are added for new application's underlying Iface traffic assertContains(delta, underlyingIface, 10120, SET_DEFAULT, TAG_NONE, ROAMING_NO, - 72667L, 197L, 41872L, 219L, 0L); + 72667L, 197L, 43123L, 227L, 0L); assertContains(delta, underlyingIface, 10120, SET_FOREGROUND, TAG_NONE, ROAMING_NO, - 9297L, 17L, 3936, 19L, 0L); + 9297L, 17L, 4054, 19L, 0L); assertContains(delta, underlyingIface, 10120, SET_DEFAULT, testTag1, ROAMING_NO, - 21691L, 41L, 13179L, 46L, 0L); + 21691L, 41L, 13572L, 48L, 0L); assertContains(delta, underlyingIface, 10120, SET_FOREGROUND, testTag1, ROAMING_NO, - 1281L, 2L, 634L, 1L, 0L); + 1281L, 2L, 653L, 1L, 0L); // New entries are added for debug purpose assertContains(delta, underlyingIface, 10100, SET_DBG_VPN_IN, TAG_NONE, ROAMING_NO, - 39605L, 46L, 11690, 49, 0); + 39605L, 46L, 12039, 51, 0); assertContains(delta, underlyingIface, 10120, SET_DBG_VPN_IN, TAG_NONE, ROAMING_NO, - 81964, 214, 45808, 238, 0); - assertContains(delta, underlyingIface, tunUid, SET_DBG_VPN_IN, TAG_NONE, ROAMING_NO, - 4983, 10, 1717, 10, 0); + 81964, 214, 47177, 246, 0); assertContains(delta, underlyingIface, tunUid, SET_DBG_VPN_OUT, TAG_NONE, ROAMING_ALL, - 126552, 270, 59215, 297, 0); + 121569, 260, 59216, 297, 0); } + // Tests a case where all of the data received by the tun0 interface is echo back into the tun0 + // interface by the vpn app before it's sent out of the underlying interface. The VPN app should + // not be charged for the echoed data but it should still be charged for any extra data it sends + // via the underlying interface. + public void testMigrateTun_VpnAsLoopback() { + final int tunUid = 10030; + final String tunIface = "tun0"; + final String underlyingIface = "wlan0"; + NetworkStats delta = new NetworkStats(TEST_START, 9) + // 2 different apps sent/receive data via tun0. + .addValues(tunIface, 10100, SET_DEFAULT, TAG_NONE, 50000L, 25L, 100000L, 50L, 0L) + .addValues(tunIface, 20100, SET_DEFAULT, TAG_NONE, 500L, 2L, 200L, 5L, 0L) + // VPN package resends data through the tunnel (with exaggerated overhead) + .addValues(tunIface, tunUid, SET_DEFAULT, TAG_NONE, 240000, 100L, 120000L, 60L, 0L) + // 1 app already has some traffic on the underlying interface, the other doesn't yet + .addValues(underlyingIface, 10100, SET_DEFAULT, TAG_NONE, 1000L, 10L, 2000L, 20L, 0L) + // Traffic through the underlying interface via the vpn app. + // This test should redistribute this data correctly. + .addValues(underlyingIface, tunUid, SET_DEFAULT, TAG_NONE, + 75500L, 37L, 130000L, 70L, 0L); + + assertTrue(delta.migrateTun(tunUid, tunIface, underlyingIface)); + assertEquals(9, delta.size()); + + // tunIface entries should not be changed. + assertValues(delta, 0, tunIface, 10100, SET_DEFAULT, TAG_NONE, ROAMING_NO, + 50000L, 25L, 100000L, 50L, 0L); + assertValues(delta, 1, tunIface, 20100, SET_DEFAULT, TAG_NONE, ROAMING_NO, + 500L, 2L, 200L, 5L, 0L); + assertValues(delta, 2, tunIface, tunUid, SET_DEFAULT, TAG_NONE, ROAMING_NO, + 240000L, 100L, 120000L, 60L, 0L); + + // Existing underlying Iface entries are updated + assertValues(delta, 3, underlyingIface, 10100, SET_DEFAULT, TAG_NONE, ROAMING_NO, + 51000L, 35L, 102000L, 70L, 0L); + + // VPN underlying Iface entries are updated + assertValues(delta, 4, underlyingIface, tunUid, SET_DEFAULT, TAG_NONE, ROAMING_NO, + 25000L, 10L, 29800L, 15L, 0L); + + // New entries are added for new application's underlying Iface traffic + assertContains(delta, underlyingIface, 20100, SET_DEFAULT, TAG_NONE, ROAMING_NO, + 500L, 2L, 200L, 5L, 0L); + + // New entries are added for debug purpose + assertContains(delta, underlyingIface, 10100, SET_DBG_VPN_IN, TAG_NONE, ROAMING_NO, + 50000L, 25L, 100000L, 50L, 0L); + assertContains(delta, underlyingIface, 20100, SET_DBG_VPN_IN, TAG_NONE, ROAMING_NO, + 500, 2L, 200L, 5L, 0L); + assertContains(delta, underlyingIface, tunUid, SET_DBG_VPN_OUT, TAG_NONE, ROAMING_ALL, + 50500L, 27L, 100200L, 55, 0); + } + private static void assertContains(NetworkStats stats, String iface, int uid, int set, int tag, int roaming, long rxBytes, long rxPackets, long txBytes, long txPackets, long operations) { diff --git a/docs/html/about/versions/nougat/android-7.0-samples.jd b/docs/html/about/versions/nougat/android-7.0-samples.jd index e283a7a22f83..ff63beff1dd9 100644 --- a/docs/html/about/versions/nougat/android-7.0-samples.jd +++ b/docs/html/about/versions/nougat/android-7.0-samples.jd @@ -6,7 +6,7 @@ page.image=images/cards/card-n-samples_2x.png <p> Use the code samples below to learn about Android 7.0 capabilities and APIs. To - download the samples in Android Studio, select the <b>File > Import + download the samples in Android Studio, select the <b>File > New > Import Samples</b> menu option. </p> diff --git a/docs/html/guide/topics/renderscript/reference/rs_allocation_create.jd b/docs/html/guide/topics/renderscript/reference/rs_allocation_create.jd new file mode 100644 index 000000000000..2defca3d32d5 --- /dev/null +++ b/docs/html/guide/topics/renderscript/reference/rs_allocation_create.jd @@ -0,0 +1,1060 @@ +page.title=RenderScript Allocation Creation Functions + +@jd:body + +<div class='renderscript'> +<h2>Overview</h2> +<p> The functions below are used to create allocations from within a script. +These functions can be called directly or indirectly from an invokable +function. It is an error if any control flow can result in calling these functions +from a RenderScript kernel function. +</p> +<h2>Summary</h2> +<table class='jd-sumtable'><tbody> + <tr><th colspan='2'>Functions</th></tr> + <tr class='alt-color api apilevel-1'> + <td class='jd-linkcol'> + <a href='rs_allocation_create.html#android_rs:rsCreateAllocation'>rsCreateAllocation</a> + </td> + <td class='jd-descrcol' width='100%'> + Creates an <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_allocation>rs_allocation</a> object of given <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_type>rs_type</a> + </td> + </tr> + <tr class='alt-color api apilevel-1'> + <td class='jd-linkcol'> + <a href='rs_allocation_create.html#android_rs:rsCreateElement'>rsCreateElement</a> + </td> + <td class='jd-descrcol' width='100%'> + Creates an <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_element>rs_element</a> object of the specified data type + </td> + </tr> + <tr class='alt-color api apilevel-1'> + <td class='jd-linkcol'> + <a href='rs_allocation_create.html#android_rs:rsCreatePixelElement'>rsCreatePixelElement</a> + </td> + <td class='jd-descrcol' width='100%'> + Creates an <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_element>rs_element</a> object of the specified data type and data kind + </td> + </tr> + <tr class='alt-color api apilevel-1'> + <td class='jd-linkcol'> + <a href='rs_allocation_create.html#android_rs:rsCreateType'>rsCreateType</a> + </td> + <td class='jd-descrcol' width='100%'> + Creates an <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_type>rs_type</a> object with the specified <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_element>rs_element</a> and shape attributes + </td> + </tr> + <tr class='alt-color api apilevel-1'> + <td class='jd-linkcol'> + <a href='rs_allocation_create.html#android_rs:rsCreateVectorElement'>rsCreateVectorElement</a> + </td> + <td class='jd-descrcol' width='100%'> + Creates an <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_element>rs_element</a> object of the specified data type and vector width + </td> + </tr> +</tbody></table> +<h2>Functions</h2> +<a name='android_rs:rsCreateAllocation'></a> +<div class='jd-details'> + <h4 class='jd-details-title'> + <span class='sympad'>rsCreateAllocation</span> + <span class='normal'>: Creates an <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_allocation>rs_allocation</a> object of given <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_type>rs_type</a></span> + </h4> + <div class='jd-details-descr'> + <table class='jd-tagtable'><tbody> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation(<a href='rs_object_types.html#android_rs:rs_type'>rs_type</a> type); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation(<a href='rs_object_types.html#android_rs:rs_type'>rs_type</a> type, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> usage); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_char(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_char(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_char(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_char2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_char2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_char2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_char3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_char3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_char3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_char4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_char4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_char4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_double(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_double(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_double(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_double2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_double2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_double2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_double3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_double3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_double3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_double4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_double4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_double4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_float(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_float(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_float(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_float2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_float2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_float2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_float3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_float3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_float3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_float4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_float4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_float4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_half(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_half(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_half(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_half2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_half2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_half2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_half3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_half3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_half3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_half4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_half4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_half4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_int(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_int(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_int(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_int2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_int2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_int2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_int3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_int3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_int3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_int4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_int4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_int4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_long(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_long(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_long(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_long2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_long2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_long2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_long3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_long3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_long3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_long4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_long4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_long4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_short(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_short(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_short(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_short2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_short2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_short2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_short3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_short3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_short3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_short4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_short4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_short4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uchar(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uchar(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uchar(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uchar2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uchar2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uchar2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uchar3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uchar3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uchar3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uchar4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uchar4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uchar4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uint(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uint(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uint(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uint2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uint2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uint2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uint3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uint3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uint3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uint4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uint4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_uint4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ulong(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ulong(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ulong(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ulong2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ulong2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ulong2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ulong3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ulong3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ulong3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ulong4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ulong4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ulong4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ushort(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ushort(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ushort(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ushort2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ushort2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ushort2(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ushort3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ushort3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ushort3(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ushort4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ushort4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> rsCreateAllocation_ushort4(<a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + </tbody></table> + </div> + <div class='jd-tagdata'> <h5 class='jd-tagtitle'>Parameters</h5> + <table class='jd-tagtable'><tbody> + <tr><th>type</th><td>Type of the allocation</td></tr> + <tr><th>usage</th><td>How the allocation should be used. A valid value is either of the following or their combination:<br>RS_ALLOCATION_USAGE_GRAPHICS_TEXTURE,<br>RS_ALLOCATION_USAGE_SCRIPT.</td></tr> + <tr><th>mipmap</th><td>A boolean flag indicating if the allocation is mipmapped and has multiple levels of detail (LoD).</td></tr> + <tr><th>dimX</th><td>Size on dimension x. Must be non zero.</td></tr> + <tr><th>dimY</th><td>Size on dimension y. 0 for single-dimension allocations.</td></tr> + <tr><th>dimZ</th><td>Size on dimension z. 0 for single-dimension and two-dimension allocations.</td></tr> + </tbody></table> + </div> + <div class='jd-tagdata jd-tagdescr'> +<p> Creates an rs_allocation object of the given rs_type and for the specified usages. +</p> + +<p> RS_ALLOCATION_USAGE_SCRIPT and RS_ALLOCATION_USAGE_GRAPHICS_TEXTURE are the + only supported usage flags for Allocations created from within a RenderScript + script. +</p> + +<p> You can also use rsCreateAllocation_<type><width> wrapper functions to directly + create allocations of scalar and vector numerical types without creating + intermediate rs_element or rs_type objects. +</p> + +<p> For example, rsCreateAllocation_int4() returns an Allocation of int4 data type of + specified dimensions. +</p> + </div> +</div> + +<a name='android_rs:rsCreateElement'></a> +<div class='jd-details'> + <h4 class='jd-details-title'> + <span class='sympad'>rsCreateElement</span> + <span class='normal'>: Creates an <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_element>rs_element</a> object of the specified data type</span> + </h4> + <div class='jd-details-descr'> + <table class='jd-tagtable'><tbody> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_element'>rs_element</a> rsCreateElement(<a href='rs_object_types.html#android_rs:rs_data_type'>rs_data_type</a> data_type); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + </tbody></table> + </div> + <div class='jd-tagdata'> <h5 class='jd-tagtitle'>Parameters</h5> + <table class='jd-tagtable'><tbody> + <tr><th>data_type</th><td>Data type of the Element</td></tr> + </tbody></table> + </div> + <div class='jd-tagdata jd-tagdescr'> +<p> Creates an rs_element object of the specified data type. The data kind of + the element will be set to RS_KIND_USER and vector width will be set to 1, + indicating non-vector. +</p> + </div> +</div> + +<a name='android_rs:rsCreatePixelElement'></a> +<div class='jd-details'> + <h4 class='jd-details-title'> + <span class='sympad'>rsCreatePixelElement</span> + <span class='normal'>: Creates an <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_element>rs_element</a> object of the specified data type and data kind</span> + </h4> + <div class='jd-details-descr'> + <table class='jd-tagtable'><tbody> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_element'>rs_element</a> rsCreatePixelElement(<a href='rs_object_types.html#android_rs:rs_data_type'>rs_data_type</a> data_type, <a href='rs_object_types.html#android_rs:rs_data_kind'>rs_data_kind</a> data_kind); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + </tbody></table> + </div> + <div class='jd-tagdata'> <h5 class='jd-tagtitle'>Parameters</h5> + <table class='jd-tagtable'><tbody> + <tr><th>data_type</th><td>Data type of the Element</td></tr> + <tr><th>data_kind</th><td>Data kind of the Element</td></tr> + </tbody></table> + </div> + <div class='jd-tagdata jd-tagdescr'> +<p> Creates an rs_element object of the specified data type and data kind. The + vector width of the rs_element object will be set to 1, indicating non-vector. +</p> + </div> +</div> + +<a name='android_rs:rsCreateType'></a> +<div class='jd-details'> + <h4 class='jd-details-title'> + <span class='sympad'>rsCreateType</span> + <span class='normal'>: Creates an <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_type>rs_type</a> object with the specified <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_element>rs_element</a> and shape attributes</span> + </h4> + <div class='jd-details-descr'> + <table class='jd-tagtable'><tbody> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_type'>rs_type</a> rsCreateType(<a href='rs_object_types.html#android_rs:rs_element'>rs_element</a> element, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_type'>rs_type</a> rsCreateType(<a href='rs_object_types.html#android_rs:rs_element'>rs_element</a> element, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_type'>rs_type</a> rsCreateType(<a href='rs_object_types.html#android_rs:rs_element'>rs_element</a> element, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_type'>rs_type</a> rsCreateType(<a href='rs_object_types.html#android_rs:rs_element'>rs_element</a> element, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimX, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimY, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> dimZ, bool mipmaps, bool faces, <a href='rs_object_types.html#android_rs:rs_yuv_format'>rs_yuv_format</a> yuv_format); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + </tbody></table> + </div> + <div class='jd-tagdata'> <h5 class='jd-tagtitle'>Parameters</h5> + <table class='jd-tagtable'><tbody> + <tr><th>element</th><td>An <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_element>rs_element</a> object that specifies the cell data type of an allocation.</td></tr> + <tr><th>dimX</th><td>Size on dimension x. Must be non zero.</td></tr> + <tr><th>dimY</th><td>Size on dimension y. 0 for single-dimension allocations.</td></tr> + <tr><th>dimZ</th><td>Size on dimension z. 0 for single-dimension and two-dimension allocations.</td></tr> + <tr><th>mipmaps</th><td>A boolean flag indicating if the allocation is mipmapped and has multiple levels of detail (LoD).</td></tr> + <tr><th>faces</th><td>A boolean flag indicating if the allocation is a cubemap that has cube faces.</td></tr> + <tr><th>yuv_format</th><td>Tye YUV layout.</td></tr> + </tbody></table> + </div> + <div class='jd-tagdata jd-tagdescr'> +<p> Creates an rs_type object with the specified element and shape attributes. +</p> + +<p> dimX specifies the size of the X dimension. +</p> + +<p> dimY, if present and non-zero, indicates that the Y dimension is present and + indicates its size. +</p> + +<p> dimZ, if present and non-zero, indicates that the Z dimension is present and + indicates its size. +</p> + +<p> mipmaps indicates the presence of level of detail (LOD). +</p> + +<p> faces indicates the presence of cubemap faces. +</p> + +<p> yuv_format indicates the associated YUV format (or RS_YUV_NONE). +</p> + </div> +</div> + +<a name='android_rs:rsCreateVectorElement'></a> +<div class='jd-details'> + <h4 class='jd-details-title'> + <span class='sympad'>rsCreateVectorElement</span> + <span class='normal'>: Creates an <a href={@docRoot}guide/topics/renderscript/reference/rs_object_types.html#android_rs:rs_element>rs_element</a> object of the specified data type and vector width</span> + </h4> + <div class='jd-details-descr'> + <table class='jd-tagtable'><tbody> + <tr> + <td><a href='rs_object_types.html#android_rs:rs_element'>rs_element</a> rsCreateVectorElement(<a href='rs_object_types.html#android_rs:rs_data_type'>rs_data_type</a> data_type, <a href='rs_value_types.html#android_rs:uint32_t'>uint32_t</a> vector_width); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + </tbody></table> + </div> + <div class='jd-tagdata'> <h5 class='jd-tagtitle'>Parameters</h5> + <table class='jd-tagtable'><tbody> + <tr><th>data_type</th><td>Data type of the Element</td></tr> + <tr><th>vector_width</th><td>Vector width</td></tr> + </tbody></table> + </div> + <div class='jd-tagdata jd-tagdescr'> +<p> Creates an rs_element object of the specified data type and vector width. + Value of vector_width must be 2, 3 or 4. The data kind of the rs_element object will + be set to RS_KIND_USER. +</p> + </div> +</div> + +</div> diff --git a/docs/html/guide/topics/renderscript/reference/rs_for_each.jd b/docs/html/guide/topics/renderscript/reference/rs_for_each.jd index 9ba56149f142..8b19ba6e7542 100644 --- a/docs/html/guide/topics/renderscript/reference/rs_for_each.jd +++ b/docs/html/guide/topics/renderscript/reference/rs_for_each.jd @@ -1,10 +1,10 @@ -page.title=RenderScript Kernel Invocation Functions and Types +page.title=RenderScript Kernel Launch Functions and Types @jd:body <div class='renderscript'> <h2>Overview</h2> -<p> The <a href='rs_for_each.html#android_rs:rsForEach'>rsForEach</a>() function can be used to invoke the root kernel of a script. +<p> The <a href='rs_for_each.html#android_rs:rsForEach'>rsForEach</a>() and <a href='rs_for_each.html#android_rs:rsForEachWithOptions'>rsForEachWithOptions</a>() functions are used to launch foreach kernels. </p> <p> The other functions are used to get the characteristics of the invocation of @@ -24,6 +24,14 @@ a <a href='rs_for_each.html#android_rs:rs_kernel_context'>rs_kernel_context</a> </tr> <tr class='alt-color api apilevel-1'> <td class='jd-linkcol'> + <a href='rs_for_each.html#android_rs:rs_kernel'>rs_kernel</a> + </td> + <td class='jd-descrcol' width='100%'> + Handle to a kernel function + </td> + </tr> + <tr class='alt-color api apilevel-1'> + <td class='jd-linkcol'> <a href='rs_for_each.html#android_rs:rs_kernel_context'>rs_kernel_context</a> </td> <td class='jd-descrcol' width='100%'> @@ -46,7 +54,15 @@ a <a href='rs_for_each.html#android_rs:rs_kernel_context'>rs_kernel_context</a> <a href='rs_for_each.html#android_rs:rsForEach'>rsForEach</a> </td> <td class='jd-descrcol' width='100%'> - Invoke the root kernel of a script + Launches a kernel + </td> + </tr> + <tr class='alt-color api apilevel-1'> + <td class='jd-linkcol'> + <a href='rs_for_each.html#android_rs:rsForEachWithOptions'>rsForEachWithOptions</a> + </td> + <td class='jd-descrcol' width='100%'> + Launches a kernel with options </td> </tr> <tr class='alt-color api apilevel-1'> @@ -198,6 +214,21 @@ locality when the processing is distributed over multiple cores. </div> </div> +<a name='android_rs:rs_kernel'></a> +<div class='jd-details'> + <h4 class='jd-details-title'> + <span class='sympad'>rs_kernel</span> + <span class='normal'>: Handle to a kernel function</span> + </h4> + <div class='jd-details-descr'> +<p>A typedef of: void* Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> +</p> +<p> An opaque type for a function that is defined with the kernel attribute. A value + of this type can be used in a <a href='rs_for_each.html#android_rs:rsForEach'>rsForEach</a> call to launch a kernel. +</p> + </div> +</div> + <a name='android_rs:rs_kernel_context'></a> <div class='jd-details'> <h4 class='jd-details-title'> @@ -249,7 +280,7 @@ versions, it will also be used to provide hint on how to best iterate over the cells. </p> -<p> The Start fields are inclusive and the End fields are exclusive. E.g. to iterate +<p> The Start fields are inclusive and the End fields are exclusive. For example, to iterate over cells 4, 5, 6, and 7 in the X dimension, set xStart to 4 and xEnd to 8. </p> </div> @@ -260,14 +291,20 @@ over cells 4, 5, 6, and 7 in the X dimension, set xStart to 4 and xEnd to 8. <div class='jd-details'> <h4 class='jd-details-title'> <span class='sympad'>rsForEach</span> - <span class='normal'>: Invoke the root kernel of a script</span> + <span class='normal'>: Launches a kernel</span> </h4> <div class='jd-details-descr'> <table class='jd-tagtable'><tbody> <tr> + <td>void rsForEach(<a href='rs_for_each.html#android_rs:rs_kernel'>rs_kernel</a> kernel, ... ...); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + <tr> <td>void rsForEach(<a href='rs_object_types.html#android_rs:rs_script'>rs_script</a> script, <a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> input, <a href='rs_object_types.html#android_rs:rs_allocation'>rs_allocation</a> output); </td> - <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 14</a> + <td> <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 14 - 23</a> </td> </tr> <tr> @@ -300,35 +337,89 @@ over cells 4, 5, 6, and 7 in the X dimension, set xStart to 4 and xEnd to 8. <table class='jd-tagtable'><tbody> <tr><th>script</th><td>Script to call.</td></tr> <tr><th>input</th><td>Allocation to source data from.</td></tr> - <tr><th>output</th><td>Allocation to write date into.</td></tr> + <tr><th>output</th><td>Allocation to write data into.</td></tr> <tr><th>usrData</th><td>User defined data to pass to the script. May be NULL.</td></tr> <tr><th>sc</th><td>Extra control information used to select a sub-region of the allocation to be processed or suggest a walking strategy. May be NULL.</td></tr> <tr><th>usrDataLen</th><td>Size of the userData structure. This will be used to perform a shallow copy of the data if necessary.</td></tr> + <tr><th>kernel</th><td>Function designator of the kernel function to call, which must be defined with the kernel attribute.</td></tr> + <tr><th>...</th><td>Input and output allocations</td></tr> </tbody></table> </div> <div class='jd-tagdata jd-tagdescr'> -<p> Invoke the kernel named "root" of the specified script. Like other kernels, this root() -function will be invoked repeatedly over the cells of the specificed allocation, filling -the output allocation with the results. +<p> Runs the kernel over zero or more input allocations. They are passed after the +<a href='rs_for_each.html#android_rs:rs_kernel'>rs_kernel</a> argument. If the specified kernel returns a value, an output allocation +must be specified as the last argument. All input allocations, +and the output allocation if it exists, must have the same dimensions. </p> -<p> When rsForEach is called, the root script is launched immediately. rsForEach returns -only when the script has completed and the output allocation is ready to use. +<p> This is a synchronous function. A call to this function only returns after all +the work has completed. If the kernel +function returns any value, the call waits until all results have been written +to the output allocation. </p> -<p> The rs_script argument is typically initialized using a global variable set from Java. +<p> Up to API level 23, the kernel is implicitly specified as the kernel named +"root" in the specified script, and only a single input allocation can be used. +Starting in API level 24, an arbitrary kernel function can be used, +as specified by the kernel argument. +The kernel must be defined in the current script. In addition, more than one +input can be used. </p> -<p> The kernel can be invoked with just an input allocation or just an output allocation. -This can be done by defining an rs_allocation variable and not initializing it. E.g.<code><br/> -rs_script gCustomScript;<br/> -void specializedProcessing(rs_allocation in) {<br/> - rs_allocation ignoredOut;<br/> - rsForEach(gCustomScript, in, ignoredOut);<br/> -}<br/></code> +<p> For example,<code><br/> +float __attribute__((kernel)) square(float a) {<br/> + return a * a;<br/> +}<br/> +<br/> +void compute(rs_allocation ain, rs_allocation aout) {<br/> + rsForEach(square, ain, aout);<br/> +}<br/> +<br/></code> +</p> + </div> +</div> + +<a name='android_rs:rsForEachWithOptions'></a> +<div class='jd-details'> + <h4 class='jd-details-title'> + <span class='sympad'>rsForEachWithOptions</span> + <span class='normal'>: Launches a kernel with options</span> + </h4> + <div class='jd-details-descr'> + <table class='jd-tagtable'><tbody> + <tr> + <td>void rsForEachWithOptions(<a href='rs_for_each.html#android_rs:rs_kernel'>rs_kernel</a> kernel, <a href='rs_for_each.html#android_rs:rs_script_call_t'>rs_script_call_t</a>* options, ... ...); +</td> + <td> Added in <a href='http://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels'>API level 24</a> + </td> + </tr> + </tbody></table> + </div> + <div class='jd-tagdata'> <h5 class='jd-tagtitle'>Parameters</h5> + <table class='jd-tagtable'><tbody> + <tr><th>kernel</th><td>Function designator to a function that is defined with the kernel attribute.</td></tr> + <tr><th>options</th><td>Launch options</td></tr> + <tr><th>...</th><td>Input and output allocations</td></tr> + </tbody></table> + </div> + <div class='jd-tagdata jd-tagdescr'> +<p> Launches kernel in a way similar to <a href='rs_for_each.html#android_rs:rsForEach'>rsForEach</a>. However, instead of processing +all cells in the input, this function only processes cells in the subspace of +the index space specified in options. With the index space explicitly specified +by options, no input or output allocation is required for a kernel launch using +this API. If allocations are passed in, they must match the number of arguments +and return value expected by the kernel function. The output allocation is +present if and only if the kernel has a non-void return value. </p> -<p> If both input and output allocations are specified, they must have the same dimensions. +<p> For example,<code><br/> + rs_script_call_t opts = {0};<br/> + opts.xStart = 0;<br/> + opts.xEnd = dimX;<br/> + opts.yStart = 0;<br/> + opts.yEnd = dimY / 2;<br/> + rsForEachWithOptions(foo, &opts, out, out);<br/> +</code> </p> </div> </div> @@ -359,7 +450,7 @@ over and rarely used indices, like the Array0 index. </p> <p> You can access the kernel context by adding a special parameter named "context" of -type rs_kernel_context to your kernel function. E.g.<br/> +type rs_kernel_context to your kernel function. For example,<br/> <code>short RS_KERNEL myKernel(short value, uint32_t x, rs_kernel_context context) {<br/> // The current index in the common x, y, z dimensions are accessed by<br/> // adding these variables as arguments. For the more rarely used indices<br/> @@ -644,7 +735,7 @@ over and rarely used indices, like the Array0 index. </p> <p> You can access it by adding a special parameter named "context" of -type rs_kernel_context to your kernel function. E.g.<br/> +type rs_kernel_context to your kernel function. For example,<br/> <code>int4 RS_KERNEL myKernel(int4 value, rs_kernel_context context) {<br/> uint32_t size = rsGetDimX(context); //...<br/></code> </p> diff --git a/docs/html/samples/new/index.jd b/docs/html/samples/new/index.jd index a7ffa8c45fe8..4d6262edb501 100644 --- a/docs/html/samples/new/index.jd +++ b/docs/html/samples/new/index.jd @@ -5,7 +5,7 @@ page.image=images/cards/samples-new_2x.png <p>The following code samples were recently published. You can download them in the Android SDK Manager under the <b>Samples for SDK</b> -component for Android 6.0 (API 23).</p> +component for Android 7.1 (API 25).</p> <p class="note"> <strong>Note:</strong> The downloadable projects are designed @@ -14,115 +14,67 @@ component for Android 6.0 (API 23).</p> <!-- NOTE TO EDITORS: add most recent samples first --> -<h3 id="ActiveNotification"> - <a href="{@docRoot}samples/ActiveNotifications/index.html">Active - Notification</a> -</h3> -<p> - This sample demonstrates how to use the {@link - android.app.NotificationManager} to tell you how many notifications your app - is currently showing. -</p> - -<h3 id="AutomaticBackup"> - <a href="{@docRoot}samples/AutoBackupForApps/index.html">Auto Backup for - Apps</a> -</h3> - -<p> - Android 6.0 (API level 23) introduces automatic backup for app settings. This - sample demonstrates how to add filtering rules to an app to manage settings - backup. -</p> +<h3 id="app-shortcuts">App shortcuts sample</h3> -<h3 id="Camera2Raw"> - <a href="{@docRoot}samples/Camera2Raw/index.html">Camera 2 Raw</a> -</h3> +<!-- TBA +<img src="sample-img.png" style="float: left; padding-right: 0.5em" + width="xxx"/> +--> <p> - This sample demonstrates how to use the - <a href="{@docRoot}reference/android/hardware/camera2/package-summary.html"> - <code>Camera2</code></a> API to capture RAW camera buffers and save them as - DNG files. -</p> - -<h3 id="ConfirmCredential"> - <a href="{@docRoot}samples/ConfirmCredential/index.html">Confirm - Credential</a> -</h3> - -<p> - This sample demonstrates how to use device credentials as an authentication method in your app. + This sample demonstrates how to use the <a href= + "/preview/app-shortcuts.html">app shortcuts API</a> introduced in Android 7.1 + (API level 25). This API allows an application to define a set of intents + which are displayed when a user long-presses on the app's launcher icon. + Examples are given for registering links both statically in XML, as well as + dynamically at runtime. </p> -<h3 id="DeviceOwner"> - <a href="{@docRoot}samples/DeviceOwner/index.html">Device Owner</a> -</h3> - <p> - This sample demonstrates how to use the device owner features to manage and - configure a device. + <a href="/samples/AppShortcuts/index.html">App shortcuts sample</a> </p> -<h3 id="DirectShare"> - <a href="{@docRoot}samples/DirectShare/index.html">Direct Share</a> -</h3> - -<p> - This sample demonstrates how to provide the - <a href="{@docRoot}about/versions/marshmallow/android-6.0.html#direct-share">Direct - Share</a> feature. The app shows some options directly in the list of share - intent candidates. -</p> +<h3 id="img-kbd-app">Image keyboard app sample</h3> -<h3 id="FingerprintDialog"> - <a href="{@docRoot}samples/FingerprintDialog/index.html">Fingerprint - Dialog</a> -</h3> +<!-- TBA +<img src="sample-img.png" style="float: left; padding-right: 0.5em" + width="xxx"/> +--> <p> - This sample demonstrates how to recognize registered fingerprints to - authenticate your app's user. + This sample demonstrates how to implement the <a href= + "/reference/android/view/inputmethod/InputConnection.html#commitContent(android.view.inputmethod.InputContentInfo,%20int,%20android.os.Bundle)"> + Commit Content API</a>, using the <a href= + "/topic/libraries/support-library/index.html">Android Support Library</a>. + This API provides a universal way for IMEs to send images and other rich + content directly to a text editor in an app, allowing users to compose + content using custom emojis, stickers, or other rich content provided by + other applications. </p> -<h3 id="MidiScope"> - <a href="{@docRoot}samples/MidiScope/index.html">MidiScope</a> -</h3> - <p> - This sample demonstrates how to use the <a href= - "{@docRoot}reference/android/media/midi/package-summary.html">MIDI API</a> to - receive and process MIDI signals coming from an attached input device. + <a href="/samples/CommitContentSampleApp/index.html">Image keyboard app sample</a> </p> -<h3 id="MidiSynth"> - <a href="{@docRoot}samples/MidiSynth/index.html">MidiSynth</a> -</h3> +<h3 id="img-kbd-ime">Image keyboard IME sample</h3> -<p> - This sample demonstrates how to use the <a href= - "{@docRoot}reference/android/media/midi/package-summary.html">MIDI API</a> to - receive and play MIDI messages coming from an attached input device. -</p> - -<h3 id="NfcProvisioning"> - <a href="{@docRoot}samples/NfcProvisioning/index.html">NFC Provisioning</a> -</h3> +<!-- TBA +<img src="sample-img.png" style="float: left; padding-right: 0.5em" + width="xxx"/> +--> <p> - This sample demonstrates how to use NFC to provision other devices with a - specific device owner. + This sample demonstrates how to write a <a href= + "/preview/image-keyboard.html">custom image keyboard</a> using the <a href= + "/reference/android/view/inputmethod/InputConnection.html#commitContent(android.view.inputmethod.InputContentInfo,%20int,%20android.os.Bundle)"> + Commit Content API</a> and the <a href= + "/topic/libraries/support-library/index.html">Android Support Library</a>. + This keyboard will be displayed inside compatible apps (also using the Commit + Content API), allowing users to insert emojis, stickers, or other rich + content into text editors. </p> -<h3 id="RuntimePermissions"> - <a href= - "{@docRoot}samples/RuntimePermissions/index.html">RuntimePermissions</a> -</h3> - <p> - This sample shows runtime permissions available in Android 6.0 (API level 23) - and higher. Display the log on screen to follow the execution. If executed on - an Android 6.0 device, the app displays an additional option to access - contacts using an 6.0-only optional permission. + <a href="/samples/CommitContentSampleIME/index.html">Image keyboard IME sample</a> </p> diff --git a/docs/html/training/location/geofencing.jd b/docs/html/training/location/geofencing.jd index ce6ad55ad889..046e99e9bed1 100644 --- a/docs/html/training/location/geofencing.jd +++ b/docs/html/training/location/geofencing.jd @@ -332,22 +332,39 @@ LocationServices.GeofencingApi.removeGeofences( <p>This section outlines recommendations for using geofencing with the location APIs for Android.</p> -<h3>Reduce power consumption</h3> +<h3> + Reduce power consumption +</h3> -<p>You can use the following techniques to optimize power consumption in your apps that use geofencing:</p> +<p> + You can use the following techniques to optimize power consumption in your + apps that use geofencing: +</p> <ul> -<li><p>Set the <a href="{@docRoot}android/reference/com/google/android/gms/location/Geofence.Builder.html#setNotificationResponsiveness(int)"> -notification responsiveness</a> to a higher value. Doing so improves power consumption by -increasing the latency of geofence alerts. For example, if you set a responsiveness value of five -minutes your app only checks for an entrance or exit alert once every five minutes. -Setting lower values does not necessarily mean that users will be notified within that time period -(for example, if you set a value of 5 seconds it may take a bit longer than that to receive the -alert).</p></li> -<li><p>Use a larger geofence radius for locations where a user spends a significant amount of time, -such as home or work. While a larger radius doesn't directly reduce power consumption, it reduces -the frequency at which the app checks for entrance or exit, effectively lowering overall power -consumption.</p></li> + <li> + <p> + Set the <a href= + "https://developers.google.com/android/reference/com/google/android/gms/location/Geofence.Builder.html#setNotificationResponsiveness(int)"> + notification responsiveness</a> to a higher value. Doing so improves + power consumption by increasing the latency of geofence alerts. For + example, if you set a responsiveness value of five minutes your app only + checks for an entrance or exit alert once every five minutes. Setting + lower values does not necessarily mean that users will be notified + within that time period (for example, if you set a value of 5 seconds it + may take a bit longer than that to receive the alert). + </p> + </li> + + <li> + <p> + Use a larger geofence radius for locations where a user spends a + significant amount of time, such as home or work. While a larger radius + doesn't directly reduce power consumption, it reduces the frequency at + which the app checks for entrance or exit, effectively lowering overall + power consumption. + </p> + </li> </ul> <h3>Choose the optimal radius for your geofence</h3> diff --git a/docs/html/training/tv/tif/tvinput.jd b/docs/html/training/tv/tif/tvinput.jd index 1a53398e6e4c..2153ef866860 100644 --- a/docs/html/training/tv/tif/tvinput.jd +++ b/docs/html/training/tv/tif/tvinput.jd @@ -10,9 +10,8 @@ trainingnavtop=true <div id="tb"> <h2>This lesson teaches you to</h2> <ol> - <li><a href="#manifest">Declare Your TV Input Service in the Manifest</a></li> - <li><a href="#tvinput">Define Your TV Input Service</a></li> - <li><a href="#setup">Define Your Setup Activity</a></li> + <li><a href="#TIFCompanion">Create a TV Input Service Using the TIF Companion Library</a></li> + <li><a href="#NoTIFCompanion">Create a TV Input Service Using the TIF Framework</a></li> </ol> <h2>You should also read</h2> <ul> @@ -30,14 +29,253 @@ trainingnavtop=true </div> <p>A TV input service represents a media stream source, and lets you present your media content in a -linear, broadcast TV fashion as channels and programs. With the TV input service, you can provide +linear, broadcast TV fashion as channels and programs. With a TV input service, you can provide parental controls, program guide information, and content ratings. The TV input service works -with the Android system TV app, developed for the device and immutable by third-party apps, which -ultimately controls and presents content on the TV. See +with the Android system TV app. This app ultimately controls and presents channel content +on the TV. The system TV app is developed specifically for the device and immutable +by third-party apps. For more information about the TV Input Framework (TIF) +architecture and its components, see <a class="external-link" href="http://source.android.com/devices/tv/index.html"> -TV Input Framework</a> for more information about the framework architecture and its components.</p> +TV Input Framework</a>.</p> -<p>To develop a TV input service, you implement the following components:</p> +<h2 id="TIFCompanion">Create a TV Input Service Using the TIF Companion Library</h2> + +<p> +The TIF Companion Library is a framework that provides extensible +implementations of common TV input service features. Use the TIF Companion +Library to quickly and easily create your own TV input service that follows +best practices for Android TV. +</p> + +<h3 id="build">Update your build.gradle file</h3> + +<p> +To get started using the TIF Companion Library, add the following line to your +app's <code>build.gradle</code> file: +</p> + +<pre> +compile 'com.google.android.media.tv.companionlibrary:1.0.0' +</pre> + +<p>The TIF Companion Library is not currently part of the Android +framework. It is distributed as part of the <a class="external-link" +href="https://github.com/googlesamples/androidtv-sample-inputs"> +TV Input Service sample app</a>, and not with the Android SDK. +</p> + +<h3 id="manifest">Declare your TV input service in the manifest</h3> + +<p>Your app must provide a {@link android.media.tv.TvInputService}-compatible +service that the system uses to access your app. The TIF +Companion Library provides the <code>BaseTvInputService</code> class, which +provides a default implementation of {@link android.media.tv.TvInputService} +that you can customize. Create a subclass of <code>BaseTvInputService</code>, +and declare the subclass in your manifest as a service.</p> + +<p>Within the manifest declaration, specify the +{@link android.Manifest.permission#BIND_TV_INPUT} permission to allow the +service to connect the TV input to the system. A system service +performs the binding and has the +{@link android.Manifest.permission#BIND_TV_INPUT} permission. +The system TV app sends requests to TV input services +via the {@link android.media.tv.TvInputManager} interface.</p> + +<p>In your service declaration, include an intent filter that specifies +{@link android.media.tv.TvInputService} as the action to perform with the +intent. Also declare the service metadata as a separate XML resource. The +service declaration, intent filter, and service metadata declaration are shown +in the following example:</p> + +<pre> +<service android:name=".rich.RichTvInputService" + android:label="@string/rich_input_label" + android:permission="android.permission.BIND_TV_INPUT"> + <!-- Required filter used by the system to launch our account service. --> + <intent-filter> + <action android:name="android.media.tv.TvInputService" /> + </intent-filter> + <!-- An XML file which describes this input. This provides pointers to + the RichTvInputSetupActivity to the system/TV app. --> + <meta-data + android:name="android.media.tv.input" + android:resource="@xml/richtvinputservice" /> +</service> +</pre> + +<p>Define the service metadata in a separate XML file. The service +metadata XML file must include a setup interface that describes the TV input's +initial configuration and channel scan. The metadata file should also contain a +flag stating whether or not users are able to record content. For more +information on how to support recording content in your app, see +<a href="{@docRoot}preview/features/tv-recording-api.html">TV Recording</a>. +</p> + +<p>The service metadata file is located in the XML resources directory +for your app and must match the name of the resource you declared in the +manifest. Using the manifest entries from the previous example, you would +create the XML file at <code>res/xml/richtvinputservice.xml</code>, with the +following contents:</p> + +<pre> +<?xml version="1.0" encoding="utf-8"?> +<tv-input xmlns:android="http://schemas.android.com/apk/res/android" + android:canRecord="true" + android:setupActivity="com.example.android.sampletvinput.rich.RichTvInputSetupActivity" /> +</pre> + +<h3 id="setup">Define channels and create your setup activity</h3> + +<p>Your TV input service must define at least one channel that users +access via the system TV app. You should register your channels +in the system database, and provide a setup activity that the system +invokes when it cannot find a channel for your app.</p> + +<p>First, enable your app to read from and write to the system Electronic +Programming Guide (EPG), whose data includes channels and programs available +to the user. To enable your app to perform these actions, and sync with the +EPG after device restart, add the following elements to your app manifest:</p> + +<pre> +<uses-permission android:name="com.android.providers.tv.permission.READ_EPG_DATA" /> +<uses-permission android:name="com.android.providers.tv.permission.WRITE_EPG_DATA" /> +<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED "/> +</pre> + +<p>Add the following element to ensure that your app shows up in the +Google Play Store as an app that provides content channels in Android TV:</p> + +<pre> +<uses-feature + android:name="android.software.live_tv" + android:required="true" /> +</pre> + +<p>Next, create a class which extends the <code>EpgSyncJobService</code> +class. This abstract class makes it easy to create a job service that +creates and updates channels in the system database.</p> + +<p>In your subclass, create and return your full list of channels in +<code>getChannels()</code>. If your channels come from an XMLTV file, +use the <code>XmlTvParser</code> class. Otherwise generate +channels programmatically using the <code>Channel.Builder</code> class. +</p> + +<p>For each channel, the system calls <code>getProgramsForChannel()</code> +when it needs a list of programs that can be viewed within a given time window +on the channel. Return a list of <code>Program</code> objects for the +channel. Use the <code>XmlTvParser</code> class to obtain programs from an +XMLTV file, or generate them programmatically using the +<code>Program.Builder</code> class.</p> + +<p>For each <code>Program</code> object, use an +<code>InternalProviderData</code> object to set program information such as the +program's video type. If you only have a limited number of programs that you +want the channel to repeat in a loop, use the +<code>InternalProviderData.setRepeatable()</code> method with a value of +<code>true</code> when setting information about your program.</p> + +<p>After you've implemented the job service, add it to your app manifest:</p> + +<pre> +<service + android:name=".sync.SampleJobService" + android:permission="android.permission.BIND_JOB_SERVICE" + android:exported="true" /> +</pre> + +<p>Finally, create a setup activity. Your setup activity should provide a way +to sync channel and program data. One way to do this is for the user to do it +via the UI in the activity. You might also have the app do it automatically +when the activity starts. When the setup activity needs to sync channel and +program info, the app should start the job service:</p> + +<pre> +String inputId = getActivity().getIntent().getStringExtra(TvInputInfo.EXTRA_INPUT_ID); +EpgSyncJobService.cancelAllSyncRequests(getActivity()); +EpgSyncJobService.requestImmediateSync(getActivity(), inputId, + new ComponentName(getActivity(), SampleJobService.class)); +</pre> + +<p>Use the <code>requestImmediateSync()</code> method to sync +the job service. The user must wait for the sync to finish, so you should +keep your request period relatively short.</p> + +<p>Use the <code>setUpPeriodicSync()</code> method to have the job service +periodically sync channel and program data in the background:</p> + +<pre> +EpgSyncJobService.setUpPeriodicSync(context, inputId, + new ComponentName(context, SampleJobService.class)); +</pre> + +<p>The TIF Companion Library provides an additional overloaded method of +<code>requestImmediateSync()</code> that lets you specify the duration of +channel data to sync in milliseconds. The default method syncs one hour's +worth of channel data. +</p> + +<p>The TIF Companion Library also provides an additional overloaded method of +<code>setUpPeriodicSync()</code> that lets you specify the duration of +channel data to sync, and how often the periodic sync should occur. The +default method syncs 48 hours of channel data every 12 hours. +</p> + +<p>For more details about channel data and the EPG, see +<a href="{@docRoot}training/tv/tif/channel.html"> Working with Channel Data</a>. +</p> + +<h3 id="playback">Handle tuning requests and media playback</h3> + +<p>When a user selects a specific channel, the system TV app uses a +<code>Session</code>, created by your app, to tune to the requested channel +and play content. The TIF Companion Library provides several +classes you can extend to handle channel and session calls from the system.</p> + +<p>Your <code>BaseTvInputService</code> subclass creates sessions which handle +tuning requests. Override the +<code>onCreateSession()</code> method, create a session extended from +the <code>BaseTvInputService.Session</code> class, and call +<code>super.sessionCreated()</code> with your new session. In the following +example, <code>onCreateSession()</code> returns a +<code>RichTvInputSessionImpl</code> object that extends +<code>BaseTvInputService.Session</code>:</p> + +<pre> +@Override +public final Session onCreateSession(String inputId) { + RichTvInputSessionImpl session = new RichTvInputSessionImpl(this, inputId); + session.setOverlayViewEnabled(true); + return super.sessionCreated(session); +} +</pre> + +<p>When the user uses the system TV app to start viewing one of your channels, +the system calls your session's <code>onPlayChannel()</code> method. Override +this method if you need to do any special channel initialization before the +program starts playing.</p> + +<p>The system then obtains the currently scheduled program and calls your +session's <code>onPlayProgram()</code> method, specifying the program +information and start time in milliseconds. Use the +<code>TvPlayer</code> interface to start playing the program.</p> + +<p>Your media player code should implement <code>TvPlayer</code> to handle +specific playback events. The <code>TvPlayer</code> class handles features +like time-shifting controls without adding complexity to your +<code>BaseTvInputService</code> implementation.</p> + +<p>In your session's <code>getTvPlayer()</code> method, return +your media player that implements <code>TvPlayer</code>. The +<a class="external-link" +href="https://github.com/googlesamples/androidtv-sample-inputs"> +TV Input Service sample app</a> implements a media player that uses +<a href="{@docRoot}guide/topics/media/exoplayer.html">ExoPlayer</a>.</p> + +<h2 id="NoTIFCompanion">Create a TV Input Service Using the TIF Framework</h2> + +<p>If your TV input service can't use the TIF Companion Library, you need +to implement the following components:</p> <ul> <li>{@link android.media.tv.TvInputService} provides long-running and background availability for @@ -56,43 +294,18 @@ TV Input Framework</a> for more information about the framework architecture and the interaction with TV inputs and apps</li> </ul> -<h2 id="manifest">Declare Your TV Input Service in the Manifest</h2> - -<p>Your app manifest must declare your {@link android.media.tv.TvInputService}. Within that -declaration, specify the {@link android.Manifest.permission#BIND_TV_INPUT} permission to allow the -service to connect the TV input to the system. A system service (<code>TvInputManagerService</code>) -performs the binding and has that permission. The system TV app sends requests to TV input services -via the {@link android.media.tv.TvInputManager} interface. The service declaration must also -include an intent filter that specifies the {@link android.media.tv.TvInputService} -as the action to perform with the intent. Also within the service declaration, declare the service -meta data in a separate XML resource. The service declaration, the intent filter and the service -meta data are described in the following example.</p> - -<pre> -<service android:name="com.example.sampletvinput.SampleTvInput" - android:label="@string/sample_tv_input_label" - android:permission="android.permission.BIND_TV_INPUT"> - <intent-filter> - <action android:name="android.media.tv.TvInputService" /> - </intent-filter> - <meta-data android:name="android.media.tv.input" - android:resource="@xml/sample_tv_input" /> -</service> -</pre> - -<p>Define the service meta data in separate XML file, as shown in the following example. The service -meta data must include a setup interface that describes the TV input's initial configuration and -channel scan. The service meta data file is located in the XML resources directory -for your application and must match the name of the resource in the manifest. Using the example -manifest entries above, you would create an XML file in the location -<code>res/xml/sample_tv_input.xml</code>, with the following contents:</p> +<p>You also need to do the following:</p> -<pre> -<tv-input xmlns:android="http://schemas.android.com/apk/res/android" - android:setupActivity="com.example.sampletvinput.SampleTvInputSetupActivity" /> -</pre> +<ol> +<li>Declare your TV input service in the manifest, as +described in <a href="#manifest">Declare your TV input service in the +manifest</a>.</li> +<li>Create the service metadata file.</li> +<li>Create and register your channel and program information.</li> +<li>Create your setup activity.</li> +</ol> -<h2 id="tvinput">Define Your TV Input Service</h2> +<h3 id="tvinput">Define your TV input service</h3> <div class="figure"> <img id="tvinputlife" src="{@docRoot}images/tv/tvinput-life.png" alt=""/> @@ -102,7 +315,7 @@ manifest entries above, you would create an XML file in the location <p>For your service, you extend the {@link android.media.tv.TvInputService} class. A {@link android.media.tv.TvInputService} implementation is a <a href="{@docRoot}guide/components/bound-services.html">bound service</a> where the system service -(<code>TvInputManagerService</code>) is the client that binds to it. The service life cycle methods +is the client that binds to it. The service life cycle methods you need to implement are illustrated in figure 1.</p> <p>The {@link android.app.Service#onCreate()} method initializes and starts the @@ -145,7 +358,8 @@ you may want to handle in your TV input service.</p> <p>The {@link android.media.tv.TvInputService} creates a {@link android.media.tv.TvInputService.Session} that implements {@link android.os.Handler.Callback} -to handle player state changes. With {@link android.media.tv.TvInputService.Session#onSetSurface(android.view.Surface) onSetSurface()}, +to handle player state changes. With +{@link android.media.tv.TvInputService.Session#onSetSurface(android.view.Surface) onSetSurface()}, the {@link android.media.tv.TvInputService.Session} sets the {@link android.view.Surface} with the video content. See <a href="{@docRoot}training/tv/tif/ui.html#surface">Integrate Player with Surface</a> for more information about working with {@link android.view.Surface} to render video.</p> @@ -153,16 +367,16 @@ for more information about working with {@link android.view.Surface} to render v <p>The {@link android.media.tv.TvInputService.Session} handles the {@link android.media.tv.TvInputService.Session#onTune(android.net.Uri) onTune()} event when the user selects a channel, and notifies the system TV app for changes in the content and -content meta data. These <code>notify()</code> methods are described in +content metadata. These <code>notify()</code> methods are described in <a href="{@docRoot}training/tv/tif/ui.html#control"> Control Content</a> and <a href="{@docRoot}training/tv/tif/ui.html#track">Handle Track Selection</a> further in this training.</p> -<h2 id="setup">Define Your Setup Activity</h2> +<h3 id="setup">Define your setup activity</h3> <p>The system TV app works with the setup activity you define for your TV input. The setup activity is required and must provide at least one channel record for the system database. The -system TV app will invoke the setup activity when it cannot find a channel for the TV input. +system TV app invokes the setup activity when it cannot find a channel for the TV input. <p>The setup activity describes to the system TV app the channels made available through the TV input, as demonstrated in the next lesson, <a href="{@docRoot}training/tv/tif/channel.html">Creating -and Updating Channel Data</a>.</p> +and Updating Channel Data</a>.</p>
\ No newline at end of file diff --git a/libs/androidfw/Asset.cpp b/libs/androidfw/Asset.cpp index 2cfa6666e9ab..8e8c6a2e25a2 100644 --- a/libs/androidfw/Asset.cpp +++ b/libs/androidfw/Asset.cpp @@ -52,6 +52,47 @@ static int32_t gCount = 0; static Asset* gHead = NULL; static Asset* gTail = NULL; +void Asset::registerAsset(Asset* asset) +{ + AutoMutex _l(gAssetLock); + gCount++; + asset->mNext = asset->mPrev = NULL; + if (gTail == NULL) { + gHead = gTail = asset; + } else { + asset->mPrev = gTail; + gTail->mNext = asset; + gTail = asset; + } + + if (kIsDebug) { + ALOGI("Creating Asset %p #%d\n", asset, gCount); + } +} + +void Asset::unregisterAsset(Asset* asset) +{ + AutoMutex _l(gAssetLock); + gCount--; + if (gHead == asset) { + gHead = asset->mNext; + } + if (gTail == asset) { + gTail = asset->mPrev; + } + if (asset->mNext != NULL) { + asset->mNext->mPrev = asset->mPrev; + } + if (asset->mPrev != NULL) { + asset->mPrev->mNext = asset->mNext; + } + asset->mNext = asset->mPrev = NULL; + + if (kIsDebug) { + ALOGI("Destroying Asset in %p #%d\n", asset, gCount); + } +} + int32_t Asset::getGlobalCount() { AutoMutex _l(gAssetLock); @@ -79,43 +120,8 @@ String8 Asset::getAssetAllocations() } Asset::Asset(void) - : mAccessMode(ACCESS_UNKNOWN) + : mAccessMode(ACCESS_UNKNOWN), mNext(NULL), mPrev(NULL) { - AutoMutex _l(gAssetLock); - gCount++; - mNext = mPrev = NULL; - if (gTail == NULL) { - gHead = gTail = this; - } else { - mPrev = gTail; - gTail->mNext = this; - gTail = this; - } - if (kIsDebug) { - ALOGI("Creating Asset %p #%d\n", this, gCount); - } -} - -Asset::~Asset(void) -{ - AutoMutex _l(gAssetLock); - gCount--; - if (gHead == this) { - gHead = mNext; - } - if (gTail == this) { - gTail = mPrev; - } - if (mNext != NULL) { - mNext->mPrev = mPrev; - } - if (mPrev != NULL) { - mPrev->mNext = mNext; - } - mNext = mPrev = NULL; - if (kIsDebug) { - ALOGI("Destroying Asset in %p #%d\n", this, gCount); - } } /* @@ -361,6 +367,9 @@ off64_t Asset::handleSeek(off64_t offset, int whence, off64_t curPosn, off64_t m _FileAsset::_FileAsset(void) : mStart(0), mLength(0), mOffset(0), mFp(NULL), mFileName(NULL), mMap(NULL), mBuf(NULL) { + // Register the Asset with the global list here after it is fully constructed and its + // vtable pointer points to this concrete type. b/31113965 + registerAsset(this); } /* @@ -369,6 +378,10 @@ _FileAsset::_FileAsset(void) _FileAsset::~_FileAsset(void) { close(); + + // Unregister the Asset from the global list here before it is destructed and while its vtable + // pointer still points to this concrete type. b/31113965 + unregisterAsset(this); } /* @@ -685,6 +698,9 @@ _CompressedAsset::_CompressedAsset(void) : mStart(0), mCompressedLen(0), mUncompressedLen(0), mOffset(0), mMap(NULL), mFd(-1), mZipInflater(NULL), mBuf(NULL) { + // Register the Asset with the global list here after it is fully constructed and its + // vtable pointer points to this concrete type. b/31113965 + registerAsset(this); } /* @@ -693,6 +709,10 @@ _CompressedAsset::_CompressedAsset(void) _CompressedAsset::~_CompressedAsset(void) { close(); + + // Unregister the Asset from the global list here before it is destructed and while its vtable + // pointer still points to this concrete type. b/31113965 + unregisterAsset(this); } /* diff --git a/libs/androidfw/AssetManager.cpp b/libs/androidfw/AssetManager.cpp index 81e91a80783b..80968e51d48c 100644 --- a/libs/androidfw/AssetManager.cpp +++ b/libs/androidfw/AssetManager.cpp @@ -79,7 +79,7 @@ static volatile int32_t gCount = 0; const char* AssetManager::RESOURCES_FILENAME = "resources.arsc"; const char* AssetManager::IDMAP_BIN = "/system/bin/idmap"; const char* AssetManager::OVERLAY_DIR = "/vendor/overlay"; -const char* AssetManager::OVERLAY_SKU_DIR_PROPERTY = "ro.boot.vendor.overlay.sku"; +const char* AssetManager::OVERLAY_THEME_DIR_PROPERTY = "ro.boot.vendor.overlay.theme"; const char* AssetManager::TARGET_PACKAGE_NAME = "android"; const char* AssetManager::TARGET_APK_PATH = "/system/framework/framework-res.apk"; const char* AssetManager::IDMAP_DIR = "/data/resource-cache"; diff --git a/libs/androidfw/include/androidfw/Asset.h b/libs/androidfw/include/androidfw/Asset.h index 36efbe5a48e9..2cd8c0bf3c78 100644 --- a/libs/androidfw/include/androidfw/Asset.h +++ b/libs/androidfw/include/androidfw/Asset.h @@ -44,7 +44,7 @@ namespace android { */ class Asset { public: - virtual ~Asset(void); + virtual ~Asset(void) = default; static int32_t getGlobalCount(); static String8 getAssetAllocations(); @@ -119,6 +119,19 @@ public: const char* getAssetSource(void) const { return mAssetSource.string(); } protected: + /* + * Adds this Asset to the global Asset list for debugging and + * accounting. + * Concrete subclasses must call this in their constructor. + */ + static void registerAsset(Asset* asset); + + /* + * Removes this Asset from the global Asset list. + * Concrete subclasses must call this in their destructor. + */ + static void unregisterAsset(Asset* asset); + Asset(void); // constructor; only invoked indirectly /* handle common seek() housekeeping */ diff --git a/libs/androidfw/include/androidfw/AssetManager.h b/libs/androidfw/include/androidfw/AssetManager.h index b39dccf44a8b..594dba5049dd 100644 --- a/libs/androidfw/include/androidfw/AssetManager.h +++ b/libs/androidfw/include/androidfw/AssetManager.h @@ -64,11 +64,11 @@ public: static const char* IDMAP_BIN; static const char* OVERLAY_DIR; /* - * If OVERLAY_SKU_DIR_PROPERTY is set, search for runtime resource overlay - * APKs in OVERLAY_DIR/<value of OVERLAY_SKU_DIR_PROPERTY> rather than in + * If OVERLAY_THEME_DIR_PROPERTY is set, search for runtime resource overlay + * APKs in OVERLAY_DIR/<value of OVERLAY_THEME_DIR_PROPERTY> in addition to * OVERLAY_DIR. */ - static const char* OVERLAY_SKU_DIR_PROPERTY; + static const char* OVERLAY_THEME_DIR_PROPERTY; static const char* TARGET_PACKAGE_NAME; static const char* TARGET_APK_PATH; static const char* IDMAP_DIR; diff --git a/libs/androidfw/tests/Android.mk b/libs/androidfw/tests/Android.mk index 2bc026b79ca2..1fe1773578fa 100644 --- a/libs/androidfw/tests/Android.mk +++ b/libs/androidfw/tests/Android.mk @@ -22,6 +22,7 @@ LOCAL_PATH:= $(call my-dir) testFiles := \ AppAsLib_test.cpp \ + Asset_test.cpp \ AttributeFinder_test.cpp \ ByteBucketArray_test.cpp \ Config_test.cpp \ diff --git a/libs/androidfw/tests/Asset_test.cpp b/libs/androidfw/tests/Asset_test.cpp new file mode 100644 index 000000000000..45c8cef92918 --- /dev/null +++ b/libs/androidfw/tests/Asset_test.cpp @@ -0,0 +1,37 @@ +/* + * Copyright (C) 2016 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. + */ + +#include <androidfw/Asset.h> + +#include <gtest/gtest.h> + +using namespace android; + +TEST(AssetTest, FileAssetRegistersItself) { + const int32_t count = Asset::getGlobalCount(); + Asset* asset = new _FileAsset(); + EXPECT_EQ(count + 1, Asset::getGlobalCount()); + delete asset; + EXPECT_EQ(count, Asset::getGlobalCount()); +} + +TEST(AssetTest, CompressedAssetRegistersItself) { + const int32_t count = Asset::getGlobalCount(); + Asset* asset = new _CompressedAsset(); + EXPECT_EQ(count + 1, Asset::getGlobalCount()); + delete asset; + EXPECT_EQ(count, Asset::getGlobalCount()); +} diff --git a/libs/hwui/FrameBuilder.cpp b/libs/hwui/FrameBuilder.cpp index 37d9d0e749e6..7524ba0dcea6 100644 --- a/libs/hwui/FrameBuilder.cpp +++ b/libs/hwui/FrameBuilder.cpp @@ -591,7 +591,7 @@ void FrameBuilder::deferArcOp(const ArcOp& op) { } static bool hasMergeableClip(const BakedOpState& state) { - return state.computedState.clipState + return !state.computedState.clipState || state.computedState.clipState->mode == ClipMode::Rectangle; } diff --git a/libs/hwui/tests/unit/FrameBuilderTests.cpp b/libs/hwui/tests/unit/FrameBuilderTests.cpp index 53dbede2f8e1..e2dc3a0a2c66 100644 --- a/libs/hwui/tests/unit/FrameBuilderTests.cpp +++ b/libs/hwui/tests/unit/FrameBuilderTests.cpp @@ -477,6 +477,35 @@ RENDERTHREAD_TEST(FrameBuilder, clippedMerging) { EXPECT_EQ(4, renderer.getIndex()); } +RENDERTHREAD_TEST(FrameBuilder, regionClipStopsMerge) { + class RegionClipStopsMergeTestRenderer : public TestRendererBase { + public: + void onTextOp(const TextOp& op, const BakedOpState& state) override { mIndex++; } + }; + auto node = TestUtils::createNode(0, 0, 400, 400, + [](RenderProperties& props, TestCanvas& canvas) { + SkPath path; + path.addCircle(200, 200, 200, SkPath::kCW_Direction); + canvas.save(SaveFlags::MatrixClip); + canvas.clipPath(&path, SkRegion::kIntersect_Op); + SkPaint paint; + paint.setTextEncoding(SkPaint::kGlyphID_TextEncoding); + paint.setAntiAlias(true); + paint.setTextSize(50); + TestUtils::drawUtf8ToCanvas(&canvas, "Test string1", paint, 100, 100); + TestUtils::drawUtf8ToCanvas(&canvas, "Test string1", paint, 100, 200); + canvas.restore(); + }); + + FrameBuilder frameBuilder(SkRect::MakeWH(400, 400), 400, 400, + sLightGeometry, Caches::getInstance()); + frameBuilder.deferRenderNode(*TestUtils::getSyncedNode(node)); + + RegionClipStopsMergeTestRenderer renderer; + frameBuilder.replayBakedOps<TestDispatcher>(renderer); + EXPECT_EQ(2, renderer.getIndex()); +} + RENDERTHREAD_TEST(FrameBuilder, textMerging) { class TextMergingTestRenderer : public TestRendererBase { public: diff --git a/media/java/android/media/Ringtone.java b/media/java/android/media/Ringtone.java index 6658e88184b0..00bdc69b5759 100644 --- a/media/java/android/media/Ringtone.java +++ b/media/java/android/media/Ringtone.java @@ -470,9 +470,7 @@ public class Ringtone { synchronized (sActiveRingtones) { sActiveRingtones.remove(Ringtone.this); } - if (mLocalPlayer != null) { - mLocalPlayer.setOnCompletionListener(null); - } + mp.setOnCompletionListener(null); // Help the Java GC: break the refcount cycle. } } } diff --git a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/ExifInterfaceTest.java b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/ExifInterfaceTest.java index db326ba6e2c2..012041ff1380 100644 --- a/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/ExifInterfaceTest.java +++ b/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/ExifInterfaceTest.java @@ -416,7 +416,7 @@ public class ExifInterfaceTest extends AndroidTestCase { in = getContext().getAssets().open(imageFile.getName()); ExifInterface exifInterface = new ExifInterface(in); exifInterface.saveAttributes(); - } catch (UnsupportedOperationException e) { + } catch (IOException e) { // Expected. saveAttributes is not supported with an ExifInterface object which was // created with InputStream. return; diff --git a/packages/CaptivePortalLogin/src/com/android/captiveportallogin/CaptivePortalLoginActivity.java b/packages/CaptivePortalLogin/src/com/android/captiveportallogin/CaptivePortalLoginActivity.java index b58c87a5094d..bb8eb2cd0797 100644 --- a/packages/CaptivePortalLogin/src/com/android/captiveportallogin/CaptivePortalLoginActivity.java +++ b/packages/CaptivePortalLogin/src/com/android/captiveportallogin/CaptivePortalLoginActivity.java @@ -115,6 +115,7 @@ public class CaptivePortalLoginActivity extends Activity { myWebView.clearCache(true); WebSettings webSettings = myWebView.getSettings(); webSettings.setJavaScriptEnabled(true); + webSettings.setMixedContentMode(WebSettings.MIXED_CONTENT_COMPATIBILITY_MODE); mWebViewClient = new MyWebViewClient(); myWebView.setWebViewClient(mWebViewClient); myWebView.setWebChromeClient(new MyWebChromeClient()); diff --git a/packages/MtpDocumentsProvider/src/com/android/mtp/MtpManager.java b/packages/MtpDocumentsProvider/src/com/android/mtp/MtpManager.java index 90dd4406346a..8f254e9735da 100644 --- a/packages/MtpDocumentsProvider/src/com/android/mtp/MtpManager.java +++ b/packages/MtpDocumentsProvider/src/com/android/mtp/MtpManager.java @@ -282,8 +282,8 @@ class MtpManager { } final MtpDeviceInfo info = mtpDevice.getDeviceInfo(); if (info != null) { - operationsSupported = mtpDevice.getDeviceInfo().getOperationsSupported(); - eventsSupported = mtpDevice.getDeviceInfo().getEventsSupported(); + operationsSupported = info.getOperationsSupported(); + eventsSupported = info.getEventsSupported(); } } else { roots = new MtpRoot[0]; diff --git a/packages/PrintSpooler/res/values-af/strings.xml b/packages/PrintSpooler/res/values-af/strings.xml index b9fd6aacea46..57ba2b68c69c 100644 --- a/packages/PrintSpooler/res/values-af/strings.xml +++ b/packages/PrintSpooler/res/values-af/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Meer inligting oor hierdie drukker"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Kon nie lêer skep nie"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Sommige drukdienste is gedeaktiveer"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Sommige drukdienste is gedeaktiveer."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Kies drukdiens"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Soek tans vir drukkers"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Geen drukdienste is geaktiveer nie"</string> <string name="print_no_printers" msgid="4869403323900054866">"Geen drukkers gekry nie"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Kan nie drukkers byvoeg nie"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Kies om drukker by te voeg"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Kies om te aktiveer"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Geaktiveerde dienste"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Aanbevole dienste"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Gedeaktiveerde dienste"</string> - <string name="all_services_title" msgid="5578662754874906455">"Alle dienste"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Installeer om <xliff:g id="COUNT_1">%1$s</xliff:g> drukkers te ontdek</item> - <item quantity="one">Installeer om <xliff:g id="COUNT_0">%1$s</xliff:g> drukker ontdek</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Druk tans <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Kanselleer tans <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Drukkerfout by <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Herbegin"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Geen verbinding met drukker nie"</string> <string name="reason_unknown" msgid="5507940196503246139">"onbekend"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – nie beskikbaar nie"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Gebruik <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Jou dokument kan dalk deur een of meer bedieners op pad na die drukker gaan."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Jammer, dit het nie gewerk nie. Probeer weer."</string> <string name="print_error_retry" msgid="1426421728784259538">"Herprobeer"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Hierdie drukker is nie op die oomblik beskikbaar nie."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Kan nie voorskou wys nie"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Berei tans voorskou voor …"</string> </resources> diff --git a/packages/PrintSpooler/res/values-am/strings.xml b/packages/PrintSpooler/res/values-am/strings.xml index 1eb427bf5a00..a2182fb54748 100644 --- a/packages/PrintSpooler/res/values-am/strings.xml +++ b/packages/PrintSpooler/res/values-am/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"ተጨማሪ የዚህ አታሚ መረጃ"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"ፋይል መፍጠር አልተቻለም"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"አንዳንድ የህትመት አገልግሎቶች ተሰናክለዋል"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"አንዳንድ የህትመት አገልግሎቶች ተሰናክለዋል።"</string> + <string name="choose_print_service" msgid="3740309762324459694">"የህትመት አገልግሎት ይምረጡ"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"አታሚዎችን በመፈለግ ላይ"</string> <string name="print_no_print_services" msgid="8561247706423327966">"ምንም የህትመት አገልግሎቶች አልነቁም"</string> <string name="print_no_printers" msgid="4869403323900054866">"ምንም አታሚዎች አልተገኙም"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"አታሚዎችን ማከል አልተቻለም"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"አታሚን ለማከል ይምረጡ"</string> - <string name="enable_print_service" msgid="3482815747043533842">"ለማንቃት ይምረጡ"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"የነቁ አገልግሎቶች"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"የሚመከሩ አገልግሎቶች"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"የተሰናከሉ አገልግሎቶች"</string> - <string name="all_services_title" msgid="5578662754874906455">"ሁሉም አገልግሎቶች"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one"><xliff:g id="COUNT_1">%1$s</xliff:g> አታሚዎች ለማግኘት ይጫኑ</item> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> አታሚዎች ለማግኘት ይጫኑ</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>ን በማተም ላይ"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>ን በመተው ላይ"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"የአታሚ ስህተት <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"እንደገና ጀምር"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"ከአታሚ ጋር ምንም ግንኙነት የለም"</string> <string name="reason_unknown" msgid="5507940196503246139">"አይታወቅም"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – አይገኝም"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> ይጠቀሙ?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"ሰነድዎ ወደ አታሚው በሚሄድበት ወቅት በአንድ ወይም ከዚያ በላይ አገልጋዮች ውስጥ ሊያልፍ ይችላል።"</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"ይቅርታ፣ ያ አልሰራም። እንደገና ይሞክሩ።"</string> <string name="print_error_retry" msgid="1426421728784259538">"እንደገና ይሞክሩ"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"አታሚው አሁን አይገኝም።"</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"ቅድመ ዕይታን ማሳየት አይቻልም"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"ቅድመ እይታን በማዘጋጀት ላይ…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-ar/strings.xml b/packages/PrintSpooler/res/values-ar/strings.xml index 9751ca283b7d..eab1339a4d21 100644 --- a/packages/PrintSpooler/res/values-ar/strings.xml +++ b/packages/PrintSpooler/res/values-ar/strings.xml @@ -30,7 +30,7 @@ <string name="destination_default_text" msgid="5422708056807065710">"اختر طابعة"</string> <string name="template_all_pages" msgid="3322235982020148762">"جميع الصفحات وعددها <xliff:g id="PAGE_COUNT">%1$s</xliff:g>"</string> <string name="template_page_range" msgid="428638530038286328">"النطاق <xliff:g id="PAGE_COUNT">%1$s</xliff:g>"</string> - <string name="pages_range_example" msgid="8558694453556945172">"مثلاً، ١—٥،٨،١١—١٣"</string> + <string name="pages_range_example" msgid="8558694453556945172">"على سبيل المثال، 1—5،8،11—13"</string> <string name="print_preview" msgid="8010217796057763343">"معاينة قبل الطباعة"</string> <string name="install_for_print_preview" msgid="6366303997385509332">"تثبيت برنامج عرض PDF للمعاينة"</string> <string name="printing_app_crashed" msgid="854477616686566398">"تعطّل تطبيق الطباعة"</string> @@ -65,26 +65,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"مزيد من المعلومات حول هذه الطابعة"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"تعذَّر إنشاء الملف"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"بعض خدمات الطباعة معطَّلة"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"بعض خدمات الطباعة معطَّلة."</string> + <string name="choose_print_service" msgid="3740309762324459694">"اختر خدمة طباعة"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"البحث عن طابعات"</string> <string name="print_no_print_services" msgid="8561247706423327966">"لم يتم تمكين أي خدمات طباعة"</string> <string name="print_no_printers" msgid="4869403323900054866">"لم يتم العثور على طابعات"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"تعذرت إضافة طابعات"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"اختر لإضافة طابعة"</string> - <string name="enable_print_service" msgid="3482815747043533842">"حدد للتمكين"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"الخدمات الممكنة"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"الخدمات الموصى بها"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"الخدمات المعطَّلة"</string> - <string name="all_services_title" msgid="5578662754874906455">"جميع الخدمات"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="zero">التثبيت لاستكشاف <xliff:g id="COUNT_1">%1$s</xliff:g> طابعات</item> - <item quantity="two">التثبيت لاستكشاف طابعتين (<xliff:g id="COUNT_1">%1$s</xliff:g>)</item> - <item quantity="few">التثبيت لاستكشاف <xliff:g id="COUNT_1">%1$s</xliff:g> طابعات</item> - <item quantity="many">التثبيت لاستكشاف <xliff:g id="COUNT_1">%1$s</xliff:g> طابعة</item> - <item quantity="other">التثبيت لاستكشاف <xliff:g id="COUNT_1">%1$s</xliff:g> طابعات</item> - <item quantity="one">التثبيت لاستكشاف <xliff:g id="COUNT_0">%1$s</xliff:g> طابعة</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"جارٍ طباعة <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"جارٍ إلغاء <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"خطا في الطابعة <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -93,6 +78,7 @@ <string name="restart" msgid="2472034227037808749">"إعادة تشغيل"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"لا يوجد اتصال بالطابعة"</string> <string name="reason_unknown" msgid="5507940196503246139">"غير معروف"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – غير متاحة"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"هل تريد استخدام <xliff:g id="SERVICE">%1$s</xliff:g>؟"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"من الممكن أن يمر المستند عبر خادم أو أكثر أثناء إرساله إلى الطابعة."</string> <string-array name="color_mode_labels"> @@ -112,6 +98,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"عذرًا، هذا لا يعمل. أعد المحاولة."</string> <string name="print_error_retry" msgid="1426421728784259538">"إعادة المحاولة"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"الطابعة ليست متوفرة في الوقت الحالي."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"يتعذر عرض المعاينة."</string> <string name="print_preparing_preview" msgid="3939930735671364712">"جارٍ تحضير المعاينة…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-az-rAZ/strings.xml b/packages/PrintSpooler/res/values-az-rAZ/strings.xml index 49808a3bdac9..bff477d53454 100644 --- a/packages/PrintSpooler/res/values-az-rAZ/strings.xml +++ b/packages/PrintSpooler/res/values-az-rAZ/strings.xml @@ -17,7 +17,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="app_label" msgid="4469836075319831821">"Çap Spuler"</string> - <string name="more_options_button" msgid="2243228396432556771">"Digər variantlar"</string> + <string name="more_options_button" msgid="2243228396432556771">"Daha çox seçim"</string> <string name="label_destination" msgid="9132510997381599275">"Hədəf"</string> <string name="label_copies" msgid="3634531042822968308">"Surətlər"</string> <string name="label_copies_summary" msgid="3861966063536529540">"Nüsxələr:"</string> @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Bu printer haqqında daha ətraflı məlumat"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Fayl yaradıla bilmədi"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Bəzi çap xidmətləri deaktiv edilib."</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Bəzi çap xidmətləri deaktiv edilib."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Çap xidmətini seçin"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Printer axtarılır"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Heç bir çap xidməti aktiv edilməyib"</string> <string name="print_no_printers" msgid="4869403323900054866">"Heç bir printer tapılmadı"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Printerlər əlavə edilmədi"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Printer əlavə etmək üçün seçin"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Aktiv etmək üçün seçin"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Aktiv edilmiş xidmətlər"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Tövsiyə olunan xidmətlər"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Deaktiv edilmiş xidmətlər"</string> - <string name="all_services_title" msgid="5578662754874906455">"Bütün xidmətlər"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> printeri kəşf etmək üçün quraşdırın</item> - <item quantity="one"><xliff:g id="COUNT_0">%1$s</xliff:g> printeri kəşf etmək üçün quraşdırın</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> çap edilir"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> ləğv edilir"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Printer xətası <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Yenidən başlat"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Printerə heç bir bağlantı yoxdur"</string> <string name="reason_unknown" msgid="5507940196503246139">"naməlum"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>– əlçatmaz"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> xidmətindən istifadə edilsin?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Sənədiniz printerə qədər bir və ya daha çox server vasitəsilə keçə bilər."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Üzr istəyirik, alınmadı. Yenidən cəhd edin."</string> <string name="print_error_retry" msgid="1426421728784259538">"Yenidən yoxla"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Bu printer hazırda əlçatan deyil."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Önizləmə göstərilə bilmir"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Önizləməyə hazırlıq gedir..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-bg/strings.xml b/packages/PrintSpooler/res/values-bg/strings.xml index dc32b0ffbe8c..e8de8ea96e90 100644 --- a/packages/PrintSpooler/res/values-bg/strings.xml +++ b/packages/PrintSpooler/res/values-bg/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Още информация за този принтер"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Файлът не можа да бъде създаден"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Някои услуги за отпечатване са деактивирани"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Някои услуги за отпечатване са деактивирани."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Избиране на услуга за отпечатване"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Търсене на принтери"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Няма активирани услуги за отпечатване"</string> <string name="print_no_printers" msgid="4869403323900054866">"Няма намерени принтери"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Не могат да се добавят принтери"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Изберете, за да добавите принтер"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Изберете, за да активирате"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Активирани услуги"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Препоръчителни услуги"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Деактивирани услуги"</string> - <string name="all_services_title" msgid="5578662754874906455">"Всички услуги"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Инсталирайте, за да бъдат открити <xliff:g id="COUNT_1">%1$s</xliff:g> принтера</item> - <item quantity="one">Инсталирайте, за да бъде открит <xliff:g id="COUNT_0">%1$s</xliff:g> принтер</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"„<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>“ се отпечатва"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"„<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>“ се анулира"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Грешка в принтера при „<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>“"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Рестартиране"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Няма връзка с принтера"</string> <string name="reason_unknown" msgid="5507940196503246139">"няма данни"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – не е налице"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Да се използва ли „<xliff:g id="SERVICE">%1$s</xliff:g>“?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"По пътя към принтера документът ви може да премине през един или повече сървъри."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"За съжаление това не проработи. Опитайте отново."</string> <string name="print_error_retry" msgid="1426421728784259538">"Нов опит"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"В момента този принтер не е налице."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Визуализацията не може да се покаже"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Визуализацията се подготвя…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-bn-rBD/strings.xml b/packages/PrintSpooler/res/values-bn-rBD/strings.xml index c074791498e1..a1ca4945327a 100644 --- a/packages/PrintSpooler/res/values-bn-rBD/strings.xml +++ b/packages/PrintSpooler/res/values-bn-rBD/strings.xml @@ -16,7 +16,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="app_label" msgid="4469836075319831821">"প্রিন্ট স্পোলার"</string> + <string name="app_label" msgid="4469836075319831821">"মুদ্রণ স্পোলার"</string> <string name="more_options_button" msgid="2243228396432556771">"আরো বিকল্প"</string> <string name="label_destination" msgid="9132510997381599275">"গন্তব্য"</string> <string name="label_copies" msgid="3634531042822968308">"প্রতিলিপিগুলি"</string> @@ -31,22 +31,22 @@ <string name="template_all_pages" msgid="3322235982020148762">"সমস্ত <xliff:g id="PAGE_COUNT">%1$s</xliff:g>"</string> <string name="template_page_range" msgid="428638530038286328">"<xliff:g id="PAGE_COUNT">%1$s</xliff:g> এর পরিসর"</string> <string name="pages_range_example" msgid="8558694453556945172">"যেমন, ১—৫,৮,১১—১৩"</string> - <string name="print_preview" msgid="8010217796057763343">"প্রিন্ট পূর্বরূপ"</string> + <string name="print_preview" msgid="8010217796057763343">"মুদ্রণ পূর্বরূপ"</string> <string name="install_for_print_preview" msgid="6366303997385509332">"পূর্বরূপ দেখার জন্য PDF ভিউয়ার ইনস্টল করুন"</string> - <string name="printing_app_crashed" msgid="854477616686566398">"প্রিন্ট অ্যাপ্লিকেশান ক্র্যাশ করছে"</string> - <string name="generating_print_job" msgid="3119608742651698916">"প্রিন্ট কার্য তৈরি করা হচ্ছে"</string> + <string name="printing_app_crashed" msgid="854477616686566398">"মুদ্রণ অ্যাপ্লিকেশান ক্র্যাশ করছে"</string> + <string name="generating_print_job" msgid="3119608742651698916">"মুদ্রণ কার্য তৈরি করা হচ্ছে"</string> <string name="save_as_pdf" msgid="5718454119847596853">"PDF হিসাবে সংরক্ষণ করুন"</string> <string name="all_printers" msgid="5018829726861876202">"সমস্ত মুদ্রক…"</string> - <string name="print_dialog" msgid="32628687461331979">"প্রিন্ট ডায়লগ"</string> + <string name="print_dialog" msgid="32628687461331979">"মুদ্রণ ডায়লগ"</string> <string name="current_page_template" msgid="1386638343571771292">"<xliff:g id="CURRENT_PAGE">%1$d</xliff:g> /<xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> <string name="page_description_template" msgid="6831239682256197161">"<xliff:g id="PAGE_COUNT">%2$d</xliff:g>টির মধ্যে <xliff:g id="CURRENT_PAGE">%1$d</xliff:g> নম্বর পৃষ্ঠা"</string> <string name="summary_template" msgid="8899734908625669193">"সারাংশ, <xliff:g id="COPIES">%1$s</xliff:g>টি অনুলিপি, কাগজের আকার <xliff:g id="PAPER_SIZE">%2$s</xliff:g>"</string> <string name="expand_handle" msgid="7282974448109280522">"প্রসারিত করার হ্যান্ডেল"</string> <string name="collapse_handle" msgid="6886637989442507451">"সঙ্কুচিত করার হ্যান্ডেল"</string> - <string name="print_button" msgid="645164566271246268">"প্রিন্ট করুন"</string> + <string name="print_button" msgid="645164566271246268">"মুদ্রণ করুন"</string> <string name="savetopdf_button" msgid="2976186791686924743">"PDF হিসাবে সংরক্ষণ করুন"</string> - <string name="print_options_expanded" msgid="6944679157471691859">"প্রিন্ট বিকল্প প্রসারিত হয়েছে"</string> - <string name="print_options_collapsed" msgid="7455930445670414332">"প্রিন্ট বিকল্প সংকুচিত হয়েছে"</string> + <string name="print_options_expanded" msgid="6944679157471691859">"মুদ্রণ বিকল্প প্রসারিত হয়েছে"</string> + <string name="print_options_collapsed" msgid="7455930445670414332">"মুদ্রণ বিকল্প সংকুচিত হয়েছে"</string> <string name="search" msgid="5421724265322228497">"অনুসন্ধান করুন"</string> <string name="all_printers_label" msgid="3178848870161526399">"সমস্ত মুদ্রক"</string> <string name="add_print_service_label" msgid="5356702546188981940">"পরিষেবা যোগ করুন"</string> @@ -61,23 +61,12 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"এই মুদ্রকটির বিষয়ে আরো তথ্য"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"ফাইল তৈরি করা গেল না"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"কিছু মুদ্রণ পরিষেবা অক্ষম করা আছে"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"কিছু মুদ্রণ পরিষেবা অক্ষম করা হয়েছে৷"</string> + <string name="choose_print_service" msgid="3740309762324459694">"মুদ্রণ পরিষেবা চয়ন করুন"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"মুদ্রকগুলি অনুসন্ধান করা হচ্ছে"</string> - <string name="print_no_print_services" msgid="8561247706423327966">"প্রিন্ট পরিষেবা সক্ষম নেই"</string> + <string name="print_no_print_services" msgid="8561247706423327966">"মুদ্রণ পরিষেবা সক্ষম নেই"</string> <string name="print_no_printers" msgid="4869403323900054866">"কোনো মুদ্রক পাওয়া যায়নি"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"মুদ্রকগুলি যোগ করা যাবে না"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"মুদ্রক যোগ করতে নির্বাচন করুন"</string> - <string name="enable_print_service" msgid="3482815747043533842">"সক্ষম করতে নির্বাচন করুন"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"সক্ষম করা পরিষেবাগুলি"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"প্রস্তাবিত পরিষেবাগুলি"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"অক্ষম করা পরিষেবাগুলি"</string> - <string name="all_services_title" msgid="5578662754874906455">"সমস্ত পরিষেবা"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one"><xliff:g id="COUNT_1">%1$s</xliff:g>টি মুদ্রক খুঁজে পেতে ইনস্টল করুন</item> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g>টি মুদ্রক খুঁজে পেতে ইনস্টল করুন</item> - </plurals> - <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> প্রিন্ট করা হচ্ছে"</string> + <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> মুদ্রণ করা হচ্ছে"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> বাতিল করা হচ্ছে"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> মুদ্রক ত্রুটি"</string> <string name="blocked_notification_title_template" msgid="1175435827331588646">"মুদ্রক <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> অবরুদ্ধ করেছে"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"পুনর্সূচনা"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"মুদ্রকে কোনো সংযোগ নেই"</string> <string name="reason_unknown" msgid="5507940196503246139">"অজানা"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – অনুপলব্ধ"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> ব্যবহার করবেন?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"আপনার দস্তাবেজ মুদ্রকে যাওয়ার সময় এক বা একাধিক সার্ভারের মাধ্যমে পাস হতে পারে।"</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"দুঃখিত, এটি কাজ করেনি৷ আবার চেষ্টা করুন৷"</string> <string name="print_error_retry" msgid="1426421728784259538">"পুনরায় চেষ্টা করুন"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"এই মূহুর্তে প্রিন্টার উপলব্ধ নয়।"</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"পূর্বরূপ প্রদর্শন করা যাবে না"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"পূর্বরূপ প্রস্তুত করছে..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-ca/strings.xml b/packages/PrintSpooler/res/values-ca/strings.xml index 111e193ebcc9..aa6f9925fda5 100644 --- a/packages/PrintSpooler/res/values-ca/strings.xml +++ b/packages/PrintSpooler/res/values-ca/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Més informació sobre aquesta impressora"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"No s\'ha pogut crear el fitxer"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Alguns serveis d\'impressió estan desactivats"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Hi ha serveis d\'impressió que estan desactivats."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Selecció del servei d\'impressió"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Cerca d\'impressores"</string> <string name="print_no_print_services" msgid="8561247706423327966">"No hi ha cap servei d\'impressió activat"</string> <string name="print_no_printers" msgid="4869403323900054866">"No s\'ha trobat cap impressora"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"No poden afegir impressores"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Selecciona per afegir una impressora"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Selecciona\'ls per activar-los"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Serveis activats"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Serveis recomanats"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Serveis desactivats"</string> - <string name="all_services_title" msgid="5578662754874906455">"Tots els serveis"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Instal·la\'l per detectar <xliff:g id="COUNT_1">%1$s</xliff:g> impressores</item> - <item quantity="one">Instal·la\'l per detectar <xliff:g id="COUNT_0">%1$s</xliff:g> impressora</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"S\'està imprimint <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"S\'està cancel·lant <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Error d\'impressora <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Reinicia"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"No hi ha connexió amb la impressora"</string> <string name="reason_unknown" msgid="5507940196503246139">"desconegut"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>: no disponible"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Vols fer servir <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"És possible que el document passi com a mínim per un servidor abans d\'imprimir-se."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"No ha funcionat. Torna-ho a provar."</string> <string name="print_error_retry" msgid="1426421728784259538">"Torna-ho a provar"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Ara mateix, aquesta impressora no està disponible."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"La previsualització no es pot mostrar"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"S\'està preparant la previsualització..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-cs/strings.xml b/packages/PrintSpooler/res/values-cs/strings.xml index 5c0a1ef1af5e..4bc22d40a1be 100644 --- a/packages/PrintSpooler/res/values-cs/strings.xml +++ b/packages/PrintSpooler/res/values-cs/strings.xml @@ -63,24 +63,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Další informace o této tiskárně"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Soubor nelze vytvořit"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Některé tiskové služby nejsou aktivovány"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Některé tiskové služby nejsou aktivovány."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Zvolte službu tisku"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Vyhledávání tiskáren"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Nejsou aktivovány žádné tiskové služby"</string> <string name="print_no_printers" msgid="4869403323900054866">"Nebyly nalezeny žádné tiskárny"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Tiskárny nelze přidat"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Výběrem přidáte tiskárnu"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Výběrem službu aktivujete"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Aktivované služby"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Doporučené služby"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Deaktivované služby"</string> - <string name="all_services_title" msgid="5578662754874906455">"Všechny služby"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="few">Instalací objevíte <xliff:g id="COUNT_1">%1$s</xliff:g> tiskárny</item> - <item quantity="many">Instalací objevíte <xliff:g id="COUNT_1">%1$s</xliff:g> tiskárny</item> - <item quantity="other">Instalací objevíte <xliff:g id="COUNT_1">%1$s</xliff:g> tiskáren</item> - <item quantity="one">Instalací objevíte <xliff:g id="COUNT_0">%1$s</xliff:g> tiskárnu</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Tisk úlohy <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Rušení úlohy <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Chyba tiskárny u úlohy <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -89,6 +76,7 @@ <string name="restart" msgid="2472034227037808749">"Restartovat"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Nelze se připojit k tiskárně"</string> <string name="reason_unknown" msgid="5507940196503246139">"neznámé"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – není k dispozici"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Použít službu <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Dokument může cestou do tiskárny projít jedním i více servery."</string> <string-array name="color_mode_labels"> @@ -108,6 +96,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Litujeme, nepodařilo se. Zkuste to znovu."</string> <string name="print_error_retry" msgid="1426421728784259538">"Opakovat"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Tiskárna aktuálně není k dispozici."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Náhled nelze zobrazit"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Příprava náhledu…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-da/strings.xml b/packages/PrintSpooler/res/values-da/strings.xml index 0d1e2cdc0ce2..b8be624169e4 100644 --- a/packages/PrintSpooler/res/values-da/strings.xml +++ b/packages/PrintSpooler/res/values-da/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Flere oplysninger om denne printer"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Filen kunne ikke oprettes"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Nogle udskrivningstjenester er deaktiveret"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Nogle udskrivningstjenester er deaktiveret."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Vælg udskriftstjeneste"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Søger efter printere"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Ingen udskrivningstjenester er aktiveret"</string> <string name="print_no_printers" msgid="4869403323900054866">"Der blev ikke fundet nogen printere"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Der kan ikke tilføjes printere"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Vælg for at tilføje en printer"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Vælg for at aktivere"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Aktiverede tjenester"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Anbefalede tjenester"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Deaktiverede tjenester"</string> - <string name="all_services_title" msgid="5578662754874906455">"Alle tjenester"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Installer for at finde <xliff:g id="COUNT_1">%1$s</xliff:g> printer</item> - <item quantity="other">Installer for at finde <xliff:g id="COUNT_1">%1$s</xliff:g> printere</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> udskrives"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> annulleres"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Udskriften <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> mislykkedes"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Genstart"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Ingen forbindelse til printer"</string> <string name="reason_unknown" msgid="5507940196503246139">"ukendt"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – ikke tilgængelig"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Vil du bruge <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Dit dokument passerer muligvis gennem én eller flere servere på vej til printeren."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Det virkede desværre ikke. Prøv igen."</string> <string name="print_error_retry" msgid="1426421728784259538">"Prøv igen"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Denne printer er i øjeblikket ikke tilgængelig."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Eksempelvisning kan ikke vises"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Eksempelvisning forberedes..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-de/strings.xml b/packages/PrintSpooler/res/values-de/strings.xml index 7ac57dbd63c7..bcb7e73d7bd9 100644 --- a/packages/PrintSpooler/res/values-de/strings.xml +++ b/packages/PrintSpooler/res/values-de/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Weitere Informationen über diesen Drucker"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Datei konnte nicht erstellt werden"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Einige Druckdienste sind deaktiviert"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Einige Druckdienste sind deaktiviert."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Druckdienst auswählen"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Suche nach Druckern"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Keine Druckdienste aktiviert"</string> <string name="print_no_printers" msgid="4869403323900054866">"Keine Drucker gefunden"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Hinzufügen von Druckern nicht möglich"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Auswählen, um Drucker hinzuzufügen"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Zum Aktivieren auswählen"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Aktivierte Dienste"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Empfohlene Dienste"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Deaktivierte Dienste"</string> - <string name="all_services_title" msgid="5578662754874906455">"Alle Dienste"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Installieren, um <xliff:g id="COUNT_1">%1$s</xliff:g> Drucker zu erkennen</item> - <item quantity="one">Installieren, um <xliff:g id="COUNT_0">%1$s</xliff:g> Drucker zu erkennen</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> wird gedruckt..."</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> wird abgebrochen..."</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Druckerfehler <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Neu starten"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Keine Verbindung zum Drucker"</string> <string name="reason_unknown" msgid="5507940196503246139">"unbekannt"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – nicht verfügbar"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> verwenden?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Dein Dokument passiert bei der Übermittlung an den Drucker möglicherweise einen oder mehrere Server."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Fehler. Bitte versuche es erneut."</string> <string name="print_error_retry" msgid="1426421728784259538">"Erneut versuchen"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Dieser Drucker ist momentan nicht verfügbar."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Vorschau kann nicht angezeigt werden"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Vorschau wird vorbereitet…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-el/strings.xml b/packages/PrintSpooler/res/values-el/strings.xml index 929c08231efc..d9a4aeba4ed6 100644 --- a/packages/PrintSpooler/res/values-el/strings.xml +++ b/packages/PrintSpooler/res/values-el/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Περισσότερες πληροφορίες σχετικά με αυτόν τον εκτυπωτή"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Δεν ήταν δυνατή η δημιουργία του αρχείου"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Ορισμένες υπηρ. εκτύπωσης είναι απενεργοποιημένες"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Κάποιες υπηρ. εκτύπωσης είναι απενεργοποιημένες."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Επιλέξτε υπηρεσία εκτύπωσης"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Αναζήτηση για εκτυπωτές"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Δεν έχουν ενεργοποιηθεί υπηρεσίες εκτύπωσης"</string> <string name="print_no_printers" msgid="4869403323900054866">"Δεν βρέθηκαν εκτυπωτές"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Δεν είναι δυνατή η προσθήκη εκτυπωτών"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Επιλέξτε για την προσθήκη εκτυπωτή"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Επιλέξτε για ενεργοποίηση"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Ενεργοποιημένες υπηρεσίες"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Προτεινόμενες υπηρεσίες"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Υπηρεσίες για άτομα με αναπηρία"</string> - <string name="all_services_title" msgid="5578662754874906455">"Όλες οι υπηρεσίες"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Κάντε εγκατάσταση για να ανακαλύψετε <xliff:g id="COUNT_1">%1$s</xliff:g> εκτυπωτές</item> - <item quantity="one">Κάντε εγκατάσταση για να ανακαλύψετε <xliff:g id="COUNT_0">%1$s</xliff:g> εκτυπωτή</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Εκτύπωση <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Ακύρωση <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Σφάλμα εκτυπωτή <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Επανεκκίνηση"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Δεν υπάρχει σύνδεση με εκτυπωτή"</string> <string name="reason_unknown" msgid="5507940196503246139">"άγνωστο"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – μη διαθέσιμο"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Να χρησιμοποιηθεί η υπηρεσία <xliff:g id="SERVICE">%1$s</xliff:g>;"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Το έγγραφό σας μπορεί να περάσει από έναν ή περισσότερους διακομιστές κατά τη μετάβαση στον εκτυπωτή."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Δυστυχώς, αυτό δεν λειτούργησε. Δοκιμάστε ξανά."</string> <string name="print_error_retry" msgid="1426421728784259538">"Επανάληψη"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Αυτός ο εκτυπωτής δεν είναι διαθέσιμος αυτήν τη στιγμή."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Αδυναμία προβολής προεπισκόπησης"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Προετοιμασία προεπισκόπησης…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-en-rAU/strings.xml b/packages/PrintSpooler/res/values-en-rAU/strings.xml index c9c33a8d369c..d8a94372938f 100644 --- a/packages/PrintSpooler/res/values-en-rAU/strings.xml +++ b/packages/PrintSpooler/res/values-en-rAU/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"More information about this printer"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Could not create file"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Some print services are disabled"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Some print services are disabled."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Choose print service"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Searching for printers"</string> <string name="print_no_print_services" msgid="8561247706423327966">"No print services enabled"</string> <string name="print_no_printers" msgid="4869403323900054866">"No printers found"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Cannot add printers"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Select to add printer"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Select to enable"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Enabled services"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Recommended services"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Disabled services"</string> - <string name="all_services_title" msgid="5578662754874906455">"All services"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Install to discover <xliff:g id="COUNT_1">%1$s</xliff:g> printers</item> - <item quantity="one">Install to discover <xliff:g id="COUNT_0">%1$s</xliff:g> printer</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Printing <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Cancelling <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Printer error <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Restart"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"No connection to printer"</string> <string name="reason_unknown" msgid="5507940196503246139">"unknown"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – unavailable"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Use <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Your document may pass through one or more servers on its way to the printer."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Sorry, that didn\'t work. Try again."</string> <string name="print_error_retry" msgid="1426421728784259538">"Retry"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"This printer isn\'t available right now."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Can\'t display preview"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Preparing preview…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-en-rGB/strings.xml b/packages/PrintSpooler/res/values-en-rGB/strings.xml index c9c33a8d369c..d8a94372938f 100644 --- a/packages/PrintSpooler/res/values-en-rGB/strings.xml +++ b/packages/PrintSpooler/res/values-en-rGB/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"More information about this printer"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Could not create file"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Some print services are disabled"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Some print services are disabled."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Choose print service"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Searching for printers"</string> <string name="print_no_print_services" msgid="8561247706423327966">"No print services enabled"</string> <string name="print_no_printers" msgid="4869403323900054866">"No printers found"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Cannot add printers"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Select to add printer"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Select to enable"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Enabled services"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Recommended services"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Disabled services"</string> - <string name="all_services_title" msgid="5578662754874906455">"All services"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Install to discover <xliff:g id="COUNT_1">%1$s</xliff:g> printers</item> - <item quantity="one">Install to discover <xliff:g id="COUNT_0">%1$s</xliff:g> printer</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Printing <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Cancelling <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Printer error <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Restart"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"No connection to printer"</string> <string name="reason_unknown" msgid="5507940196503246139">"unknown"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – unavailable"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Use <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Your document may pass through one or more servers on its way to the printer."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Sorry, that didn\'t work. Try again."</string> <string name="print_error_retry" msgid="1426421728784259538">"Retry"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"This printer isn\'t available right now."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Can\'t display preview"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Preparing preview…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-en-rIN/strings.xml b/packages/PrintSpooler/res/values-en-rIN/strings.xml index c9c33a8d369c..d8a94372938f 100644 --- a/packages/PrintSpooler/res/values-en-rIN/strings.xml +++ b/packages/PrintSpooler/res/values-en-rIN/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"More information about this printer"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Could not create file"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Some print services are disabled"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Some print services are disabled."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Choose print service"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Searching for printers"</string> <string name="print_no_print_services" msgid="8561247706423327966">"No print services enabled"</string> <string name="print_no_printers" msgid="4869403323900054866">"No printers found"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Cannot add printers"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Select to add printer"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Select to enable"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Enabled services"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Recommended services"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Disabled services"</string> - <string name="all_services_title" msgid="5578662754874906455">"All services"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Install to discover <xliff:g id="COUNT_1">%1$s</xliff:g> printers</item> - <item quantity="one">Install to discover <xliff:g id="COUNT_0">%1$s</xliff:g> printer</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Printing <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Cancelling <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Printer error <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Restart"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"No connection to printer"</string> <string name="reason_unknown" msgid="5507940196503246139">"unknown"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – unavailable"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Use <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Your document may pass through one or more servers on its way to the printer."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Sorry, that didn\'t work. Try again."</string> <string name="print_error_retry" msgid="1426421728784259538">"Retry"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"This printer isn\'t available right now."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Can\'t display preview"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Preparing preview…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-es-rUS/strings.xml b/packages/PrintSpooler/res/values-es-rUS/strings.xml index e2d261c7c4b2..19cbee7e0ae2 100644 --- a/packages/PrintSpooler/res/values-es-rUS/strings.xml +++ b/packages/PrintSpooler/res/values-es-rUS/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Más información sobre esta impresora"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"No se pudo crear el archivo"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Hay servicios de impresión inhabilitados"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Hay servicios de impresión inhabilitados."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Elegir servicio de impresión"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Buscando impresoras"</string> <string name="print_no_print_services" msgid="8561247706423327966">"No hay servicios de impresión habilitados"</string> <string name="print_no_printers" msgid="4869403323900054866">"No se encontraron impresoras"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"No es posible agregar impresoras"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Seleccionar para agregar impresoras"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Seleccionar para habilitar"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Servicios habilitados"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Servicios recomendados"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Servicios inhabilitados"</string> - <string name="all_services_title" msgid="5578662754874906455">"Todos los servicios"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Instala para ver <xliff:g id="COUNT_1">%1$s</xliff:g> impresoras</item> - <item quantity="one">Instala para ver <xliff:g id="COUNT_0">%1$s</xliff:g> impresora</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Imprimiendo <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Cancelando <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Error de impresora <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Reiniciar"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"No hay conexión con la impresora."</string> <string name="reason_unknown" msgid="5507940196503246139">"desconocido"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>: no disponible"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"¿Deseas usar <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Es posible que el documento pase por uno o varios servidores antes de imprimirse."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"No funcionó. Vuelve a intentarlo."</string> <string name="print_error_retry" msgid="1426421728784259538">"Volver a intentar"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Esta impresora no está disponible en este momento."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"No se puede mostrar la vista previa"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Preparando vista previa…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-es/strings.xml b/packages/PrintSpooler/res/values-es/strings.xml index 9d7badb5db79..d13ccda2bff2 100644 --- a/packages/PrintSpooler/res/values-es/strings.xml +++ b/packages/PrintSpooler/res/values-es/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Más información sobre esta impresora"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"No se ha podido crear el archivo"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Algunos servicios de impresión están inhabilitados"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Algunos servicios de impresión están inhabilitados."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Seleccionar servicio de impresión"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Buscando impresoras"</string> <string name="print_no_print_services" msgid="8561247706423327966">"No hay servicios de impresión habilitados"</string> <string name="print_no_printers" msgid="4869403323900054866">"No se encontraron impresoras"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"No se pueden añadir impresoras"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Selecciona para añadir una impresora"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Selecciona para habilitar"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Servicios habilitados"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Servicios recomendados"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Servicios inhabilitados"</string> - <string name="all_services_title" msgid="5578662754874906455">"Todos los servicios"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Instalar para descubrir <xliff:g id="COUNT_1">%1$s</xliff:g> impresoras</item> - <item quantity="one">Instalar para descubrir <xliff:g id="COUNT_0">%1$s</xliff:g> impresora</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Imprimiendo <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Cancelando <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Error de impresora <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Volver a empezar"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"No hay conexión con la impresora"</string> <string name="reason_unknown" msgid="5507940196503246139">"desconocido"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – no disponible"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"¿Usar <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Es posible que el documento pase por uno o varios servidores antes de imprimirse."</string> <string-array name="color_mode_labels"> @@ -101,9 +91,8 @@ <item msgid="3199660090246166812">"Horizontal"</item> </string-array> <string name="print_write_error_message" msgid="5787642615179572543">"Error al escribir en el archivo"</string> - <string name="print_error_default_message" msgid="8602678405502922346">"No ha funcionado. Prueba de nuevo."</string> + <string name="print_error_default_message" msgid="8602678405502922346">"No ha funcionado. Repítelo."</string> <string name="print_error_retry" msgid="1426421728784259538">"Reintentar"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Esta impresora no está disponible en este momento."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"No se puede mostrar la vista previa"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Preparando vista previa…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-et-rEE/strings.xml b/packages/PrintSpooler/res/values-et-rEE/strings.xml index 569ef31b405a..f03eb37588ad 100644 --- a/packages/PrintSpooler/res/values-et-rEE/strings.xml +++ b/packages/PrintSpooler/res/values-et-rEE/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Lisateave selle printeri kohta"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Faili ei õnnestunud luua"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Mõned printimisteenused on keelatud"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Mõned printimisteenused on keelatud."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Prinditeenuse valimine"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Printerite otsimine"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Ühtegi printimisteenust pole lubatud"</string> <string name="print_no_printers" msgid="4869403323900054866">"Printereid ei leitud"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Printereid ei saa lisada"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Valige printeri lisamiseks"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Valige lubamiseks"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Lubatud teenused"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Soovitatud teenused"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Keelatud teenused"</string> - <string name="all_services_title" msgid="5578662754874906455">"Kõik teenused"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Installige <xliff:g id="COUNT_1">%1$s</xliff:g> printeri avastamiseks</item> - <item quantity="one">Installige <xliff:g id="COUNT_0">%1$s</xliff:g> printeri avastamiseks</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Prinditöö <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> printimine"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Prinditöö <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> tühistamine"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Printeri viga: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Taaskäivita"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Printeriühendus puudub"</string> <string name="reason_unknown" msgid="5507940196503246139">"teadmata"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – pole saadaval"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Kas soovite kasutada teenust <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Printerini jõudmiseks võib dokument läbida ühe või mitu serverit."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Kahjuks see ei toiminud. Proovige uuesti."</string> <string name="print_error_retry" msgid="1426421728784259538">"Proovi uuesti"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"See printer ei ole praegu saadaval."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Eelvaadet ei õnnestu kuvada"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Eelvaate ettevalmistamine ..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-eu-rES/strings.xml b/packages/PrintSpooler/res/values-eu-rES/strings.xml index 69368d89f666..d4255e29b409 100644 --- a/packages/PrintSpooler/res/values-eu-rES/strings.xml +++ b/packages/PrintSpooler/res/values-eu-rES/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Informazio gehiago inprimagailuari buruz"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Ezin izan da sortu fitxategia"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Desgaituta daude inprimatzeko zerbitzu batzuk"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Desgaituta daude inprimatzeko zerbitzu batzuk."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Aukeratu inprimatze-zerbitzua"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Inprimagailuak bilatzen"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Ez dago gaituta inprimatzeko zerbitzurik"</string> <string name="print_no_printers" msgid="4869403323900054866">"Ez da inprimagailurik aurkitu"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Ezin da gehitu inprimagailurik"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Hautatu inprimagailua gehitzeko"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Hautatu gehitzeko"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Gaitutako zerbitzuak"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Gomendatutako zerbitzuak"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Desgaitutako zerbitzuak"</string> - <string name="all_services_title" msgid="5578662754874906455">"Zerbitzu guztiak"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Instalatu <xliff:g id="COUNT_1">%1$s</xliff:g> inprimagailu aurkitzeko</item> - <item quantity="one">Instalatu <xliff:g id="COUNT_0">%1$s</xliff:g> inprimagailu aurkitzeko</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> inprimatzen"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> bertan behera uzten"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Errorea <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> inprimatzean"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Berrabiarazi"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Inprimagailua ez dago konektatuta"</string> <string name="reason_unknown" msgid="5507940196503246139">"ezezaguna"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>: ez dago erabilgarri"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> erabili nahi duzu?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Baliteke dokumentuak zerbitzari batean edo gehiagotan zehar igarotzea inprimagailurako bidean."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Horrek ez du funtzionatu. Saiatu berriro."</string> <string name="print_error_retry" msgid="1426421728784259538">"Saiatu berriro"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Une honetan inprimagailua ez dago erabilgarri."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Ezin da bistaratu aurrebista"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Aurrebista prestatzen…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-fa/strings.xml b/packages/PrintSpooler/res/values-fa/strings.xml index 9b7dc3d70052..907123c0c753 100644 --- a/packages/PrintSpooler/res/values-fa/strings.xml +++ b/packages/PrintSpooler/res/values-fa/strings.xml @@ -41,8 +41,8 @@ <string name="current_page_template" msgid="1386638343571771292">"<xliff:g id="CURRENT_PAGE">%1$d</xliff:g> /<xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> <string name="page_description_template" msgid="6831239682256197161">"صفحه <xliff:g id="CURRENT_PAGE">%1$d</xliff:g> از <xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> <string name="summary_template" msgid="8899734908625669193">"خلاصه، تعداد نسخه <xliff:g id="COPIES">%1$s</xliff:g>، اندازه کاغذ <xliff:g id="PAPER_SIZE">%2$s</xliff:g>"</string> - <string name="expand_handle" msgid="7282974448109280522">"بزرگ کردن فهرست گزینهها"</string> - <string name="collapse_handle" msgid="6886637989442507451">"کوچک کردن فهرست گزینهها"</string> + <string name="expand_handle" msgid="7282974448109280522">"بزرگ کردن لیست گزینهها"</string> + <string name="collapse_handle" msgid="6886637989442507451">"کوچک کردن لیست گزینهها"</string> <string name="print_button" msgid="645164566271246268">"چاپ"</string> <string name="savetopdf_button" msgid="2976186791686924743">"ذخیره در PDF"</string> <string name="print_options_expanded" msgid="6944679157471691859">"گزینههای چاپ بزرگ شد"</string> @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"اطلاعات بیشتر درباره چاپگر"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"فایل ایجاد نشد"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"بعضی از خدمات چاپ غیرفعال هستند"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"بعضی از خدمات چاپ غیرفعال هستند."</string> + <string name="choose_print_service" msgid="3740309762324459694">"انتخاب سرویس چاپ"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"درحال جستجوی چاپگرها"</string> <string name="print_no_print_services" msgid="8561247706423327966">"هیچ خدمات چاپی فعال نیست"</string> <string name="print_no_printers" msgid="4869403323900054866">"هیچ چاپگری یافت نشد"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"نمیتوان چاپگر اضافه کرد"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"برای افزودن چاپگر، انتخاب کنید"</string> - <string name="enable_print_service" msgid="3482815747043533842">"برای فعال کردن، انتخاب کنید"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"خدمات فعال"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"خدمات توصیهشده"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"خدمات غیرفعال"</string> - <string name="all_services_title" msgid="5578662754874906455">"همه خدمات"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">نصب کنید تا <xliff:g id="COUNT_1">%1$s</xliff:g> چاپگر را پیدا کنید</item> - <item quantity="other">نصب کنید تا <xliff:g id="COUNT_1">%1$s</xliff:g> چاپگر را پیدا کنید</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"در حال چاپ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"در حال لغو <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"خطای چاپگر <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"راهاندازی مجدد"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"اتصال با چاپگر برقرار نیست"</string> <string name="reason_unknown" msgid="5507940196503246139">"نامعلوم"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> - در دسترس نیست"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"از <xliff:g id="SERVICE">%1$s</xliff:g> استفاده شود؟"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"ممکن است سندتان برای رسیدن به چاپگر از یک یا چند سرور عبور کند."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"متأسفیم، تلاش ناموفق بود. دوباره امتحان کنید."</string> <string name="print_error_retry" msgid="1426421728784259538">"امتحان مجدد"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"این چاپگر اکنون در دسترس نیست."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"نمایش پیشنمایش امکانپذیر نیست"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"در حال آمادهسازی پیشنمایش…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-fi/strings.xml b/packages/PrintSpooler/res/values-fi/strings.xml index 8c62d5c0191e..f57b8843a72f 100644 --- a/packages/PrintSpooler/res/values-fi/strings.xml +++ b/packages/PrintSpooler/res/values-fi/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Lisätietoja tästä tulostimesta"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Tiedoston luominen epäonnistui."</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Osa tulostuspalveluista on poistettu käytöstä."</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Osa tulostuspalveluista on poistettu käytöstä."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Valitse tulostuspalvelu"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Etsitään tulostimia"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Ei käytössä olevia tulostuspalveluita"</string> <string name="print_no_printers" msgid="4869403323900054866">"Tulostimia ei löydy"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Tulostimien lisääminen ei onnistu."</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Valitse palvelu tulostimen lisäämistä varten."</string> - <string name="enable_print_service" msgid="3482815747043533842">"Valitse käyttöön otettavat palvelut."</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Käytössä olevat palvelut"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Suositellut palvelut"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Käytöstä poistetut palvelut"</string> - <string name="all_services_title" msgid="5578662754874906455">"Kaikki palvelut"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Asentamalla voit löytää <xliff:g id="COUNT_1">%1$s</xliff:g> tulostinta.</item> - <item quantity="one">Asentamalla voit löytää <xliff:g id="COUNT_0">%1$s</xliff:g> tulostimen.</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Tulostetaan <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Peruutetaan työ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Tulostinvirhe työlle <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Käynnistä uudelleen"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Ei yhteyttä tulostimeen"</string> <string name="reason_unknown" msgid="5507940196503246139">"tuntematon"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – ei käytettävissä"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Käytetäänkö palvelua <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Asiakirja saattaa kulkea yhden tai useamman palvelimen kautta matkalla tulostimeen."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Ei valitettavasti onnistunut. Yritä uudelleen."</string> <string name="print_error_retry" msgid="1426421728784259538">"Yritä uudelleen"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Tämä tulostin ei ole käyttävissä juuri nyt."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Esikatselua ei voi näyttää."</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Esikatselua valmistellaan…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-fr-rCA/strings.xml b/packages/PrintSpooler/res/values-fr-rCA/strings.xml index 1956ed422fb4..949ba556d7f6 100644 --- a/packages/PrintSpooler/res/values-fr-rCA/strings.xml +++ b/packages/PrintSpooler/res/values-fr-rCA/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Plus d\'information sur cette imprimante"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Impossible de créer le fichier"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Certains services d\'impression sont désactivés"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Certains services d\'impression sont désactivés."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Sélectionner le service d\'impression"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Recherche d\'imprimantes en cours..."</string> <string name="print_no_print_services" msgid="8561247706423327966">"Aucun service d\'impression activé"</string> <string name="print_no_printers" msgid="4869403323900054866">"Aucune imprimante trouvée"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Impossible d’ajouter des imprimantes"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Sélectionnez pour ajouter une imprimante"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Sélectionner pour activer"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Services activés"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Services recommandés"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Services désactivés"</string> - <string name="all_services_title" msgid="5578662754874906455">"Tous les services"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Installer pour détecter <xliff:g id="COUNT_1">%1$s</xliff:g> imprimante</item> - <item quantity="other">Installer pour détecter <xliff:g id="COUNT_1">%1$s</xliff:g> imprimantes</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Impression de <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> en cours…"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Annulation de « <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> »…"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Erreur impression : « <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> »"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Recommencer"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Aucune connexion à l\'imprimante"</string> <string name="reason_unknown" msgid="5507940196503246139">"inconnu"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> — indisponible"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Utiliser <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Votre document peut passer par un ou plusieurs serveurs avant d\'arriver à l\'imprimante."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Échec de l\'action. Réessayez."</string> <string name="print_error_retry" msgid="1426421728784259538">"Réessayer"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Cette imprimante n\'est pas accessible pour le moment."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Impossible d\'afficher l\'aperçu"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Préparation de l\'aperçu en cours…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-fr/strings.xml b/packages/PrintSpooler/res/values-fr/strings.xml index 9ef09ec7705d..1fcc0400bbac 100644 --- a/packages/PrintSpooler/res/values-fr/strings.xml +++ b/packages/PrintSpooler/res/values-fr/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Plus d\'informations sur cette imprimante"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Impossible de créer le fichier"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Certains services d\'impression sont désactivés."</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Certains services d\'impression sont désactivés."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Sélectionner le service d\'impression"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Recherche d\'imprimantes en cours"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Aucun service d\'impression activé"</string> <string name="print_no_printers" msgid="4869403323900054866">"Aucune imprimante trouvée"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Impossible d\'ajouter des imprimantes"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Sélectionnez pour ajouter une imprimante."</string> - <string name="enable_print_service" msgid="3482815747043533842">"Sélectionnez pour activer."</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Services activés"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Services recommandés"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Services désactivés"</string> - <string name="all_services_title" msgid="5578662754874906455">"Tous les services"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Installer pour détecter <xliff:g id="COUNT_1">%1$s</xliff:g> imprimante</item> - <item quantity="other">Installer pour détecter <xliff:g id="COUNT_1">%1$s</xliff:g> imprimantes</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Impression de \"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>\" en cours…"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Annulation de \"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>\" en cours…"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Erreur impression pour \"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>\""</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Redémarrer"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Aucune connexion à l\'imprimante."</string> <string name="reason_unknown" msgid="5507940196503246139">"inconnue"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – indisponible"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Utiliser <xliff:g id="SERVICE">%1$s</xliff:g> ?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Votre document peut passer par un ou plusieurs serveurs avant d\'être envoyé sur l\'imprimante."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Échec de l\'opération. Veuillez réessayer."</string> <string name="print_error_retry" msgid="1426421728784259538">"Réessayer"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Cette imprimante n\'est pas disponible actuellement."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Impossible d\'afficher l\'aperçu"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Préparation de l\'aperçu en cours…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-gl-rES/strings.xml b/packages/PrintSpooler/res/values-gl-rES/strings.xml index bb4e052467e2..2e60960bc997 100644 --- a/packages/PrintSpooler/res/values-gl-rES/strings.xml +++ b/packages/PrintSpooler/res/values-gl-rES/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Máis información sobre esta impresora"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Non se puido crear o arquivo"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Algúns servizos de impresión están desactivados"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Algúns servizos de impresión están desactivados."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Escoller servizo de impresión"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Busca de impresoras"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Non hai servizos de impresión activados"</string> <string name="print_no_printers" msgid="4869403323900054866">"Non se atopou ningunha impresora"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Non se poden engadir impresoras"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Selecciona un servizo para engadirlle impresora"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Selecciona un servizo para activalo"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Servizos activados"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Servizos recomendados"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Servizos desactivados"</string> - <string name="all_services_title" msgid="5578662754874906455">"Todos os servizos"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Instala o servizo para atopar <xliff:g id="COUNT_1">%1$s</xliff:g> impresoras</item> - <item quantity="one">Instala o servizo para atopar <xliff:g id="COUNT_0">%1$s</xliff:g> impresora</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Imprimindo <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Cancelando <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Erro da impresora <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Reiniciar"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Non hai conexión coa impresora"</string> <string name="reason_unknown" msgid="5507940196503246139">"descoñecido"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>: non dispoñible"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Queres usar <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"É posible que o teu documento pase por un ou máis servidores antes de imprimirse."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Non funcionou. Téntao de novo."</string> <string name="print_error_retry" msgid="1426421728784259538">"Tentar de novo"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Esta impresora non está dispoñible nestes momentos."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Non se pode mostrar a vista previa"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Preparando a vista previa…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-gu-rIN/strings.xml b/packages/PrintSpooler/res/values-gu-rIN/strings.xml index 8178571e4fe1..4ba969c1cc16 100644 --- a/packages/PrintSpooler/res/values-gu-rIN/strings.xml +++ b/packages/PrintSpooler/res/values-gu-rIN/strings.xml @@ -33,8 +33,8 @@ <string name="pages_range_example" msgid="8558694453556945172">"દા.ત. 1—5,8,11—13"</string> <string name="print_preview" msgid="8010217796057763343">"પ્રિન્ટ પૂર્વાવલોકન"</string> <string name="install_for_print_preview" msgid="6366303997385509332">"પૂર્વાવલોકન માટે PDF દર્શક ઇન્સ્ટોલ કરો"</string> - <string name="printing_app_crashed" msgid="854477616686566398">"પ્રિન્ટીંગ ઍપ્લિકેશન ક્રેશ થઈ"</string> - <string name="generating_print_job" msgid="3119608742651698916">"છાપ કાર્ય બનાવી રહ્યું છે"</string> + <string name="printing_app_crashed" msgid="854477616686566398">"પ્રિન્ટીંગ એપ્લિકેશન ક્રેશ થઈ"</string> + <string name="generating_print_job" msgid="3119608742651698916">"પ્રિન્ટ જોબ બનાવી રહ્યું છે"</string> <string name="save_as_pdf" msgid="5718454119847596853">"PDF તરીકે સાચવો"</string> <string name="all_printers" msgid="5018829726861876202">"બધા પ્રિન્ટર્સ…"</string> <string name="print_dialog" msgid="32628687461331979">"પ્રિન્ટ સંવાદ"</string> @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"આ પ્રિન્ટર વિશે વધુ માહિતી"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"ફાઇલ બનાવી શક્યાં નથી"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"કેટલીક છાપવાની સેવાઓ અક્ષમ કરેલ છે"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"કેટલીક છાપ સેવાઓ અક્ષમ કરેલ છે."</string> + <string name="choose_print_service" msgid="3740309762324459694">"પ્રિન્ટ સેવા પસંદ કરો"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"પ્રિન્ટર્સ માટે શોધી રહ્યું છે"</string> <string name="print_no_print_services" msgid="8561247706423327966">"કોઈ છાપ સેવાઓ સક્ષમ કરેલ નથી"</string> <string name="print_no_printers" msgid="4869403323900054866">"કોઈ પ્રિન્ટર મળ્યા નથી"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"પ્રિન્ટર્સ ઉમેરી શકતાં નથી"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"પ્રિન્ટર ઉમેરવા માટે પસંદ કરો"</string> - <string name="enable_print_service" msgid="3482815747043533842">"સક્ષમ કરવા માટે પસંદ કરો"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"સક્ષમ કરેલી સેવાઓ"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"ભલામણ કરેલી સેવાઓ"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"અક્ષમ કરેલી સેવાઓ"</string> - <string name="all_services_title" msgid="5578662754874906455">"બધી સેવાઓ"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one"><xliff:g id="COUNT_1">%1$s</xliff:g> પ્રિન્ટરની શોધ કરવા માટે ઇન્સ્ટૉલ કરો</item> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> પ્રિન્ટરની શોધ કરવા માટે ઇન્સ્ટૉલ કરો</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> છાપી રહ્યાં છે"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> ને રદ કરી રહ્યું છે"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"પ્રિન્ટર ભૂલ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"પુનઃપ્રારંભ કરો"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"પ્રિન્ટર માટે કોઈ કનેક્શન નથી"</string> <string name="reason_unknown" msgid="5507940196503246139">"અજાણ્યું"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – અનુપલબ્ધ"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> નો ઉપયોગ કરીએ?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"તમારો દસ્તાવેજ પ્રિન્ટર સુધીના તેના માર્ગમાં એક અથવા વધુ સર્વર્સથી પસાર થઈ શકે છે."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"માફ કરશો, તે કામ કરતું નહોતું. ફરીથી પ્રયાસ કરો."</string> <string name="print_error_retry" msgid="1426421728784259538">"ફરી પ્રયાસ કરો"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"આ પ્રિન્ટર અત્યારે ઉપલબ્ધ નથી."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"પૂર્વાવલોકન પ્રદર્શિત કરી શકતાં નથી"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"પૂર્વાવલોકનની તૈયારી કરી રહ્યું છે..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-hi/strings.xml b/packages/PrintSpooler/res/values-hi/strings.xml index 8095f0fab92e..106134635bff 100644 --- a/packages/PrintSpooler/res/values-hi/strings.xml +++ b/packages/PrintSpooler/res/values-hi/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"इस प्रिंटर के बारे में अधिक जानकारी"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"फ़ाइल नहीं बनाई जा सकी"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"कुछ प्रिंट सेवाएं अक्षम हैं"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"कुछ प्रिंट सेवाएं अक्षम हैं."</string> + <string name="choose_print_service" msgid="3740309762324459694">"प्रिंट सेवा चुनें"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"प्रिंटर खोज रहा है"</string> <string name="print_no_print_services" msgid="8561247706423327966">"कोई भी प्रिंट सेवा सक्षम नहीं है"</string> <string name="print_no_printers" msgid="4869403323900054866">"कोई प्रिंटर नहीं मिले"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"प्रिंटर जोड़े नहीं जा सकते"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"प्रिंटर जोड़ने के लिए चुनें"</string> - <string name="enable_print_service" msgid="3482815747043533842">"सक्षम करने के लिए चुनें"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"सक्षम सेवाएं"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"सुझाई गई सेवाएं"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"अक्षम सेवाएं"</string> - <string name="all_services_title" msgid="5578662754874906455">"सभी सेवाएं"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one"><xliff:g id="COUNT_1">%1$s</xliff:g> प्रिंटर खोजने के लिए इंस्टॉल करें</item> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> प्रिंटर खोजने के लिए इंस्टॉल करें</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> प्रिंट हो रहा है"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> रद्द हो रहा है"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"प्रिंटर त्रुटि <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"पुन: आरंभ करें"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"प्रिंटर के लिए कोई कनेक्शन नहीं"</string> <string name="reason_unknown" msgid="5507940196503246139">"अज्ञात"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – अनुपलब्ध"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> का उपयोग करें?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"प्रिंटर पर जाते समय आपका दस्तावेज़ एक या अधिक सर्वर से गुज़र सकता है."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"क्षमा करें, उससे बात नहीं बनी. पुन: प्रयास करें."</string> <string name="print_error_retry" msgid="1426421728784259538">"फिर से प्रयास करें"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"यह प्रिंटर इस समय उपलब्ध नहीं है."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"पूर्वावलोकन प्रदर्शित नहीं किया जा सकता"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"पूर्वावलोकन तैयार हो रहा है..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-hr/strings.xml b/packages/PrintSpooler/res/values-hr/strings.xml index ea8be7000efa..4a7d29f41534 100644 --- a/packages/PrintSpooler/res/values-hr/strings.xml +++ b/packages/PrintSpooler/res/values-hr/strings.xml @@ -62,23 +62,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Više informacija o ovom pisaču"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Izrada datoteke nije uspjela"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Neke su usluge ispisa onemogućene"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Neke su usluge ispisa onemogućene."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Odaberite uslugu ispisa"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Traženje pisača"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Nije omogućena nijedna usluga ispisa"</string> <string name="print_no_printers" msgid="4869403323900054866">"Nije pronađen nijedan pisač"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Ne možete dodati pisače"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Odaberite da biste dodali pisač"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Odaberite za omogućavanje"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Omogućene usluge"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Preporučene usluge"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Onemogućene usluge"</string> - <string name="all_services_title" msgid="5578662754874906455">"Sve usluge"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Instalirajte da biste pronašli <xliff:g id="COUNT_1">%1$s</xliff:g> pisač</item> - <item quantity="few">Instalirajte da biste pronašli <xliff:g id="COUNT_1">%1$s</xliff:g> pisača</item> - <item quantity="other">Instalirajte da biste pronašli <xliff:g id="COUNT_1">%1$s</xliff:g> pisača</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Ispisivanje <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Otkazivanje zadatka <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Pogreška pisača <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -87,6 +75,7 @@ <string name="restart" msgid="2472034227037808749">"Ponovo pokreni"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Nema veze s pisačem"</string> <string name="reason_unknown" msgid="5507940196503246139">"nepoznato"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – zadatak nije dostupan"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Želite li upotrijebiti uslugu <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Na putu do pisača vaš dokument može proći kroz jedan ili više poslužitelja."</string> <string-array name="color_mode_labels"> @@ -106,6 +95,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Nažalost, to nije uspjelo. Pokušajte ponovo."</string> <string name="print_error_retry" msgid="1426421728784259538">"Pokušajte ponovno"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Pisač trenutačno nije dostupan."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Pregled nije dostupan"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Priprema pregleda…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-hu/strings.xml b/packages/PrintSpooler/res/values-hu/strings.xml index 6e2a620d9dc1..5aae2e41eb3d 100644 --- a/packages/PrintSpooler/res/values-hu/strings.xml +++ b/packages/PrintSpooler/res/values-hu/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"További információ erről a nyomtatóról"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Nem sikerült létrehozni a fájlt"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Egyes nyomtatási szolgáltatások le vannak tiltva"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Egyes nyomtatási szolgáltatások le vannak tiltva."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Nyomtatási szolgáltatás kiválasztása"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Nyomtatók keresése"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Nincs engedélyezett nyomtatási szolgáltatás"</string> <string name="print_no_printers" msgid="4869403323900054866">"Nem található nyomtató"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Nem lehet nyomtatókat hozzáadni"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Nyomtató hozzáadásához válassza ki"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Az engedélyezéshez válassza ki"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Engedélyezett szolgáltatások"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Javasolt szolgáltatások"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Letiltott szolgáltatások"</string> - <string name="all_services_title" msgid="5578662754874906455">"Minden szolgáltatás"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Telepítés <xliff:g id="COUNT_1">%1$s</xliff:g> nyomtató felfedezéséhez</item> - <item quantity="one">Telepítés <xliff:g id="COUNT_0">%1$s</xliff:g> nyomtató felfedezéséhez</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"A(z) <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> nyomtatása"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"A(z) <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> törlése"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Nyomtatási hiba: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Újraindítás"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Nincs kapcsolat a nyomtatóval"</string> <string name="reason_unknown" msgid="5507940196503246139">"ismeretlen"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – nem érhető el"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Használni szeretné a következő szolgáltatást: <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"A dokumentum áthaladhat egy vagy több szerveren, mielőtt a nyomtatóhoz érne."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Sajnáljuk, de nem sikerült. Próbálja újra."</string> <string name="print_error_retry" msgid="1426421728784259538">"Újra"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Ez a nyomtató jelenleg nem érhető el."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Nem lehet megjeleníteni az előnézetet"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Előnézet előkészítése…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-hy-rAM/strings.xml b/packages/PrintSpooler/res/values-hy-rAM/strings.xml index 65a34d2b1ffa..179c384110e6 100644 --- a/packages/PrintSpooler/res/values-hy-rAM/strings.xml +++ b/packages/PrintSpooler/res/values-hy-rAM/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Հավելյալ տեղեկություններ այս տպիչի մասին"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Չհաջողվեց ստեղծել ֆայլ"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Տպելու որոշ ծառայությունները կասեցված են"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Տպելու որոշ ծառայությունները կասեցված են:"</string> + <string name="choose_print_service" msgid="3740309762324459694">"Ընտրեք տպելու ծառայությունը"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Տպիչների որոնում"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Ակտիվացված տպման ծառայություններ չկան"</string> <string name="print_no_printers" msgid="4869403323900054866">"Տպիչներ չեն գտնվել"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Չեն կարող ավելացնել տպիչներ"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Ընտրեք՝ տպիչ ավելացնելու համար"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Ընտրեք՝ միացնելու համար"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Միացված ծառայությունները"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Խորհուրդ տրվող ծառայությունները"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Կասեցված ծառայությունները"</string> - <string name="all_services_title" msgid="5578662754874906455">"Բոլոր ծառայությունները"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Տեղադրեք՝ <xliff:g id="COUNT_1">%1$s</xliff:g> տպիչ հայտնաբերելու համար</item> - <item quantity="other">Տեղադրեք՝ <xliff:g id="COUNT_1">%1$s</xliff:g> տպիչ հայտնաբերելու համար</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Տպվում է՝ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>-ը չեղարկվում է"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Տպիչի սխալ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Վերագործարկել"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Տպիչի հետ կապ չկա"</string> <string name="reason_unknown" msgid="5507940196503246139">"անհայտ"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> տպիչն անհասանելի է"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Օգտագործե՞լ <xliff:g id="SERVICE">%1$s</xliff:g>-ը:"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Հնարավոր է՝ փաստաթուղթը մի քանի սերվերներով անցնի մինչ տպվելը:"</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Չհաջողվեց: Նորից փորձեք:"</string> <string name="print_error_retry" msgid="1426421728784259538">"Կրկնել"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Տպիչն այս պահին հասանելի չէ:"</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Նախադիտումը հնարավոր չէ"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Նախադիտումը պատրաստվում է…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-in/strings.xml b/packages/PrintSpooler/res/values-in/strings.xml index e9b49bb82b04..7286f7aae7e4 100644 --- a/packages/PrintSpooler/res/values-in/strings.xml +++ b/packages/PrintSpooler/res/values-in/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Informasi selengkapnya tentang printer ini"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Tidak dapat membuat file"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Beberapa layanan cetak dinonaktifkan"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Beberapa layanan cetak dinonaktifkan."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Pilih layanan cetak"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Mencari printer"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Tidak ada layanan cetak yang aktif"</string> <string name="print_no_printers" msgid="4869403323900054866">"Tidak ditemukan printer"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Tidak dapat menambahkan printer"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Pilih untuk menambahkan printer"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Pilih untuk mengaktifkan"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Layanan diaktifkan"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Layanan yang disarankan"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Layanan dinonaktifkan"</string> - <string name="all_services_title" msgid="5578662754874906455">"Semua layanan"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Pasang untuk menemukan <xliff:g id="COUNT_1">%1$s</xliff:g> printer</item> - <item quantity="one">Pasang untuk menemukan <xliff:g id="COUNT_0">%1$s</xliff:g> printer</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Mencetak <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Membatalkan <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Ada kesalahan printer <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Mulai Ulang"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Tidak ada sambungan ke printer"</string> <string name="reason_unknown" msgid="5507940196503246139">"tak diketahui"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – tidak tersedia"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Gunakan <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Dokumen Anda dapat melewati satu atau beberapa server saat menuju printer."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Maaf, tidak berhasil. Coba lagi."</string> <string name="print_error_retry" msgid="1426421728784259538">"Coba lagi"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Saat ini printer ini tidak tersedia."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Tidak dapat menampilkan pratinjau"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Menyiapkan pratinjau..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-is-rIS/strings.xml b/packages/PrintSpooler/res/values-is-rIS/strings.xml index 0ec97e16a4f4..9ea49a92a75c 100644 --- a/packages/PrintSpooler/res/values-is-rIS/strings.xml +++ b/packages/PrintSpooler/res/values-is-rIS/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Frekari upplýsingar um þennan prentara"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Ekki tókst að búa til skrá"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Hluti prentþjónustunnar er óvirkur"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Hluti prentþjónustunnar er óvirkur."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Veldu prentþjónustu"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Leitar að prentara"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Engin prentþjónusta er virk"</string> <string name="print_no_printers" msgid="4869403323900054866">"Engir prentarar fundust"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Ekki er hægt að bæta við prenturum"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Veldu til að bæta prentara við"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Veldu til að virkja"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Virkjaðar þjónustur"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Þjónusta sem mælt er með"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Þjónusta við fatlaða"</string> - <string name="all_services_title" msgid="5578662754874906455">"Öll þjónusta"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Settu upp til að finna <xliff:g id="COUNT_1">%1$s</xliff:g> prentara</item> - <item quantity="other">Settu upp til að finna <xliff:g id="COUNT_1">%1$s</xliff:g> prentara</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Prentar <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Hættir við <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Prentaravilla <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Endurræsa"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Engin tenging við prentara"</string> <string name="reason_unknown" msgid="5507940196503246139">"óþekkt"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – ekki í boði"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Nota <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Skjalið gæti þurft að fara í gegnum einn eða fleiri þjóna á leið sinni til prentarans."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Þetta virkaði því miður ekki. Reyndu aftur."</string> <string name="print_error_retry" msgid="1426421728784259538">"Reyna aftur"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Þessi prentari er ekki í boði núna."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Ekki hægt að birta forskoðun"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Undirbýr forskoðun…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-it/strings.xml b/packages/PrintSpooler/res/values-it/strings.xml index c9e893e53203..c19d012ec865 100644 --- a/packages/PrintSpooler/res/values-it/strings.xml +++ b/packages/PrintSpooler/res/values-it/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Ulteriori informazioni su questa stampante"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Impossibile creare il file"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Alcuni servizi di stampa sono disattivati"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Alcuni servizi di stampa sono disattivati."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Scegli servizio di stampa"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Ricerca di stampanti"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Non è stato attivato alcun servizio di stampa"</string> <string name="print_no_printers" msgid="4869403323900054866">"Nessuna stampante trovata"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Impossibile aggiungere stampanti"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Seleziona per aggiungere stampanti"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Seleziona per attivare"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Servizi abilitati"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Servizi consigliati"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Servizi disattivati"</string> - <string name="all_services_title" msgid="5578662754874906455">"Tutti i servizi"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Installa per rilevare <xliff:g id="COUNT_1">%1$s</xliff:g> stampanti</item> - <item quantity="one">Installa per rilevare <xliff:g id="COUNT_0">%1$s</xliff:g> stampante</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Stampa di <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Annullamento di <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Errore della stampante: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Riavvia"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Nessun collegamento alla stampante"</string> <string name="reason_unknown" msgid="5507940196503246139">"sconosciuto"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> - non disponibile"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Utilizzare <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Il tuo documento potrebbe passare da uno o più server per raggiungere la stampante."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Non ha funzionato. Riprova."</string> <string name="print_error_retry" msgid="1426421728784259538">"Riprova"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Al momento la stampante non è disponibile."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Impossibile visualizzare l\'anteprima"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Preparazione anteprima…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-iw/strings.xml b/packages/PrintSpooler/res/values-iw/strings.xml index dcc3f6b0fe39..00bf27c69ebd 100644 --- a/packages/PrintSpooler/res/values-iw/strings.xml +++ b/packages/PrintSpooler/res/values-iw/strings.xml @@ -63,24 +63,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"מידע נוסף על מדפסת זו"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"לא ניתן היה ליצור קובץ"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"שירותי הדפסה מסוימים מושבתים"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"שירותי הדפסה מסוימים מושבתים."</string> + <string name="choose_print_service" msgid="3740309762324459694">"בחר שירות הדפסה"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"מחפש מדפסות"</string> <string name="print_no_print_services" msgid="8561247706423327966">"לא הופעלו שירותי הדפסה"</string> <string name="print_no_printers" msgid="4869403323900054866">"לא נמצאו מדפסות"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"לא ניתן להוסיף מדפסות"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"בחר כדי להוסיף מדפסת"</string> - <string name="enable_print_service" msgid="3482815747043533842">"בחר כדי להפעיל"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"שירותים מופעלים"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"שירותים מומלצים"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"שירותים מושבתים"</string> - <string name="all_services_title" msgid="5578662754874906455">"כל השירותים"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="two">התקן כדי לגלות <xliff:g id="COUNT_1">%1$s</xliff:g> מדפסות</item> - <item quantity="many">התקן כדי לגלות <xliff:g id="COUNT_1">%1$s</xliff:g> מדפסות</item> - <item quantity="other">התקן כדי לגלות <xliff:g id="COUNT_1">%1$s</xliff:g> מדפסות</item> - <item quantity="one">התקן כדי לגלות מדפסת <xliff:g id="COUNT_0">%1$s</xliff:g></item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"מדפיס את <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"מבטל את <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"שגיאת מדפסת ב-<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -89,6 +76,7 @@ <string name="restart" msgid="2472034227037808749">"הפעל מחדש"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"אין חיבור למדפסת"</string> <string name="reason_unknown" msgid="5507940196503246139">"לא ידוע"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – לא זמינה"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"האם להשתמש ב-<xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"ייתכן שהמסמך שלך יעבור בשרת אחד או יותר בדרכו למדפסת."</string> <string-array name="color_mode_labels"> @@ -108,6 +96,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"מצטערים, אך זה לא עבד. נסה שוב."</string> <string name="print_error_retry" msgid="1426421728784259538">"נסה שוב"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"המדפסת הזו אינה זמינה כעת."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"לא ניתן להציג תצוגה מקדימה"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"מכין תצוגה מקדימה…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-ja/strings.xml b/packages/PrintSpooler/res/values-ja/strings.xml index 0519083eb4af..e0fc79a9b26f 100644 --- a/packages/PrintSpooler/res/values-ja/strings.xml +++ b/packages/PrintSpooler/res/values-ja/strings.xml @@ -29,7 +29,7 @@ <string name="label_pages" msgid="7768589729282182230">"ページ"</string> <string name="destination_default_text" msgid="5422708056807065710">"プリンタを選択"</string> <string name="template_all_pages" msgid="3322235982020148762">"<xliff:g id="PAGE_COUNT">%1$s</xliff:g>ページすべて"</string> - <string name="template_page_range" msgid="428638530038286328">"範囲選択(<xliff:g id="PAGE_COUNT">%1$s</xliff:g>ページ内)"</string> + <string name="template_page_range" msgid="428638530038286328">"<xliff:g id="PAGE_COUNT">%1$s</xliff:g>ページ分"</string> <string name="pages_range_example" msgid="8558694453556945172">"例: 1-5,8,11-13"</string> <string name="print_preview" msgid="8010217796057763343">"印刷プレビュー"</string> <string name="install_for_print_preview" msgid="6366303997385509332">"プレビュー用PDFビューアをインストール"</string> @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"このプリンタの詳細"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"ファイルを作成できませんでした"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"一部の印刷サービスは無効になっています"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"一部の印刷サービスは無効になっています。"</string> + <string name="choose_print_service" msgid="3740309762324459694">"印刷サービスの選択"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"プリンタの検索中"</string> <string name="print_no_print_services" msgid="8561247706423327966">"使用できる印刷サービスがありません"</string> <string name="print_no_printers" msgid="4869403323900054866">"プリンタが見つかりません"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"プリンタは追加できません"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"選択してプリンタを追加"</string> - <string name="enable_print_service" msgid="3482815747043533842">"選択して有効にする"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"有効になっているサービス"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"推奨されているサービス"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"無効になっているサービス"</string> - <string name="all_services_title" msgid="5578662754874906455">"すべてのサービス"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> 台のプリンタを検索するにはインストールします</item> - <item quantity="one"><xliff:g id="COUNT_0">%1$s</xliff:g> 台のプリンタを検索するにはインストールします</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>を印刷しています"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>をキャンセルしています"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"プリンタエラー: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"再試行"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"プリンタに接続されていません"</string> <string name="reason_unknown" msgid="5507940196503246139">"不明"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>–使用不可"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g>を利用しますか?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"ドキュメントは1つ以上のサーバーを経由してプリンタに送信されることがあります。"</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"エラーです。もう一度お試しください。"</string> <string name="print_error_retry" msgid="1426421728784259538">"再試行"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"現在このプリンターは使用できません。"</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"プレビューを表示できません"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"プレビューを準備しています…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-ka-rGE/strings.xml b/packages/PrintSpooler/res/values-ka-rGE/strings.xml index 0991a294d1b9..ad1468a6c103 100644 --- a/packages/PrintSpooler/res/values-ka-rGE/strings.xml +++ b/packages/PrintSpooler/res/values-ka-rGE/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> — <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"დამატებითი ინფორმაცია ამ პრინტერის შესახებ"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"ფაილი ვერ შეიქმნა"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"ბეჭდვის ზოგიერთი სერვისი გათიშულია"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"ბეჭდვის ზოგიერთი სერვისი გათიშულია."</string> + <string name="choose_print_service" msgid="3740309762324459694">"აირჩიეთ ბეჭდვის სერვისი"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"მიმდინარეობს პრინტერების ძიება"</string> <string name="print_no_print_services" msgid="8561247706423327966">"ბეჭდვის სერვისები გააქტიურებული არ არის"</string> <string name="print_no_printers" msgid="4869403323900054866">"პრინტერები ვერ მოიძებნა"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"პრინტერების დამატება ვერ მოხერხდება"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"აირჩიეთ პრინტერის დასამატებლად"</string> - <string name="enable_print_service" msgid="3482815747043533842">"აირჩიეთ ჩასართავად"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"ჩართული სერვისები"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"რეკომენდებული სერვისები"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"გათიშული სერვისები"</string> - <string name="all_services_title" msgid="5578662754874906455">"ყველა სერვისი"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">დააინსტალირეთ <xliff:g id="COUNT_1">%1$s</xliff:g> პრინტერის აღმოსაჩენად</item> - <item quantity="one">დააინსტალირეთ <xliff:g id="COUNT_0">%1$s</xliff:g> პრინტერის აღმოსაჩენად</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"იბეჭდება <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"მიმდინარეობს <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>-ის გაუქმება"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"ბეჭდვის შეცდომა <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"გადატვირთვა"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"პრინტერთან კავშირი არ არის"</string> <string name="reason_unknown" msgid="5507940196503246139">"უცნობი"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – მიუწვდომელია"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"გსურთ, გამოიყენოთ <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"პრინტერამდე გზად დოკუმენტმა შეიძლება ერთი ან მეტი სერვერი გაიაროს."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"უკაცრავად, ვერ მოხერხდა. სცადეთ ისევ."</string> <string name="print_error_retry" msgid="1426421728784259538">"გამეორება"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"პრინტერი ამჟამად მიუწვდომელია."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"გადახედვის ჩვენება ვერ ხერხდება"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"მზადდება გადახედვა…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-kk-rKZ/strings.xml b/packages/PrintSpooler/res/values-kk-rKZ/strings.xml index dbf4de4339ec..d0337a6d97c2 100644 --- a/packages/PrintSpooler/res/values-kk-rKZ/strings.xml +++ b/packages/PrintSpooler/res/values-kk-rKZ/strings.xml @@ -16,7 +16,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <string name="app_label" msgid="4469836075319831821">"Print Spooler"</string> + <string name="app_label" msgid="4469836075319831821">"Басу спулері"</string> <string name="more_options_button" msgid="2243228396432556771">"Басқа опциялар"</string> <string name="label_destination" msgid="9132510997381599275">"Принтер"</string> <string name="label_copies" msgid="3634531042822968308">"Дана"</string> @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Осы принтер туралы қосымша ақпарат"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Файл жасалмады"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Кейбір басып шығару қызметтері өшірілген."</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Кейбір басып шығару қызметтері өшірілген."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Принтер қызметін таңдау"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Принтерлерді іздеу"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Басып шығару қызметтері қосылмаған"</string> <string name="print_no_printers" msgid="4869403323900054866">"Ешқандай принтер табылмады"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Принтерлерді қосу мүмкін емес"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Принтерді қосу үшін таңдаңыз"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Қосу үшін таңдаңыз"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Қосылған қызметтер"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Ұсынылған қызметтер"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Өшірілген қызметтер"</string> - <string name="all_services_title" msgid="5578662754874906455">"Барлық қызметтер"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> принтерді табу үшін орнатыңыз</item> - <item quantity="one"><xliff:g id="COUNT_0">%1$s</xliff:g> принтерді табу үшін орнатыңыз</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> басып шығарылуда"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> жұмысын тоқтатуда"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> принтер қателігі"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Қайта бастау"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Принтермен байланыс жоқ"</string> <string name="reason_unknown" msgid="5507940196503246139">"белгісіз"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – қол жетімсіз"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> қолданылсын ба?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Құжат принтерге жеткенше бір немесе бірнеше серверден өтуі мүмкін."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Кешіріңіз, бұл нәтиже бермеді. Әрекетті қайталаңыз."</string> <string name="print_error_retry" msgid="1426421728784259538">"Қайталау"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Бұл принтер дәл қазір қол жетімді емес."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Бетті алдын ала қарау мүмкін емес"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Алдын ала қарау дайындалуда…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-km-rKH/strings.xml b/packages/PrintSpooler/res/values-km-rKH/strings.xml index 5f65c7b90968..c9431e988ce4 100644 --- a/packages/PrintSpooler/res/values-km-rKH/strings.xml +++ b/packages/PrintSpooler/res/values-km-rKH/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"ព័ត៌មានបន្ថែមអំពីម៉ាស៊ីបោះពុម្ពនេះ"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"មិនអាចបង្កើតឯកសារបានទេ"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"សេវាកម្មបោះពុម្ពមួយចំនួនត្រូវបានបិទដំណើរការ"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"សេវាកម្មបោះពុម្ពមួយចំនួនត្រូវបានបិទដំណើរការ"</string> + <string name="choose_print_service" msgid="3740309762324459694">"ជ្រើសសេវាបោះពុម្ព"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"ស្វែងរកម៉ាស៊ីនបោះពុម្ព"</string> <string name="print_no_print_services" msgid="8561247706423327966">"គ្មានការបើកដំណើរការសេវាបោះពុម្ពទេ"</string> <string name="print_no_printers" msgid="4869403323900054866">"រកមិនឃើញម៉ាស៊ីនបោះពុម្ព"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"មិនអាចបន្ថែមម៉ាស៊ីនបោះពុម្ពបានទេ"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"ជ្រើសដើម្បីបន្ថែមម៉ាស៊ីនបោះពុម្ព"</string> - <string name="enable_print_service" msgid="3482815747043533842">"ជ្រើសដើម្បីបើកដំណើរការ"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"សេវាកម្មដែលបើកដំណើរការ"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"សេវាកម្មដែលបានណែនាំ"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"សេវាកម្មដែលបិទដំណើរការ"</string> - <string name="all_services_title" msgid="5578662754874906455">"សេវាកម្មទាំងអស់"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">ដំឡើងដើម្បីរកមើលម៉ាស៊ីនបោះពុម្ព <xliff:g id="COUNT_1">%1$s</xliff:g></item> - <item quantity="one">ដំឡើងដើម្បីរកមើលម៉ាស៊ីនបោះពុម្ព <xliff:g id="COUNT_0">%1$s</xliff:g></item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"កំពុងបោះពុម្ព <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"ការបោះបង់ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"កំហុសម៉ាស៊ីនបោះពុម្ព <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"ចាប់ផ្ដើមឡើងវិញ"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"គ្មានការភ្ជាប់ទៅម៉ាស៊ីនបោះពុម្ព"</string> <string name="reason_unknown" msgid="5507940196503246139">"មិនស្គាល់"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – មិនអាចប្រើបាន"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"ប្រើ <xliff:g id="SERVICE">%1$s</xliff:g> ឬ?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"ឯកសាររបស់អ្នកអាចនឹងឆ្លងកាត់ម៉ាស៊ីនមេមួយ ឬច្រើននៅពេលដែលវាធ្វើដំណើរទៅកាន់ម៉ាស៊ីនបោះពុម្ព។"</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"សូមទោស វាមិនដំណើរការទេ។ ព្យាយាមម្ដងទៀត។"</string> <string name="print_error_retry" msgid="1426421728784259538">"ព្យាយាមម្ដងទៀត"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"ឥឡូវនេះ ម៉ាស៊ីនបោះពុម្ពនេះមិនអាចប្រើបាន។"</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"មិនអាចបង្ហាញការមើលជាមុនបានទេ"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"កំពុងរៀបចំមើលជាមុន…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-kn-rIN/strings.xml b/packages/PrintSpooler/res/values-kn-rIN/strings.xml index 487ac0128159..fc5149a495cb 100644 --- a/packages/PrintSpooler/res/values-kn-rIN/strings.xml +++ b/packages/PrintSpooler/res/values-kn-rIN/strings.xml @@ -47,7 +47,7 @@ <string name="savetopdf_button" msgid="2976186791686924743">"PDF ಗೆ ಉಳಿಸು"</string> <string name="print_options_expanded" msgid="6944679157471691859">"ಪ್ರಿಂಟ್ ಆಯ್ಕೆಗಳನ್ನು ವಿಸ್ತರಿಸಲಾಗಿದೆ"</string> <string name="print_options_collapsed" msgid="7455930445670414332">"ಪ್ರಿಂಟ್ ಆಯ್ಕೆಗಳನ್ನು ಮುಚ್ಚಲಾಗಿದೆ"</string> - <string name="search" msgid="5421724265322228497">"ಹುಡುಕಿ"</string> + <string name="search" msgid="5421724265322228497">"ಹುಡುಕು"</string> <string name="all_printers_label" msgid="3178848870161526399">"ಎಲ್ಲಾ ಪ್ರಿಂಟರ್ಗಳು"</string> <string name="add_print_service_label" msgid="5356702546188981940">"ಸೇವೆಯನ್ನು ಸೇರಿಸು"</string> <string name="print_search_box_shown_utterance" msgid="7967404953901376090">"ಹುಡುಕಾಟ ಪೆಟ್ಟಿಗೆಯನ್ನು ತೋರಿಸಲಾಗಿದೆ"</string> @@ -61,30 +61,20 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"ಈ ಪ್ರಿಂಟರ್ ಬಗ್ಗೆ ಇನ್ನಷ್ಟು ಮಾಹಿತಿ"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"ಫೈಲ್ ರಚಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"ಕೆಲವು ಮುದ್ರಣ ಸೇವೆಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"ಕೆಲವು ಮುದ್ರಣ ಸೇವೆಗಳನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ."</string> + <string name="choose_print_service" msgid="3740309762324459694">"ಮುದ್ರಣ ಸೇವೆಯನ್ನು ಆಯ್ಕೆಮಾಡಿ"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"ಪ್ರಿಂಟರ್ಗಳಿಗಾಗಿ ಹುಡುಕಲಾಗುತ್ತಿದೆ"</string> <string name="print_no_print_services" msgid="8561247706423327966">"ಯಾವುದೇ ಮುದ್ರಣ ಸೇವೆಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿಲ್ಲ"</string> <string name="print_no_printers" msgid="4869403323900054866">"ಯಾವುದೇ ಮುದ್ರಕಗಳು ಕಂಡುಬಂದಿಲ್ಲ"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"ಪ್ರಿಂಟರ್ಗಳನ್ನು ಸೇರಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"ಪ್ರಿಂಟರ್ ಸೇರಿಸಲು ಆಯ್ಕೆಮಾಡಿ"</string> - <string name="enable_print_service" msgid="3482815747043533842">"ಸಕ್ರಿಯಗೊಳಿಸಲು ಆಯ್ಕೆಮಾಡಿ"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"ಸಕ್ರಿಯಗೊಳಿಸಲಾದ ಸೇವೆಗಳು"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"ಶಿಫಾರಸು ಮಾಡಲಾದ ಸೇವೆಗಳು"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾದ ಸೇವೆಗಳು"</string> - <string name="all_services_title" msgid="5578662754874906455">"ಎಲ್ಲ ಸೇವೆಗಳು"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one"><xliff:g id="COUNT_1">%1$s</xliff:g> ಪ್ರಿಂಟರ್ಗಳನ್ನು ಶೋಧಿಸಲು ಸ್ಥಾಪಿಸಿ</item> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> ಪ್ರಿಂಟರ್ಗಳನ್ನು ಶೋಧಿಸಲು ಸ್ಥಾಪಿಸಿ</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> ಮುದ್ರಿಸಲಾಗುತ್ತಿದೆ"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> ರದ್ದು ಮಾಡಲಾಗುತ್ತಿದೆ"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"ಮುದ್ರಕ ದೋಷ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="blocked_notification_title_template" msgid="1175435827331588646">"ಮುದ್ರಕವು <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> ನಿರ್ಬಂಧಿಸಿದೆ"</string> - <string name="cancel" msgid="4373674107267141885">"ರದ್ದುಮಾಡಿ"</string> + <string name="cancel" msgid="4373674107267141885">"ರದ್ದುಮಾಡು"</string> <string name="restart" msgid="2472034227037808749">"ಮರುಪ್ರಾರಂಭಿಸು"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"ಮುದ್ರಕಕ್ಕೆ ಸಂಪರ್ಕವಿಲ್ಲ"</string> - <string name="reason_unknown" msgid="5507940196503246139">"ಅಪರಿಚಿತ"</string> + <string name="reason_unknown" msgid="5507940196503246139">"ಅಜ್ಞಾತ"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – ಲಭ್ಯವಿಲ್ಲ"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> ಬಳಸುವುದೇ?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"ನಿಮ್ಮ ಡಾಕ್ಯುಮೆಂಟ್ ಪ್ರಿಂಟರ್ಗೆ ಹೋಗುವ ಸಂದರ್ಭದಲ್ಲಿ ಒಂದು ಅಥವಾ ಅದಕ್ಕಿಂತ ಹೆಚ್ಚು ಸರ್ವರ್ಗಳ ಮೂಲಕ ಹಾದು ಹೋಗಬಹುದು."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"ಕ್ಷಮಿಸಿ, ಅದು ಕೆಲಸ ಮಾಡುತ್ತಿಲ್ಲ. ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ."</string> <string name="print_error_retry" msgid="1426421728784259538">"ಮರುಪ್ರಯತ್ನಿಸು"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"ಈ ಪ್ರಿಂಟರ್ ಸದ್ಯಕ್ಕೆ ಲಭ್ಯವಿಲ್ಲ."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"ಪೂರ್ವವೀಕ್ಷಣೆ ಪ್ರದರ್ಶಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"ಪೂರ್ವವೀಕ್ಷಣೆ ತಯಾರಾಗುತ್ತಿದೆ…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-ko/strings.xml b/packages/PrintSpooler/res/values-ko/strings.xml index abd69597a58b..2faff1f97837 100644 --- a/packages/PrintSpooler/res/values-ko/strings.xml +++ b/packages/PrintSpooler/res/values-ko/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"이 프린터에 대한 정보 더보기"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"파일을 만들 수 없습니다."</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"프린트 서비스 일부가 사용 중지되었습니다."</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"프린트 서비스 일부가 사용 중지되었습니다."</string> + <string name="choose_print_service" msgid="3740309762324459694">"인쇄 서비스 선택"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"프린터 검색 중"</string> <string name="print_no_print_services" msgid="8561247706423327966">"사용 가능한 프린트 서비스 없음"</string> <string name="print_no_printers" msgid="4869403323900054866">"프린터 없음"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"프린터를 추가할 수 없음"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"프린터를 추가하려면 선택하세요."</string> - <string name="enable_print_service" msgid="3482815747043533842">"사용 설정하려면 선택하세요."</string> - <string name="enabled_services_title" msgid="7036986099096582296">"사용 설정된 서비스"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"권장 서비스"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"사용 중지된 서비스"</string> - <string name="all_services_title" msgid="5578662754874906455">"모든 서비스"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g>개 프린터를 표시하려면 설치하세요.</item> - <item quantity="one"><xliff:g id="COUNT_0">%1$s</xliff:g>개 프린터를 표시하려면 설치하세요.</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> 인쇄 중"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> 취소 중"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"프린터 오류: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"다시 시작"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"프린터와 연결되지 않음"</string> <string name="reason_unknown" msgid="5507940196503246139">"알 수 없음"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – 사용할 수 없음"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g>을(를) 사용할까요?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"문서가 프린터로 전송되는 중에 하나 이상의 서버를 통과할 수 있습니다."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"죄송합니다. 오류가 발생했습니다. 다시 시도해 보세요."</string> <string name="print_error_retry" msgid="1426421728784259538">"다시 시도"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"현재 이 프린터를 사용할 수 없습니다."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"미리보기를 표시할 수 없음"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"미리보기 준비 중…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-ky-rKG/strings.xml b/packages/PrintSpooler/res/values-ky-rKG/strings.xml index 3886c9fe4188..a01e4a8aad1b 100644 --- a/packages/PrintSpooler/res/values-ky-rKG/strings.xml +++ b/packages/PrintSpooler/res/values-ky-rKG/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Бул принтер жөнүндө көбүрөөк маалымат"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Файл түзүлбөй койду"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Басып чыгаруу кызматтарынын айрымы өчүрүлгөн"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Басып чыгаруу кызматтарынын айрымы өчүрүлгөн."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Принтер кызматын тандоо"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Принтерлер изделүүдө"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Принтер-кызматтары иштетилген эмес"</string> <string name="print_no_printers" msgid="4869403323900054866">"Принтерлер табылган жок"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Принтерлер кошулбай жатат"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Принтер кошуу үчүн тандаңыз"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Иштетүү үчүн тандаңыз"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Иштетилген кызматтар"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Сунушталган кызматтар"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Өчүрүлгөн кызматтар"</string> - <string name="all_services_title" msgid="5578662754874906455">"Бардык кызматтар"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Орнотсоңуз <xliff:g id="COUNT_1">%1$s</xliff:g> принтер таап аласыз</item> - <item quantity="one">Орнотсоңуз <xliff:g id="COUNT_0">%1$s</xliff:g> принтер таап аласыз</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> басылууда"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> токтотулууда"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Принтерде ката кетти: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Кайра баштоо"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Принтер менен байланыш жок"</string> <string name="reason_unknown" msgid="5507940196503246139">"белгисиз"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – жеткиликтүү эмес"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> колдонулсунбу?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Принтерге жеткиче документиңиз бир же андан көп серверлерден өтүшү мүмкүн."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Кечиресиз, иштеген жок. Дагы бир жолу аракет кылып көрүңүз."</string> <string name="print_error_retry" msgid="1426421728784259538">"Дагы бир жолу аракет кылуу"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Учурда бул принтерди колдонуу мүмкүн эмес."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Алдын ала көрүнүшү көрсөтүлбөй жатат"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Алдын-ала көрүүгө даярданууда…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-lo-rLA/strings.xml b/packages/PrintSpooler/res/values-lo-rLA/strings.xml index e424af9169b1..b5d13b54fdbc 100644 --- a/packages/PrintSpooler/res/values-lo-rLA/strings.xml +++ b/packages/PrintSpooler/res/values-lo-rLA/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"ຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບເຄື່ອງພິມນີ້"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"ບໍ່ສາມາດສ້າງໄຟລ໌ໄດ້"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"ບາງການບໍລິການພິມຖືກປິດການນຳໃຊ້"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"ບາງການບໍລິການພິມຖືກປິດນຳໃຊ້."</string> + <string name="choose_print_service" msgid="3740309762324459694">"ເລືອກບໍລິການການພິມ"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"ກຳລັງຊອກຫາເຄື່ອງພິມ"</string> <string name="print_no_print_services" msgid="8561247706423327966">"ບໍ່ມີການບໍລິການພິມເປີດໃຊ້ງານໄວ້"</string> <string name="print_no_printers" msgid="4869403323900054866">"ບໍ່ພົບເຄື່ອງພິມ"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"ບໍ່ສາມາດເພີ່ມເຄື່ອງພິມໄດ້"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"ເລືອກເພື່ອເພີ່ມເຄື່ອງພິມ"</string> - <string name="enable_print_service" msgid="3482815747043533842">"ເລືອກເພື່ອເປີດໃຊ້"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"ບໍລິການທີ່ເປີດໃຊ້"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"ບໍລິການທີ່ແນະນຳ"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"ບໍລິການທີ່ຖືກປິດການນຳໃຊ້"</string> - <string name="all_services_title" msgid="5578662754874906455">"ບໍລິການທັງໝົດ"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">ຕິດຕັ້ງເພື່ອຄົ້ນພົບເຄື່ອງພິມ <xliff:g id="COUNT_1">%1$s</xliff:g> ເຄື່ອງ</item> - <item quantity="one">ຕິດຕັ້ງເພື່ອຄົ້ນພົບເຄື່ອງພິມ <xliff:g id="COUNT_0">%1$s</xliff:g> ເຄື່ອງ</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"ກຳລັງພິມ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"ກຳລັງຍົກເລີກ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"ເຄື່ອງພິມເກີດຂໍ້ຜິດພາດ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"ປິດເປີດໃໝ່"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"ບໍ່ມີການເຊື່ອມຕໍ່ຫາເຄື່ອງພິມ"</string> <string name="reason_unknown" msgid="5507940196503246139">"ບໍ່ຮູ້ຈັກ"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> - ບໍ່ມີຢູ່"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"ໃຊ້ <xliff:g id="SERVICE">%1$s</xliff:g> ບໍ?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"ເອກະສານຂອງທ່ານອາດເດີນທາງຜ່ານໜຶ່ງ ຫຼື ຫຼາຍເຊີບເວີ ເພື່ອໄປຮອດເຄື່ອງພິມ."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"ຂໍອະໄພ, ໃຊ້ບໍ່ໄດ້. ໃຫ້ລອງໃໝ່ອີກເທື່ອນຶ່ງ."</string> <string name="print_error_retry" msgid="1426421728784259538">"ລອງໃໝ່"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"ບໍ່ສາມາດໃຊ້ເຄື່ອງພິມນີ້ໃນເວລານີ້ໄດ້."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"ບໍ່ສາມາດສະແດງຕົວຢ່າງໄດ້"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"ກຳລັງກະກຽມຕົວຢ່າງ…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-lt/strings.xml b/packages/PrintSpooler/res/values-lt/strings.xml index 25a36a457603..3b8f14312d60 100644 --- a/packages/PrintSpooler/res/values-lt/strings.xml +++ b/packages/PrintSpooler/res/values-lt/strings.xml @@ -63,24 +63,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"„<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g>“ – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Daugiau informacijos apie šį spausdintuvą"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Nepavyko sukurti failo"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Kai kurios spausdinimo paslaugos išjungtos"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Kai kurios spausdinimo paslaugos išjungtos."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Pasirinkite spausdinimo paslaugą"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Ieškoma spausdintuvų"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Neįgalinta jokių spausdinimo paslaugų"</string> <string name="print_no_printers" msgid="4869403323900054866">"Nerasta spausdintuvų"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Nepavyko pridėti spausdintuvų"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Pasirinkite, kad pridėtumėte spausdintuvą"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Pasirinkite, kad įgalintumėte"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Įgalintos paslaugos"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Rekomenduojamos paslaugos"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Išjungtos paslaugos"</string> - <string name="all_services_title" msgid="5578662754874906455">"Visos paslaugos"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Įdiekite, kad būtų rastas <xliff:g id="COUNT_1">%1$s</xliff:g> spausdintuvas</item> - <item quantity="few">Įdiekite, kad būtų rasti <xliff:g id="COUNT_1">%1$s</xliff:g> spausdintuvai</item> - <item quantity="many">Įdiekite, kad būtų rasta <xliff:g id="COUNT_1">%1$s</xliff:g> spausdintuvo</item> - <item quantity="other">Įdiekite, kad būtų rasta <xliff:g id="COUNT_1">%1$s</xliff:g> spausdintuvų</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Spausdinama: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Atšaukiama: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Spausdintuvo klaida: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -89,6 +76,7 @@ <string name="restart" msgid="2472034227037808749">"Paleisti iš naujo"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Nėra ryšio su spausdintuvu"</string> <string name="reason_unknown" msgid="5507940196503246139">"nežinoma"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"„<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>“ – nepasiekiama"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Naudoti „<xliff:g id="SERVICE">%1$s</xliff:g>“?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Kai dokumentas siunčiamas į spausdintuvą, jis gali būti perduodamas per vieną ar daugiau serverių."</string> <string-array name="color_mode_labels"> @@ -108,6 +96,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Deja, tai neveikia. Bandykite dar kartą."</string> <string name="print_error_retry" msgid="1426421728784259538">"Bandykite dar kartą"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Šis spausdintuvas šiuo metu nepasiekiamas."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Nepavyksta pateikti peržiūros"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Ruošiama peržiūra…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-lv/strings.xml b/packages/PrintSpooler/res/values-lv/strings.xml index ad3dc3733a40..762d0bd1d26d 100644 --- a/packages/PrintSpooler/res/values-lv/strings.xml +++ b/packages/PrintSpooler/res/values-lv/strings.xml @@ -62,23 +62,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> — <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Plašāka informācija par šo printeri"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Nevarēja izveidot failu."</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Daži drukas pakalpojumi ir atspējoti."</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Daži drukas pakalpojumi ir atspējoti."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Izvēlieties drukāšanas pakalpojumu"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Printeru meklēšana"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Nav iespējots neviens drukas pakalpojums"</string> <string name="print_no_printers" msgid="4869403323900054866">"Netika atrasts neviens printeris."</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Nevar pievienot printerus"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Atlasiet, lai pievienotu printeri"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Izvēlieties, lai iespējotu"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Iespējotie pakalpojumi"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Ieteiktie pakalpojumi"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Atspējotie pakalpojumi"</string> - <string name="all_services_title" msgid="5578662754874906455">"Visi pakalpojumi"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="zero">Instalējiet, lai atklātu <xliff:g id="COUNT_1">%1$s</xliff:g> printerus</item> - <item quantity="one">Instalējiet, lai atklātu <xliff:g id="COUNT_1">%1$s</xliff:g> printeri</item> - <item quantity="other">Instalējiet, lai atklātu <xliff:g id="COUNT_1">%1$s</xliff:g> printerus</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Notiek darba <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> drukāšana…"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Pārtrauc drukas darbu <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>…"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Printera kļūda ar darbu <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -87,6 +75,7 @@ <string name="restart" msgid="2472034227037808749">"Restartēt"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Nav savienojuma ar printeri"</string> <string name="reason_unknown" msgid="5507940196503246139">"nezināms"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> — nav pieejams"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Vai izmantot pakalpojumu <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Dokuments, iespējams, tiek pārsūtīts caur vienu vai vairākiem serveriem, līdz tas nonāk līdz printerim."</string> <string-array name="color_mode_labels"> @@ -106,6 +95,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Diemžēl tas neizdevās. Mēģiniet vēlreiz."</string> <string name="print_error_retry" msgid="1426421728784259538">"Mēģināt vēlreiz"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Šis printeris šobrīd nav pieejams."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Nevar attēlot priekšskatījumu"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Notiek priekšskatījuma sagatavošana..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-mk-rMK/strings.xml b/packages/PrintSpooler/res/values-mk-rMK/strings.xml index 624b81b83034..de6d3e9656e7 100644 --- a/packages/PrintSpooler/res/values-mk-rMK/strings.xml +++ b/packages/PrintSpooler/res/values-mk-rMK/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Повеќе информации за овој печатач"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Не можеше да се создаде датотека"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Некои услуги за печатење се оневозможени"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Некои услуги за печатење се оневозможени."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Избери услуга печатење"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Пребарување печатачи"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Нема овозможени услуги за печатење"</string> <string name="print_no_printers" msgid="4869403323900054866">"Не се пронајдени печатачи"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Не може да се додадат печатачи"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Изберете додавање печатач"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Изберете да се овозможи"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Овозможени услуги"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Препорачани услуги"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Оневозможени услуги"</string> - <string name="all_services_title" msgid="5578662754874906455">"Сите услуги"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Инсталирајте за да пронајдете <xliff:g id="COUNT_1">%1$s</xliff:g> печатач</item> - <item quantity="other">Инсталирајте за да пронајдете <xliff:g id="COUNT_1">%1$s</xliff:g> печатачи</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> се печати"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> се откажува"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Грешка при печатење <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Рестартирај"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Нема поврзување со печатач"</string> <string name="reason_unknown" msgid="5507940196503246139">"непознато"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> - недостапен"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Користи <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"На пат до печатачот, документот може да помине преку еден или повеќе сервери."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"За жал, тоа не успеа. Обидете се повторно."</string> <string name="print_error_retry" msgid="1426421728784259538">"Обиди се повторно"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Овој печатач не е достапен во моментов."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Прегледот не може да се прикаже"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Се подготвува преглед…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-ml-rIN/strings.xml b/packages/PrintSpooler/res/values-ml-rIN/strings.xml index a213fa65141d..7a33e14e0e6a 100644 --- a/packages/PrintSpooler/res/values-ml-rIN/strings.xml +++ b/packages/PrintSpooler/res/values-ml-rIN/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"ഈ പ്രിന്ററിനെ കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾ"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"ഫയൽ സൃഷ്ടിക്കാൻ കഴിഞ്ഞില്ല"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"ചില പ്രിന്റ് സേവനങ്ങൾ പ്രവർത്തനരഹിതമാക്കി"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"ചില പ്രിന്റ് സേവനങ്ങൾ പ്രവർത്തനരഹിതമാക്കിയിരിക്കുന്നു."</string> + <string name="choose_print_service" msgid="3740309762324459694">"പ്രിന്റ് സേവനം തിരഞ്ഞെടുക്കുക"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"പ്രിന്ററുകൾക്കായി തിരയുന്നു"</string> <string name="print_no_print_services" msgid="8561247706423327966">"പ്രിന്റ് സേവനങ്ങളൊന്നും പ്രവർത്തനക്ഷമാക്കിയിട്ടില്ല"</string> <string name="print_no_printers" msgid="4869403323900054866">"പ്രിന്ററുകളൊന്നും കണ്ടെത്തിയില്ല"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"പ്രിന്ററുകൾ ചേർക്കാൻ കഴിയില്ല"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"പ്രിന്റർ ചേർക്കാൻ തിരഞ്ഞെടുക്കുക"</string> - <string name="enable_print_service" msgid="3482815747043533842">"പ്രവർത്തനക്ഷമമാക്കാൻ തിരഞ്ഞെടുക്കുക"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"പ്രവർത്തനക്ഷമമാക്കിയ സേവനങ്ങൾ"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"ശുപാർശ ചെയ്യപ്പെടുന്ന സേവനങ്ങൾ"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"പ്രവർത്തനരഹിതമാക്കിയ സേവനങ്ങൾ"</string> - <string name="all_services_title" msgid="5578662754874906455">"എല്ലാ സേവനങ്ങളും"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> പ്രിന്ററുകൾ കണ്ടെത്തുന്നതിന് ഇൻസ്റ്റാൾ ചെയ്യുക</item> - <item quantity="one"><xliff:g id="COUNT_0">%1$s</xliff:g> പ്രിന്റർ കണ്ടെത്തുന്നതിന് ഇൻസ്റ്റാൾ ചെയ്യുക</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> പ്രിന്റുചെയ്യുന്നു"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> റദ്ദാക്കുന്നു"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"പ്രിന്റർ പിശക് <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"പുനരാരംഭിക്കുക"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"പ്രിന്ററിൽ കണക്ഷനൊന്നുമില്ല"</string> <string name="reason_unknown" msgid="5507940196503246139">"അജ്ഞാതം"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – ലഭ്യമല്ല"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> ഉപയോഗിക്കണോ?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"നിങ്ങളുടെ പ്രമാണം പ്രിന്ററിലേക്ക് പോകുന്നതിനിടെ അത് ഒന്നോ അതിലധികമോ സെർവറുകളിലൂടെ കടന്നുപോകാനിടയുണ്ട്."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"ക്ഷമിക്കണം, അത് പ്രവർത്തിച്ചില്ല. വീണ്ടും ശ്രമിക്കുക."</string> <string name="print_error_retry" msgid="1426421728784259538">"വീണ്ടും ശ്രമിക്കുക"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"ഈ പ്രിന്ററർ ഇപ്പോൾ ലഭ്യമല്ല."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"പ്രിവ്യൂ കാണിക്കാൻ കഴിയില്ല"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"പ്രിവ്യൂ തയ്യാറാക്കുന്നു…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-mn-rMN/strings.xml b/packages/PrintSpooler/res/values-mn-rMN/strings.xml index ab5c30da0c67..c94e56d2fedc 100644 --- a/packages/PrintSpooler/res/values-mn-rMN/strings.xml +++ b/packages/PrintSpooler/res/values-mn-rMN/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Энэ хэвлэгчийн талаарх дэлгэрэнгүй мэдээлэл"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Файл үүсгэж чадсангүй"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Зарим хэвлэх үйлчилгээг идэвхгүй болгосон байна"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Зарим хэвлэх үйлчилгээг идэвхгүй болгосон байна."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Хэвлэх үйлчилгээг сонгох"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Принтер хайж байна"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Хэвлэх үйлчилгээг идэвхжүүлээгүй"</string> <string name="print_no_printers" msgid="4869403323900054866">"Принтер олдсонгүй"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Хэвлэгч нэмэх боломжгүй байна"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Хэвлэгч нэмэхийн тулд сонгох"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Идэвхжүүлэхийн тулд сонгох"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Идэвхжүүлсэн үйлчилгээ"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Санал болгосон үйлчилгээ"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Идэвхгүй болгосон үйлчилгээ"</string> - <string name="all_services_title" msgid="5578662754874906455">"Бүх үйлчилгээ"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other"> <xliff:g id="COUNT_1">%1$s</xliff:g> хэвлэгч олохын тулд суулгах</item> - <item quantity="one"> <xliff:g id="COUNT_0">%1$s</xliff:g> хэвлэгч олохын тулд суулгах</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Хэвлэж байна <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Цуцлаж байна <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Принтерийн алдаа <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Дахин эхлүүлэх"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Принтер холбогдоогүй байна"</string> <string name="reason_unknown" msgid="5507940196503246139">"тодорхойгүй"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – ашиглах боломжгүй"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g>-г ашиглах уу?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Таны документ хэвлэгчид иртэл нэг эсвэл хэд хэдэн серверээр дамжина."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Уучлаарай, ажилласангүй. Дахин оролдоно уу."</string> <string name="print_error_retry" msgid="1426421728784259538">"Дахин оролдох"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Одоо хэвлэгч ашиглах боломжгүй."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Урьдчилан үзүүлэх боломжгүй"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Урьдчилан харахыг бэлтгэж байна…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-mr-rIN/strings.xml b/packages/PrintSpooler/res/values-mr-rIN/strings.xml index 53d0d41e788e..ab25010a7d57 100644 --- a/packages/PrintSpooler/res/values-mr-rIN/strings.xml +++ b/packages/PrintSpooler/res/values-mr-rIN/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"या प्रिंटर विषयी अधिक माहिती"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"फाईल तयार करणेे शक्य झाले नाही"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"काही मुद्रण सेवा अक्षम केल्या आहेत"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"काही मुद्रण सेवा अक्षम केल्या आहेत."</string> + <string name="choose_print_service" msgid="3740309762324459694">"मुद्रण सेवा निवडा"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"प्रिंटर शोधत आहे"</string> <string name="print_no_print_services" msgid="8561247706423327966">"कोणत्याही मुद्रण सेवा सक्षम केलेल्या नाहीत"</string> <string name="print_no_printers" msgid="4869403323900054866">"कोणतेही प्रिंटर आढळले नाही"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"प्रिंटर जोडू शकत नाही"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"प्रिंटर जोडण्यासाठी निवडा"</string> - <string name="enable_print_service" msgid="3482815747043533842">"सक्षम करण्यासाठी निवडा"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"सक्षम केलेल्या सेवा"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"शिफारस केलेल्या सेवा"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"अक्षम केलल्या सेवा"</string> - <string name="all_services_title" msgid="5578662754874906455">"सर्व सेवा"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one"><xliff:g id="COUNT_1">%1$s</xliff:g> प्रिंटर शोधण्यासाठी स्थापित करा</item> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> प्रिंटर शोधण्यासाठी स्थापित करा</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> मुद्रण करीत आहे"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> रद्द करीत आहे"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"प्रिंटर त्रुटी <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"रीस्टार्ट करा"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"प्रिंटरवर कोणतेही कनेक्शन नाही"</string> <string name="reason_unknown" msgid="5507940196503246139">"अज्ञात"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – अनुपलब्ध"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> वापरायची?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"आपला दस्तऐवज प्रिंटरपर्यंत पोहचण्यापूर्वी एक किंवा अधिक सर्व्हरद्वारे जाऊ शकतो."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"क्षमस्व, त्याने कार्य केले नाही. पुन्हा प्रयत्न करा."</string> <string name="print_error_retry" msgid="1426421728784259538">"पुन्हा प्रयत्न करा"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"हा प्रिंटर आत्ता उपलब्ध नाही."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"पूर्वावलोकन प्रदर्शित करू शकत नाही"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"पूर्वावलोकनाची तयारी करत आहे..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-ms-rMY/strings.xml b/packages/PrintSpooler/res/values-ms-rMY/strings.xml index 5c43b4f2c14c..917ae8a7222f 100644 --- a/packages/PrintSpooler/res/values-ms-rMY/strings.xml +++ b/packages/PrintSpooler/res/values-ms-rMY/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Maklumat lanjut tentang pencetak ini"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Tidak dapat membuat fail"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Sesetengah perkhidmatan cetak dilumpuhkan"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Sesetengah perkhidmatan cetak dilumpuhkan."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Pilih perkhidmatan cetak"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Mencari pencetak"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Perkhidmatan cetak tidak didayakan"</string> <string name="print_no_printers" msgid="4869403323900054866">"Tiada pencetak ditemui"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Tidak dapat menambahkan pencetak"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Pilih untuk menambahkan pencetak"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Pilih untuk mendayakan"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Perkhidmatan yang didayakan"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Perkhidmatan yang disyorkan"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Perkhidmatan yang dilumpuhkan"</string> - <string name="all_services_title" msgid="5578662754874906455">"Semua perkhidmatan"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Pasang untuk menemui <xliff:g id="COUNT_1">%1$s</xliff:g> pencetak</item> - <item quantity="one">Pasang untuk menemui <xliff:g id="COUNT_0">%1$s</xliff:g> pencetak</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Mencetak <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Membatalkan <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Ralat pencetak <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Mulakan semula"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Tiada sambungan ke pencetak"</string> <string name="reason_unknown" msgid="5507940196503246139">"tidak diketahui"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – tidak tersedia"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Gunakan <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Dokumen anda mungkin melalui satu atau beberapa pelayan dalam perjalanan ke pencetak."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Maaf, itu tidak berjaya. Cuba lagi."</string> <string name="print_error_retry" msgid="1426421728784259538">"Cuba semula"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Pencetak ini tidak tersedia sekarang."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Tidak dapat memaparkan pratonton"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Menyediakan pratonton..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-my-rMM/strings.xml b/packages/PrintSpooler/res/values-my-rMM/strings.xml index 11b1664114d0..4d4c95bd7d29 100644 --- a/packages/PrintSpooler/res/values-my-rMM/strings.xml +++ b/packages/PrintSpooler/res/values-my-rMM/strings.xml @@ -33,7 +33,7 @@ <string name="pages_range_example" msgid="8558694453556945172">"ဥပမာ ၁-၅၊ ၈၊ ၁၁-၁၃"</string> <string name="print_preview" msgid="8010217796057763343">"အစမ်းကြည့်ရှုရန်"</string> <string name="install_for_print_preview" msgid="6366303997385509332">"အစမ်းကြည့်ရန် ပီဒီအက်ဖ် ဖတ်ရှုစရာ ထည့်သွင်းပါ"</string> - <string name="printing_app_crashed" msgid="854477616686566398">"စာထုတ်လုပ်သော အက်ပ်ခဏ ပျက်သွားပါသည်"</string> + <string name="printing_app_crashed" msgid="854477616686566398">"စာထုတ်လုပ်သော အပလီကေးရှင်း ခဏ ပျက်သွားပါသည်"</string> <string name="generating_print_job" msgid="3119608742651698916">"စာထုတ်အလုပ်ကို လုပ်နေပါသည်"</string> <string name="save_as_pdf" msgid="5718454119847596853">"ပီဒီအက်ဖ် အဖြစ်သိမ်းဆည်းရန်"</string> <string name="all_printers" msgid="5018829726861876202">"စာထုတ်စက် အားလုံး"</string> @@ -61,30 +61,20 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"ဤပရင်တာ အကြောင်း ပိုမိုလေ့လာပါ"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"ဖိုင်အမည်ကို ထည့်၍မရပါ"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"အချို့ပုံနှိပ်ဝန်ဆောင်မှုများကို ပိတ်ထားပါသည်"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"ပရင့်ထုတ်ရေး အချို့ဝန်ဆောင်မှုများကို ပိတ်ထားပါသည်။"</string> + <string name="choose_print_service" msgid="3740309762324459694">"စာထုတ်ရန် ဝန်ဆောင်မှုကို ရွေးချယ်ပါ"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"စာထုတ်စက်များကို ရှာနေပါသည်"</string> <string name="print_no_print_services" msgid="8561247706423327966">"ပုံနှိပ်ထုတ်ယူရေး ဝန်ဆောင်မှုများ ဖွင့်မထားပါ"</string> <string name="print_no_printers" msgid="4869403323900054866">"စာထုတ်စက် တစ်ခုမှ မတွေ့ရှိပါ"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"ပုံနှိပ်စက်များကို ထည့်၍မရပါ"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"ပုံနှိပ်စက်ထည့်ရန် ရွေးပါ"</string> - <string name="enable_print_service" msgid="3482815747043533842">"ဖွင့်ရန် ရွေးပါ"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"ဖွင့်ထားသည့် ဝန်ဆောင်မှုများ"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"အကြံပြုထားသည့် ဝန်ဆောင်မှုများ"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"ပိတ်ထားသည့် ဝန်ဆောင်မှုများ"</string> - <string name="all_services_title" msgid="5578662754874906455">"ဝန်ဆောင်မှုများ အားလုံး"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">ပုံနှိပ်စက် <xliff:g id="COUNT_1">%1$s</xliff:g> ခုကို ရှာဖွေရန် စနစ်ထည့်သွင်းပါ</item> - <item quantity="one">ပုံနှိပ်စက် <xliff:g id="COUNT_0">%1$s</xliff:g> ခုကို ရှာဖွေရန် စနစ်ထည့်သွင်းပါ</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> ကို စာထုတ်နေပါသည်"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> ကို ပယ်ဖျက်နေပါသည်"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"စာထုတ်စက်မှ အမှား <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="blocked_notification_title_template" msgid="1175435827331588646">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>ကိုစာထုတ်စက်ကငြင်းလိုက်သည်"</string> - <string name="cancel" msgid="4373674107267141885">"မလုပ်တော့"</string> + <string name="cancel" msgid="4373674107267141885">"ပယ်ဖျက်"</string> <string name="restart" msgid="2472034227037808749">"အစက ပြန်စရန်"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"စာထုတ်စက်နဲ့ ဆက်သွယ်ထားမှု မရှိပါ"</string> <string name="reason_unknown" msgid="5507940196503246139">"အကြောင်းအရာ မသိရှိ"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – မတွေ့ရှိပါ"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g>ကိုသုံးမလား။"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"သင်၏ စာရွက်စာတမ်းများသည် ပရင်တာထံသို့ သွားစဉ် ဆာဗာ တစ်ခု သို့မဟုတ် ပိုများပြီး ဖြတ်ကျော်နိုင်ရသည်။"</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"ဆော်ရီး၊ အဲဒါ အလုပ်မဖြစ်ခဲ့ပါ။ ထပ် စမ်းပါ။"</string> <string name="print_error_retry" msgid="1426421728784259538">"ထပ်စမ်း"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"ဒီပရင်တာမှာ ယခုအချိန်မှာ မရနိုင်ပါ။"</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"အစမ်းကြည့်ခြင်းကို ပြသ၍မရပါ"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"အစမ်းကြည့်ရန် ပြင်ဆင်နေ…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-nb/strings.xml b/packages/PrintSpooler/res/values-nb/strings.xml index 1a466176a696..9efa5d1b923e 100644 --- a/packages/PrintSpooler/res/values-nb/strings.xml +++ b/packages/PrintSpooler/res/values-nb/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Mer informasjon om denne printeren"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Kunne ikke opprette filen"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Noen utskriftstjenester er slått av"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Noen utskriftstjenester er slått av."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Velg utskriftstjeneste"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Søker etter skrivere"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Ingen utskriftstjenester er slått på"</string> <string name="print_no_printers" msgid="4869403323900054866">"Fant ingen skrivere"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Kan ikke legge til skrivere"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Velg for å legge til skrivere"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Velg for å slå på"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Tjenester som er slått på"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Anbefalte tjenester"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Tjenester som er slått av"</string> - <string name="all_services_title" msgid="5578662754874906455">"Alle tjenester"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Installer for å finne <xliff:g id="COUNT_1">%1$s</xliff:g> printere</item> - <item quantity="one">Installer for å finne <xliff:g id="COUNT_0">%1$s</xliff:g> printer</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Skriver ut <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Avbryter <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Skriverfeil <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Start på nytt"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Ingen forbindelse med skriveren"</string> <string name="reason_unknown" msgid="5507940196503246139">"ukjent"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – utilgjengelig"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Vil du bruke <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Dokumentet ditt kan gå via flere tjenere før det når skriveren."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Beklager, det fungerte ikke. Prøv på nytt."</string> <string name="print_error_retry" msgid="1426421728784259538">"Prøv på nytt"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Denne skriveren er ikke tilgjengelig akkurat nå."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Kan ikke vise forhåndsvisningen"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Forbereder forhåndsvisningen …"</string> </resources> diff --git a/packages/PrintSpooler/res/values-ne-rNP/strings.xml b/packages/PrintSpooler/res/values-ne-rNP/strings.xml index c30e3674af23..281a65d97fb8 100644 --- a/packages/PrintSpooler/res/values-ne-rNP/strings.xml +++ b/packages/PrintSpooler/res/values-ne-rNP/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"यस प्रिन्टरको बारेमा थप जानकारी"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"फाइल सिर्जना गर्न सकिएन"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"केही मुद्रण सम्बन्धी सेवाहरूलाई असक्षम गरिएको छ"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"केही मुद्रण सेवाहरू असक्षम छन्।"</string> + <string name="choose_print_service" msgid="3740309762324459694">"प्रिन्ट सेवा छनौट गर्नुहोस्"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"प्रिन्टरहरू खोज्दै"</string> <string name="print_no_print_services" msgid="8561247706423327966">"कुनै पनि मुद्रण सेवाहरू सक्रिय छैनन्"</string> <string name="print_no_printers" msgid="4869403323900054866">"कुनै प्रिन्टरहरू भेटाइएन"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"प्रिन्टरहरू थप्न सक्दैन"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"प्रिन्टर थप्नका लागि चयन गर्नुहोस्"</string> - <string name="enable_print_service" msgid="3482815747043533842">"सक्षम गर्नका लागि चयन गर्नुहोस्"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"सक्षम गरिएका सेवाहरू"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"सिफारिस गरिएका सेवाहरू"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"असक्षम गरिएका सेवाहरू"</string> - <string name="all_services_title" msgid="5578662754874906455">"सबै सेवाहरू"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> प्रिन्टरहरू पत्ता लगाउनका लागि स्थापना गर्नुहोस्</item> - <item quantity="one"><xliff:g id="COUNT_0">%1$s</xliff:g> प्रिन्टर पत्ता लगाउनका लागि स्थापना गर्नुहोस्</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"प्रिन्ट गरिँदै <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"रद्द गरिँदै <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"प्रिन्टर त्रुटि <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"पुनःस्टार्ट गर्नुहोस्"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"प्रिन्टरमा कुनै जडान छैन"</string> <string name="reason_unknown" msgid="5507940196503246139">"अज्ञात"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> - अनुपलब्ध"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> प्रयोग गर्ने हो?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"तपाईँको कागजात प्रिन्टरमा जाँदा यसको मार्गमा एक वा धेरै सर्भरहरू पार हुनसक्छन्।"</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"माफ गर्नुहोस्, त्यसले काम गरेन। पुनः प्रयास गर्नुहोस्।"</string> <string name="print_error_retry" msgid="1426421728784259538">"पुनःप्रयास गर्नुहोस्"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"यो प्रिन्टर अहिले उपलब्ध छैन।"</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"पूर्वावलोकनलाई प्रदर्शन गर्न सक्दैन"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"पूर्वावलोकन तयारी..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-nl/strings.xml b/packages/PrintSpooler/res/values-nl/strings.xml index 7e1f37e554a3..eef9880283df 100644 --- a/packages/PrintSpooler/res/values-nl/strings.xml +++ b/packages/PrintSpooler/res/values-nl/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Meer informatie over deze printer"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Kan bestand niet maken"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Sommige afdrukservices zijn uitgeschakeld"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Sommige afdrukservices zijn uitgeschakeld."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Afdrukservice kiezen"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Printers zoeken"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Geen afdrukservices ingeschakeld"</string> <string name="print_no_printers" msgid="4869403323900054866">"Geen printers gevonden"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Kan geen printers toevoegen"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Selecteer om printer toe te voegen"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Selecteer om in te schakelen"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Ingeschakelde services"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Aanbevolen services"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Uitgeschakelde services"</string> - <string name="all_services_title" msgid="5578662754874906455">"Alle services"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Installeren om <xliff:g id="COUNT_1">%1$s</xliff:g> printers te vinden</item> - <item quantity="one">Installeren om <xliff:g id="COUNT_0">%1$s</xliff:g> printer te vinden</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> afdrukken"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> annuleren"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Printerfout <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Opnieuw starten"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Geen verbinding met printer"</string> <string name="reason_unknown" msgid="5507940196503246139">"onbekend"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – niet beschikbaar"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> gebruiken?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Je document kan via een of meer servers naar de printer worden verzonden."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Dat werkte niet. Probeer het opnieuw."</string> <string name="print_error_retry" msgid="1426421728784259538">"Opnieuw proberen"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Deze printer is momenteel niet beschikbaar."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Kan voorbeeld niet weergeven"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Voorbeeld voorbereiden…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-pa-rIN/strings.xml b/packages/PrintSpooler/res/values-pa-rIN/strings.xml index c09713ee4c32..7d7860cca1f0 100644 --- a/packages/PrintSpooler/res/values-pa-rIN/strings.xml +++ b/packages/PrintSpooler/res/values-pa-rIN/strings.xml @@ -35,7 +35,7 @@ <string name="install_for_print_preview" msgid="6366303997385509332">"ਪ੍ਰੀਵਿਊ ਲਈ PDF ਵਿਊਅਰ ਇੰਸਟੌਲ ਕਰੋ"</string> <string name="printing_app_crashed" msgid="854477616686566398">"ਪ੍ਰਿੰਟਿੰਗ ਐਪ ਕ੍ਰੈਸ਼ ਹੋਇਆ"</string> <string name="generating_print_job" msgid="3119608742651698916">"ਪ੍ਰਿੰਟ ਜੌਬ ਬਣਾ ਰਿਹਾ ਹੈ"</string> - <string name="save_as_pdf" msgid="5718454119847596853">"PDF ਦੇ ਤੌਰ ਤੇ ਰੱਖਿਅਤ ਕਰੋ"</string> + <string name="save_as_pdf" msgid="5718454119847596853">"PDF ਦੇ ਤੌਰ ਤੇ ਸੁਰੱਖਿਅਤ ਕਰੋ"</string> <string name="all_printers" msgid="5018829726861876202">"ਸਾਰੇ ਪ੍ਰਿੰਟਰ…"</string> <string name="print_dialog" msgid="32628687461331979">"ਪ੍ਰਿੰਟ ਡਾਇਲੌਗ"</string> <string name="current_page_template" msgid="1386638343571771292">"<xliff:g id="CURRENT_PAGE">%1$d</xliff:g> /<xliff:g id="PAGE_COUNT">%2$d</xliff:g>"</string> @@ -44,7 +44,7 @@ <string name="expand_handle" msgid="7282974448109280522">"ਹੈਂਡਲ ਨੂੰ ਵਿਸਤਾਰ ਦਿਓ"</string> <string name="collapse_handle" msgid="6886637989442507451">"ਇਕੱਠਾ ਹੋਣ ਦੀ ਸੰਭਾਲ"</string> <string name="print_button" msgid="645164566271246268">"ਪ੍ਰਿੰਟ"</string> - <string name="savetopdf_button" msgid="2976186791686924743">"PDF ਵਿੱਚ ਰੱਖਿਅਤ ਕਰੋ"</string> + <string name="savetopdf_button" msgid="2976186791686924743">"PDF ਵਿੱਚ ਸੁਰੱਖਿਅਤ ਕਰੋ"</string> <string name="print_options_expanded" msgid="6944679157471691859">"ਪ੍ਰਿੰਟ ਚੋਣਾਂ ਦਾ ਵਿਸਤਾਰ ਕੀਤਾ"</string> <string name="print_options_collapsed" msgid="7455930445670414332">"ਪ੍ਰਿੰਟ ਚੋਣਾਂ ਇਕੱਠਾ ਹੋਈਆਂ"</string> <string name="search" msgid="5421724265322228497">"ਖੋਜੋ"</string> @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"ਇਸ ਪ੍ਰਿੰਟਰ ਬਾਰੇ ਹੋਰ ਜਾਣਕਾਰੀ"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"ਫ਼ਾਈਲ ਨੂੰ ਬਣਾਇਆ ਨਹੀਂ ਜਾ ਸਕਿਆ"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"ਕੁਝ ਪ੍ਰਿੰਟ ਸੇਵਾਵਾਂ ਅਯੋਗ ਬਣਾਈਆਂ ਗਈਆਂ ਹਨ"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"ਕੁਝ ਪ੍ਰਿੰਟ ਸੇਵਾਵਾਂ ਅਯੋਗ ਬਣਾਈਆਂ ਗਈਆਂ ਹਨ।"</string> + <string name="choose_print_service" msgid="3740309762324459694">"ਪ੍ਰਿੰਟ ਸੇਵਾ ਚੁਣੋ"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"ਪ੍ਰਿੰਟਰ ਖੋਜ ਰਿਹਾ ਹੈ"</string> <string name="print_no_print_services" msgid="8561247706423327966">"ਪ੍ਰਿੰਟ ਸੇਵਾਵਾਂ ਯੋਗ ਨਹੀਂ ਬਣਾਈਆਂ ਗਈਆਂ"</string> <string name="print_no_printers" msgid="4869403323900054866">"ਕੋਈ ਪ੍ਰਿੰਟਰ ਨਹੀਂ ਮਿਲੇ"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"ਪ੍ਰਿੰਟਰ ਸ਼ਾਮਲ ਨਹੀਂ ਕੀਤੇ ਜਾ ਸਕਦੇ"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"ਪ੍ਰਿੰਟਰ ਸ਼ਾਮਲ ਕਰਨ ਲਈ ਚੁਣੋ"</string> - <string name="enable_print_service" msgid="3482815747043533842">"ਯੋਗ ਬਣਾਉਣ ਲਈ ਚੁਣੋ"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"ਯੋਗ ਬਣਾਈਆਂ ਗਈਆਂ ਸੇਵਾਵਾਂ"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"ਸਿਫ਼ਾਰਸ਼ ਕੀਤੀਆਂ ਸੇਵਾਵਾਂ"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"ਅਯੋਗ ਬਣਾਈਆਂ ਗਈਆਂ ਸੇਵਾਵਾਂ"</string> - <string name="all_services_title" msgid="5578662754874906455">"ਸਾਰੀਆਂ ਸੇਵਾਵਾਂ"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one"><xliff:g id="COUNT_1">%1$s</xliff:g> ਪ੍ਰਿੰਟਰ ਖੋਜਣ ਲਈ ਸਥਾਪਤ ਕਰੋ</item> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> ਪ੍ਰਿੰਟਰ ਖੋਜਣ ਲਈ ਸਥਾਪਤ ਕਰੋ</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> ਨੂੰ ਪ੍ਰਿੰਟ ਕਰ ਰਿਹਾ ਹੈ"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> ਨੂੰ ਰੱਦ ਕਰ ਰਿਹਾ ਹੈ"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"ਪ੍ਰਿੰਟਰ ਅਸ਼ੁੱਧੀ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"ਰੀਸਟਾਰਟ ਕਰੋ"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"ਪ੍ਰਿੰਟਰ ਲਈ ਕੋਈ ਕਨੈਕਸ਼ਨ ਨਹੀਂ"</string> <string name="reason_unknown" msgid="5507940196503246139">"ਅਗਿਆਤ"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – ਅਣਉਪਲਬਧ"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"ਕੀ <xliff:g id="SERVICE">%1$s</xliff:g> ਵਰਤਣੀ ਹੈ?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"ਤੁਹਾਡਾ ਦਸਤਾਵੇਜ਼ ਪ੍ਰਿੰਟਰ ਵਿੱਚ ਜਾਣ ਲਈ ਇੱਕ ਜਾਂ ਦੋ ਸਰਵਰਾਂ ਵਿੱਚੋਂ ਲੰਘਦਾ ਹੈ।"</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"ਮਾਫ਼ ਕਰਨਾ, ਉਸਨੇ ਲਾਭਕਾਰੀ ਨਹੀਂ ਹੋਇਆ। ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"</string> <string name="print_error_retry" msgid="1426421728784259538">"ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"ਇਹ ਪ੍ਰਿੰਟਰ ਇਸ ਵੇਲੇ ਉਪਲਬਧ ਨਹੀਂ ਹੈ।"</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"ਝਲਕ ਨਹੀਂ ਵਿਖਾਈ ਜਾ ਸਕਦੀ"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"ਪ੍ਰੀਵਿਊ ਦੀ ਤਿਆਰੀ ਕਰ ਰਿਹਾ ਹੈ…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-pl/strings.xml b/packages/PrintSpooler/res/values-pl/strings.xml index 401cbfbb712b..6837edf77996 100644 --- a/packages/PrintSpooler/res/values-pl/strings.xml +++ b/packages/PrintSpooler/res/values-pl/strings.xml @@ -63,24 +63,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Więcej informacji o tej drukarce"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Nie udało się utworzyć pliku"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Niektóre usługi drukowania są wyłączone"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Niektóre usługi drukowania są wyłączone."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Wybierz usługę drukowania"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Szukanie drukarek"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Brak włączonych usług drukowania"</string> <string name="print_no_printers" msgid="4869403323900054866">"Nie znaleziono drukarek"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Nie można dodawać drukarek"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Wybierz, by dodać drukarkę"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Wybierz, by włączyć usługę"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Włączone usługi"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Polecane usługi"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Wyłączone usługi"</string> - <string name="all_services_title" msgid="5578662754874906455">"Wszystkie usługi"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="few">Zainstaluj, by wykryć <xliff:g id="COUNT_1">%1$s</xliff:g> drukarki</item> - <item quantity="many">Zainstaluj, by wykryć <xliff:g id="COUNT_1">%1$s</xliff:g> drukarek</item> - <item quantity="other">Zainstaluj, by wykryć <xliff:g id="COUNT_1">%1$s</xliff:g> drukarki</item> - <item quantity="one">Zainstaluj, by wykryć <xliff:g id="COUNT_0">%1$s</xliff:g> drukarkę</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Drukowanie: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Anulowanie: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Błąd drukarki: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -89,6 +76,7 @@ <string name="restart" msgid="2472034227037808749">"Od nowa"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Brak połączenia z drukarką"</string> <string name="reason_unknown" msgid="5507940196503246139">"brak informacji"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – niedostępne"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Użyć usługi <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Zanim dokument dotrze do drukarki, może przejść przez jeden lub kilka serwerów."</string> <string-array name="color_mode_labels"> @@ -108,6 +96,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"To nie zadziałało. Spróbuj jeszcze raz."</string> <string name="print_error_retry" msgid="1426421728784259538">"Ponów próbę"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Drukarka nie jest teraz dostępna."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Nie można wyświetlić podglądu"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Przygotowuję podgląd…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-pt-rBR/strings.xml b/packages/PrintSpooler/res/values-pt-rBR/strings.xml index ca01ee7dc788..c9713c9e7efb 100644 --- a/packages/PrintSpooler/res/values-pt-rBR/strings.xml +++ b/packages/PrintSpooler/res/values-pt-rBR/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Mais informações sobre essa impressora"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Não foi possível criar o arquivo"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Alguns serviços de impressão estão desativados"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Alguns serviços de impressão estão desativados."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Selecione o serviço de impressão"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Procurando impressoras"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Nenhum serviço de impressão ativado"</string> <string name="print_no_printers" msgid="4869403323900054866">"Nenhuma impressora encontrada"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Não é possível adicionar impressoras"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Selecione para adicionar uma impressora"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Selecione para ativar"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Serviços ativados"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Serviços recomendados"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Serviços desativados"</string> - <string name="all_services_title" msgid="5578662754874906455">"Todos os serviços"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Instale para encontrar <xliff:g id="COUNT_1">%1$s</xliff:g> impressoras</item> - <item quantity="other">Instale para encontrar <xliff:g id="COUNT_1">%1$s</xliff:g> impressoras</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Imprimindo <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Cancelando <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Erro ao imprimir <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Reiniciar"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Sem conexão com a impressora"</string> <string name="reason_unknown" msgid="5507940196503246139">"desconhecido"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – não disponível"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Usar <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Seu documento pode passar por um ou mais servidores até chegar à impressora."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Falhou. Tente novamente."</string> <string name="print_error_retry" msgid="1426421728784259538">"Tentar novamente"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Esta impressora não está disponível no momento."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Não é possível exibir a visualização"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Preparando visualização…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-pt-rPT/strings.xml b/packages/PrintSpooler/res/values-pt-rPT/strings.xml index 09904c030a2c..9fabc0fced5f 100644 --- a/packages/PrintSpooler/res/values-pt-rPT/strings.xml +++ b/packages/PrintSpooler/res/values-pt-rPT/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Mais informações acerca desta impressora"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Não foi possível criar o ficheiro"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Alguns serviços de impressão estão desativados"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Alguns serviços de impressão estão desativados."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Escolher o serviço de impressão"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"A procurar impressoras"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Nenhum serviço de impressão ativado"</string> <string name="print_no_printers" msgid="4869403323900054866">"Nenhuma impressora encontrada"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Não é possível adicionar impressoras"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Selecione para adicionar uma impressora"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Selecione para ativar"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Serviços ativados"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Serviços recomendados"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Serviços desativados"</string> - <string name="all_services_title" msgid="5578662754874906455">"Todos os serviços"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Instale para detetar <xliff:g id="COUNT_1">%1$s</xliff:g> impressoras</item> - <item quantity="one">Instale para detetar <xliff:g id="COUNT_0">%1$s</xliff:g> impressora</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"A imprimir <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"A cancelar <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Erro da impressora <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Reiniciar"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Sem ligação à impressora"</string> <string name="reason_unknown" msgid="5507940196503246139">"desconhecido"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – indisponível"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Pretende utilizar o <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"O seu documento pode passar por um ou mais servidores no respetivo caminho para a impressora."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Lamentamos, mas isso não funcionou. Tente novam."</string> <string name="print_error_retry" msgid="1426421728784259538">"Tentar novamente"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Esta impressora não está atualmente disponível."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Não é possível apresentar a pré-visualização"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"A preparar a pré-visualização..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-pt/strings.xml b/packages/PrintSpooler/res/values-pt/strings.xml index ca01ee7dc788..c9713c9e7efb 100644 --- a/packages/PrintSpooler/res/values-pt/strings.xml +++ b/packages/PrintSpooler/res/values-pt/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Mais informações sobre essa impressora"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Não foi possível criar o arquivo"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Alguns serviços de impressão estão desativados"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Alguns serviços de impressão estão desativados."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Selecione o serviço de impressão"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Procurando impressoras"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Nenhum serviço de impressão ativado"</string> <string name="print_no_printers" msgid="4869403323900054866">"Nenhuma impressora encontrada"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Não é possível adicionar impressoras"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Selecione para adicionar uma impressora"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Selecione para ativar"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Serviços ativados"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Serviços recomendados"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Serviços desativados"</string> - <string name="all_services_title" msgid="5578662754874906455">"Todos os serviços"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Instale para encontrar <xliff:g id="COUNT_1">%1$s</xliff:g> impressoras</item> - <item quantity="other">Instale para encontrar <xliff:g id="COUNT_1">%1$s</xliff:g> impressoras</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Imprimindo <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Cancelando <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Erro ao imprimir <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Reiniciar"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Sem conexão com a impressora"</string> <string name="reason_unknown" msgid="5507940196503246139">"desconhecido"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – não disponível"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Usar <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Seu documento pode passar por um ou mais servidores até chegar à impressora."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Falhou. Tente novamente."</string> <string name="print_error_retry" msgid="1426421728784259538">"Tentar novamente"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Esta impressora não está disponível no momento."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Não é possível exibir a visualização"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Preparando visualização…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-ro/strings.xml b/packages/PrintSpooler/res/values-ro/strings.xml index 37476bc83038..7364eb0dae2c 100644 --- a/packages/PrintSpooler/res/values-ro/strings.xml +++ b/packages/PrintSpooler/res/values-ro/strings.xml @@ -62,23 +62,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Mai multe informații despre această imprimantă"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Fișierul nu a putut fi creat"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Unele servicii de printare sunt dezactivate"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Unele servicii de printare sunt dezactivate."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Alegeți serviciul de printare"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Se caută imprimante"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Niciun serviciu de printare activat"</string> <string name="print_no_printers" msgid="4869403323900054866">"Nu au fost găsite imprimante"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Nu pot fi adăugate imprimante"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Selectați pentru a adăuga o imprimantă"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Selectați pentru a activa"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Servicii activate"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Servicii recomandate"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Servicii dezactivate"</string> - <string name="all_services_title" msgid="5578662754874906455">"Toate serviciile"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="few">Instalați pentru a descoperi <xliff:g id="COUNT_1">%1$s</xliff:g> imprimante</item> - <item quantity="other">Instalați pentru a descoperi <xliff:g id="COUNT_1">%1$s</xliff:g> de imprimante</item> - <item quantity="one">Instalați pentru a descoperi <xliff:g id="COUNT_0">%1$s</xliff:g> imprimantă</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Se printează <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Se anulează <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Eroare de printare: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -87,6 +75,7 @@ <string name="restart" msgid="2472034227037808749">"Reporniți"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Nu există conexiune la o imprimantă"</string> <string name="reason_unknown" msgid="5507940196503246139">"necunoscut"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> - indisponibil"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Folosiți <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Documentul poate trece prin unul sau mai multe servere pe calea spre imprimantă."</string> <string-array name="color_mode_labels"> @@ -106,6 +95,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Ne pare rău, operațiunea nu a reușit. Încercați din nou."</string> <string name="print_error_retry" msgid="1426421728784259538">"Reîncercați"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Această imprimantă nu este disponibilă momentan."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Previzualizarea nu se poate afișa"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Se pregătește previzualizarea..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-ru/strings.xml b/packages/PrintSpooler/res/values-ru/strings.xml index fcb1701b827f..d3d0d3f1f322 100644 --- a/packages/PrintSpooler/res/values-ru/strings.xml +++ b/packages/PrintSpooler/res/values-ru/strings.xml @@ -63,24 +63,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Подробные сведения о принтере"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Не удалось создать файл"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Некоторые службы печати отключены"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Некоторые службы печати отключены."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Выберите службу печати"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Поиск принтеров…"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Службы печати недоступны"</string> <string name="print_no_printers" msgid="4869403323900054866">"Ничего не найдено"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Невозможно добавить принтеры"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Выберите, чтобы добавить принтер"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Выберите, чтобы включить"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Включенные службы"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Рекомендуемые службы"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Отключенные службы"</string> - <string name="all_services_title" msgid="5578662754874906455">"Все службы печати"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Установите, чтобы найти <xliff:g id="COUNT_1">%1$s</xliff:g> принтер</item> - <item quantity="few">Установите, чтобы найти <xliff:g id="COUNT_1">%1$s</xliff:g> принтера</item> - <item quantity="many">Установите, чтобы найти <xliff:g id="COUNT_1">%1$s</xliff:g> принтеров</item> - <item quantity="other">Установите, чтобы найти <xliff:g id="COUNT_1">%1$s</xliff:g> принтера</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Печать задания \"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>\"…"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Отмена задания <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>…"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Ошибка задания \"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>\""</string> @@ -89,6 +76,7 @@ <string name="restart" msgid="2472034227037808749">"Повторить"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Нет связи с принтером"</string> <string name="reason_unknown" msgid="5507940196503246139">"неизвестно"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – недоступен"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Использовать <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Документ может пересылаться на принтер через несколько серверов."</string> <string-array name="color_mode_labels"> @@ -108,6 +96,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Ошибка. Повторите попытку."</string> <string name="print_error_retry" msgid="1426421728784259538">"Повторить"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Принтер не готов."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Сбой предварительного просмотра"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Подготовка изображения…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-si-rLK/strings.xml b/packages/PrintSpooler/res/values-si-rLK/strings.xml index c3597a740f78..610442d25141 100644 --- a/packages/PrintSpooler/res/values-si-rLK/strings.xml +++ b/packages/PrintSpooler/res/values-si-rLK/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"මෙම මුද්රණ යන්ත්රය ගැන තවත් තොරතුරු"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"ගොනුව සෑදීමට නොහැකි විය"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"සමහර මුද්රණ සේවා අබලයි"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"සමහර මුද්රණ සේවා අබලයි."</string> + <string name="choose_print_service" msgid="3740309762324459694">"මුද්රණ සේවාව තෝරන්න"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"මුද්රණ යන්ත්ර සොයමින්"</string> <string name="print_no_print_services" msgid="8561247706423327966">"මුද්රණ සේවා සබල නැත"</string> <string name="print_no_printers" msgid="4869403323900054866">"මුද්රණ යන්ත්ර සොයා නොගැනුණි"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"මුද්රණ යන්ත්ර එක් කළ නොහැකිය"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"මුද්රණ යන්ත්රය එක් කිරීමට තෝරන්න"</string> - <string name="enable_print_service" msgid="3482815747043533842">"සබල කිරීමට තෝරන්න"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"සබල කළ සේවා"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"නිර්දේශිත සේවා"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"අබල කළ සේවා"</string> - <string name="all_services_title" msgid="5578662754874906455">"සියලු සේවා"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">මුද්රණ යන්ත්ර <xliff:g id="COUNT_1">%1$s</xliff:g>ක් සොයා ගැනීමට ස්ථාපනය කරන්න</item> - <item quantity="other">මුද්රණ යන්ත්ර <xliff:g id="COUNT_1">%1$s</xliff:g>ක් සොයා ගැනීමට ස්ථාපනය කරන්න</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> මුද්රණය වේ"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"අවලංගු කෙරේ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"මුද්රණ දෝෂය <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"යළි අරඹන්න"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"මුද්රණ යන්ත්රය වෙත සම්බන්ධය නැත"</string> <string name="reason_unknown" msgid="5507940196503246139">"නොදනී"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – ලද නොහැක"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> භාවිත කරන්නද?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"ඔබගේ ලේඛනය මුද්රණ යන්ත්රයට යන අතරතුර සේවාදායක එකක් හෝ කිහිපයක් හරහා යා හැක."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"කණගාටුයි, එය වැඩ නොකරයි. නැවත උත්සහ කරන්න."</string> <string name="print_error_retry" msgid="1426421728784259538">"නැවත උත්සාහ කරන්න"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"දැන් මෙම මුද්රණ යන්ත්රය නොපවතී."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"පෙරදසුන සංදර්ශනය කළ නොහැකිය"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"පෙරදසුන සූදානම් කරමින්…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-sk/strings.xml b/packages/PrintSpooler/res/values-sk/strings.xml index c82bed713329..603d1d2242f3 100644 --- a/packages/PrintSpooler/res/values-sk/strings.xml +++ b/packages/PrintSpooler/res/values-sk/strings.xml @@ -63,24 +63,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Ďalšie informácie o tejto tlačiarni"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Súbor nie je možné vytvoriť"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Niektoré tlačové služby sú zakázané"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Niektoré tlačové služby sú vypnuté."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Výber tlačovej služby"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Vyhľadávanie tlačiarní"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Žiadne tlačové služby nie sú aktivované"</string> <string name="print_no_printers" msgid="4869403323900054866">"Nenašli sa žiadne tlačiarne"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Nie je možné pridať tlačiarne"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Výber služby na pridanie tlačiarne"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Vyberte a povoľte"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Povolené služby"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Odporúčané služby"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Zakázané služby"</string> - <string name="all_services_title" msgid="5578662754874906455">"Všetky služby"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="few">Nainštalujte a objavte <xliff:g id="COUNT_1">%1$s</xliff:g> tlačiarne</item> - <item quantity="many">Nainštalujte a objavte <xliff:g id="COUNT_1">%1$s</xliff:g> tlačiarne</item> - <item quantity="other">Nainštalujte a objavte <xliff:g id="COUNT_1">%1$s</xliff:g> tlačiarní</item> - <item quantity="one">Nainštalujte a objavte <xliff:g id="COUNT_0">%1$s</xliff:g> tlačiareň</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Prebieha tlač úlohy <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Prebieha zrušenie úlohy <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Chyba tlačiarne – úloha <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -89,6 +76,7 @@ <string name="restart" msgid="2472034227037808749">"Spustiť znova"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Žiadne pripojenie k tlačiarni"</string> <string name="reason_unknown" msgid="5507940196503246139">"neznáme"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – nie je k dispozícii"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Použiť službu <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Skôr ako sa váš dokument dostane do tlačiarne, môže prejsť jedným alebo viacerými servermi."</string> <string-array name="color_mode_labels"> @@ -108,6 +96,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Je nám to ľúto, nefungovalo to. Skúste to znova."</string> <string name="print_error_retry" msgid="1426421728784259538">"Opakovať"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Táto tlačiareň nie je momentálne k dispozícii."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Ukážka sa nedá zobraziť"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Pripravuje sa ukážka..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-sl/strings.xml b/packages/PrintSpooler/res/values-sl/strings.xml index b751fbb88fcd..4a0826944448 100644 --- a/packages/PrintSpooler/res/values-sl/strings.xml +++ b/packages/PrintSpooler/res/values-sl/strings.xml @@ -63,24 +63,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Več informacij o tem tiskalniku"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Datoteke ni bilo mogoče ustvariti"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Nekatere tiskalne storitve so onemogočene"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Nekatere tiskalne storitve so onemogočene."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Izberite tiskalno storitev"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Iskanje tiskalnikov"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Ni omogočenih tiskalnih storitev"</string> <string name="print_no_printers" msgid="4869403323900054866">"Tiskalnikov ni mogoče najti"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Tiskalnikov ni mogoče dodati"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Izberite za dodajanje tiskalnika"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Izberite, če želite omogočiti"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Omogočene storitve"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Priporočene storitve"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Onemogočene storitve"</string> - <string name="all_services_title" msgid="5578662754874906455">"Vse storitve"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Namestite za odkrivanje <xliff:g id="COUNT_1">%1$s</xliff:g> tiskalnika</item> - <item quantity="two">Namestite za odkrivanje <xliff:g id="COUNT_1">%1$s</xliff:g> tiskalnikov</item> - <item quantity="few">Namestite za odkrivanje <xliff:g id="COUNT_1">%1$s</xliff:g> tiskalnikov</item> - <item quantity="other">Namestite za odkrivanje <xliff:g id="COUNT_1">%1$s</xliff:g> tiskalnikov</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Tiskanje: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Preklic: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Napaka tiskalnika: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -89,6 +76,7 @@ <string name="restart" msgid="2472034227037808749">"Začni znova"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Ni povezave s tiskalnikom"</string> <string name="reason_unknown" msgid="5507940196503246139">"neznano"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – ni na voljo"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Želite uporabiti storitev <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Dokument gre lahko na poti do tiskalnika skozi enega ali več strežnikov."</string> <string-array name="color_mode_labels"> @@ -108,6 +96,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"To žal ni delovalo. Poskusite znova."</string> <string name="print_error_retry" msgid="1426421728784259538">"Poskusi znova"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Ta tiskalnik trenutno ni na voljo."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Predogleda ni mogoče prikazati"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Priprava predogleda …"</string> </resources> diff --git a/packages/PrintSpooler/res/values-sq-rAL/strings.xml b/packages/PrintSpooler/res/values-sq-rAL/strings.xml index 9765e11e1fcb..b0902efb7540 100644 --- a/packages/PrintSpooler/res/values-sq-rAL/strings.xml +++ b/packages/PrintSpooler/res/values-sq-rAL/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Më shumë informacione mbi këtë printer"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Skedari nuk mund të krijohej"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Disa shërbime printimi janë çaktivizuar"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Disa shërbime printimi janë çaktivizuar."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Zgjidh shërbimin e printimit"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Po kërkon për printerë"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Nuk ka shërbime printimi të aktivizuara"</string> <string name="print_no_printers" msgid="4869403323900054866">"Nuk u gjet asnjë printer"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Nuk mund të shtohen printerë"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Zgjidh për të shtuar printer"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Zgjidh për të aktivizuar"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Shërbimet e aktivizuara"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Shërbimet e rekomanduara"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Shërbimet e çaktivizuara"</string> - <string name="all_services_title" msgid="5578662754874906455">"Të gjitha shërbimet"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Instaloje për të zbuluar <xliff:g id="COUNT_1">%1$s</xliff:g> printera</item> - <item quantity="one">Instaloje për të zbuluar <xliff:g id="COUNT_0">%1$s</xliff:g> printer</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Po printon <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Po anulon <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Printeri ndeshi në gabim gjatë punës: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Rifillo"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Printeri nuk është i lidhur"</string> <string name="reason_unknown" msgid="5507940196503246139">"e panjohur"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – nuk mundësohet"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Përdor <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Dokumenti mund të kalojë përmes një ose shumë serverëve deri te printeri."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Na vjen keq, nuk funksionoi! Provo përsëri."</string> <string name="print_error_retry" msgid="1426421728784259538">"Provo sërish"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Ky printer nuk mund të përdoret tani."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Nuk mund të shfaqet paraafishimi"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Po përgatit shikimin paraprak…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-sr/strings.xml b/packages/PrintSpooler/res/values-sr/strings.xml index c96fd914786d..feb2940d7da8 100644 --- a/packages/PrintSpooler/res/values-sr/strings.xml +++ b/packages/PrintSpooler/res/values-sr/strings.xml @@ -62,23 +62,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Још информација о овом штампачу"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Прављење датотеке није успело"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Неке услуге штампања су онемогућене"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Неке услуге штампања су онемогућене."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Изаберите услугу штампања"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Претрага штампача"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Ниједна услуга штампања није омогућена"</string> <string name="print_no_printers" msgid="4869403323900054866">"Није пронађен ниједан штампач"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Није могуће додати штампаче"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Изаберите да бисте додали штампач"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Изаберите да бисте омогућили"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Омогућене услуге"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Препоручене услуге"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Онемогућене услуге"</string> - <string name="all_services_title" msgid="5578662754874906455">"Све услуге"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Инсталирајте да бисте открили <xliff:g id="COUNT_1">%1$s</xliff:g> штампач</item> - <item quantity="few">Инсталирајте да бисте открили <xliff:g id="COUNT_1">%1$s</xliff:g> штампача</item> - <item quantity="other">Инсталирајте да бисте открили <xliff:g id="COUNT_1">%1$s</xliff:g> штампача</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Штампа се <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Отказује се <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Грешка штампача <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -87,6 +75,7 @@ <string name="restart" msgid="2472034227037808749">"Поново покрени"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Нема везе са штампачем"</string> <string name="reason_unknown" msgid="5507940196503246139">"непознато"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – недоступан"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Желите ли да користите <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Документ може да прође кроз један или више сервера на путу до штампача."</string> <string-array name="color_mode_labels"> @@ -103,9 +92,8 @@ <item msgid="3199660090246166812">"Водоравно"</item> </string-array> <string name="print_write_error_message" msgid="5787642615179572543">"Уписивање у датотеку није могуће"</string> - <string name="print_error_default_message" msgid="8602678405502922346">"Жао нам је, ово није успело. Пробајте поново."</string> - <string name="print_error_retry" msgid="1426421728784259538">"Пробајте поново"</string> + <string name="print_error_default_message" msgid="8602678405502922346">"Жао нам је, ово није успело. Покушајте поново."</string> + <string name="print_error_retry" msgid="1426421728784259538">"Покушајте поново"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Овај штампач тренутно није доступан."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Није успео приказ прегледа"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Припрема прегледа..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-sv/strings.xml b/packages/PrintSpooler/res/values-sv/strings.xml index eebc9b9908e0..cf398c78fb56 100644 --- a/packages/PrintSpooler/res/values-sv/strings.xml +++ b/packages/PrintSpooler/res/values-sv/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Mer information om den här skrivaren"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Det gick inte att skapa filen"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Några utskriftstjänster har inaktiverats"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Några utskriftstjänster har inaktiverats."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Välj utskriftstjänst"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Söker efter skrivare"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Inga utskriftstjänster har aktiverats"</string> <string name="print_no_printers" msgid="4869403323900054866">"Det gick inte att hitta några skrivare"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Det går inte att lägga till skrivare"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Lägg till en skrivare"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Välj om du vill aktivera"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Aktiverade tjänster"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Rekommenderade tjänster"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Inaktiverade tjänster"</string> - <string name="all_services_title" msgid="5578662754874906455">"Alla tjänster"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Installera och hitta <xliff:g id="COUNT_1">%1$s</xliff:g> skrivare</item> - <item quantity="one">Installera och hitta <xliff:g id="COUNT_0">%1$s</xliff:g> skrivare</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Skriver ut <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Avbryter <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Skrivarfel för <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Starta om"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Ingen anslutning till skrivaren"</string> <string name="reason_unknown" msgid="5507940196503246139">"okänt"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – inte tillgänglig"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Vill du använda <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"På vägen till skrivaren kan dokumentet passera en eller flera servrar."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Det fungerade tyvärr inte. Försök igen."</string> <string name="print_error_retry" msgid="1426421728784259538">"Försök igen"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Den här skrivaren är inte tillgänglig just nu."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Det gick inte att visa förhandsgranskningen"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Förbereder förhandsvisning ..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-sw/strings.xml b/packages/PrintSpooler/res/values-sw/strings.xml index 1944a4b3dc83..7e00b7046423 100644 --- a/packages/PrintSpooler/res/values-sw/strings.xml +++ b/packages/PrintSpooler/res/values-sw/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Maelezo zaidi kuhusu printa hii"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Imeshindwa kuunda faili"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Baadhi ya huduma za uchapishaji haziruhusiwi"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Baadhi ya huduma za uchapishaji zimezimwa."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Chagua huduma ya printa"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Inatafuta printa"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Huduma za kuchapisha hazijawashwa"</string> <string name="print_no_printers" msgid="4869403323900054866">"Hakuna printa zilizopatikana"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Haiwezi kuongeza printa"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Chagua printa ya kuongeza"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Chagua ili uruhusu"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Huduma zinazoruhusiwa"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Huduma zinazopendekezwa"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Huduma ambazo haziruhusiwi"</string> - <string name="all_services_title" msgid="5578662754874906455">"Huduma zote"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Sakinisha ili ugundue printa <xliff:g id="COUNT_1">%1$s</xliff:g></item> - <item quantity="one">Sakinisha ili ugundue printa <xliff:g id="COUNT_0">%1$s</xliff:g></item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Inachapisha <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Inaghairi <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Hitilafu ya kuchapisha <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Anzisha upya"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Hakuna muunganisho kwa printa"</string> <string name="reason_unknown" msgid="5507940196503246139">"haijulikani"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> - haipatikani"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Ungependa kutumia <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Huenda hati yako ikapitia seva moja au zaidi kabla ya kufika kwenye printa."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Samahani, hiyo haikufanya kazi. Jaribu tena."</string> <string name="print_error_retry" msgid="1426421728784259538">"Jaribu tena"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Printa hii haipatikani kwa sasa."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Haiwezi kupakia onyesho la kuchungulia"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Inaandaa onyesho la kuchungulia..."</string> </resources> diff --git a/packages/PrintSpooler/res/values-ta-rIN/strings.xml b/packages/PrintSpooler/res/values-ta-rIN/strings.xml index 65198e8cf814..ae0b774a5911 100644 --- a/packages/PrintSpooler/res/values-ta-rIN/strings.xml +++ b/packages/PrintSpooler/res/values-ta-rIN/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"இந்தப் பிரிண்டர் பற்றிய கூடுதல் தகவல்"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"கோப்பை உருவாக்க முடியவில்லை"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"சில அச்சுப் பொறிகள் முடக்கப்பட்டன"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"சில அச்சுப் பொறிகள் முடக்கப்பட்டன."</string> + <string name="choose_print_service" msgid="3740309762324459694">"அச்சுப் பொறியைத் தேர்வுசெய்யவும்"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"அச்சுப்பொறிகளைத் தேடுகிறது"</string> <string name="print_no_print_services" msgid="8561247706423327966">"அச்சுப் பொறிகள் இல்லை"</string> <string name="print_no_printers" msgid="4869403323900054866">"பிரிண்டர்கள் எதுவுமில்லை"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"பிரிண்டர்களைச் சேர்க்க முடியவில்லை"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"பிரிண்டரைச் சேர்க்க, தேர்ந்தெடுக்கவும்"</string> - <string name="enable_print_service" msgid="3482815747043533842">"இயக்குவதற்குத் தேர்ந்தெடுக்கவும்"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"இயக்கப்பட்ட அச்சுப் பொறிகள்"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"பரிந்துரைக்கப்படும் அச்சுப் பொறிகள்"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"முடக்கப்பட்ட அச்சுப் பொறிகள்"</string> - <string name="all_services_title" msgid="5578662754874906455">"எல்லா அச்சுப் பொறிகளும்"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> பிரிண்டர்களைக் கண்டறிய, நிறுவவும்</item> - <item quantity="one"><xliff:g id="COUNT_0">%1$s</xliff:g> பிரிண்டரைக் கண்டறிய, நிறுவவும்</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> ஐ அச்சிடுகிறது"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> ஐ ரத்துசெய்கிறது"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"பிரிண்டர் பிழை <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"மீண்டும் தொடங்கு"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"அச்சுப்பொறியுடன் இணைக்கப்படவில்லை"</string> <string name="reason_unknown" msgid="5507940196503246139">"அறியப்படாதது"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – இல்லை"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g>ஐப் பயன்படுத்தவா?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"உங்கள் ஆவணம் பிரிண்டருக்குச் செல்லும் வழியில் ஒன்று அல்லது அதற்கு மேற்பட்ட சேவையகங்களைக் கடந்து செல்லக்கூடும்."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"செயல்படவில்லை. மீண்டும் முயலவும்."</string> <string name="print_error_retry" msgid="1426421728784259538">"மீண்டும் முயலவும்"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"இப்போது பிரிண்டர் இல்லை."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"மாதிரிக்காட்சியைக் காட்ட முடியவில்லை"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"மாதிரிக்காட்சியைத் தயார்படுத்துகிறது…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-te-rIN/strings.xml b/packages/PrintSpooler/res/values-te-rIN/strings.xml index ddc48fcc17a3..5fd8d60ba573 100644 --- a/packages/PrintSpooler/res/values-te-rIN/strings.xml +++ b/packages/PrintSpooler/res/values-te-rIN/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"ఈ ప్రింటర్ గురించి మరింత సమాచారం"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"ఫైల్ను సృష్టించలేకపోయాము"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"కొన్ని ముద్రణ సేవలు నిలిపివేయబడ్డాయి"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"కొన్ని ముద్రణ సేవలు నిలిపివేయబడ్డాయి."</string> + <string name="choose_print_service" msgid="3740309762324459694">"ముద్రణ సేవను ఎంచుకోండి"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"ప్రింటర్ల కోసం శోధిస్తోంది"</string> <string name="print_no_print_services" msgid="8561247706423327966">"ముద్రణ సేవలు ఏవీ ప్రారంభించలేదు"</string> <string name="print_no_printers" msgid="4869403323900054866">"ప్రింటర్లు కనుగొనబడలేదు"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"ప్రింటర్లను జోడించడం సాధ్యపడలేదు"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"ప్రింటర్ను జోడించడానికి ఎంచుకోండి"</string> - <string name="enable_print_service" msgid="3482815747043533842">"ప్రారంభించడానికి ఎంచుకోండి"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"ప్రారంభించిన సేవలు"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"సిఫార్సు చేయబడిన సేవలు"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"నిలిపివేసిన సేవలు"</string> - <string name="all_services_title" msgid="5578662754874906455">"అన్ని సేవలు"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> ప్రింటర్లను కనుగొనడానికి ఇన్స్టాల్ చేయండి</item> - <item quantity="one"><xliff:g id="COUNT_0">%1$s</xliff:g> ప్రింటర్ను కనుగొనడానికి ఇన్స్టాల్ చేయండి</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>ను ముద్రిస్తోంది"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>ను రద్దు చేస్తోంది"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"ప్రింటర్ లోపం <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"పునఃప్రారంభించు"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"ప్రింటర్కు కనెక్షన్ లేదు"</string> <string name="reason_unknown" msgid="5507940196503246139">"తెలియదు"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – అందుబాటులో లేదు"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g>ని ఉపయోగించాలా?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"మీ పత్రం ప్రింటర్కు వెళ్లే మార్గంలో ఒకటి లేదా అంతకంటే ఎక్కువ సర్వర్ల గుండా వెళ్లవచ్చు."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"క్షమించండి, అది పని చేయలేదు. మళ్లీ ప్రయత్నించండి."</string> <string name="print_error_retry" msgid="1426421728784259538">"మళ్లీ ప్రయత్నించు"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"ఈ ప్రింటర్ ప్రస్తుతం అందుబాటులో లేదు."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"పరిదృశ్యాన్ని ప్రదర్శించడం సాధ్యపడలేదు"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"పరిదృశ్యం సిద్ధమవుతోంది…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-th/strings.xml b/packages/PrintSpooler/res/values-th/strings.xml index 3faa96fbca60..ebd5e2a9c7a8 100644 --- a/packages/PrintSpooler/res/values-th/strings.xml +++ b/packages/PrintSpooler/res/values-th/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"ข้อมูลเพิ่มเติมเกี่ยวกับเครื่องพิมพ์นี้"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"ไม่สามารถสร้างไฟล์ได้"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"บริการพิมพ์บางอย่างปิดใช้อยู่"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"บริการพิมพ์บางอย่างถูกปิดใช้"</string> + <string name="choose_print_service" msgid="3740309762324459694">"เลือกบริการพิมพ์"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"กำลังค้นหาเครื่องพิมพ์"</string> <string name="print_no_print_services" msgid="8561247706423327966">"ไม่ได้เปิดใช้บริการพิมพ์"</string> <string name="print_no_printers" msgid="4869403323900054866">"ไม่พบเครื่องพิมพ์"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"เพิ่มเครื่องพิมพ์ไม่ได้"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"เลือกเพื่อเพิ่มเครื่องพิมพ์"</string> - <string name="enable_print_service" msgid="3482815747043533842">"เลือกเพื่อเปิดใช้"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"บริการที่เปิดใช้"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"บริการที่แนะนำ"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"บริการที่ปิดใช้"</string> - <string name="all_services_title" msgid="5578662754874906455">"บริการทั้งหมด"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">ติดตั้งเพื่อค้นหาเครื่องพิมพ์ <xliff:g id="COUNT_1">%1$s</xliff:g> เครื่อง</item> - <item quantity="one">ติดตั้งเพื่อค้นหาเครื่องพิมพ์ <xliff:g id="COUNT_0">%1$s</xliff:g> เครื่อง</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"กำลังพิมพ์ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"กำลังยกเลิก <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"ข้อผิดพลาดเครื่องพิมพ์ <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"เริ่มต้นใหม่"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"ไม่มีการเชื่อมต่อไปยังเครื่องพิมพ์"</string> <string name="reason_unknown" msgid="5507940196503246139">"ไม่ทราบ"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> ไม่พร้อมใช้งาน"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"ใช้ <xliff:g id="SERVICE">%1$s</xliff:g> ไหม"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"เอกสารของคุณอาจต้องผ่านมากกว่าหนึ่งเซิร์ฟเวอร์ระหว่างส่งไปยังเครื่องพิมพ์"</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"ขออภัย ไม่สามารถใช้งานได้ ลองอีกครั้ง"</string> <string name="print_error_retry" msgid="1426421728784259538">"ลองอีกครั้ง"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"เครื่องพิมพ์นี้ไม่พร้อมใช้งานในขณะนี้"</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"ไม่สามารถแสดงตัวอย่าง"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"กำลังเตรียมการแสดงตัวอย่าง…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-tl/strings.xml b/packages/PrintSpooler/res/values-tl/strings.xml index 3f8cae17bd3b..ebe869bc0ab2 100644 --- a/packages/PrintSpooler/res/values-tl/strings.xml +++ b/packages/PrintSpooler/res/values-tl/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Higit pang impormasyon tungkol sa printer na ito"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Hindi makagawa ng file"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Naka-disable ang ilang serbisyo sa pag-print"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Naka-disable ang ilang serbisyo sa pag-print."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Pumili ng serbisyo ng pag-print"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Naghahanap ng mga printer"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Walang mga naka-enable na serbisyo sa pag-print"</string> <string name="print_no_printers" msgid="4869403323900054866">"Walang mga printer na nakita"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Hindi makapagdagdag ng mga printer"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Piliin upang magdagdag ng printer"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Piliin upang i-enable"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Mga naka-enable na serbisyo"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Mga inirerekomendang serbisyo"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Mga naka-disable na serbisyo"</string> - <string name="all_services_title" msgid="5578662754874906455">"Lahat ng serbisyo"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">I-install upang tumuklas ng <xliff:g id="COUNT_1">%1$s</xliff:g> printer</item> - <item quantity="other">I-install upang tumuklas ng <xliff:g id="COUNT_1">%1$s</xliff:g> na printer</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Pini-print ang <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Kinakansela ang <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Error sa printer <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"I-restart"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Hindi nakakonekta sa printer"</string> <string name="reason_unknown" msgid="5507940196503246139">"hindi alam"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – hindi available"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Gusto mo bang gamitin ang <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Bago ma-print ang iyong dokumento, maaari itong dumaan sa isa o higit pang mga server."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Paumanhin, hindi iyon gumana. Subukang muli."</string> <string name="print_error_retry" msgid="1426421728784259538">"Subukang muli"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Hindi available ang printer na ito sa ngayon."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Hindi maipakita ang preview"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Inihahanda ang preview…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-tr/strings.xml b/packages/PrintSpooler/res/values-tr/strings.xml index 7fc84e191d51..9cd42abd42bf 100644 --- a/packages/PrintSpooler/res/values-tr/strings.xml +++ b/packages/PrintSpooler/res/values-tr/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Bu yazıcıyla ilgili daha fazla bilgi"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Dosya oluşturulamadı"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Bazı yazdırma hizmetleri devre dışı bırakıldı"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Bazı yazdırma hizmetleri devre dışı."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Yazdırma hizmetini seçin"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Yazıcılar aranıyor"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Etkin yazıcı hizmeti yok"</string> <string name="print_no_printers" msgid="4869403323900054866">"Yazıcı bulunamadı"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Yazıcı eklenemiyor"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Yazıcı eklemek için seçin"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Etkinleştirmek için seçin"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Etkin hizmetler"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Önerilen hizmetler"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Devre dışı bırakılmış hizmetler"</string> - <string name="all_services_title" msgid="5578662754874906455">"Tüm hizmetler"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> yazıcıyı keşfetmek için yükleyin</item> - <item quantity="one"><xliff:g id="COUNT_0">%1$s</xliff:g> yazıcıyı keşfetmek için yükleyin</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> yazdırılıyor"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> iptal ediliyor"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Yazıcı hatası: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Yeniden başlat"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Yazıcı bağlantısı yok"</string> <string name="reason_unknown" msgid="5507940196503246139">"bilinmiyor"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – kullanılamıyor"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> kullanılsın mı?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Dokümanınız yazıcıya giderken bir veya daha fazla sunucudan geçebilir."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Maalesef bu işe yaramadı. Tekrar deneyin."</string> <string name="print_error_retry" msgid="1426421728784259538">"Yeniden dene"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Bu yazı şu anda kullanılamıyor."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Önizleme gösterilemiyor"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Önizleme hazırlanıyor…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-uk/strings.xml b/packages/PrintSpooler/res/values-uk/strings.xml index 14cc794040df..1082147d3b6d 100644 --- a/packages/PrintSpooler/res/values-uk/strings.xml +++ b/packages/PrintSpooler/res/values-uk/strings.xml @@ -63,24 +63,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Докладніше про цей принтер"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Не вдалося створити файл"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Деякі служби друку вимкнено"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Деякі служби друку вимкнено."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Вибрати службу друку"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Пошук принтерів"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Немає служб друку"</string> <string name="print_no_printers" msgid="4869403323900054866">"Принтери не знайдено"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Не можна додати принтери"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Виберіть, щоб додати принтер"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Виберіть, щоб увімкнути"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Увімкнені служби"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Рекомендовані служби"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Вимкнені служби"</string> - <string name="all_services_title" msgid="5578662754874906455">"Усі служби"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Установіть, щоб знайти <xliff:g id="COUNT_1">%1$s</xliff:g> принтер</item> - <item quantity="few">Установіть, щоб знайти <xliff:g id="COUNT_1">%1$s</xliff:g> принтери</item> - <item quantity="many">Установіть, щоб знайти <xliff:g id="COUNT_1">%1$s</xliff:g> принтерів</item> - <item quantity="other">Установіть, щоб знайти <xliff:g id="COUNT_1">%1$s</xliff:g> принтера</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Завдання \"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>\" друкується"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Завдання \"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>\" скасовується"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Помилка завдання \"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>\""</string> @@ -89,6 +76,7 @@ <string name="restart" msgid="2472034227037808749">"Перезапустити"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Немає з’єднання з принтером"</string> <string name="reason_unknown" msgid="5507940196503246139">"невідомо"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"Завдання \"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>\" не доступне"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Увімкнути службу <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Коли ви надсилаєте документ на принтер, він може проходити через декілька серверів."</string> <string-array name="color_mode_labels"> @@ -108,6 +96,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"На жаль, сталася помилка. Повторіть спробу."</string> <string name="print_error_retry" msgid="1426421728784259538">"Повторити"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Цей принтер зараз недоступний."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Не вдалося відкрити попередній перегляд"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Підготовка до попереднього перегляду…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-ur-rPK/strings.xml b/packages/PrintSpooler/res/values-ur-rPK/strings.xml index bba766a2a4fa..56f1093ba71e 100644 --- a/packages/PrintSpooler/res/values-ur-rPK/strings.xml +++ b/packages/PrintSpooler/res/values-ur-rPK/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"اس پرنٹر کے بارے میں مزید معلومات"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"فائل تخلیق نہیں ہو سکی"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"پرنٹ کی کچھ سروسز غیر فعال ہیں"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"پرنٹ کی کچھ سروسز غیر فعال ہیں۔"</string> + <string name="choose_print_service" msgid="3740309762324459694">"پرنٹ سروس منتخب کریں"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"پرنٹرز تلاش کر رہا ہے"</string> <string name="print_no_print_services" msgid="8561247706423327966">"کوئی پرنٹ سروس فعال نہیں"</string> <string name="print_no_printers" msgid="4869403323900054866">"کوئی پرنٹرز نہيں ملے"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"پرنٹرز شامل نہیں ہو سکتے"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"پرنٹر شامل کرنے کیلئے منتخب کریں"</string> - <string name="enable_print_service" msgid="3482815747043533842">"فعال کرنے کیلئے منتخب کریں"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"فعال کردہ سروسز"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"تجویز کردہ سروسز"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"غیر فعال کردہ سروسز"</string> - <string name="all_services_title" msgid="5578662754874906455">"تمام سروسز"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> پرنٹرز دریافت کرنے کیلئے انسٹال کریں</item> - <item quantity="one"><xliff:g id="COUNT_0">%1$s</xliff:g> پرنٹر دریافت کرنے کیلئے انسٹال کریں</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> پرنٹ کررہا ہے"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> کو منسوخ کر رہا ہے"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"پرنٹر کی خرابی <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"دوبارہ شروع کریں"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"پرنٹر کے ساتھ کوئی کنکشن نہیں ہے"</string> <string name="reason_unknown" msgid="5507940196503246139">"نامعلوم"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – دستیاب نہیں ہے"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> استعمال کریں؟"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"آپ کی دستاویز پرنٹر تک جاتے ہوئے ممکن ہے ایک یا زیادہ سرورز سے گزرے۔"</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"معذرت، اس نے کام نہیں کیا۔ دوبارہ کوشش کریں۔"</string> <string name="print_error_retry" msgid="1426421728784259538">"دوبارہ کوشش کریں"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"یہ پرنٹر ابھی دستیاب نہیں ہے۔"</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"پیش منظر ڈسپلے نہیں ہو سکتا"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"پیش منظر کو تیار کیا جا رہا ہے…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-uz-rUZ/strings.xml b/packages/PrintSpooler/res/values-uz-rUZ/strings.xml index 93fd586359dc..30b218e420d1 100644 --- a/packages/PrintSpooler/res/values-uz-rUZ/strings.xml +++ b/packages/PrintSpooler/res/values-uz-rUZ/strings.xml @@ -17,7 +17,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="app_label" msgid="4469836075319831821">"Chop qilishni nazorat qilish"</string> - <string name="more_options_button" msgid="2243228396432556771">"Yana"</string> + <string name="more_options_button" msgid="2243228396432556771">"Ko‘proq"</string> <string name="label_destination" msgid="9132510997381599275">"Mo‘ljal"</string> <string name="label_copies" msgid="3634531042822968308">"Nusxalar"</string> <string name="label_copies_summary" msgid="3861966063536529540">"Nusxalari soni:"</string> @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> – <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Printer haqida batafsil ma’lumot"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Faylni yaratib bo‘lmadi"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Ayrim chop etish xizmatlari o‘chirib qo‘yilgan"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Bir qancha chop etish xizmatlari o‘chirilgan."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Chop etish xizmatini tanlang"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Printerlar qidirilmoqda"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Hech qaysi chop etish xizmati yoqilmagan"</string> <string name="print_no_printers" msgid="4869403323900054866">"Printerlar topilmadi"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Printerlarni qo‘shib bo‘lmaydi"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Printer qo‘shish uchun tanlang"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Yoqish uchun tanlang"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Yoqilgan xizmatlar"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Tavsiya etilgan xizmatlar"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"O‘chirib qo‘yilgan xizmatlar"</string> - <string name="all_services_title" msgid="5578662754874906455">"Barcha xizmatlar"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other"><xliff:g id="COUNT_1">%1$s</xliff:g> ta printerni topish uchun o‘rnating</item> - <item quantity="one"><xliff:g id="COUNT_0">%1$s</xliff:g> ta printerni topish uchun o‘rnating</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Chop etilmoqda: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> bekor qilinmoqda"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Printerda xatolik: <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Qayta boshlash"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Printer ulanmagan"</string> <string name="reason_unknown" msgid="5507940196503246139">"noma’lum"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – mavjud emas"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"<xliff:g id="SERVICE">%1$s</xliff:g> xizmatidan foydalanilsinmi?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Hujjatingiz chop etilishidan oldin bir yoki bir necha serverlardan o‘tishi mumkin."</string> <string-array name="color_mode_labels"> @@ -97,13 +87,12 @@ <item msgid="79513688117503758">"Qisqa tomoni"</item> </string-array> <string-array name="orientation_labels"> - <item msgid="4061931020926489228">"Tik holat"</item> + <item msgid="4061931020926489228">"Bo‘yiga"</item> <item msgid="3199660090246166812">"Eniga"</item> </string-array> <string name="print_write_error_message" msgid="5787642615179572543">"Faylga yozib bo‘lmadi"</string> <string name="print_error_default_message" msgid="8602678405502922346">"Kechirasiz, ishlamadi. Qayta urinib ko‘ring."</string> <string name="print_error_retry" msgid="1426421728784259538">"Qayta urinish"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Ushbu printer hozirda mavjud emas."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Oldindan ko‘rsatib bo‘lmaydi"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Dastlabki ko\'rishga tayyorlanmoqda…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-vi/strings.xml b/packages/PrintSpooler/res/values-vi/strings.xml index 5baaa3b5a18a..32aaf6396de1 100644 --- a/packages/PrintSpooler/res/values-vi/strings.xml +++ b/packages/PrintSpooler/res/values-vi/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Thông tin khác về máy in này"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Không thể tạo tệp"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Một số dịch vụ in đã bị tắt"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Một số dịch vụ in bị vô hiệu hóa."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Chọn dịch vụ in"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Đang tìm kiếm máy in"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Chưa kích hoạt dịch vụ in nào"</string> <string name="print_no_printers" msgid="4869403323900054866">"Không tìm thấy máy in"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Không thể thêm máy in"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Chọn để thêm máy in"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Chọn để bật"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Dịch vụ đã bật"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Dịch vụ được đề xuất"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Dịch vụ đã tắt"</string> - <string name="all_services_title" msgid="5578662754874906455">"Tất cả dịch vụ"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">Cài đặt để phát hiện <xliff:g id="COUNT_1">%1$s</xliff:g> máy in</item> - <item quantity="one">Cài đặt để phát hiện <xliff:g id="COUNT_0">%1$s</xliff:g> máy in</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"In <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Hủy <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Lỗi máy in <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Bắt đầu lại"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Không có kết nối nào với máy in"</string> <string name="reason_unknown" msgid="5507940196503246139">"không xác định"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – không khả dụng"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Sử dụng <xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Tài liệu của bạn có thể đi qua một hoặc nhiều máy chủ trên đường đến máy in."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Rất tiếc, tính năng đó không hoạt động. Hãy thử lại."</string> <string name="print_error_retry" msgid="1426421728784259538">"Thử lại"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Máy in này hiện không khả dụng."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Không thể hiển thị bản xem trước"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Đang chuẩn bị xem trước…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-zh-rCN/strings.xml b/packages/PrintSpooler/res/values-zh-rCN/strings.xml index d4e796339bc9..42cf3b14bf47 100644 --- a/packages/PrintSpooler/res/values-zh-rCN/strings.xml +++ b/packages/PrintSpooler/res/values-zh-rCN/strings.xml @@ -60,23 +60,12 @@ <item quantity="one">找到 <xliff:g id="COUNT_0">%1$s</xliff:g> 台打印机</item> </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> - <string name="printer_info_desc" msgid="7181988788991581654">"此打印机的详细信息"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"无法创建文件"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"部分打印服务已停用"</string> + <string name="printer_info_desc" msgid="7181988788991581654">"关于此打印机的更多信息"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"部分打印服务已停用。"</string> + <string name="choose_print_service" msgid="3740309762324459694">"选择打印服务"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"正在搜索打印机"</string> <string name="print_no_print_services" msgid="8561247706423327966">"未启用任何打印服务"</string> <string name="print_no_printers" msgid="4869403323900054866">"找不到打印机"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"无法添加打印机"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"选择即可添加打印机"</string> - <string name="enable_print_service" msgid="3482815747043533842">"选择即可启用"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"已启用的服务"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"推荐的服务"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"已停用的服务"</string> - <string name="all_services_title" msgid="5578662754874906455">"所有服务"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">安装即可找到 <xliff:g id="COUNT_1">%1$s</xliff:g> 台打印机</item> - <item quantity="one">安装即可找到 <xliff:g id="COUNT_0">%1$s</xliff:g> 台打印机</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"正在打印“<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>”"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"正在取消打印“<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>”"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"打印机在打印“<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>”时出错"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"重新开始"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"未与打印机建立连接"</string> <string name="reason_unknown" msgid="5507940196503246139">"未知"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> - 无法使用"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"要使用<xliff:g id="SERVICE">%1$s</xliff:g>吗?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"您的文档可能会通过一个或多个服务器发送至打印机。"</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"抱歉,操作失败。请重试。"</string> <string name="print_error_retry" msgid="1426421728784259538">"重试"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"该打印机目前无法使用。"</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"无法显示预览"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"即将显示预览…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-zh-rHK/strings.xml b/packages/PrintSpooler/res/values-zh-rHK/strings.xml index 672ec2e0057c..0a458ada1fcf 100644 --- a/packages/PrintSpooler/res/values-zh-rHK/strings.xml +++ b/packages/PrintSpooler/res/values-zh-rHK/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"此打印機詳情"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"無法建立檔案"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"部分列印服務已停用"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"已停用部分列印服務。"</string> + <string name="choose_print_service" msgid="3740309762324459694">"選擇列印服務"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"正在搜尋打印機"</string> <string name="print_no_print_services" msgid="8561247706423327966">"沒有已啟用的列印服務"</string> <string name="print_no_printers" msgid="4869403323900054866">"找不到打印機"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"無法新增印表機"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"選擇即可新增印表機"</string> - <string name="enable_print_service" msgid="3482815747043533842">"選取即可啟用"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"已啟用的服務"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"推薦服務"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"已停用的服務"</string> - <string name="all_services_title" msgid="5578662754874906455">"所有服務"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">安裝即可使用 <xliff:g id="COUNT_1">%1$s</xliff:g> 部印表機</item> - <item quantity="one">安裝即可使用 <xliff:g id="COUNT_0">%1$s</xliff:g> 部印表機</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"正在列印 <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"正在取消 <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"打印機錯誤:<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"重新開始"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"尚未與打印機連線"</string> <string name="reason_unknown" msgid="5507940196503246139">"不明"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – 無法使用"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"要使用 <xliff:g id="SERVICE">%1$s</xliff:g> 嗎?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"您的文件可能會通過一部或多部伺服器才傳送至打印機。"</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"很抱歉,行不通。請再試一次。"</string> <string name="print_error_retry" msgid="1426421728784259538">"重試"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"這部打印機目前無法使用。"</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"無法顯示預覽"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"正在準備預覽…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-zh-rTW/strings.xml b/packages/PrintSpooler/res/values-zh-rTW/strings.xml index 834103677f6f..7a30011ac02b 100644 --- a/packages/PrintSpooler/res/values-zh-rTW/strings.xml +++ b/packages/PrintSpooler/res/values-zh-rTW/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"查看這台印表機的詳細資訊"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"無法建立檔案"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"已停用部分列印服務"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"部分列印服務已停用。"</string> + <string name="choose_print_service" msgid="3740309762324459694">"選擇列印服務"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"正在搜尋印表機"</string> <string name="print_no_print_services" msgid="8561247706423327966">"未啟用任何列印服務"</string> <string name="print_no_printers" msgid="4869403323900054866">"找不到印表機"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"無法新增印表機"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"選取即可新增印表機"</string> - <string name="enable_print_service" msgid="3482815747043533842">"選取即可啟用"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"已啟用的列印服務"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"建議的列印服務"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"已停用的列印服務"</string> - <string name="all_services_title" msgid="5578662754874906455">"所有列印服務"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="other">安裝即可使用 <xliff:g id="COUNT_1">%1$s</xliff:g> 個印表機</item> - <item quantity="one">安裝即可使用 <xliff:g id="COUNT_0">%1$s</xliff:g> 個印表機</item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"正在列印 <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"正在取消 <xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"印表機發生錯誤:<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"重新開始"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"尚未與印表機建立連線"</string> <string name="reason_unknown" msgid="5507940196503246139">"不明"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – 無法使用"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"要使用「<xliff:g id="SERVICE">%1$s</xliff:g>」嗎?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"您的文件可能會透過一或多個伺服器輾轉傳送至印表機。"</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"很抱歉,無法執行這項操作。請再試一次。"</string> <string name="print_error_retry" msgid="1426421728784259538">"重試"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"這台印表機目前無法使用。"</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"無法顯示預覽畫面"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"正在準備預覽…"</string> </resources> diff --git a/packages/PrintSpooler/res/values-zu/strings.xml b/packages/PrintSpooler/res/values-zu/strings.xml index b14c9be6e228..f57b58c87609 100644 --- a/packages/PrintSpooler/res/values-zu/strings.xml +++ b/packages/PrintSpooler/res/values-zu/strings.xml @@ -61,22 +61,11 @@ </plurals> <string name="printer_extended_description_template" msgid="1366699227703381874">"<xliff:g id="PRINT_SERVICE_LABEL">%1$s</xliff:g> - <xliff:g id="PRINTER_DESCRIPTION">%2$s</xliff:g>"</string> <string name="printer_info_desc" msgid="7181988788991581654">"Olunye ulwazi mayelana nale phrinta"</string> - <string name="could_not_create_file" msgid="3425025039427448443">"Ayikwazanga ukufala ifayela"</string> - <string name="print_services_disabled_toast" msgid="9089060734685174685">"Amanye amasevisi okuphrinta akhutshaziwe"</string> + <string name="print_services_disabled_toast" msgid="1205302482388937547">"Amanye amasevisi wokuphrinta akhutshaziwe."</string> + <string name="choose_print_service" msgid="3740309762324459694">"Khetha isevisi yephrinta"</string> <string name="print_searching_for_printers" msgid="6550424555079932867">"Isesha amaphrinta"</string> <string name="print_no_print_services" msgid="8561247706423327966">"Amasevisi ephrinta akavuliwe."</string> <string name="print_no_printers" msgid="4869403323900054866">"Awekho amaphrinta atholiwe"</string> - <string name="cannot_add_printer" msgid="7840348733668023106">"Ayikwazi ukungeza amaphrinta"</string> - <string name="select_to_add_printers" msgid="3800709038689830974">"Khetha ukuze ungeze iphrinta"</string> - <string name="enable_print_service" msgid="3482815747043533842">"Khetha ukuze unike amandla"</string> - <string name="enabled_services_title" msgid="7036986099096582296">"Amasevisi anikwe amandla"</string> - <string name="recommended_services_title" msgid="3799434882937956924">"Amasevisi anconyiwe"</string> - <string name="disabled_services_title" msgid="7313253167968363211">"Amasevisi akhutshaziwe"</string> - <string name="all_services_title" msgid="5578662754874906455">"Onke amasevisi"</string> - <plurals name="print_services_recommendation_subtitle" formatted="false" msgid="5678487708807185138"> - <item quantity="one">Faka ukuze uthole amaphrinta we-<xliff:g id="COUNT_1">%1$s</xliff:g></item> - <item quantity="other">Faka ukuze uthole amaphrinta we-<xliff:g id="COUNT_1">%1$s</xliff:g></item> - </plurals> <string name="printing_notification_title_template" msgid="295903957762447362">"Iphrinta i-<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="cancelling_notification_title_template" msgid="1821759594704703197">"Ikhansela i-<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> <string name="failed_notification_title_template" msgid="2256217208186530973">"Iphutha lephrinta ye-<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g>"</string> @@ -85,6 +74,7 @@ <string name="restart" msgid="2472034227037808749">"Qala kabusha"</string> <string name="no_connection_to_printer" msgid="2159246915977282728">"Akukho ukuxhumana kuphrinta"</string> <string name="reason_unknown" msgid="5507940196503246139">"akwaziwa"</string> + <string name="printer_unavailable" msgid="2434170617003315690">"I-<xliff:g id="PRINT_JOB_NAME">%1$s</xliff:g> – ayitholakali"</string> <string name="print_service_security_warning_title" msgid="2160752291246775320">"Sebenzisa i-<xliff:g id="SERVICE">%1$s</xliff:g>?"</string> <string name="print_service_security_warning_summary" msgid="1427434625361692006">"Idokhumenti yakho ingase idlule iseva eyodwa noma amaningi lapho iya kuphrinta."</string> <string-array name="color_mode_labels"> @@ -104,6 +94,5 @@ <string name="print_error_default_message" msgid="8602678405502922346">"Uxolo, lokho akusebenzanga. Zama futhi."</string> <string name="print_error_retry" msgid="1426421728784259538">"Zama futhi"</string> <string name="print_error_printer_unavailable" msgid="8985614415253203381">"Le phrinta ayitholakali khona manje."</string> - <string name="print_cannot_load_page" msgid="6179560924492912009">"Ayikwazi ukubonisa ukubuka kuqala"</string> <string name="print_preparing_preview" msgid="3939930735671364712">"Ilungiselela ukubuka kuqala…"</string> </resources> diff --git a/packages/SettingsLib/res/values/config.xml b/packages/SettingsLib/res/values/config.xml index e2e721c5ae6b..0aa76a024d5b 100755 --- a/packages/SettingsLib/res/values/config.xml +++ b/packages/SettingsLib/res/values/config.xml @@ -23,8 +23,8 @@ <!-- Default data warning level in mb --> <integer name="default_data_warning_level_mb">2048</integer> - <!-- Whether to send a custom package name with the PSD. translatable="false"--> - <bool name="config_sendPackageName">true</bool> + <!-- Whether to send a custom package name with the PSD.--> + <bool name="config_sendPackageName">false</bool> <!-- Name for the set of keys associating package names --> <string name="config_helpPackageNameKey" translatable="false"></string> diff --git a/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java b/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java index 3a16a75f26db..6bc1d129b35d 100644 --- a/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java +++ b/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java @@ -373,7 +373,11 @@ public class AccessPoint implements Comparable<AccessPoint> { } public DetailedState getDetailedState() { - return mNetworkInfo != null ? mNetworkInfo.getDetailedState() : null; + if (mNetworkInfo != null) { + return mNetworkInfo.getDetailedState(); + } + Log.w(TAG, "NetworkInfo is null, cannot return detailed state"); + return null; } public String getSavedNetworkSummary() { @@ -813,7 +817,10 @@ public class AccessPoint implements Comparable<AccessPoint> { return context.getString(R.string.wifi_connected_no_internet); } } - + if (state == null) { + Log.w(TAG, "state is null, returning empty summary"); + return ""; + } String[] formats = context.getResources().getStringArray((ssid == null) ? R.array.wifi_status : R.array.wifi_status_with_ssid); int index = state.ordinal(); diff --git a/packages/SettingsProvider/res/values/defaults.xml b/packages/SettingsProvider/res/values/defaults.xml index 08bf3a7f9f95..a536874b750b 100644 --- a/packages/SettingsProvider/res/values/defaults.xml +++ b/packages/SettingsProvider/res/values/defaults.xml @@ -69,6 +69,7 @@ <integer name="def_power_sounds_enabled">1</integer> <string name="def_low_battery_sound" translatable="false">/system/media/audio/ui/LowBattery.ogg</string> <integer name="def_dock_sounds_enabled">0</integer> + <integer name="def_dock_sounds_enabled_when_accessibility">0</integer> <string name="def_desk_dock_sound" translatable="false">/system/media/audio/ui/Dock.ogg</string> <string name="def_desk_undock_sound" translatable="false">/system/media/audio/ui/Undock.ogg</string> <string name="def_car_dock_sound" translatable="false">/system/media/audio/ui/Dock.ogg</string> diff --git a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java index c1a1f844f6d9..d55bb4f44aa5 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java @@ -2662,6 +2662,8 @@ class DatabaseHelper extends SQLiteOpenHelper { R.string.def_low_battery_sound); loadIntegerSetting(stmt, Settings.Global.DOCK_SOUNDS_ENABLED, R.integer.def_dock_sounds_enabled); + loadIntegerSetting(stmt, Settings.Global.DOCK_SOUNDS_ENABLED_WHEN_ACCESSIBILITY, + R.integer.def_dock_sounds_enabled_when_accessibility); loadStringSetting(stmt, Settings.Global.DESK_DOCK_SOUND, R.string.def_desk_dock_sound); loadStringSetting(stmt, Settings.Global.DESK_UNDOCK_SOUND, diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml index eb1a1ebc0850..9eea3750a8ec 100644 --- a/packages/SystemUI/res/values/config.xml +++ b/packages/SystemUI/res/values/config.xml @@ -209,9 +209,6 @@ <!-- Doze: should the significant motion sensor be used as a pulse signal? --> <bool name="doze_pulse_on_significant_motion">false</bool> - <!-- Doze: should the pickup sensor be used as a pulse signal? --> - <bool name="doze_pulse_on_pick_up">false</bool> - <!-- Doze: check proximity sensor before pulsing? --> <bool name="doze_proximity_check_before_pulse">true</bool> @@ -240,9 +237,6 @@ --> <string name="doze_pickup_subtype_performs_proximity_check"></string> - <!-- Type of the double tap sensor. Empty if double tap is not supported. --> - <string name="doze_double_tap_sensor_type" translatable="false"></string> - <!-- Doze: pulse parameter - how long does it take to fade in? --> <integer name="doze_pulse_duration_in">900</integer> diff --git a/packages/SystemUI/src/com/android/systemui/doze/DozeService.java b/packages/SystemUI/src/com/android/systemui/doze/DozeService.java index 56f6b8df866b..6c3524356818 100644 --- a/packages/SystemUI/src/com/android/systemui/doze/DozeService.java +++ b/packages/SystemUI/src/com/android/systemui/doze/DozeService.java @@ -43,6 +43,7 @@ import android.text.TextUtils; import android.util.Log; import android.view.Display; +import com.android.internal.hardware.AmbientDisplayConfiguration; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.MetricsProto.MetricsEvent; import com.android.systemui.SystemUIApplication; @@ -85,6 +86,8 @@ public class DozeService extends DreamService { private boolean mCarMode; private long mNotificationPulseTime; + private AmbientDisplayConfiguration mConfig; + public DozeService() { if (DEBUG) Log.d(mTag, "new DozeService()"); setDebug(DEBUG); @@ -125,6 +128,7 @@ public class DozeService extends DreamService { setWindowless(true); mSensorManager = (SensorManager) mContext.getSystemService(Context.SENSOR_SERVICE); + mConfig = new AmbientDisplayConfiguration(mContext); mSensors = new TriggerSensor[] { new TriggerSensor( mSensorManager.getDefaultSensor(Sensor.TYPE_SIGNIFICANT_MOTION), @@ -135,12 +139,12 @@ public class DozeService extends DreamService { mPickupSensor = new TriggerSensor( mSensorManager.getDefaultSensor(Sensor.TYPE_PICK_UP_GESTURE), Settings.Secure.DOZE_PULSE_ON_PICK_UP, - mDozeParameters.getPulseOnPickup(), mDozeParameters.getVibrateOnPickup(), + mConfig.pulseOnPickupAvailable(), mDozeParameters.getVibrateOnPickup(), DozeLog.PULSE_REASON_SENSOR_PICKUP), new TriggerSensor( - findSensorWithType(mDozeParameters.getDoubleTapSensorType()), - Settings.Secure.DOZE_PULSE_ON_DOUBLE_TAP, - mDozeParameters.getPulseOnPickup(), mDozeParameters.getVibrateOnPickup(), + findSensorWithType(mConfig.doubleTapSensorType()), + Settings.Secure.DOZE_PULSE_ON_DOUBLE_TAP, true, + mDozeParameters.getVibrateOnPickup(), DozeLog.PULSE_REASON_SENSOR_DOUBLE_TAP) }; mPowerManager = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE); @@ -359,7 +363,7 @@ public class DozeService extends DreamService { private void requestNotificationPulse() { if (DEBUG) Log.d(mTag, "requestNotificationPulse"); - if (!mDozeParameters.getPulseOnNotifications()) return; + if (!mConfig.pulseOnNotificationEnabled(UserHandle.USER_CURRENT)) return; mNotificationPulseTime = SystemClock.elapsedRealtime(); requestPulse(DozeLog.PULSE_REASON_NOTIFICATION); } diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSFooter.java b/packages/SystemUI/src/com/android/systemui/qs/QSFooter.java index 4ac629dc1da5..ccb28e95802e 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/QSFooter.java +++ b/packages/SystemUI/src/com/android/systemui/qs/QSFooter.java @@ -188,7 +188,8 @@ public class QSFooter implements OnClickListener, DialogInterface.OnClickListene profileOwner, profileVpn, primaryVpn); } else { if (isBranded) { - return mContext.getString(R.string.branded_monitoring_description_app_personal); + return mContext.getString(R.string.branded_monitoring_description_app_personal, + primaryVpn); } else { return mContext.getString(R.string.monitoring_description_app_personal, primaryVpn); diff --git a/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackView.java b/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackView.java index 2715971db9c3..fc580a5ecc19 100644 --- a/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackView.java +++ b/packages/SystemUI/src/com/android/systemui/recents/views/TaskStackView.java @@ -679,13 +679,13 @@ public class TaskStackView extends FrameLayout implements TaskStack.TaskStackCal for (int i = 0; i < taskViewCount; i++) { TaskView tv = taskViews.get(i); Task task = tv.getTask(); - int taskIndex = mStack.indexOfStackTask(task); - TaskViewTransform transform = mCurrentTaskTransforms.get(taskIndex); if (mIgnoreTasks.contains(task.key)) { continue; } + int taskIndex = mStack.indexOfStackTask(task); + TaskViewTransform transform = mCurrentTaskTransforms.get(taskIndex); if (animationOverrides != null && animationOverrides.containsKey(task)) { animation = animationOverrides.get(task); } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeParameters.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeParameters.java index d5bf49991cbb..9e9bdd7a172e 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeParameters.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeParameters.java @@ -18,11 +18,13 @@ package com.android.systemui.statusbar.phone; import android.content.Context; import android.os.SystemProperties; +import android.os.UserHandle; import android.text.TextUtils; import android.util.Log; import android.util.MathUtils; import android.util.SparseBooleanArray; +import com.android.internal.hardware.AmbientDisplayConfiguration; import com.android.systemui.R; import java.io.PrintWriter; @@ -31,9 +33,6 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; public class DozeParameters { - private static final String TAG = "DozeParameters"; - private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG); - private static final int MAX_DURATION = 60 * 1000; private final Context mContext; @@ -55,10 +54,8 @@ public class DozeParameters { pw.print(" getPulseOutDuration(): "); pw.println(getPulseOutDuration()); pw.print(" getPulseOnSigMotion(): "); pw.println(getPulseOnSigMotion()); pw.print(" getVibrateOnSigMotion(): "); pw.println(getVibrateOnSigMotion()); - pw.print(" getPulseOnPickup(): "); pw.println(getPulseOnPickup()); pw.print(" getVibrateOnPickup(): "); pw.println(getVibrateOnPickup()); pw.print(" getProxCheckBeforePulse(): "); pw.println(getProxCheckBeforePulse()); - pw.print(" getPulseOnNotifications(): "); pw.println(getPulseOnNotifications()); pw.print(" getPickupVibrationThreshold(): "); pw.println(getPickupVibrationThreshold()); pw.print(" getPickupSubtypePerformsProxCheck(): ");pw.println( dumpPickupSubtypePerformsProxCheck()); @@ -106,26 +103,14 @@ public class DozeParameters { return SystemProperties.getBoolean("doze.vibrate.sigmotion", false); } - public boolean getPulseOnPickup() { - return getBoolean("doze.pulse.pickup", R.bool.doze_pulse_on_pick_up); - } - public boolean getVibrateOnPickup() { return SystemProperties.getBoolean("doze.vibrate.pickup", false); } - public String getDoubleTapSensorType() { - return mContext.getString(R.string.doze_double_tap_sensor_type); - } - public boolean getProxCheckBeforePulse() { return getBoolean("doze.pulse.proxcheck", R.bool.doze_proximity_check_before_pulse); } - public boolean getPulseOnNotifications() { - return getBoolean("doze.pulse.notifications", R.bool.doze_pulse_on_notifications); - } - public int getPickupVibrationThreshold() { return getInt("doze.pickup.vibration.threshold", R.integer.doze_pickup_vibration_threshold); } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java index f6447f6b9527..498fae05f9ae 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java @@ -4231,7 +4231,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, } updateKeyguardState(staying, false /* fromShadeLocked */); - if (viewToClick != null) { + if (viewToClick != null && viewToClick.isAttachedToWindow()) { viewToClick.callOnClick(); } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java b/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java index f3e5c94be032..a6fe4382475e 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/stack/NotificationStackScrollLayout.java @@ -1853,24 +1853,34 @@ public class NotificationStackScrollLayout extends ViewGroup } updateBackgroundBounds(); if (!mCurrentBounds.equals(mBackgroundBounds)) { - if (mAnimateNextBackgroundTop || mAnimateNextBackgroundBottom || areBoundsAnimating()) { + boolean animate = mAnimateNextBackgroundTop || mAnimateNextBackgroundBottom + || areBoundsAnimating(); + if (!isExpanded()) { + abortBackgroundAnimators(); + animate = false; + } + if (animate) { startBackgroundAnimation(); } else { mCurrentBounds.set(mBackgroundBounds); applyCurrentBackgroundBounds(); } } else { - if (mBottomAnimator != null) { - mBottomAnimator.cancel(); - } - if (mTopAnimator != null) { - mTopAnimator.cancel(); - } + abortBackgroundAnimators(); } mAnimateNextBackgroundBottom = false; mAnimateNextBackgroundTop = false; } + private void abortBackgroundAnimators() { + if (mBottomAnimator != null) { + mBottomAnimator.cancel(); + } + if (mTopAnimator != null) { + mTopAnimator.cancel(); + } + } + private boolean areBoundsAnimating() { return mBottomAnimator != null || mTopAnimator != null; } diff --git a/services/core/java/com/android/server/BluetoothManagerService.java b/services/core/java/com/android/server/BluetoothManagerService.java index aa6afdfba075..7bf8c743c8eb 100644 --- a/services/core/java/com/android/server/BluetoothManagerService.java +++ b/services/core/java/com/android/server/BluetoothManagerService.java @@ -203,7 +203,7 @@ class BluetoothManagerService extends IBluetoothManager.Stub { } finally { mBluetoothLock.readLock().unlock(); } - Slog.d(TAG, "state" + st); + Slog.d(TAG, "Airplane Mode change - current state: " + st); if (isAirplaneModeOn()) { // Clear registered LE apps to force shut-off @@ -264,6 +264,7 @@ class BluetoothManagerService extends IBluetoothManager.Stub { mContext.registerReceiver(mReceiver, filter); loadStoredNameAndAddress(); if (isBluetoothPersistedStateOn()) { + if (DBG) Slog.d(TAG, "Startup: Bluetooth persisted state is ON."); mEnableExternal = true; } @@ -290,8 +291,10 @@ class BluetoothManagerService extends IBluetoothManager.Stub { * Returns true if the Bluetooth saved state is "on" */ private final boolean isBluetoothPersistedStateOn() { - return Settings.Global.getInt(mContentResolver, - Settings.Global.BLUETOOTH_ON, BLUETOOTH_ON_BLUETOOTH) != BLUETOOTH_OFF; + int state = Settings.Global.getInt(mContentResolver, + Settings.Global.BLUETOOTH_ON, -1); + if (DBG) Slog.d(TAG, "Bluetooth persisted state: " + state); + return state != BLUETOOTH_OFF; } /** @@ -307,6 +310,7 @@ class BluetoothManagerService extends IBluetoothManager.Stub { * */ private void persistBluetoothSetting(int value) { + if (DBG) Slog.d(TAG, "Persisting Bluetooth Setting: " + value); Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.BLUETOOTH_ON, value); @@ -1364,7 +1368,7 @@ class BluetoothManagerService extends IBluetoothManager.Stub { { int prevState = msg.arg1; int newState = msg.arg2; - if (DBG) Slog.d(TAG, "MESSAGE_BLUETOOTH_STATE_CHANGE: prevState = " + prevState + ", newState=" + newState); + if (DBG) Slog.d(TAG, "MESSAGE_BLUETOOTH_STATE_CHANGE: prevState = " + prevState + ", newState =" + newState); mState = newState; bluetoothStateChangeHandler(prevState, newState); // handle error state transition case from TURNING_ON to OFF @@ -1676,6 +1680,7 @@ class BluetoothManagerService extends IBluetoothManager.Stub { private void bluetoothStateChangeHandler(int prevState, int newState) { boolean isStandardBroadcast = true; + if (DBG) Slog.d(TAG, "bluetoothStateChangeHandler: " + prevState + " -> " + newState); if (prevState != newState) { //Notify all proxy objects first of adapter state change if (newState == BluetoothAdapter.STATE_BLE_ON || diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java index 30edd9fe8bf4..e8001c593b22 100644 --- a/services/core/java/com/android/server/ConnectivityService.java +++ b/services/core/java/com/android/server/ConnectivityService.java @@ -2263,11 +2263,19 @@ public class ConnectivityService extends IConnectivityManager.Stub synchronized (mNetworkForNetId) { nai = mNetworkForNetId.get(netId); } - // If captive portal status has changed, update capabilities. + // If captive portal status has changed, update capabilities or disconnect. if (nai != null && (visible != nai.lastCaptivePortalDetected)) { final int oldScore = nai.getCurrentScore(); nai.lastCaptivePortalDetected = visible; nai.everCaptivePortalDetected |= visible; + if (nai.lastCaptivePortalDetected && + Settings.Global.CAPTIVE_PORTAL_MODE_AVOID == getCaptivePortalMode()) { + if (DBG) log("Avoiding captive portal network: " + nai.name()); + nai.asyncChannel.sendMessage( + NetworkAgent.CMD_PREVENT_AUTOMATIC_RECONNECT); + teardownUnneededNetwork(nai); + break; + } updateCapabilities(oldScore, nai, nai.networkCapabilities); } if (!visible) { @@ -2288,6 +2296,12 @@ public class ConnectivityService extends IConnectivityManager.Stub return true; } + private int getCaptivePortalMode() { + return Settings.Global.getInt(mContext.getContentResolver(), + Settings.Global.CAPTIVE_PORTAL_MODE, + Settings.Global.CAPTIVE_PORTAL_MODE_PROMPT); + } + private boolean maybeHandleNetworkAgentInfoMessage(Message msg) { switch (msg.what) { default: diff --git a/services/core/java/com/android/server/DockObserver.java b/services/core/java/com/android/server/DockObserver.java index 07aa565642c6..122074ba4dac 100644 --- a/services/core/java/com/android/server/DockObserver.java +++ b/services/core/java/com/android/server/DockObserver.java @@ -167,10 +167,17 @@ final class DockObserver extends SystemService { intent.addFlags(Intent.FLAG_RECEIVER_REPLACE_PENDING); intent.putExtra(Intent.EXTRA_DOCK_STATE, mReportedDockState); + boolean dockSoundsEnabled = Settings.Global.getInt(cr, + Settings.Global.DOCK_SOUNDS_ENABLED, 1) == 1; + boolean dockSoundsEnabledWhenAccessibility = Settings.Global.getInt(cr, + Settings.Global.DOCK_SOUNDS_ENABLED_WHEN_ACCESSIBILITY, 1) == 1; + boolean accessibilityEnabled = Settings.Secure.getInt(cr, + Settings.Secure.ACCESSIBILITY_ENABLED, 0) == 1; + // Play a sound to provide feedback to confirm dock connection. // Particularly useful for flaky contact pins... - if (Settings.Global.getInt(cr, - Settings.Global.DOCK_SOUNDS_ENABLED, 1) == 1) { + if ((dockSoundsEnabled) || + (accessibilityEnabled && dockSoundsEnabledWhenAccessibility)) { String whichSound = null; if (mReportedDockState == Intent.EXTRA_DOCK_STATE_UNDOCKED) { if ((previousDockState == Intent.EXTRA_DOCK_STATE_DESK) || diff --git a/services/core/java/com/android/server/am/ActivityStack.java b/services/core/java/com/android/server/am/ActivityStack.java index 3aaddd80cfe6..998e2c646184 100644 --- a/services/core/java/com/android/server/am/ActivityStack.java +++ b/services/core/java/com/android/server/am/ActivityStack.java @@ -4464,7 +4464,9 @@ final class ActivityStack { "moveTaskToBackAndShowHome"); } - adjustFocusedActivityLocked(mResumedActivity, "moveTaskToBack"); + // Using currently focused activity value from service instead of mResumedActivity, + // because if this happens when device is locked the mResumedActivity will be null. + adjustFocusedActivityLocked(mService.mFocusedActivity, "moveTaskToBack"); mStackSupervisor.resumeFocusedStackTopActivityLocked(); return true; } diff --git a/services/core/java/com/android/server/connectivity/NetworkMonitor.java b/services/core/java/com/android/server/connectivity/NetworkMonitor.java index 6eb89facca76..c73d1dd95437 100644 --- a/services/core/java/com/android/server/connectivity/NetworkMonitor.java +++ b/services/core/java/com/android/server/connectivity/NetworkMonitor.java @@ -211,7 +211,9 @@ public class NetworkMonitor extends StateMachine { private final NetworkRequest mDefaultRequest; private final IpConnectivityLog mMetricsLog; - private boolean mIsCaptivePortalCheckEnabled; + @VisibleForTesting + protected boolean mIsCaptivePortalCheckEnabled; + private boolean mUseHttps; // Set if the user explicitly selected "Do not use this network" in captive portal sign-in app. @@ -265,7 +267,8 @@ public class NetworkMonitor extends StateMachine { setInitialState(mDefaultState); mIsCaptivePortalCheckEnabled = Settings.Global.getInt(mContext.getContentResolver(), - Settings.Global.CAPTIVE_PORTAL_DETECTION_ENABLED, 1) == 1; + Settings.Global.CAPTIVE_PORTAL_MODE, Settings.Global.CAPTIVE_PORTAL_MODE_PROMPT) + != Settings.Global.CAPTIVE_PORTAL_MODE_IGNORE; mUseHttps = Settings.Global.getInt(mContext.getContentResolver(), Settings.Global.CAPTIVE_PORTAL_USE_HTTPS, 1) == 1; @@ -632,7 +635,10 @@ public class NetworkMonitor extends StateMachine { @VisibleForTesting protected CaptivePortalProbeResult isCaptivePortal() { - if (!mIsCaptivePortalCheckEnabled) return new CaptivePortalProbeResult(204); + if (!mIsCaptivePortalCheckEnabled) { + validationLog("Validation disabled."); + return new CaptivePortalProbeResult(204); + } URL pacUrl = null, httpsUrl = null, httpUrl = null, fallbackUrl = null; diff --git a/services/core/java/com/android/server/content/ContentService.java b/services/core/java/com/android/server/content/ContentService.java index 4e236d164a69..07276298d66d 100644 --- a/services/core/java/com/android/server/content/ContentService.java +++ b/services/core/java/com/android/server/content/ContentService.java @@ -838,7 +838,7 @@ public final class ContentService extends IContentService.Stub { SyncManager syncManager = getSyncManager(); if (syncManager != null) { return syncManager.computeSyncable( - account, userId, providerName); + account, userId, providerName, false); } } finally { restoreCallingIdentity(identityToken); @@ -854,6 +854,8 @@ public final class ContentService extends IContentService.Stub { mContext.enforceCallingOrSelfPermission(Manifest.permission.WRITE_SYNC_SETTINGS, "no permission to write the sync settings"); + syncable = normalizeSyncable(syncable); + int userId = UserHandle.getCallingUserId(); long identityToken = clearCallingIdentity(); try { @@ -1156,6 +1158,15 @@ public final class ContentService extends IContentService.Stub { } } + private static int normalizeSyncable(int syncable) { + if (syncable > 0) { + return SyncStorageEngine.AuthorityInfo.SYNCABLE; + } else if (syncable == 0) { + return SyncStorageEngine.AuthorityInfo.NOT_SYNCABLE; + } + return SyncStorageEngine.AuthorityInfo.UNDEFINED; + } + /** * Hide this class since it is not part of api, * but current unittest framework requires it to be public diff --git a/services/core/java/com/android/server/content/SyncManager.java b/services/core/java/com/android/server/content/SyncManager.java index 131da0bc9d66..653d2410f800 100644 --- a/services/core/java/com/android/server/content/SyncManager.java +++ b/services/core/java/com/android/server/content/SyncManager.java @@ -1001,7 +1001,12 @@ public class SyncManager { } } - public int computeSyncable(Account account, int userId, String authority) { + private int computeSyncable(Account account, int userId, String authority) { + return computeSyncable(account, userId, authority, true); + } + + public int computeSyncable(Account account, int userId, String authority, + boolean checkAccountAccess) { final int status = getIsSyncable(account, userId, authority); if (status == AuthorityInfo.NOT_SYNCABLE) { return AuthorityInfo.NOT_SYNCABLE; @@ -1025,7 +1030,7 @@ public class SyncManager { } catch (RemoteException e) { /* ignore - local call */ } - if (!canAccessAccount(account, owningPackage, owningUid)) { + if (checkAccountAccess && !canAccessAccount(account, owningPackage, owningUid)) { Log.w(TAG, "Access to " + account + " denied for package " + owningPackage + " in UID " + syncAdapterInfo.uid); return AuthorityInfo.SYNCABLE_NO_ACCOUNT_ACCESS; diff --git a/services/core/java/com/android/server/display/AutomaticBrightnessController.java b/services/core/java/com/android/server/display/AutomaticBrightnessController.java index 935fa13adb47..a1e3d62c12bc 100644 --- a/services/core/java/com/android/server/display/AutomaticBrightnessController.java +++ b/services/core/java/com/android/server/display/AutomaticBrightnessController.java @@ -321,7 +321,6 @@ class AutomaticBrightnessController { mLightSensorEnabled = false; mRecentLightSamples = 0; mHandler.removeMessages(MSG_UPDATE_AMBIENT_LUX); - Slog.d(TAG, "disabling light sensor"); mSensorManager.unregisterListener(mLightSensorListener); } } @@ -349,7 +348,6 @@ class AutomaticBrightnessController { } mAmbientLightRingBuffer.prune(time - mAmbientLightHorizon); mAmbientLightRingBuffer.push(time, lux); - Slog.d(TAG, "pushing lux: " + lux); // Remember this sample value. mLastObservedLux = lux; diff --git a/services/core/java/com/android/server/display/DisplayPowerController.java b/services/core/java/com/android/server/display/DisplayPowerController.java index d2e29cd62346..1738797420e6 100644 --- a/services/core/java/com/android/server/display/DisplayPowerController.java +++ b/services/core/java/com/android/server/display/DisplayPowerController.java @@ -153,6 +153,9 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call // True if should use light sensor to automatically determine doze screen brightness. private final boolean mAllowAutoBrightnessWhileDozingConfig; + // True if using only new sensor samples to automatically determine doze screen brightness. + private boolean mUseNewSensorSamplesForDoze; + // True if we should fade the screen while turning it off, false if we should play // a stylish color fade animation instead. private boolean mColorFadeFadesConfig; @@ -345,10 +348,10 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call com.android.internal.R.array.config_dozeSensorLuxLevels); int[] dozeBrightnessBacklightValues = resources.getIntArray( com.android.internal.R.array.config_dozeBrightnessBacklightValues); - boolean useNewSensorSamplesForDoze = resources.getBoolean( + mUseNewSensorSamplesForDoze = resources.getBoolean( com.android.internal.R.bool.config_useNewSensorSamplesForDoze); LuxLevels luxLevels = new LuxLevels(brightHysteresisLevels, darkHysteresisLevels, - luxHysteresisLevels, useNewSensorSamplesForDoze, dozeSensorLuxLevels, + luxHysteresisLevels, mUseNewSensorSamplesForDoze, dozeSensorLuxLevels, dozeBrightnessBacklightValues); Spline screenAutoBrightnessSpline = createAutoBrightnessSpline(lux, screenBrightness); @@ -671,10 +674,13 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call mAppliedAutoBrightness = false; } - // Use default brightness when dozing unless overridden. - if (brightness < 0 && (state == Display.STATE_DOZE - || state == Display.STATE_DOZE_SUSPEND)) { - brightness = mScreenBrightnessDozeConfig; + // Use default brightness when dozing unless overridden or if collecting sensor samples. + if (state == Display.STATE_DOZE || state == Display.STATE_DOZE_SUSPEND) { + if (brightness < 0) { + brightness = mScreenBrightnessDozeConfig; + } else if (mUseNewSensorSamplesForDoze) { + brightness = Math.min(brightness, mScreenBrightnessDozeConfig); + } } // Apply manual brightness. diff --git a/services/core/java/com/android/server/dreams/DreamManagerService.java b/services/core/java/com/android/server/dreams/DreamManagerService.java index 20bccf19f131..1991c00ff4e1 100644 --- a/services/core/java/com/android/server/dreams/DreamManagerService.java +++ b/services/core/java/com/android/server/dreams/DreamManagerService.java @@ -18,6 +18,7 @@ package com.android.server.dreams; import static android.Manifest.permission.BIND_DREAM_SERVICE; +import com.android.internal.hardware.AmbientDisplayConfiguration; import com.android.internal.util.DumpUtils; import com.android.server.FgThread; import com.android.server.LocalServices; @@ -88,6 +89,8 @@ public final class DreamManagerService extends SystemService { private int mCurrentDreamDozeScreenState = Display.STATE_UNKNOWN; private int mCurrentDreamDozeScreenBrightness = PowerManager.BRIGHTNESS_DEFAULT; + private AmbientDisplayConfiguration mDozeConfig; + public DreamManagerService(Context context) { super(context); mContext = context; @@ -97,6 +100,7 @@ public final class DreamManagerService extends SystemService { mPowerManager = (PowerManager)context.getSystemService(Context.POWER_SERVICE); mPowerManagerInternal = getLocalService(PowerManagerInternal.class); mDozeWakeLock = mPowerManager.newWakeLock(PowerManager.DOZE_WAKE_LOCK, TAG); + mDozeConfig = new AmbientDisplayConfiguration(mContext); } @Override @@ -121,7 +125,7 @@ public final class DreamManagerService extends SystemService { } }, new IntentFilter(Intent.ACTION_USER_SWITCHED), null, mHandler); mContext.getContentResolver().registerContentObserver( - Settings.Secure.getUriFor(Settings.Secure.DOZE_ENABLED), false, + Settings.Secure.getUriFor(Settings.Secure.DOZE_PULSE_ON_DOUBLE_TAP), false, mDozeEnabledObserver, UserHandle.USER_ALL); writePulseGestureEnabled(); } @@ -326,19 +330,12 @@ public final class DreamManagerService extends SystemService { } private ComponentName getDozeComponent(int userId) { - // Read the component from a system property to facilitate debugging. - // Note that for production devices, the dream should actually be declared in - // a config.xml resource. - String name = Build.IS_DEBUGGABLE ? SystemProperties.get("debug.doze.component") : null; - if (TextUtils.isEmpty(name)) { - // Read the component from a config.xml resource. - // The value should be specified in a resource overlay for the product. - name = mContext.getResources().getString( - com.android.internal.R.string.config_dozeComponent); - } - boolean enabled = Settings.Secure.getIntForUser(mContext.getContentResolver(), - Settings.Secure.DOZE_ENABLED, 1, userId) != 0; - return TextUtils.isEmpty(name) || !enabled ? null : ComponentName.unflattenFromString(name); + if (mDozeConfig.enabled(userId)) { + return ComponentName.unflattenFromString(mDozeConfig.ambientDisplayComponent()); + } else { + return null; + } + } private ServiceInfo getServiceInfo(ComponentName name) { diff --git a/services/core/java/com/android/server/hdmi/HdmiControlService.java b/services/core/java/com/android/server/hdmi/HdmiControlService.java index 5dc9d02a71c5..72ee218fba2c 100644 --- a/services/core/java/com/android/server/hdmi/HdmiControlService.java +++ b/services/core/java/com/android/server/hdmi/HdmiControlService.java @@ -2011,6 +2011,9 @@ public final class HdmiControlService extends SystemService { @ServiceThreadOnly void standby() { assertRunOnServiceThread(); + if (!canGoToStandby()) { + return; + } mStandbyMessageReceived = true; mPowerManager.goToSleep(SystemClock.uptimeMillis(), PowerManager.GO_TO_SLEEP_REASON_HDMI, 0); // PowerManger will send the broadcast Intent.ACTION_SCREEN_OFF and after this gets @@ -2038,10 +2041,13 @@ public final class HdmiControlService extends SystemService { @ServiceThreadOnly private void onStandby(final int standbyAction) { assertRunOnServiceThread(); - if (!canGoToStandby()) return; mPowerStatus = HdmiControlManager.POWER_STATUS_TRANSIENT_TO_STANDBY; invokeVendorCommandListenersOnControlStateChanged(false, HdmiControlManager.CONTROL_STATE_CHANGED_REASON_STANDBY); + if (!canGoToStandby()) { + mPowerStatus = HdmiControlManager.POWER_STATUS_STANDBY; + return; + } final List<HdmiCecLocalDevice> devices = getAllLocalDevices(); disableDevices(new PendingActionClearedCallback() { diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java index 56a01737eac2..cd8aa623f17d 100644 --- a/services/core/java/com/android/server/pm/PackageManagerService.java +++ b/services/core/java/com/android/server/pm/PackageManagerService.java @@ -464,11 +464,11 @@ public class PackageManagerService extends IPackageManager.Stub { private static final String VENDOR_OVERLAY_DIR = "/vendor/overlay"; /** - * If VENDOR_OVERLAY_SKU_PROPERTY is set, search for runtime resource overlay APKs in - * VENDOR_OVERLAY_DIR/<value of VENDOR_OVERLAY_SKU_PROPERTY> rather than in + * If VENDOR_OVERLAY_THEME_PROPERTY is set, search for runtime resource overlay APKs also in + * VENDOR_OVERLAY_DIR/<value of VENDOR_OVERLAY_THEME_PROPERTY> in addition to * VENDOR_OVERLAY_DIR. */ - private static final String VENDOR_OVERLAY_SKU_PROPERTY = "ro.boot.vendor.overlay.sku"; + private static final String VENDOR_OVERLAY_THEME_PROPERTY = "ro.boot.vendor.overlay.theme"; private static int DEFAULT_EPHEMERAL_HASH_PREFIX_MASK = 0xFFFFF000; private static int DEFAULT_EPHEMERAL_HASH_PREFIX_COUNT = 5; @@ -2271,18 +2271,17 @@ public class PackageManagerService extends IPackageManager.Stub { } } - // Collect vendor overlay packages. - // (Do this before scanning any apps.) + // Collect vendor overlay packages. (Do this before scanning any apps.) // For security and version matching reason, only consider // overlay packages if they reside in the right directory. - File vendorOverlayDir; - String overlaySkuDir = SystemProperties.get(VENDOR_OVERLAY_SKU_PROPERTY); - if (!overlaySkuDir.isEmpty()) { - vendorOverlayDir = new File(VENDOR_OVERLAY_DIR, overlaySkuDir); - } else { - vendorOverlayDir = new File(VENDOR_OVERLAY_DIR); - } - scanDirTracedLI(vendorOverlayDir, mDefParseFlags + String overlayThemeDir = SystemProperties.get(VENDOR_OVERLAY_THEME_PROPERTY); + if (!overlayThemeDir.isEmpty()) { + scanDirTracedLI(new File(VENDOR_OVERLAY_DIR, overlayThemeDir), mDefParseFlags + | PackageParser.PARSE_IS_SYSTEM + | PackageParser.PARSE_IS_SYSTEM_DIR + | PackageParser.PARSE_TRUSTED_OVERLAY, scanFlags | SCAN_TRUSTED_OVERLAY, 0); + } + scanDirTracedLI(new File(VENDOR_OVERLAY_DIR), mDefParseFlags | PackageParser.PARSE_IS_SYSTEM | PackageParser.PARSE_IS_SYSTEM_DIR | PackageParser.PARSE_TRUSTED_OVERLAY, scanFlags | SCAN_TRUSTED_OVERLAY, 0); diff --git a/services/core/java/com/android/server/wm/CircularDisplayMask.java b/services/core/java/com/android/server/wm/CircularDisplayMask.java index ae4154131079..0a9b33404b37 100644 --- a/services/core/java/com/android/server/wm/CircularDisplayMask.java +++ b/services/core/java/com/android/server/wm/CircularDisplayMask.java @@ -21,6 +21,7 @@ import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_SURFACE_TRACE import static com.android.server.wm.WindowManagerDebugConfig.TAG_WITH_CLASS_NAME; import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM; +import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; @@ -85,12 +86,115 @@ class CircularDisplayMask { mSurfaceControl = ctrl; mDrawNeeded = true; mPaint = new Paint(); - mPaint.setAntiAlias(true); - mPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.CLEAR)); + mPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.DST_IN)); mScreenOffset = screenOffset; mMaskThickness = maskThickness; } + static private double distanceFromCenterSquared(double x, double y) { + return x*x + y*y; + } + + static private double distanceFromCenter(double x, double y) { + return Math.sqrt(distanceFromCenterSquared(x, y)); + } + + static private double verticalLineIntersectsCircle(double x, double radius) { + return Math.sqrt(radius*radius - x*x); + } + + static private double horizontalLineIntersectsCircle(double y, double radius) { + return Math.sqrt(radius*radius - y*y); + } + + static private double triangleArea(double width, double height) { + return width * height / 2.0; + } + + static private double trapezoidArea(double width, double height1, double height2) { + return width * (height1 + height2) / 2.0; + } + + static private double areaUnderChord(double radius, double chordLength) { + double isocelesHeight = Math.sqrt(radius*radius - chordLength * chordLength / 4.0); + double areaUnderIsoceles = isocelesHeight * chordLength / 2.0; + double halfAngle = Math.asin(chordLength / (2.0 * radius)); + double areaUnderArc = halfAngle * radius * radius; + + return areaUnderArc - triangleArea(chordLength, isocelesHeight); + } + + // Returns the fraction of the pixel at (px, py) covered by + // the circle with center (cx, cy) and radius 'radius' + static private double calcPixelShading(double cx, double cy, double px, + double py, double radius) { + // Translate so the center is at the origin + px -= cx; + py -= cy; + + // Reflect across the axis so the point is in the first quadrant + px = Math.abs(px); + py = Math.abs(py); + + // One more transformation which simplifies the logic later + if (py > px) { + double temp; + + temp = px; + px = py; + py = temp; + } + + double left = px - 0.5; + double right = px + 0.5; + double bottom = py - 0.5; + double top = py + 0.5; + + if (distanceFromCenterSquared(left, bottom) > radius*radius) { + return 0.0; + } + + if (distanceFromCenterSquared(right, top) < radius*radius) { + return 1.0; + } + + // Check if only the bottom-left corner of the pixel is inside the circle + if (distanceFromCenterSquared(left, top) > radius*radius) { + double triangleWidth = horizontalLineIntersectsCircle(bottom, radius) - left; + double triangleHeight = verticalLineIntersectsCircle(left, radius) - bottom; + double chordLength = distanceFromCenter(triangleWidth, triangleHeight); + + return triangleArea(triangleWidth, triangleHeight) + + areaUnderChord(radius, chordLength); + + } + + // Check if only the top-right corner of the pixel is outside the circle + if (distanceFromCenterSquared(right, bottom) < radius*radius) { + double triangleWidth = right - horizontalLineIntersectsCircle(top, radius); + double triangleHeight = top - verticalLineIntersectsCircle(right, radius); + double chordLength = distanceFromCenter(triangleWidth, triangleHeight); + + return 1 - triangleArea(triangleWidth, triangleHeight) + + areaUnderChord(radius, chordLength); + } + + // It must be that the top-left and bottom-left corners are inside the circle + double trapezoidWidth1 = horizontalLineIntersectsCircle(top, radius) - left; + double trapezoidWidth2 = horizontalLineIntersectsCircle(bottom, radius) - left; + double chordLength = distanceFromCenter(1, trapezoidWidth2 - trapezoidWidth1); + double shading = trapezoidArea(1.0, trapezoidWidth1, trapezoidWidth2) + + areaUnderChord(radius, chordLength); + + // When top >= 0 and bottom <= 0 it's possible for the circle to intersect the pixel 4 times. + // If so, remove the area of the section which crosses the right-hand edge. + if (top >= 0 && bottom <= 0 && radius > right) { + shading -= areaUnderChord(radius, 2 * verticalLineIntersectsCircle(right, radius)); + } + + return shading; + } + private void drawIfNeeded() { if (!mDrawNeeded || !mVisible || mDimensionsUnequal) { return; @@ -123,11 +227,41 @@ class CircularDisplayMask { break; } - int circleRadius = mScreenSize.x / 2; c.drawColor(Color.BLACK); - // The radius is reduced by mMaskThickness to provide an anti aliasing effect on the display edges. - c.drawCircle(circleRadius, circleRadius, circleRadius - mMaskThickness, mPaint); + int maskWidth = mScreenSize.x - 2*mMaskThickness; + int maskHeight; + + // Don't render the whole mask if it is partly offscreen. + if (maskWidth > mScreenSize.y) { + maskHeight = mScreenSize.y; + } else { + // To ensure the mask can be properly centered on the canvas the + // bitmap dimensions must have the same parity as those of the canvas. + maskHeight = mScreenSize.y - ((mScreenSize.y - maskWidth) & ~1); + } + + double cx = (maskWidth - 1.0) / 2.0; + double cy = (maskHeight - 1.0) / 2.0; + double radius = maskWidth / 2.0; + int[] pixels = new int[maskWidth * maskHeight]; + + for (int py=0; py<maskHeight; py++) { + for (int px=0; px<maskWidth; px++) { + double shading = calcPixelShading(cx, cy, px, py, radius); + pixels[maskWidth*py + px] = + Color.argb(255 - (int)Math.round(255.0*shading), 0, 0, 0); + } + } + + Bitmap transparency = Bitmap.createBitmap(pixels, maskWidth, maskHeight, + Bitmap.Config.ARGB_8888); + + c.drawBitmap(transparency, + (float)mMaskThickness, + (float)((mScreenSize.y - maskHeight) / 2), + mPaint); + mSurface.unlockCanvasAndPost(c); } diff --git a/services/core/java/com/android/server/wm/DisplayContent.java b/services/core/java/com/android/server/wm/DisplayContent.java index 7b1a523e74a4..e8104c4c9377 100644 --- a/services/core/java/com/android/server/wm/DisplayContent.java +++ b/services/core/java/com/android/server/wm/DisplayContent.java @@ -28,15 +28,11 @@ import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM; import static com.android.server.wm.WindowState.RESIZE_HANDLE_WIDTH_IN_DP; import android.app.ActivityManager.StackId; -import android.content.pm.ApplicationInfo; -import android.content.pm.PackageManager; import android.graphics.Matrix; import android.graphics.Rect; import android.graphics.RectF; import android.graphics.Region; import android.graphics.Region.Op; -import android.os.Build; -import android.os.UserHandle; import android.util.DisplayMetrics; import android.util.Slog; import android.view.Display; @@ -728,8 +724,7 @@ class DisplayContent { for (int i = 0; i < windowCount; i++) { WindowState window = windows.get(i); if (window.mAttrs.type == TYPE_TOAST && window.mOwnerUid == uid - && !window.mPermanentlyHidden && !window.mAnimatingExit - && !window.mRemoveOnExit) { + && !window.isRemovedOrHidden()) { return false; } } diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java index 55bf39472b7b..fbef2c626a9c 100644 --- a/services/core/java/com/android/server/wm/WindowState.java +++ b/services/core/java/com/android/server/wm/WindowState.java @@ -2961,4 +2961,10 @@ final class WindowState implements WindowManagerPolicy.WindowState { public boolean isRtl() { return mMergedConfiguration.getLayoutDirection() == View.LAYOUT_DIRECTION_RTL; } + + public boolean isRemovedOrHidden() { + return mPermanentlyHidden || mAnimatingExit + || mRemoveOnExit || mWindowRemovalAllowed + || mViewVisibility == View.GONE; + } } diff --git a/services/tests/servicestests/src/com/android/server/ConnectivityServiceTest.java b/services/tests/servicestests/src/com/android/server/ConnectivityServiceTest.java index 4af1cf1a0df8..65f9399c5a80 100644 --- a/services/tests/servicestests/src/com/android/server/ConnectivityServiceTest.java +++ b/services/tests/servicestests/src/com/android/server/ConnectivityServiceTest.java @@ -236,6 +236,7 @@ public class ConnectivityServiceTest extends AndroidTestCase { private final IdleableHandlerThread mHandlerThread; private final ConditionVariable mDisconnected = new ConditionVariable(); private final ConditionVariable mNetworkStatusReceived = new ConditionVariable(); + private final ConditionVariable mPreventReconnectReceived = new ConditionVariable(); private int mScore; private NetworkAgent mNetworkAgent; private int mStartKeepaliveError = PacketKeepalive.ERROR_HARDWARE_UNSUPPORTED; @@ -291,6 +292,11 @@ public class ConnectivityServiceTest extends AndroidTestCase { mRedirectUrl = redirectUrl; mNetworkStatusReceived.open(); } + + @Override + protected void preventAutomaticReconnect() { + mPreventReconnectReceived.open(); + } }; // Waits for the NetworkAgent to be registered, which includes the creation of the // NetworkMonitor. @@ -375,11 +381,6 @@ public class ConnectivityServiceTest extends AndroidTestCase { mWrappedNetworkMonitor.gen204ProbeResult = 200; mWrappedNetworkMonitor.gen204ProbeRedirectUrl = redirectUrl; connect(false); - waitFor(new Criteria() { public boolean get() { - NetworkCapabilities caps = mCm.getNetworkCapabilities(getNetwork()); - return caps != null && caps.hasCapability(NET_CAPABILITY_CAPTIVE_PORTAL);} }); - mWrappedNetworkMonitor.gen204ProbeResult = 500; - mWrappedNetworkMonitor.gen204ProbeRedirectUrl = null; } public void disconnect() { @@ -391,6 +392,10 @@ public class ConnectivityServiceTest extends AndroidTestCase { return new Network(mNetworkAgent.netId); } + public ConditionVariable getPreventReconnectReceived() { + return mPreventReconnectReceived; + } + public ConditionVariable getDisconnectedCV() { return mDisconnected; } @@ -597,6 +602,7 @@ public class ConnectivityServiceTest extends AndroidTestCase { @Override protected CaptivePortalProbeResult isCaptivePortal() { + if (!mIsCaptivePortalCheckEnabled) { return new CaptivePortalProbeResult(204); } return new CaptivePortalProbeResult(gen204ProbeResult, gen204ProbeRedirectUrl, null); } } @@ -743,6 +749,9 @@ public class ConnectivityServiceTest extends AndroidTestCase { mService.systemReady(); mCm = new WrappedConnectivityManager(getContext(), mService); mCm.bindProcessToNetwork(null); + + // Ensure that the default setting for Captive Portals is used for most tests + setCaptivePortalMode(Settings.Global.CAPTIVE_PORTAL_MODE_PROMPT); } public void tearDown() throws Exception { @@ -1704,6 +1713,47 @@ public class ConnectivityServiceTest extends AndroidTestCase { validatedCallback.expectCallback(CallbackState.LOST, mWiFiNetworkAgent); } + @LargeTest + public void testAvoidOrIgnoreCaptivePortals() { + final TestNetworkCallback captivePortalCallback = new TestNetworkCallback(); + final NetworkRequest captivePortalRequest = new NetworkRequest.Builder() + .addCapability(NET_CAPABILITY_CAPTIVE_PORTAL).build(); + mCm.registerNetworkCallback(captivePortalRequest, captivePortalCallback); + + final TestNetworkCallback validatedCallback = new TestNetworkCallback(); + final NetworkRequest validatedRequest = new NetworkRequest.Builder() + .addCapability(NET_CAPABILITY_VALIDATED).build(); + mCm.registerNetworkCallback(validatedRequest, validatedCallback); + + setCaptivePortalMode(Settings.Global.CAPTIVE_PORTAL_MODE_AVOID); + // Bring up a network with a captive portal. + // Expect it to fail to connect and not result in any callbacks. + mWiFiNetworkAgent = new MockNetworkAgent(TRANSPORT_WIFI); + String firstRedirectUrl = "http://example.com/firstPath"; + + ConditionVariable disconnectCv = mWiFiNetworkAgent.getDisconnectedCV(); + ConditionVariable avoidCv = mWiFiNetworkAgent.getPreventReconnectReceived(); + mWiFiNetworkAgent.connectWithCaptivePortal(firstRedirectUrl); + waitFor(disconnectCv); + waitFor(avoidCv); + + assertNoCallbacks(captivePortalCallback, validatedCallback); + + // Now test ignore mode. + setCaptivePortalMode(Settings.Global.CAPTIVE_PORTAL_MODE_IGNORE); + + // Bring up a network with a captive portal. + // Since we're ignoring captive portals, the network will validate. + mWiFiNetworkAgent = new MockNetworkAgent(TRANSPORT_WIFI); + String secondRedirectUrl = "http://example.com/secondPath"; + mWiFiNetworkAgent.connectWithCaptivePortal(secondRedirectUrl); + + // Expect NET_CAPABILITY_VALIDATED onAvailable callback. + validatedCallback.expectCallback(CallbackState.AVAILABLE, mWiFiNetworkAgent); + // But there should be no CaptivePortal callback. + captivePortalCallback.assertNoCallback(); + } + @SmallTest public void testInvalidNetworkSpecifier() { boolean execptionCalled = true; @@ -1844,6 +1894,11 @@ public class ConnectivityServiceTest extends AndroidTestCase { mCm.unregisterNetworkCallback(cellNetworkCallback); } + private void setCaptivePortalMode(int mode) { + ContentResolver cr = mServiceContext.getContentResolver(); + Settings.Global.putInt(cr, Settings.Global.CAPTIVE_PORTAL_MODE, mode); + } + private void setMobileDataAlwaysOn(boolean enable) { ContentResolver cr = mServiceContext.getContentResolver(); Settings.Global.putInt(cr, Settings.Global.MOBILE_DATA_ALWAYS_ON, enable ? 1 : 0); diff --git a/services/voiceinteraction/java/com/android/server/voiceinteraction/DatabaseHelper.java b/services/voiceinteraction/java/com/android/server/voiceinteraction/DatabaseHelper.java index 0dcd1521deac..dd7b5a8752e5 100644 --- a/services/voiceinteraction/java/com/android/server/voiceinteraction/DatabaseHelper.java +++ b/services/voiceinteraction/java/com/android/server/voiceinteraction/DatabaseHelper.java @@ -27,6 +27,9 @@ import android.hardware.soundtrigger.SoundTrigger.KeyphraseSoundModel; import android.text.TextUtils; import android.util.Slog; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; import java.util.Locale; import java.util.UUID; @@ -40,7 +43,7 @@ public class DatabaseHelper extends SQLiteOpenHelper { static final boolean DBG = false; private static final String NAME = "sound_model.db"; - private static final int VERSION = 5; + private static final int VERSION = 6; public static interface SoundModelContract { public static final String TABLE = "sound_model"; @@ -58,15 +61,19 @@ public class DatabaseHelper extends SQLiteOpenHelper { // Table Create Statement private static final String CREATE_TABLE_SOUND_MODEL = "CREATE TABLE " + SoundModelContract.TABLE + "(" - + SoundModelContract.KEY_MODEL_UUID + " TEXT PRIMARY KEY," - + SoundModelContract.KEY_VENDOR_UUID + " TEXT, " + + SoundModelContract.KEY_MODEL_UUID + " TEXT," + + SoundModelContract.KEY_VENDOR_UUID + " TEXT," + SoundModelContract.KEY_KEYPHRASE_ID + " INTEGER," + SoundModelContract.KEY_TYPE + " INTEGER," + SoundModelContract.KEY_DATA + " BLOB," + SoundModelContract.KEY_RECOGNITION_MODES + " INTEGER," + SoundModelContract.KEY_LOCALE + " TEXT," + SoundModelContract.KEY_HINT_TEXT + " TEXT," - + SoundModelContract.KEY_USERS + " TEXT" + ")"; + + SoundModelContract.KEY_USERS + " TEXT," + + "PRIMARY KEY (" + SoundModelContract.KEY_KEYPHRASE_ID + "," + + SoundModelContract.KEY_LOCALE + "," + + SoundModelContract.KEY_USERS + ")" + + ")"; public DatabaseHelper(Context context) { super(context, NAME, null, VERSION); @@ -93,6 +100,44 @@ public class DatabaseHelper extends SQLiteOpenHelper { oldVersion++; } } + if (oldVersion == 5) { + // We need to enforce the new primary key constraint that the + // keyphrase id, locale, and users are unique. We have to first pull + // everything out of the database, remove duplicates, create the new + // table, then push everything back in. + String selectQuery = "SELECT * FROM " + SoundModelContract.TABLE; + Cursor c = db.rawQuery(selectQuery, null); + List<SoundModelRecord> old_records = new ArrayList<SoundModelRecord>(); + try { + if (c.moveToFirst()) { + do { + try { + old_records.add(new SoundModelRecord(5, c)); + } catch (Exception e) { + Slog.e(TAG, "Failed to extract V5 record", e); + } + } while (c.moveToNext()); + } + } finally { + c.close(); + } + db.execSQL("DROP TABLE IF EXISTS " + SoundModelContract.TABLE); + onCreate(db); + for (SoundModelRecord record : old_records) { + if (record.ifViolatesV6PrimaryKeyIsFirstOfAnyDuplicates(old_records)) { + try { + long return_value = record.writeToDatabase(6, db); + if (return_value == -1) { + Slog.e(TAG, "Database write failed " + record.modelUuid + ": " + + return_value); + } + } catch (Exception e) { + Slog.e(TAG, "Failed to update V6 record " + record.modelUuid, e); + } + } + } + oldVersion++; + } } /** @@ -279,4 +324,93 @@ public class DatabaseHelper extends SQLiteOpenHelper { } return users; } + + private static class SoundModelRecord { + public final String modelUuid; + public final String vendorUuid; + public final int keyphraseId; + public final int type; + public final byte[] data; + public final int recognitionModes; + public final String locale; + public final String hintText; + public final String users; + + public SoundModelRecord(int version, Cursor c) { + modelUuid = c.getString(c.getColumnIndex(SoundModelContract.KEY_MODEL_UUID)); + if (version >= 5) { + vendorUuid = c.getString(c.getColumnIndex(SoundModelContract.KEY_VENDOR_UUID)); + } else { + vendorUuid = null; + } + keyphraseId = c.getInt(c.getColumnIndex(SoundModelContract.KEY_KEYPHRASE_ID)); + type = c.getInt(c.getColumnIndex(SoundModelContract.KEY_TYPE)); + data = c.getBlob(c.getColumnIndex(SoundModelContract.KEY_DATA)); + recognitionModes = c.getInt(c.getColumnIndex(SoundModelContract.KEY_RECOGNITION_MODES)); + locale = c.getString(c.getColumnIndex(SoundModelContract.KEY_LOCALE)); + hintText = c.getString(c.getColumnIndex(SoundModelContract.KEY_HINT_TEXT)); + users = c.getString(c.getColumnIndex(SoundModelContract.KEY_USERS)); + } + + private boolean V6PrimaryKeyMatches(SoundModelRecord record) { + return keyphraseId == record.keyphraseId && stringComparisonHelper(locale, record.locale) + && stringComparisonHelper(users, record.users); + } + + // Returns true if this record is a) the only record with the same V6 primary key, or b) the + // first record in the list of all records that have the same primary key and equal data. + // It will return false if a) there are any records that have the same primary key and + // different data, or b) there is a previous record in the list that has the same primary + // key and data. + // Note that 'this' object must be inside the list. + public boolean ifViolatesV6PrimaryKeyIsFirstOfAnyDuplicates( + List<SoundModelRecord> records) { + // First pass - check to see if all the records that have the same primary key have + // duplicated data. + for (SoundModelRecord record : records) { + if (this == record) { + continue; + } + // If we have different/missing data with the same primary key, then we should drop + // everything. + if (this.V6PrimaryKeyMatches(record) && !Arrays.equals(data, record.data)) { + return false; + } + } + + // We only want to return true for the first duplicated model. + for (SoundModelRecord record : records) { + if (this.V6PrimaryKeyMatches(record)) { + return this == record; + } + } + return true; + } + + public long writeToDatabase(int version, SQLiteDatabase db) { + ContentValues values = new ContentValues(); + values.put(SoundModelContract.KEY_MODEL_UUID, modelUuid); + if (version >= 5) { + values.put(SoundModelContract.KEY_VENDOR_UUID, vendorUuid); + } + values.put(SoundModelContract.KEY_KEYPHRASE_ID, keyphraseId); + values.put(SoundModelContract.KEY_TYPE, type); + values.put(SoundModelContract.KEY_DATA, data); + values.put(SoundModelContract.KEY_RECOGNITION_MODES, recognitionModes); + values.put(SoundModelContract.KEY_LOCALE, locale); + values.put(SoundModelContract.KEY_HINT_TEXT, hintText); + values.put(SoundModelContract.KEY_USERS, users); + + return db.insertWithOnConflict( + SoundModelContract.TABLE, null, values, SQLiteDatabase.CONFLICT_REPLACE); + } + + // Helper for checking string equality - including the case when they are null. + static private boolean stringComparisonHelper(String a, String b) { + if (a != null) { + return a.equals(b); + } + return a == b; + } + } } diff --git a/telecomm/java/android/telecom/Connection.java b/telecomm/java/android/telecom/Connection.java index c0061859bf60..8f9c7585ced6 100644 --- a/telecomm/java/android/telecom/Connection.java +++ b/telecomm/java/android/telecom/Connection.java @@ -420,6 +420,31 @@ public abstract class Connection extends Conferenceable { "android.telecom.extra.DISABLE_ADD_CALL"; /** + * String connection extra key on a {@link Connection} or {@link Conference} which contains the + * original Connection ID associated with the connection. Used in + * {@link RemoteConnectionService} to track the Connection ID which was originally assigned to a + * connection/conference added via + * {@link ConnectionService#addExistingConnection(PhoneAccountHandle, Connection)} and + * {@link ConnectionService#addConference(Conference)} APIs. This is important to pass to + * Telecom for when it deals with RemoteConnections. When the ConnectionManager wraps the + * {@link RemoteConnection} and {@link RemoteConference} and adds it to Telecom, there needs to + * be a way to ensure that we don't add the connection again as a duplicate. + * <p> + * For example, the TelephonyCS calls addExistingConnection for a Connection with ID + * {@code TelephonyCS@1}. The ConnectionManager learns of this via + * {@link ConnectionService#onRemoteExistingConnectionAdded(RemoteConnection)}, and wraps this + * in a new {@link Connection} which it adds to Telecom via + * {@link ConnectionService#addExistingConnection(PhoneAccountHandle, Connection)}. As part of + * this process, the wrapped RemoteConnection gets assigned a new ID (e.g. {@code ConnMan@1}). + * The TelephonyCS will ALSO try to add the existing connection to Telecom, except with the + * ID it originally referred to the connection as. Thus Telecom needs to know that the + * Connection with ID {@code ConnMan@1} is really the same as {@code TelephonyCS@1}. + * @hide + */ + public static final String EXTRA_ORIGINAL_CONNECTION_ID = + "android.telecom.extra.ORIGINAL_CONNECTION_ID"; + + /** * Connection event used to inform Telecom that it should play the on hold tone. This is used * to play a tone when the peer puts the current call on hold. Sent to Telecom via * {@link #sendConnectionEvent(String, Bundle)}. diff --git a/telecomm/java/android/telecom/ConnectionService.java b/telecomm/java/android/telecom/ConnectionService.java index 9f0032a738e0..c2a0ff14c7d3 100644 --- a/telecomm/java/android/telecom/ConnectionService.java +++ b/telecomm/java/android/telecom/ConnectionService.java @@ -1698,7 +1698,13 @@ public abstract class ConnectionService extends Service { */ private String addExistingConnectionInternal(PhoneAccountHandle handle, Connection connection) { String id; - if (handle == null) { + + if (connection.getExtras() != null && connection.getExtras() + .containsKey(Connection.EXTRA_ORIGINAL_CONNECTION_ID)) { + id = connection.getExtras().getString(Connection.EXTRA_ORIGINAL_CONNECTION_ID); + Log.d(this, "addExistingConnectionInternal - conn %s reusing original id %s", + connection.getTelecomCallId(), id); + } else if (handle == null) { // If no phone account handle was provided, we cannot be sure the call ID is unique, // so just use a random UUID. id = UUID.randomUUID().toString(); @@ -1732,13 +1738,21 @@ public abstract class ConnectionService extends Service { } private String addConferenceInternal(Conference conference) { + String originalId = null; + if (conference.getExtras() != null && conference.getExtras() + .containsKey(Connection.EXTRA_ORIGINAL_CONNECTION_ID)) { + originalId = conference.getExtras().getString(Connection.EXTRA_ORIGINAL_CONNECTION_ID); + Log.d(this, "addConferenceInternal: conf %s reusing original id %s", + conference.getTelecomCallId(), + originalId); + } if (mIdByConference.containsKey(conference)) { Log.w(this, "Re-adding an existing conference: %s.", conference); } else if (conference != null) { // Conferences do not (yet) have a PhoneAccountHandle associated with them, so we // cannot determine a ConnectionService class name to associate with the ID, so use // a unique UUID (for now). - String id = UUID.randomUUID().toString(); + String id = originalId == null ? UUID.randomUUID().toString() : originalId; mConferenceById.put(id, conference); mIdByConference.put(conference, id); conference.addListener(mConferenceListener); diff --git a/telecomm/java/android/telecom/RemoteConference.java b/telecomm/java/android/telecom/RemoteConference.java index 4bff688dc5ca..502b7c01b0c0 100644 --- a/telecomm/java/android/telecom/RemoteConference.java +++ b/telecomm/java/android/telecom/RemoteConference.java @@ -311,6 +311,9 @@ public final class RemoteConference { /** @hide */ void putExtras(final Bundle extras) { + if (extras == null) { + return; + } if (mExtras == null) { mExtras = new Bundle(); } diff --git a/telecomm/java/android/telecom/RemoteConnection.java b/telecomm/java/android/telecom/RemoteConnection.java index 11842a0d02e2..0e4f53e4881a 100644 --- a/telecomm/java/android/telecom/RemoteConnection.java +++ b/telecomm/java/android/telecom/RemoteConnection.java @@ -651,6 +651,14 @@ public final class RemoteConnection { mCallerDisplayName = connection.getCallerDisplayName(); mCallerDisplayNamePresentation = connection.getCallerDisplayNamePresentation(); mConference = null; + putExtras(connection.getExtras()); + + // Stash the original connection ID as it exists in the source ConnectionService. + // Telecom will use this to avoid adding duplicates later. + // See comments on Connection.EXTRA_ORIGINAL_CONNECTION_ID for more information. + Bundle newExtras = new Bundle(); + newExtras.putString(Connection.EXTRA_ORIGINAL_CONNECTION_ID, callId); + putExtras(newExtras); } /** @@ -1350,6 +1358,9 @@ public final class RemoteConnection { /** @hide */ void putExtras(final Bundle extras) { + if (extras == null) { + return; + } if (mExtras == null) { mExtras = new Bundle(); } diff --git a/telecomm/java/android/telecom/RemoteConnectionService.java b/telecomm/java/android/telecom/RemoteConnectionService.java index 7321a274021c..0a8470af7a7d 100644 --- a/telecomm/java/android/telecom/RemoteConnectionService.java +++ b/telecomm/java/android/telecom/RemoteConnectionService.java @@ -219,18 +219,27 @@ final class RemoteConnectionService { conference.addConnection(c); } } - if (conference.getConnections().size() == 0) { // A conference was created, but none of its connections are ones that have been // created by, and therefore being tracked by, this remote connection service. It // is of no interest to us. + Log.d(this, "addConferenceCall - skipping"); return; } conference.setState(parcel.getState()); conference.setConnectionCapabilities(parcel.getConnectionCapabilities()); conference.setConnectionProperties(parcel.getConnectionProperties()); + conference.putExtras(parcel.getExtras()); mConferenceById.put(callId, conference); + + // Stash the original connection ID as it exists in the source ConnectionService. + // Telecom will use this to avoid adding duplicates later. + // See comments on Connection.EXTRA_ORIGINAL_CONNECTION_ID for more information. + Bundle newExtras = new Bundle(); + newExtras.putString(Connection.EXTRA_ORIGINAL_CONNECTION_ID, callId); + conference.putExtras(newExtras); + conference.registerCallback(new RemoteConference.Callback() { @Override public void onDestroyed(RemoteConference c) { @@ -342,11 +351,17 @@ final class RemoteConnectionService { @Override public void addExistingConnection(String callId, ParcelableConnection connection, Session.Info sessionInfo) { - // TODO: add contents of this method - RemoteConnection remoteConnction = new RemoteConnection(callId, + RemoteConnection remoteConnection = new RemoteConnection(callId, mOutgoingConnectionServiceRpc, connection); - - mOurConnectionServiceImpl.addRemoteExistingConnection(remoteConnction); + mConnectionById.put(callId, remoteConnection); + remoteConnection.registerCallback(new RemoteConnection.Callback() { + @Override + public void onDestroyed(RemoteConnection connection) { + mConnectionById.remove(callId); + maybeDisconnectAdapter(); + } + }); + mOurConnectionServiceImpl.addRemoteExistingConnection(remoteConnection); } @Override diff --git a/telephony/java/android/telephony/CarrierConfigManager.java b/telephony/java/android/telephony/CarrierConfigManager.java index d611ed974776..c19febfec99c 100644 --- a/telephony/java/android/telephony/CarrierConfigManager.java +++ b/telephony/java/android/telephony/CarrierConfigManager.java @@ -734,6 +734,16 @@ public class CarrierConfigManager { public static final String KEY_CARRIER_ADDITIONAL_CBS_CHANNELS_STRINGS = "carrier_additional_cbs_channels_strings"; + /** + * Indicates whether STK LAUNCH_BROWSER command is disabled. + * If {@code true}, then the browser will not be launched + * on UI for the LAUNCH_BROWSER STK command. + * @hide + */ + public static final String KEY_STK_DISABLE_LAUNCH_BROWSER_BOOL = + "stk_disable_launch_browser_bool"; + + // These variables are used by the MMS service and exposed through another API, {@link // SmsManager}. The variable names and string values are copied from there. public static final String KEY_MMS_ALIAS_ENABLED_BOOL = "aliasEnabled"; @@ -1203,6 +1213,7 @@ public class CarrierConfigManager { sDefaults.putBoolean(KEY_NOTIFY_VT_HANDOVER_TO_WIFI_FAILURE_BOOL, false); sDefaults.putStringArray(FILTERED_CNAP_NAMES_STRING_ARRAY, null); sDefaults.putBoolean(KEY_EDITABLE_WFC_ROAMING_MODE_BOOL, false); + sDefaults.putBoolean(KEY_STK_DISABLE_LAUNCH_BROWSER_BOOL, false); } /** |