Merge "Volume: Dismiss panel on nav bar interaction." into lmp-mr1-dev

This commit is contained in:
John Spurlock
2014-11-18 16:47:09 +00:00
committed by Android (Google) Code Review
3 changed files with 14 additions and 1 deletions

View File

@@ -2669,6 +2669,7 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode,
@Override @Override
public void setInteracting(int barWindow, boolean interacting) { public void setInteracting(int barWindow, boolean interacting) {
final boolean changing = ((mInteractingWindows & barWindow) != 0) != interacting;
mInteractingWindows = interacting mInteractingWindows = interacting
? (mInteractingWindows | barWindow) ? (mInteractingWindows | barWindow)
: (mInteractingWindows & ~barWindow); : (mInteractingWindows & ~barWindow);
@@ -2677,6 +2678,12 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode,
} else { } else {
resumeSuspendedAutohide(); resumeSuspendedAutohide();
} }
// manually dismiss the volume panel when interacting with the nav bar
if (changing && interacting && barWindow == StatusBarManager.WINDOW_NAVIGATION_BAR) {
if (mVolumeComponent != null) {
mVolumeComponent.dismissNow();
}
}
checkBarModes(); checkBarModes();
} }

View File

@@ -21,4 +21,5 @@ import com.android.systemui.statusbar.policy.ZenModeController;
public interface VolumeComponent extends DemoMode { public interface VolumeComponent extends DemoMode {
ZenModeController getZenController(); ZenModeController getZenController();
void dismissNow();
} }

View File

@@ -178,7 +178,7 @@ public class VolumeUI extends SystemUI {
@Override @Override
public void dismiss() throws RemoteException { public void dismiss() throws RemoteException {
mPanel.postDismiss(0); dismissNow();
} }
@Override @Override
@@ -190,6 +190,11 @@ public class VolumeUI extends SystemUI {
public void dispatchDemoCommand(String command, Bundle args) { public void dispatchDemoCommand(String command, Bundle args) {
mPanel.dispatchDemoCommand(command, args); mPanel.dispatchDemoCommand(command, args);
} }
@Override
public void dismissNow() {
mPanel.postDismiss(0);
}
} }
private final class RemoteVolumeController extends IRemoteVolumeController.Stub { private final class RemoteVolumeController extends IRemoteVolumeController.Stub {