Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2ec16b08 authored by Makoto Onuki's avatar Makoto Onuki
Browse files

Revert "LauncherApps should also throw when user is locked"

This reverts commit bc4ad85d.

Will retry when the updated launcher is in.

Change-Id: I428dc93132615480df70aeca7977089af008c041
parent bc4ad85d
Loading
Loading
Loading
Loading
+21 −13
Original line number Diff line number Diff line
@@ -492,7 +492,7 @@ public class LauncherApps {
     * If the calling launcher application contains pinned shortcuts, they will still work,
     * even though the caller no longer has the shortcut host permission.
     *
     * @throws IllegalStateException when the user is locked.
     * <p>Returns {@code false} when the user is locked.
     *
     * @see ShortcutManager
     */
@@ -510,12 +510,13 @@ public class LauncherApps {
     * <p>Callers must be allowed to access the shortcut information, as defined in {@link
     * #hasShortcutHostPermission()}.
     *
     * <p>Returns am empty list when the user is locked, or when the {@code user} user
     * is locked or not running.
     *
     * @param query result includes shortcuts matching this query.
     * @param user The UserHandle of the profile.
     *
     * @return the IDs of {@link ShortcutInfo}s that match the query.
     * @throws IllegalStateException when the user is locked, or when the {@code user} user
     * is locked or not running.
     *
     * @see ShortcutManager
     */
@@ -555,11 +556,12 @@ public class LauncherApps {
     * <p>The calling launcher application must be allowed to access the shortcut information,
     * as defined in {@link #hasShortcutHostPermission()}.
     *
     * <p>Call will be ignored when the user is locked, or when the {@code user} user
     * is locked or not running.
     *
     * @param packageName The target package name.
     * @param shortcutIds The IDs of the shortcut to be pinned.
     * @param user The UserHandle of the profile.
     * @throws IllegalStateException when the user is locked, or when the {@code user} user
     * is locked or not running.
     *
     * @see ShortcutManager
     */
@@ -628,12 +630,13 @@ public class LauncherApps {
     * <p>The calling launcher application must be allowed to access the shortcut information,
     * as defined in {@link #hasShortcutHostPermission()}.
     *
     * <p>Returns {@code null} when the user is locked, or when the user owning the shortcut
     * is locked or not running.
     *
     * @param density The preferred density of the icon, zero for default density. Use
     * density DPI values from {@link DisplayMetrics}.
     *
     * @return The drawable associated with the shortcut.
     * @throws IllegalStateException when the user is locked, or when the {@code user} user
     * is locked or not running.
     *
     * @see ShortcutManager
     * @see #getShortcutBadgedIconDrawable(ShortcutInfo, int)
@@ -678,10 +681,11 @@ public class LauncherApps {
     * <p>The calling launcher application must be allowed to access the shortcut information,
     * as defined in {@link #hasShortcutHostPermission()}.
     *
     * <p>Returns {@code 0} when the user is locked, or when the user owning the shortcut
     * is locked or not running.
     *
     * @param density Optional density for the icon, or 0 to use the default density. Use
     * @return A badged icon for the shortcut.
     * @throws IllegalStateException when the user is locked, or when the {@code user} user
     * is locked or not running.
     *
     * @see ShortcutManager
     * @see #getShortcutIconDrawable(ShortcutInfo, int)
@@ -700,13 +704,15 @@ public class LauncherApps {
     * <p>The calling launcher application must be allowed to access the shortcut information,
     * as defined in {@link #hasShortcutHostPermission()}.
     *
     * <p>Throws {@link android.content.ActivityNotFoundException}
     * when the user is locked, or when the {@code user} user
     * is locked or not running.
     *
     * @param packageName The target shortcut package name.
     * @param shortcutId The target shortcut ID.
     * @param sourceBounds The Rect containing the source bounds of the clicked icon.
     * @param startActivityOptions Options to pass to startActivity.
     * @param user The UserHandle of the profile.
     * @throws IllegalStateException when the user is locked, or when the {@code user} user
     * is locked or not running.
     *
     * @throws android.content.ActivityNotFoundException failed to start shortcut. (e.g.
     * the shortcut no longer exists, is disabled, the intent receiver activity doesn't exist, etc)
@@ -724,11 +730,13 @@ public class LauncherApps {
     * <p>The calling launcher application must be allowed to access the shortcut information,
     * as defined in {@link #hasShortcutHostPermission()}.
     *
     * <p>Throws {@link android.content.ActivityNotFoundException}
     * when the user is locked, or when the user owning the shortcut
     * is locked or not running.
     *
     * @param shortcut The target shortcut.
     * @param sourceBounds The Rect containing the source bounds of the clicked icon.
     * @param startActivityOptions Options to pass to startActivity.
     * @throws IllegalStateException when the user is locked, or when the {@code user} user
     * is locked or not running.
     *
     * @throws android.content.ActivityNotFoundException failed to start shortcut. (e.g.
     * the shortcut no longer exists, is disabled, the intent receiver activity doesn't exist, etc)
+24 −16
Original line number Diff line number Diff line
@@ -2170,9 +2170,9 @@ public class ShortcutService extends IShortcutService.Stub {
                @Nullable ComponentName componentName,
                int queryFlags, int userId) {
            final ArrayList<ShortcutInfo> ret = new ArrayList<>();

            throwIfUserLocked(userId);
            throwIfUserLocked(launcherUserId);
            if (!isUserUnlocked(userId) || !isUserUnlocked(launcherUserId)) {
                return ret;
            }

            final boolean cloneKeyFieldOnly =
                    ((queryFlags & ShortcutQuery.FLAG_GET_KEY_FIELDS_ONLY) != 0);
@@ -2251,8 +2251,9 @@ public class ShortcutService extends IShortcutService.Stub {
            Preconditions.checkStringNotEmpty(packageName, "packageName");
            Preconditions.checkStringNotEmpty(shortcutId, "shortcutId");

            throwIfUserLocked(userId);
            throwIfUserLocked(launcherUserId);
            if (!isUserUnlocked(userId) || !isUserUnlocked(launcherUserId)) {
                return false;
            }

            synchronized (mLock) {
                getLauncherShortcutsLocked(callingPackage, userId, launcherUserId)
@@ -2270,8 +2271,9 @@ public class ShortcutService extends IShortcutService.Stub {
            Preconditions.checkStringNotEmpty(packageName, "packageName");
            Preconditions.checkStringNotEmpty(shortcutId, "shortcutId");

            throwIfUserLocked(userId);
            throwIfUserLocked(launcherUserId);
            if (!isUserUnlocked(userId) || !isUserUnlocked(launcherUserId)) {
                return null;
            }

            final ShortcutPackage p = getUserShortcutsLocked(userId)
                    .getPackageShortcutsIfExists(packageName);
@@ -2294,8 +2296,9 @@ public class ShortcutService extends IShortcutService.Stub {
            Preconditions.checkStringNotEmpty(packageName, "packageName");
            Preconditions.checkNotNull(shortcutIds, "shortcutIds");

            throwIfUserLocked(userId);
            throwIfUserLocked(launcherUserId);
            if (!isUserUnlocked(userId) || !isUserUnlocked(launcherUserId)) {
                return;
            }

            synchronized (mLock) {
                final ShortcutLauncher launcher =
@@ -2317,8 +2320,9 @@ public class ShortcutService extends IShortcutService.Stub {
            Preconditions.checkStringNotEmpty(packageName, "packageName can't be empty");
            Preconditions.checkStringNotEmpty(shortcutId, "shortcutId can't be empty");

            throwIfUserLocked(userId);
            throwIfUserLocked(launcherUserId);
            if (!isUserUnlocked(userId) || !isUserUnlocked(launcherUserId)) {
                return null;
            }

            synchronized (mLock) {
                getLauncherShortcutsLocked(callingPackage, userId, launcherUserId)
@@ -2350,8 +2354,9 @@ public class ShortcutService extends IShortcutService.Stub {
            Preconditions.checkNotNull(packageName, "packageName");
            Preconditions.checkNotNull(shortcutId, "shortcutId");

            throwIfUserLocked(userId);
            throwIfUserLocked(launcherUserId);
            if (!isUserUnlocked(userId) || !isUserUnlocked(launcherUserId)) {
                return 0;
            }

            synchronized (mLock) {
                getLauncherShortcutsLocked(callingPackage, userId, launcherUserId)
@@ -2377,8 +2382,9 @@ public class ShortcutService extends IShortcutService.Stub {
            Preconditions.checkNotNull(packageName, "packageName");
            Preconditions.checkNotNull(shortcutId, "shortcutId");

            throwIfUserLocked(userId);
            throwIfUserLocked(launcherUserId);
            if (!isUserUnlocked(userId) || !isUserUnlocked(launcherUserId)) {
                return null;
            }

            synchronized (mLock) {
                getLauncherShortcutsLocked(callingPackage, userId, launcherUserId)
@@ -2412,7 +2418,9 @@ public class ShortcutService extends IShortcutService.Stub {
        @Override
        public boolean hasShortcutHostPermission(int launcherUserId,
                @NonNull String callingPackage) {
            throwIfUserLocked(launcherUserId);
            if (!isUserUnlocked(launcherUserId)) {
                return false;
            }
            return ShortcutService.this.hasShortcutHostPermission(callingPackage, launcherUserId);
        }
    }