summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/api/system-current.txt5
-rw-r--r--core/api/system-lint-baseline.txt4
-rw-r--r--core/api/test-current.txt2
-rw-r--r--core/java/android/app/StatusBarManager.aidl19
-rw-r--r--core/java/android/app/StatusBarManager.java440
-rw-r--r--core/java/com/android/internal/statusbar/IStatusBarService.aidl5
-rw-r--r--libs/WindowManager/Shell/src/com/android/wm/shell/draganddrop/DragLayout.java16
-rw-r--r--packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialogLite.java10
-rw-r--r--packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java16
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/phone/CentralSurfacesImpl.java11
-rw-r--r--services/core/java/com/android/server/UiModeManagerService.java8
-rw-r--r--services/core/java/com/android/server/statusbar/StatusBarManagerService.java86
-rw-r--r--services/core/java/com/android/server/statusbar/StatusBarShellCommand.java28
-rw-r--r--services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java6
-rw-r--r--tests/StatusBar/src/com/android/statusbartest/StatusBarTest.java53
15 files changed, 150 insertions, 559 deletions
diff --git a/core/api/system-current.txt b/core/api/system-current.txt
index 81a1a2df6db5..5aa89b98353f 100644
--- a/core/api/system-current.txt
+++ b/core/api/system-current.txt
@@ -1142,16 +1142,13 @@ package android.app {
field public static final int NAV_BAR_MODE_KIDS = 1; // 0x1
}
- public static final class StatusBarManager.DisableInfo implements android.os.Parcelable {
+ public static final class StatusBarManager.DisableInfo {
method public boolean areAllComponentsEnabled();
- method public int describeContents();
method public boolean isNavigateToHomeDisabled();
method public boolean isNotificationPeekingDisabled();
method public boolean isRecentsDisabled();
method public boolean isSearchDisabled();
method public boolean isStatusBarExpansionDisabled();
- method public void writeToParcel(@NonNull android.os.Parcel, int);
- field @NonNull public static final android.os.Parcelable.Creator<android.app.StatusBarManager.DisableInfo> CREATOR;
}
public final class SystemServiceRegistry {
diff --git a/core/api/system-lint-baseline.txt b/core/api/system-lint-baseline.txt
index 1923641e2d4e..11c5b96fc100 100644
--- a/core/api/system-lint-baseline.txt
+++ b/core/api/system-lint-baseline.txt
@@ -1941,10 +1941,6 @@ UnflaggedApi: android.app.ActivityManager#getExternalHistoricalProcessStartReaso
New API must be flagged with @FlaggedApi: method android.app.ActivityManager.getExternalHistoricalProcessStartReasons(String,int)
UnflaggedApi: android.app.AppOpsManager#OPSTR_RECEIVE_SANDBOX_TRIGGER_AUDIO:
New API must be flagged with @FlaggedApi: field android.app.AppOpsManager.OPSTR_RECEIVE_SANDBOX_TRIGGER_AUDIO
-UnflaggedApi: android.app.StatusBarManager.DisableInfo#CREATOR:
- New API must be flagged with @FlaggedApi: field android.app.StatusBarManager.DisableInfo.CREATOR
-UnflaggedApi: android.app.StatusBarManager.DisableInfo#isBackDisabled():
- New API must be flagged with @FlaggedApi: method android.app.StatusBarManager.DisableInfo.isBackDisabled()
UnflaggedApi: android.companion.virtual.VirtualDeviceManager.VirtualDevice#getPersistentDeviceId():
New API must be flagged with @FlaggedApi: method android.companion.virtual.VirtualDeviceManager.VirtualDevice.getPersistentDeviceId()
UnflaggedApi: android.content.Context#THREAD_NETWORK_SERVICE:
diff --git a/core/api/test-current.txt b/core/api/test-current.txt
index 3b00cc958cf1..b55e5c937cfc 100644
--- a/core/api/test-current.txt
+++ b/core/api/test-current.txt
@@ -461,7 +461,7 @@ package android.app {
method @RequiresPermission(android.Manifest.permission.STATUS_BAR) public void togglePanel();
}
- public static final class StatusBarManager.DisableInfo implements android.os.Parcelable {
+ public static final class StatusBarManager.DisableInfo {
method public boolean isRotationSuggestionDisabled();
}
diff --git a/core/java/android/app/StatusBarManager.aidl b/core/java/android/app/StatusBarManager.aidl
deleted file mode 100644
index 687678c4ea8d..000000000000
--- a/core/java/android/app/StatusBarManager.aidl
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * Copyright (c) 2024, The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.app;
-
-parcelable StatusBarManager.DisableInfo; \ No newline at end of file
diff --git a/core/java/android/app/StatusBarManager.java b/core/java/android/app/StatusBarManager.java
index 301fef877d6c..14195c473c6d 100644
--- a/core/java/android/app/StatusBarManager.java
+++ b/core/java/android/app/StatusBarManager.java
@@ -21,7 +21,6 @@ import android.annotation.IntDef;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.RequiresPermission;
-import android.annotation.SuppressLint;
import android.annotation.SystemApi;
import android.annotation.SystemService;
import android.annotation.TestApi;
@@ -44,7 +43,6 @@ import android.os.Binder;
import android.os.Build;
import android.os.Bundle;
import android.os.IBinder;
-import android.os.Parcelable;
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.UserHandle;
@@ -59,7 +57,6 @@ import com.android.internal.statusbar.IAddTileResultCallback;
import com.android.internal.statusbar.IStatusBarService;
import com.android.internal.statusbar.IUndoMediaTransferCallback;
import com.android.internal.statusbar.NotificationVisibility;
-import com.android.internal.util.DataClass;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@@ -632,49 +629,38 @@ public class StatusBarManager {
}
/**
- * @deprecated
- * Disable some features in the status bar. Pass the bitwise-or of the DISABLE_*
- * flags. To re-enable everything, pass {@link #DISABLE_NONE}.
- *
- * This method is deprecated and callers should use
- * {@link #requestDisabledComponent(DisableInfo, String)}
+ * Disable some features in the status bar. Pass the bitwise-or of the DISABLE_* flags.
+ * To re-enable everything, pass {@link #DISABLE_NONE}.
*
* @hide
*/
- @Deprecated
@UnsupportedAppUsage
public void disable(int what) {
- requestDisabledComponent(new DisableInfo(what & DISABLE_MASK, what & DISABLE2_MASK), null);
+ try {
+ final int userId = Binder.getCallingUserHandle().getIdentifier();
+ final IStatusBarService svc = getService();
+ if (svc != null) {
+ svc.disableForUser(what, mToken, mContext.getPackageName(), userId);
+ }
+ } catch (RemoteException ex) {
+ throw ex.rethrowFromSystemServer();
+ }
}
/**
- * @deprecated
- * Disable some features in the status bar. Pass the bitwise-or of the DISABLE_2*
- * flags. To re-enable everything, pass {@link #DISABLE2_NONE}.
+ * Disable additional status bar features. Pass the bitwise-or of the DISABLE2_* flags.
+ * To re-enable everything, pass {@link #DISABLE_NONE}.
*
- * This method is deprecated and callers should use
- * {@link #requestDisabledComponent(DisableInfo, String)}
+ * Warning: Only pass DISABLE2_* flags into this function, do not use DISABLE_* flags.
*
* @hide
*/
- @Deprecated
- @UnsupportedAppUsage
- public void disable2(int what) {
- requestDisabledComponent(new DisableInfo(what & DISABLE_MASK, what & DISABLE2_MASK), null);
- }
-
- /**
- * Disable some features in the status bar. Pass a DisableInfo object with the required flags.
- *
- * @hide
- */
- @UnsupportedAppUsage
- public void requestDisabledComponent(DisableInfo disableInfo, String reason) {
+ public void disable2(@Disable2Flags int what) {
try {
final int userId = Binder.getCallingUserHandle().getIdentifier();
final IStatusBarService svc = getService();
if (svc != null) {
- svc.disableForUser(disableInfo, mToken, mContext.getPackageName(), userId, reason);
+ svc.disable2ForUser(what, mToken, mContext.getPackageName(), userId);
}
} catch (RemoteException ex) {
throw ex.rethrowFromSystemServer();
@@ -902,9 +888,18 @@ public class StatusBarManager {
@SystemApi
@RequiresPermission(android.Manifest.permission.STATUS_BAR)
public void setDisabledForSetup(boolean disabled) {
- int flags1 = disabled ? DEFAULT_SETUP_DISABLE_FLAGS : DISABLE_NONE;
- DisableInfo info = new DisableInfo(flags1, DISABLE2_NONE);
- requestDisabledComponent(info, "setDisabledForSetup");
+ try {
+ final int userId = Binder.getCallingUserHandle().getIdentifier();
+ final IStatusBarService svc = getService();
+ if (svc != null) {
+ svc.disableForUser(disabled ? DEFAULT_SETUP_DISABLE_FLAGS : DISABLE_NONE,
+ mToken, mContext.getPackageName(), userId);
+ svc.disable2ForUser(disabled ? DEFAULT_SETUP_DISABLE2_FLAGS : DISABLE2_NONE,
+ mToken, mContext.getPackageName(), userId);
+ }
+ } catch (RemoteException ex) {
+ throw ex.rethrowFromSystemServer();
+ }
}
/**
@@ -919,9 +914,16 @@ public class StatusBarManager {
@SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
@RequiresPermission(android.Manifest.permission.STATUS_BAR)
public void setExpansionDisabledForSimNetworkLock(boolean disabled) {
- int flags1 = disabled ? DEFAULT_SIM_LOCKED_DISABLED_FLAGS : DISABLE_NONE;
- DisableInfo info = new DisableInfo(flags1, DISABLE2_NONE);
- requestDisabledComponent(info, "setExpansionDisabledForSimNetworkLock");
+ try {
+ final int userId = Binder.getCallingUserHandle().getIdentifier();
+ final IStatusBarService svc = getService();
+ if (svc != null) {
+ svc.disableForUser(disabled ? DEFAULT_SIM_LOCKED_DISABLED_FLAGS : DISABLE_NONE,
+ mToken, mContext.getPackageName(), userId);
+ }
+ } catch (RemoteException ex) {
+ throw ex.rethrowFromSystemServer();
+ }
}
/**
@@ -1313,75 +1315,33 @@ public class StatusBarManager {
* @hide
*/
@SystemApi
- @DataClass
- public static final class DisableInfo implements Parcelable {
+ public static final class DisableInfo {
- /**
- * @hide
- */
private boolean mStatusBarExpansion;
- /**
- * @hide
- */
private boolean mNavigateHome;
- /**
- * @hide
- */
private boolean mNotificationPeeking;
- /**
- * @hide
- */
private boolean mRecents;
- /**
- * @hide
- */
- private boolean mBack;
- /**
- * @hide
- */
private boolean mSearch;
- /**
- * @hide
- */
private boolean mSystemIcons;
- /**
- * @hide
- */
private boolean mClock;
- /**
- * @hide
- */
private boolean mNotificationIcons;
- /**
- * @hide
- */
private boolean mRotationSuggestion;
- /**
- * @hide
- */
- private boolean mNotificationTicker;
/** @hide */
- @SuppressLint("UnflaggedApi")
public DisableInfo(int flags1, int flags2) {
mStatusBarExpansion = (flags1 & DISABLE_EXPAND) != 0;
mNavigateHome = (flags1 & DISABLE_HOME) != 0;
mNotificationPeeking = (flags1 & DISABLE_NOTIFICATION_ALERTS) != 0;
mRecents = (flags1 & DISABLE_RECENT) != 0;
- mBack = (flags1 & DISABLE_BACK) != 0;
mSearch = (flags1 & DISABLE_SEARCH) != 0;
mSystemIcons = (flags1 & DISABLE_SYSTEM_INFO) != 0;
mClock = (flags1 & DISABLE_CLOCK) != 0;
mNotificationIcons = (flags1 & DISABLE_NOTIFICATION_ICONS) != 0;
- mNotificationTicker = (flags1 & DISABLE_NOTIFICATION_TICKER) != 0;
mRotationSuggestion = (flags2 & DISABLE2_ROTATE_SUGGESTIONS) != 0;
}
/** @hide */
- @SuppressLint("UnflaggedApi")
- public DisableInfo() {
- setEnableAll();
- }
+ public DisableInfo() {}
/**
* @return {@code true} if expanding the notification shade is disabled
@@ -1409,7 +1369,7 @@ public class StatusBarManager {
}
/** * @hide */
- public void setNavigationHomeDisabled(boolean disabled) {
+ public void setNagivationHomeDisabled(boolean disabled) {
mNavigateHome = disabled;
}
@@ -1444,20 +1404,6 @@ public class StatusBarManager {
}
/**
- * @return {@code true} if mBack is disabled
- *
- * @hide
- */
- public boolean isBackDisabled() {
- return mBack;
- }
-
- /** @hide */
- public void setBackDisabled(boolean disabled) {
- mBack = disabled;
- }
-
- /**
* @return {@code true} if mSearch is disabled
*
* @hide
@@ -1515,20 +1461,6 @@ public class StatusBarManager {
}
/**
- * @return {@code true} if notification ticker is disabled
- *
- * @hide
- */
- public boolean isNotificationTickerDisabled() {
- return mNotificationTicker;
- }
-
- /** * @hide */
- public void setNotificationTickerDisabled(boolean disabled) {
- mNotificationTicker = disabled;
- }
-
- /**
* Returns whether the rotation suggestion is disabled.
*
* @hide
@@ -1538,11 +1470,6 @@ public class StatusBarManager {
return mRotationSuggestion;
}
- /** * @hide */
- public void setRotationSuggestionDisabled(boolean disabled) {
- mNotificationIcons = disabled;
- }
-
/**
* @return {@code true} if no components are disabled (default state)
* @hide
@@ -1550,8 +1477,8 @@ public class StatusBarManager {
@SystemApi
public boolean areAllComponentsEnabled() {
return !mStatusBarExpansion && !mNavigateHome && !mNotificationPeeking && !mRecents
- && !mBack && !mSearch && !mSystemIcons && !mClock && !mNotificationIcons
- && !mNotificationTicker && !mRotationSuggestion;
+ && !mSearch && !mSystemIcons && !mClock && !mNotificationIcons
+ && !mRotationSuggestion;
}
/** @hide */
@@ -1560,12 +1487,10 @@ public class StatusBarManager {
mNavigateHome = false;
mNotificationPeeking = false;
mRecents = false;
- mBack = false;
mSearch = false;
mSystemIcons = false;
mClock = false;
mNotificationIcons = false;
- mNotificationTicker = false;
mRotationSuggestion = false;
}
@@ -1575,9 +1500,9 @@ public class StatusBarManager {
* @hide
*/
public boolean areAllComponentsDisabled() {
- return mStatusBarExpansion && mNavigateHome && mNotificationPeeking && mRecents && mBack
- && mSearch && mSystemIcons && mClock && mNotificationIcons
- && mNotificationTicker && mRotationSuggestion;
+ return mStatusBarExpansion && mNavigateHome && mNotificationPeeking
+ && mRecents && mSearch && mSystemIcons && mClock && mNotificationIcons
+ && mRotationSuggestion;
}
/** @hide */
@@ -1586,12 +1511,10 @@ public class StatusBarManager {
mNavigateHome = true;
mNotificationPeeking = true;
mRecents = true;
- mBack = true;
mSearch = true;
mSystemIcons = true;
mClock = true;
mNotificationIcons = true;
- mNotificationTicker = true;
mRotationSuggestion = true;
}
@@ -1599,19 +1522,16 @@ public class StatusBarManager {
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
-
- sb.append("Disable Info: ");
+ sb.append("DisableInfo: ");
sb.append(" mStatusBarExpansion=").append(mStatusBarExpansion ? "disabled" : "enabled");
sb.append(" mNavigateHome=").append(mNavigateHome ? "disabled" : "enabled");
sb.append(" mNotificationPeeking=")
.append(mNotificationPeeking ? "disabled" : "enabled");
sb.append(" mRecents=").append(mRecents ? "disabled" : "enabled");
- sb.append(" mBack=").append(mBack ? "disabled" : "enabled");
sb.append(" mSearch=").append(mSearch ? "disabled" : "enabled");
sb.append(" mSystemIcons=").append(mSystemIcons ? "disabled" : "enabled");
sb.append(" mClock=").append(mClock ? "disabled" : "enabled");
sb.append(" mNotificationIcons=").append(mNotificationIcons ? "disabled" : "enabled");
- sb.append(" mNotificationTicker=").append(mNotificationTicker ? "disabled" : "enabled");
sb.append(" mRotationSuggestion=").append(mRotationSuggestion ? "disabled" : "enabled");
return sb.toString();
@@ -1619,7 +1539,7 @@ public class StatusBarManager {
}
/**
- * Convert a DisableInfo to equivalent flags.
+ * Convert a DisableInfo to equivalent flags
* @return a pair of equivalent disable flags
*
* @hide
@@ -1632,278 +1552,14 @@ public class StatusBarManager {
if (mNavigateHome) disable1 |= DISABLE_HOME;
if (mNotificationPeeking) disable1 |= DISABLE_NOTIFICATION_ALERTS;
if (mRecents) disable1 |= DISABLE_RECENT;
- if (mBack) disable1 |= DISABLE_BACK;
if (mSearch) disable1 |= DISABLE_SEARCH;
if (mSystemIcons) disable1 |= DISABLE_SYSTEM_INFO;
if (mClock) disable1 |= DISABLE_CLOCK;
if (mNotificationIcons) disable1 |= DISABLE_NOTIFICATION_ICONS;
- if (mNotificationTicker) disable1 |= DISABLE_NOTIFICATION_TICKER;
if (mRotationSuggestion) disable2 |= DISABLE2_ROTATE_SUGGESTIONS;
return new Pair<Integer, Integer>(disable1, disable2);
}
-
-
-
- // Code below generated by codegen v1.0.23.
- //
- // DO NOT MODIFY!
- // CHECKSTYLE:OFF Generated code
- //
- // To regenerate run:
- // $ codegen $ANDROID_BUILD_TOP/frameworks/base/core/java/android/app/StatusBarManager.java
- //
- // To exclude the generated code from IntelliJ auto-formatting enable (one-time):
- // Settings > Editor > Code Style > Formatter Control
- //@formatter:off
-
-
- /**
- * Creates a new DisableInfo.
- * @hide
- */
- @DataClass.Generated.Member
- public DisableInfo(
- boolean statusBarExpansion,
- boolean navigateHome,
- boolean notificationPeeking,
- boolean recents,
- boolean back,
- boolean search,
- boolean systemIcons,
- boolean clock,
- boolean notificationIcons,
- boolean rotationSuggestion,
- boolean notificationTicker) {
- this.mStatusBarExpansion = statusBarExpansion;
- this.mNavigateHome = navigateHome;
- this.mNotificationPeeking = notificationPeeking;
- this.mRecents = recents;
- this.mBack = back;
- this.mSearch = search;
- this.mSystemIcons = systemIcons;
- this.mClock = clock;
- this.mNotificationIcons = notificationIcons;
- this.mRotationSuggestion = rotationSuggestion;
- this.mNotificationTicker = notificationTicker;
-
- // onConstructed(); // You can define this method to get a callback
- }
-
- /**
- * @hide
- */
- @DataClass.Generated.Member
- public boolean isStatusBarExpansion() {
- return mStatusBarExpansion;
- }
-
- /**
- * @hide
- */
- @DataClass.Generated.Member
- public boolean isNavigateHome() {
- return mNavigateHome;
- }
-
- /**
- * @hide
- */
- @DataClass.Generated.Member
- public boolean isNotificationPeeking() {
- return mNotificationPeeking;
- }
-
- /**
- * @hide
- */
- @DataClass.Generated.Member
- public boolean isRecents() {
- return mRecents;
- }
-
- /**
- * @hide
- */
- @DataClass.Generated.Member
- public boolean isBack() {
- return mBack;
- }
-
- /**
- * @hide
- */
- @DataClass.Generated.Member
- public boolean isSearch() {
- return mSearch;
- }
-
- /**
- * @hide
- */
- @DataClass.Generated.Member
- public boolean isSystemIcons() {
- return mSystemIcons;
- }
-
- /**
- * @hide
- */
- @DataClass.Generated.Member
- public boolean isClock() {
- return mClock;
- }
-
- /**
- * @hide
- */
- @DataClass.Generated.Member
- public boolean isNotificationIcons() {
- return mNotificationIcons;
- }
-
- /**
- * @hide
- */
- @DataClass.Generated.Member
- public boolean isRotationSuggestion() {
- return mRotationSuggestion;
- }
-
- /**
- * @hide
- */
- @DataClass.Generated.Member
- public boolean isNotificationTicker() {
- return mNotificationTicker;
- }
-
- /**
- * @hide
- */
- @SuppressLint("UnflaggedApi")
- @Override
- @DataClass.Generated.Member
- public void writeToParcel(@NonNull android.os.Parcel dest, int flags) {
- // You can override field parcelling by defining methods like:
- // void parcelFieldName(Parcel dest, int flags) { ... }
-
- int flg = 0;
- if (mStatusBarExpansion) flg |= 0x1;
- if (mNavigateHome) flg |= 0x2;
- if (mNotificationPeeking) flg |= 0x4;
- if (mRecents) flg |= 0x8;
- if (mBack) flg |= 0x10;
- if (mSearch) flg |= 0x20;
- if (mSystemIcons) flg |= 0x40;
- if (mClock) flg |= 0x80;
- if (mNotificationIcons) flg |= 0x100;
- if (mRotationSuggestion) flg |= 0x200;
- if (mNotificationTicker) flg |= 0x400;
- dest.writeInt(flg);
- }
-
- /**
- * @hide
- */
- @SuppressLint("UnflaggedApi")
- @Override
- @DataClass.Generated.Member
- public int describeContents() { return 0; }
-
- /** @hide */
- @SuppressWarnings({"unchecked", "RedundantCast"})
- @DataClass.Generated.Member
- /* package-private */ DisableInfo(@NonNull android.os.Parcel in) {
- // You can override field unparcelling by defining methods like:
- // static FieldType unparcelFieldName(Parcel in) { ... }
-
- int flg = in.readInt();
- boolean statusBarExpansion = (flg & 0x1) != 0;
- boolean navigateHome = (flg & 0x2) != 0;
- boolean notificationPeeking = (flg & 0x4) != 0;
- boolean recents = (flg & 0x8) != 0;
- boolean back = (flg & 0x10) != 0;
- boolean search = (flg & 0x20) != 0;
- boolean systemIcons = (flg & 0x40) != 0;
- boolean clock = (flg & 0x80) != 0;
- boolean notificationIcons = (flg & 0x100) != 0;
- boolean rotationSuggestion = (flg & 0x200) != 0;
- boolean notificationTicker = (flg & 0x400) != 0;
-
- this.mStatusBarExpansion = statusBarExpansion;
- this.mNavigateHome = navigateHome;
- this.mNotificationPeeking = notificationPeeking;
- this.mRecents = recents;
- this.mBack = back;
- this.mSearch = search;
- this.mSystemIcons = systemIcons;
- this.mClock = clock;
- this.mNotificationIcons = notificationIcons;
- this.mRotationSuggestion = rotationSuggestion;
- this.mNotificationTicker = notificationTicker;
-
- // onConstructed(); // You can define this method to get a callback
- }
-
- @DataClass.Generated.Member
- public static final @NonNull Parcelable.Creator<DisableInfo> CREATOR
- = new Parcelable.Creator<DisableInfo>() {
- @Override
- public DisableInfo[] newArray(int size) {
- return new DisableInfo[size];
- }
-
- @Override
- public DisableInfo createFromParcel(@NonNull android.os.Parcel in) {
- return new DisableInfo(in);
- }
- };
-
- @DataClass.Generated(
- time = 1708625947132L,
- codegenVersion = "1.0.23",
- sourceFile = "frameworks/base/core/java/android/app/StatusBarManager.java",
- inputSignatures = "private boolean mStatusBarExpansion\nprivate boolean "
- + "mNavigateHome\nprivate boolean mNotificationPeeking\nprivate "
- + "boolean mRecents\nprivate boolean mBack\nprivate boolean mSearch\n"
- + "private boolean mSystemIcons\nprivate boolean mClock\nprivate "
- + "boolean mNotificationIcons\nprivate boolean mRotationSuggestion\n"
- + "private boolean mNotificationTicker\npublic "
- + "@android.annotation.SystemApi boolean isStatusBarExpansionDisabled()\n"
- + "public void setStatusBarExpansionDisabled(boolean)\npublic "
- + "@android.annotation.SystemApi boolean isNavigateToHomeDisabled()\npublic"
- + " void setNavigationHomeDisabled(boolean)\npublic "
- + "@android.annotation.SystemApi boolean isNotificationPeekingDisabled()"
- + "\npublic void setNotificationPeekingDisabled(boolean)\npublic "
- + "@android.annotation.SystemApi boolean isRecentsDisabled()\npublic "
- + "void setRecentsDisabled(boolean)\npublic boolean isBackDisabled()"
- + "\npublic void setBackDisabled(boolean)\npublic "
- + "@android.annotation.SystemApi boolean isSearchDisabled()\npublic "
- + "void setSearchDisabled(boolean)\npublic boolean "
- + "areSystemIconsDisabled()\npublic void setSystemIconsDisabled(boolean)\n"
- + "public boolean isClockDisabled()\npublic "
- + "void setClockDisabled(boolean)\npublic boolean "
- + "areNotificationIconsDisabled()\npublic void "
- + "setNotificationIconsDisabled(boolean)\npublic boolean "
- + "isNotificationTickerDisabled()\npublic void "
- + "setNotificationTickerDisabled(boolean)\npublic "
- + "@android.annotation.TestApi boolean isRotationSuggestionDisabled()\n"
- + "public void setRotationSuggestionDisabled(boolean)\npublic "
- + "@android.annotation.SystemApi boolean areAllComponentsEnabled()\npublic"
- + " void setEnableAll()\npublic boolean areAllComponentsDisabled()\n"
- + "public void setDisableAll()\npublic @android.annotation.NonNull "
- + "@java.lang.Override java.lang.String toString()\npublic "
- + "android.util.Pair<java.lang.Integer,java.lang.Integer> toFlags()\n"
- + "class DisableInfo extends java.lang.Object implements "
- + "[android.os.Parcelable]\n@com.android.internal.util.DataClass")
- @Deprecated
- private void __metadata() {}
-
-
- //@formatter:on
- // End of generated code
-
}
/**
diff --git a/core/java/com/android/internal/statusbar/IStatusBarService.aidl b/core/java/com/android/internal/statusbar/IStatusBarService.aidl
index b83b2d20c561..fc60f065a965 100644
--- a/core/java/com/android/internal/statusbar/IStatusBarService.aidl
+++ b/core/java/com/android/internal/statusbar/IStatusBarService.aidl
@@ -17,7 +17,6 @@
package com.android.internal.statusbar;
import android.app.Notification;
-import android.app.StatusBarManager;
import android.content.ComponentName;
import android.graphics.drawable.Icon;
import android.graphics.Rect;
@@ -53,9 +52,9 @@ interface IStatusBarService
void togglePanel();
@UnsupportedAppUsage
void disable(int what, IBinder token, String pkg);
+ void disableForUser(int what, IBinder token, String pkg, int userId);
void disable2(int what, IBinder token, String pkg);
- void disableForUser(in StatusBarManager.DisableInfo info, IBinder token, String pkg, int userId, String reason);
-
+ void disable2ForUser(int what, IBinder token, String pkg, int userId);
int[] getDisableFlags(IBinder token, int userId);
void setIcon(String slot, String iconPackage, int iconId, int iconLevel, String contentDescription);
@UnsupportedAppUsage
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/draganddrop/DragLayout.java b/libs/WindowManager/Shell/src/com/android/wm/shell/draganddrop/DragLayout.java
index ecb53dc17a48..59d696918448 100644
--- a/libs/WindowManager/Shell/src/com/android/wm/shell/draganddrop/DragLayout.java
+++ b/libs/WindowManager/Shell/src/com/android/wm/shell/draganddrop/DragLayout.java
@@ -16,11 +16,11 @@
package com.android.wm.shell.draganddrop;
-import static android.app.StatusBarManager.DISABLE2_NONE;
import static android.app.StatusBarManager.DISABLE_NONE;
import static android.app.WindowConfiguration.ACTIVITY_TYPE_STANDARD;
import static android.content.pm.ActivityInfo.CONFIG_ASSETS_PATHS;
import static android.content.pm.ActivityInfo.CONFIG_UI_MODE;
+import static android.content.res.Configuration.ORIENTATION_LANDSCAPE;
import static android.view.ViewGroup.LayoutParams.MATCH_PARENT;
import static android.view.ViewTreeObserver.InternalInsetsInfo.TOUCHABLE_INSETS_FRAME;
import static android.view.ViewTreeObserver.InternalInsetsInfo.TOUCHABLE_INSETS_REGION;
@@ -516,20 +516,18 @@ public class DragLayout extends LinearLayout
}
private void animateFullscreenContainer(boolean visible) {
- int flags = visible ? HIDE_STATUS_BAR_FLAGS : DISABLE_NONE;
- StatusBarManager.DisableInfo disableInfo = new StatusBarManager.DisableInfo(flags,
- DISABLE2_NONE);
- mStatusBarManager.requestDisabledComponent(disableInfo, "animateFullscreenContainer");
+ mStatusBarManager.disable(visible
+ ? HIDE_STATUS_BAR_FLAGS
+ : DISABLE_NONE);
// We're only using the first drop zone if there is one fullscreen target
mDropZoneView1.setShowingMargin(visible);
mDropZoneView1.setShowingHighlight(visible);
}
private void animateSplitContainers(boolean visible, Runnable animCompleteCallback) {
- int flags = visible ? HIDE_STATUS_BAR_FLAGS : DISABLE_NONE;
- StatusBarManager.DisableInfo disableInfo = new StatusBarManager.DisableInfo(flags,
- DISABLE2_NONE);
- mStatusBarManager.requestDisabledComponent(disableInfo, "animateSplitContainers");
+ mStatusBarManager.disable(visible
+ ? HIDE_STATUS_BAR_FLAGS
+ : DISABLE_NONE);
mDropZoneView1.setShowingMargin(visible);
mDropZoneView2.setShowingMargin(visible);
Animator animator = mDropZoneView1.getAnimator();
diff --git a/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialogLite.java b/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialogLite.java
index 0bc29a8d0f16..46206b770cfe 100644
--- a/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialogLite.java
+++ b/packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialogLite.java
@@ -2695,12 +2695,10 @@ public class GlobalActionsDialogLite implements DialogInterface.OnDismissListene
protected final void setRotationSuggestionsEnabled(boolean enabled) {
try {
final int userId = Binder.getCallingUserHandle().getIdentifier();
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- if (enabled) {
- info.setRotationSuggestionDisabled(true);
- }
- mStatusBarService.disableForUser(info, mToken, mContext.getPackageName(), userId,
- "setRotationSuggestionsEnabled");
+ final int what = enabled
+ ? StatusBarManager.DISABLE2_NONE
+ : StatusBarManager.DISABLE2_ROTATE_SUGGESTIONS;
+ mStatusBarService.disable2ForUser(what, mToken, mContext.getPackageName(), userId);
} catch (RemoteException ex) {
throw ex.rethrowFromSystemServer();
}
diff --git a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java
index 9349227bb474..9edea279a57f 100644
--- a/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java
+++ b/packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java
@@ -16,7 +16,6 @@
package com.android.systemui.keyguard;
-import static android.app.StatusBarManager.DISABLE2_NONE;
import static android.app.StatusBarManager.SESSION_KEYGUARD;
import static android.provider.Settings.Secure.LOCK_SCREEN_LOCK_AFTER_TIMEOUT;
import static android.provider.Settings.System.LOCKSCREEN_SOUNDS_ENABLED;
@@ -3411,12 +3410,9 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable,
// unless disable is called to show un-hide it once first
if (forceClearFlags) {
try {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo(flags,
- DISABLE2_NONE);
- mStatusBarService.disableForUser(info, mStatusBarDisableToken,
+ mStatusBarService.disableForUser(flags, mStatusBarDisableToken,
mContext.getPackageName(),
- mSelectedUserInteractor.getSelectedUserId(true),
- "adjustStatusBarLocked - force clear flags");
+ mSelectedUserInteractor.getSelectedUserId(true));
} catch (RemoteException e) {
Log.d(TAG, "Failed to force clear flags", e);
}
@@ -3442,11 +3438,9 @@ public class KeyguardViewMediator implements CoreStartable, Dumpable,
}
try {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo(flags,
- DISABLE2_NONE);
- mStatusBarService.disableForUser(info, mStatusBarDisableToken,
- mContext.getPackageName(), mSelectedUserInteractor.getSelectedUserId(true),
- "adjustStatusBarLocked - set disable flags");
+ mStatusBarService.disableForUser(flags, mStatusBarDisableToken,
+ mContext.getPackageName(),
+ mSelectedUserInteractor.getSelectedUserId(true));
} catch (RemoteException e) {
Log.d(TAG, "Failed to set disable flags: " + flags, e);
}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/CentralSurfacesImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/CentralSurfacesImpl.java
index db15144340e2..e84451d8c477 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/CentralSurfacesImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/CentralSurfacesImpl.java
@@ -16,6 +16,7 @@
package com.android.systemui.statusbar.phone;
+import static android.app.StatusBarManager.DISABLE_HOME;
import static android.app.StatusBarManager.WINDOW_STATE_HIDDEN;
import static android.app.StatusBarManager.WINDOW_STATE_SHOWING;
import static android.app.StatusBarManager.WindowVisibleState;
@@ -1004,14 +1005,8 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
// this handling this post-init task. We force an update in this case, and use a new
// token to not conflict with any other disabled flags already requested by SysUI
Binder token = new Binder();
- int userId = mContext.getUserId();
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- info.setNavigationHomeDisabled(true);
- mBarService.disableForUser(info, token, mContext.getPackageName(),
- userId, "set the initial view visibility");
-
- mBarService.disableForUser(new StatusBarManager.DisableInfo(), token,
- mContext.getPackageName(), userId, "set the initial view visibility");
+ mBarService.disable(DISABLE_HOME, token, mContext.getPackageName());
+ mBarService.disable(0, token, mContext.getPackageName());
} catch (RemoteException ex) {
ex.rethrowFromSystemServer();
}
diff --git a/services/core/java/com/android/server/UiModeManagerService.java b/services/core/java/com/android/server/UiModeManagerService.java
index f1776f4f9148..f1d358486333 100644
--- a/services/core/java/com/android/server/UiModeManagerService.java
+++ b/services/core/java/com/android/server/UiModeManagerService.java
@@ -1986,11 +1986,9 @@ final class UiModeManagerService extends SystemService {
// the status bar should be totally disabled, the calls below will
// have no effect until the device is unlocked.
if (mStatusBarManager != null) {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- if (mCarModeEnabled) {
- info.setNotificationTickerDisabled(true);
- }
- mStatusBarManager.requestDisabledComponent(info, "adjustStatusBarCarModeLocked");
+ mStatusBarManager.disable(mCarModeEnabled
+ ? StatusBarManager.DISABLE_NOTIFICATION_TICKER
+ : StatusBarManager.DISABLE_NONE);
}
if (mNotificationManager == null) {
diff --git a/services/core/java/com/android/server/statusbar/StatusBarManagerService.java b/services/core/java/com/android/server/statusbar/StatusBarManagerService.java
index 0b48a75298a4..6e95cbc724b7 100644
--- a/services/core/java/com/android/server/statusbar/StatusBarManagerService.java
+++ b/services/core/java/com/android/server/statusbar/StatusBarManagerService.java
@@ -20,9 +20,7 @@ import static android.Manifest.permission.CONTROL_DEVICE_STATE;
import static android.Manifest.permission.INTERACT_ACROSS_USERS;
import static android.Manifest.permission.INTERACT_ACROSS_USERS_FULL;
import static android.app.StatusBarManager.DISABLE2_GLOBAL_ACTIONS;
-import static android.app.StatusBarManager.DISABLE2_MASK;
import static android.app.StatusBarManager.DISABLE2_NOTIFICATION_SHADE;
-import static android.app.StatusBarManager.DISABLE_MASK;
import static android.app.StatusBarManager.NAV_BAR_MODE_DEFAULT;
import static android.app.StatusBarManager.NAV_BAR_MODE_KIDS;
import static android.app.StatusBarManager.NavBarMode;
@@ -222,9 +220,8 @@ public class StatusBarManagerService extends IStatusBarService.Stub implements D
int what1;
int what2;
IBinder token;
- private String mReason;
- DisableRecord(int userId, IBinder token) {
+ public DisableRecord(int userId, IBinder token) {
this.userId = userId;
this.token = token;
try {
@@ -237,12 +234,12 @@ public class StatusBarManagerService extends IStatusBarService.Stub implements D
@Override
public void binderDied() {
Slog.i(TAG, "binder died for pkg=" + pkg);
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- disableForUser(info, token, pkg, userId, "Binder Died");
+ disableForUser(0, token, pkg, userId);
+ disable2ForUser(0, token, pkg, userId);
token.unlinkToDeath(this, 0);
}
- public void setFlags(int what, int which, String pkg, String reason) {
+ public void setFlags(int what, int which, String pkg) {
switch (which) {
case 1:
what1 = what;
@@ -256,7 +253,6 @@ public class StatusBarManagerService extends IStatusBarService.Stub implements D
break;
}
this.pkg = pkg;
- this.mReason = reason;
}
public int getFlags(int which) {
@@ -275,8 +271,8 @@ public class StatusBarManagerService extends IStatusBarService.Stub implements D
@Override
public String toString() {
- return String.format("userId=%d what1=0x%08X what2=0x%08X pkg=%s token=%s reason=%s",
- userId, what1, what2, pkg, token, mReason);
+ return String.format("userId=%d what1=0x%08X what2=0x%08X pkg=%s token=%s",
+ userId, what1, what2, pkg, token);
}
}
@@ -1173,59 +1169,57 @@ public class StatusBarManagerService extends IStatusBarService.Stub implements D
return mTracingEnabled;
}
- /**
- * @deprecated
- * Disable some features in the status bar.
- *
- * This method is deprecated and callers should use
- * {@link #disableForUser(StatusBarManager.DisableInfo, IBinder, String, int, String)}
- *
- * @hide
- */
- @Deprecated
+ // TODO(b/117478341): make it aware of multi-display if needed.
@Override
public void disable(int what, IBinder token, String pkg) {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo(what & DISABLE_MASK,
- what & DISABLE2_MASK);
- disableForUser(info, token, pkg, mCurrentUserId, null);
+ disableForUser(what, token, pkg, mCurrentUserId);
}
+ // TODO(b/117478341): make it aware of multi-display if needed.
+ @Override
+ public void disableForUser(int what, IBinder token, String pkg, int userId) {
+ enforceStatusBar();
+
+ synchronized (mLock) {
+ disableLocked(DEFAULT_DISPLAY, userId, what, token, pkg, 1);
+ }
+ }
+
+ // TODO(b/117478341): make it aware of multi-display if needed.
/**
- * @deprecated
- * Disable some features in the status bar.
- *
- * This method is deprecated and callers should use
- * {@link #disableForUser(StatusBarManager.DisableInfo, IBinder, String, int, String)}
+ * Disable additional status bar features. Pass the bitwise-or of the DISABLE2_* flags.
+ * To re-enable everything, pass {@link #DISABLE2_NONE}.
*
- * @hide
+ * Warning: Only pass DISABLE2_* flags into this function, do not use DISABLE_* flags.
*/
- @Deprecated
@Override
public void disable2(int what, IBinder token, String pkg) {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo(what & DISABLE_MASK,
- what & DISABLE2_MASK);
- disableForUser(info, token, pkg, mCurrentUserId, null);
+ disable2ForUser(what, token, pkg, mCurrentUserId);
}
// TODO(b/117478341): make it aware of multi-display if needed.
+ /**
+ * Disable additional status bar features for a given user. Pass the bitwise-or of the
+ * DISABLE2_* flags. To re-enable everything, pass {@link #DISABLE_NONE}.
+ *
+ * Warning: Only pass DISABLE2_* flags into this function, do not use DISABLE_* flags.
+ */
@Override
- public void disableForUser(StatusBarManager.DisableInfo disableInfo, IBinder token, String pkg,
- int userId, String reason) {
+ public void disable2ForUser(int what, IBinder token, String pkg, int userId) {
enforceStatusBar();
+
synchronized (mLock) {
- Pair<Integer, Integer> flags = disableInfo.toFlags();
- disableLocked(DEFAULT_DISPLAY, userId, flags.first, token, pkg, 1, reason);
- disableLocked(DEFAULT_DISPLAY, userId, flags.second, token, pkg, 2, reason);
+ disableLocked(DEFAULT_DISPLAY, userId, what, token, pkg, 2);
}
}
private void disableLocked(int displayId, int userId, int what, IBinder token, String pkg,
- int whichFlag, String reason) {
+ int whichFlag) {
// It's important that the the callback and the call to mBar get done
// in the same order when multiple threads are calling this function
// so they are paired correctly. The messages on the handler will be
// handled in the order they were enqueued, but will be outside the lock.
- manageDisableListLocked(userId, what, token, pkg, whichFlag, reason);
+ manageDisableListLocked(userId, what, token, pkg, whichFlag);
// Ensure state for the current user is applied, even if passed a non-current user.
final int net1 = gatherDisableActionsLocked(mCurrentUserId, 1);
@@ -1374,7 +1368,7 @@ public class StatusBarManagerService extends IStatusBarService.Stub implements D
// also allows calls from window manager which is in this process.
enforceStatusBarService();
- final int unknownFlags = flags & ~DISABLE_MASK;
+ final int unknownFlags = flags & ~StatusBarManager.DISABLE_MASK;
if (unknownFlags != 0) {
Slog.e(TAG, "Unknown disable flags: 0x" + Integer.toHexString(unknownFlags),
new RuntimeException());
@@ -1383,8 +1377,7 @@ public class StatusBarManagerService extends IStatusBarService.Stub implements D
if (SPEW) Slog.d(TAG, "setDisableFlags(0x" + Integer.toHexString(flags) + ")");
synchronized (mLock) {
- disableLocked(displayId, mCurrentUserId, flags, mSysUiVisToken, cause, 1,
- "setDisableFlags");
+ disableLocked(displayId, mCurrentUserId, flags, mSysUiVisToken, cause, 1);
}
}
@@ -2439,8 +2432,7 @@ public class StatusBarManagerService extends IStatusBarService.Stub implements D
// ================================================================================
// lock on mDisableRecords
- void manageDisableListLocked(int userId, int what, IBinder token, String pkg, int which,
- String reason) {
+ void manageDisableListLocked(int userId, int what, IBinder token, String pkg, int which) {
if (SPEW) {
Slog.d(TAG, "manageDisableList userId=" + userId
+ " what=0x" + Integer.toHexString(what) + " pkg=" + pkg);
@@ -2462,7 +2454,7 @@ public class StatusBarManagerService extends IStatusBarService.Stub implements D
// Update existing record
if (record != null) {
- record.setFlags(what, which, pkg, reason);
+ record.setFlags(what, which, pkg);
if (record.isEmpty()) {
mDisableRecords.remove(i);
record.token.unlinkToDeath(record, 0);
@@ -2472,7 +2464,7 @@ public class StatusBarManagerService extends IStatusBarService.Stub implements D
// Record doesn't exist, so we create a new one
record = new DisableRecord(userId, token);
- record.setFlags(what, which, pkg, reason);
+ record.setFlags(what, which, pkg);
mDisableRecords.add(record);
}
diff --git a/services/core/java/com/android/server/statusbar/StatusBarShellCommand.java b/services/core/java/com/android/server/statusbar/StatusBarShellCommand.java
index adb55b41cb48..d6bf02fcdc47 100644
--- a/services/core/java/com/android/server/statusbar/StatusBarShellCommand.java
+++ b/services/core/java/com/android/server/statusbar/StatusBarShellCommand.java
@@ -16,6 +16,8 @@ package com.android.server.statusbar;
import static android.app.StatusBarManager.DEFAULT_SETUP_DISABLE2_FLAGS;
import static android.app.StatusBarManager.DEFAULT_SETUP_DISABLE_FLAGS;
+import static android.app.StatusBarManager.DISABLE2_NONE;
+import static android.app.StatusBarManager.DISABLE_NONE;
import android.app.StatusBarManager.DisableInfo;
import android.content.ComponentName;
@@ -25,6 +27,7 @@ import android.os.IBinder;
import android.os.RemoteException;
import android.os.ShellCommand;
import android.service.quicksettings.TileService;
+import android.util.Pair;
import java.io.PrintWriter;
@@ -141,17 +144,25 @@ public class StatusBarShellCommand extends ShellCommand {
String arg = getNextArgRequired();
String pkg = mContext.getPackageName();
boolean disable = Boolean.parseBoolean(arg);
- int userId = Binder.getCallingUserHandle().getIdentifier();
- DisableInfo info = disable ? new DisableInfo(DEFAULT_SETUP_DISABLE_FLAGS,
- DEFAULT_SETUP_DISABLE2_FLAGS) : new DisableInfo();
- mInterface.disableForUser(info, sToken, pkg, userId, "runDisableForSetup");
+
+ if (disable) {
+ mInterface.disable(DEFAULT_SETUP_DISABLE_FLAGS, sToken, pkg);
+ mInterface.disable2(DEFAULT_SETUP_DISABLE2_FLAGS, sToken, pkg);
+ } else {
+ mInterface.disable(DISABLE_NONE, sToken, pkg);
+ mInterface.disable2(DISABLE2_NONE, sToken, pkg);
+ }
+
return 0;
}
private int runSendDisableFlag() {
String pkg = mContext.getPackageName();
- int userId = Binder.getCallingUserHandle().getIdentifier();
+ int disable1 = DISABLE_NONE;
+ int disable2 = DISABLE2_NONE;
+
DisableInfo info = new DisableInfo();
+
String arg = getNextArg();
while (arg != null) {
switch (arg) {
@@ -159,7 +170,7 @@ public class StatusBarShellCommand extends ShellCommand {
info.setSearchDisabled(true);
break;
case "home":
- info.setNavigationHomeDisabled(true);
+ info.setNagivationHomeDisabled(true);
break;
case "recents":
info.setRecentsDisabled(true);
@@ -186,7 +197,10 @@ public class StatusBarShellCommand extends ShellCommand {
arg = getNextArg();
}
- mInterface.disableForUser(info, sToken, pkg, userId, "Shell Commands");
+ Pair<Integer, Integer> flagPair = info.toFlags();
+
+ mInterface.disable(flagPair.first, sToken, pkg);
+ mInterface.disable2(flagPair.second, sToken, pkg);
return 0;
}
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
index cd2fb160406f..ac656224b8c1 100644
--- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
+++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java
@@ -15159,10 +15159,8 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
if (statusBarService != null) {
int flags1 = disabled ? STATUS_BAR_DISABLE_MASK : StatusBarManager.DISABLE_NONE;
int flags2 = disabled ? STATUS_BAR_DISABLE2_MASK : StatusBarManager.DISABLE2_NONE;
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo(flags1,
- flags2);
- statusBarService.disableForUser(info, mToken, mContext.getPackageName(), userId,
- "setStatusBarDisabledInternal");
+ statusBarService.disableForUser(flags1, mToken, mContext.getPackageName(), userId);
+ statusBarService.disable2ForUser(flags2, mToken, mContext.getPackageName(), userId);
return true;
}
} catch (RemoteException e) {
diff --git a/tests/StatusBar/src/com/android/statusbartest/StatusBarTest.java b/tests/StatusBar/src/com/android/statusbartest/StatusBarTest.java
index 3ab8d370750f..6bcfebc752f1 100644
--- a/tests/StatusBar/src/com/android/statusbartest/StatusBarTest.java
+++ b/tests/StatusBar/src/com/android/statusbartest/StatusBarTest.java
@@ -176,25 +176,19 @@ public class StatusBarTest extends TestActivity
},
new Test("Disable Alerts") {
public void run() {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- info.setNotificationPeekingDisabled(true);
- mStatusBarManager.requestDisabledComponent(info, "test");
+ mStatusBarManager.disable(StatusBarManager.DISABLE_NOTIFICATION_ALERTS);
}
},
new Test("Disable Ticker") {
public void run() {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- info.setNotificationTickerDisabled(true);
- mStatusBarManager.requestDisabledComponent(info, "test");
+ mStatusBarManager.disable(StatusBarManager.DISABLE_NOTIFICATION_TICKER);
}
},
new Test("Disable Expand in 3 sec.") {
public void run() {
mHandler.postDelayed(new Runnable() {
public void run() {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- info.setStatusBarExpansionDisabled(true);
- mStatusBarManager.requestDisabledComponent(info, "test");
+ mStatusBarManager.disable(StatusBarManager.DISABLE_EXPAND);
}
}, 3000);
}
@@ -203,9 +197,7 @@ public class StatusBarTest extends TestActivity
public void run() {
mHandler.postDelayed(new Runnable() {
public void run() {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- info.setNotificationIconsDisabled(true);
- mStatusBarManager.requestDisabledComponent(info, "test");
+ mStatusBarManager.disable(StatusBarManager.DISABLE_NOTIFICATION_ICONS);
}
}, 3000);
}
@@ -214,73 +206,56 @@ public class StatusBarTest extends TestActivity
public void run() {
mHandler.postDelayed(new Runnable() {
public void run() {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- info.setStatusBarExpansionDisabled(true);
- info.setNotificationIconsDisabled(true);
- mStatusBarManager.requestDisabledComponent(info, "test");
+ mStatusBarManager.disable(StatusBarManager.DISABLE_EXPAND
+ | StatusBarManager.DISABLE_NOTIFICATION_ICONS);
}
}, 3000);
}
},
new Test("Disable Home (StatusBarManager)") {
public void run() {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- info.setNavigationHomeDisabled(true);
- mStatusBarManager.requestDisabledComponent(info, "test");
+ mStatusBarManager.disable(StatusBarManager.DISABLE_HOME);
}
},
new Test("Disable Back (StatusBarManager)") {
public void run() {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- info.setBackDisabled(true);
- mStatusBarManager.requestDisabledComponent(info, "test");
+ mStatusBarManager.disable(StatusBarManager.DISABLE_BACK);
}
},
new Test("Disable Recent (StatusBarManager)") {
public void run() {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- info.setRecentsDisabled(true);
- mStatusBarManager.requestDisabledComponent(info, "test");
+ mStatusBarManager.disable(StatusBarManager.DISABLE_RECENT);
}
},
new Test("Disable Clock") {
public void run() {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- info.setClockDisabled(true);
- mStatusBarManager.requestDisabledComponent(info, "test");
+ mStatusBarManager.disable(StatusBarManager.DISABLE_CLOCK);
}
},
new Test("Disable System Info") {
public void run() {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- info.setSystemIconsDisabled(true);
- mStatusBarManager.requestDisabledComponent(info, "test");
+ mStatusBarManager.disable(StatusBarManager.DISABLE_SYSTEM_INFO);
}
},
new Test("Disable everything in 3 sec") {
public void run() {
mHandler.postDelayed(new Runnable() {
public void run() {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- info.setDisableAll();
- mStatusBarManager.requestDisabledComponent(info, "test");
+ mStatusBarManager.disable(~StatusBarManager.DISABLE_NONE);
}
}, 3000);
}
},
new Test("Enable everything") {
public void run() {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- mStatusBarManager.requestDisabledComponent(info, "test");
+ mStatusBarManager.disable(StatusBarManager.DISABLE_NONE);
}
},
new Test("Enable everything in 3 sec.") {
public void run() {
mHandler.postDelayed(new Runnable() {
public void run() {
- StatusBarManager.DisableInfo info = new StatusBarManager.DisableInfo();
- info.setEnableAll();
- mStatusBarManager.requestDisabledComponent(info, "test");
+ mStatusBarManager.disable(0);
}
}, 3000);
}