Volume: force-dismiss panel when the screen turns off.
Bug:16492823
Change-Id: Ifc069ef936dc5f29d11f6b11dcc7131f440c7f0b
diff --git a/packages/SystemUI/src/com/android/systemui/volume/VolumePanel.java b/packages/SystemUI/src/com/android/systemui/volume/VolumePanel.java
index 9ba9745..b85fbf3 100644
--- a/packages/SystemUI/src/com/android/systemui/volume/VolumePanel.java
+++ b/packages/SystemUI/src/com/android/systemui/volume/VolumePanel.java
@@ -371,7 +371,7 @@
final boolean masterVolumeKeySounds = res.getBoolean(R.bool.config_useVolumeKeySounds);
mPlayMasterStreamTones = masterVolumeOnly && masterVolumeKeySounds;
- listenToRingerMode();
+ registerReceiver();
}
public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
@@ -441,9 +441,10 @@
updateStates();
}
- private void listenToRingerMode() {
+ private void registerReceiver() {
final IntentFilter filter = new IntentFilter();
filter.addAction(AudioManager.RINGER_MODE_CHANGED_ACTION);
+ filter.addAction(Intent.ACTION_SCREEN_OFF);
mContext.registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
@@ -453,6 +454,10 @@
removeMessages(MSG_RINGER_MODE_CHANGED);
sendMessage(obtainMessage(MSG_RINGER_MODE_CHANGED));
}
+
+ if (Intent.ACTION_SCREEN_OFF.equals(action)) {
+ postDismiss(0);
+ }
}
}, filter);
}