From 3bc62f724be10d82698a0fbbfa9fd72783f87ef5 Mon Sep 17 00:00:00 2001 From: Adrian Roos Date: Thu, 10 Apr 2014 00:44:43 +0200 Subject: [PATCH] Allow returning from quick settings on lockscreen Turns out having to switch off the device to get back to notifications is annoying. Bug: 13635952 Change-Id: I9db81370c7c715a0874e2b6a4d75ed408843868a --- .../statusbar/phone/PhoneStatusBar.java | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) 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 e34911dcbdeeb..4dd2c8d9f136c 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java @@ -2804,6 +2804,8 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode { } mKeyguardSettingsFlipButton.setVisibility(View.VISIBLE); mKeyguardSettingsFlipButton.findViewById(R.id.settings_button).setVisibility(View.VISIBLE); + mKeyguardSettingsFlipButton.findViewById(R.id.notification_button) + .setVisibility(View.INVISIBLE); updateRowStates(); } @@ -2849,24 +2851,38 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode { } private void installSettingsButton(View parent) { - ImageView settingsButton = (ImageView) mStatusBarWindow.findViewById(R.id.settings_button); + final ImageView settingsButton = + (ImageView) mStatusBarWindow.findViewById(R.id.settings_button); + final ImageView notificationButton = + (ImageView) mStatusBarWindow.findViewById(R.id.notification_button); if (settingsButton != null) { settingsButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { animateExpandSettingsPanel(); v.setVisibility(View.INVISIBLE); + notificationButton.setVisibility(View.VISIBLE); } }); + settingsButton.setVisibility(View.VISIBLE); if (mHasSettingsPanel) { // the settings panel is hiding behind this button settingsButton.setImageResource(R.drawable.ic_notify_quicksettings); - settingsButton.setVisibility(View.VISIBLE); } else { // no settings panel, go straight to settings - settingsButton.setVisibility(View.VISIBLE); settingsButton.setImageResource(R.drawable.ic_notify_settings); } } + if (notificationButton != null) { + notificationButton.setVisibility(View.INVISIBLE); + notificationButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + flipToNotifications(); + v.setVisibility(View.INVISIBLE); + settingsButton.setVisibility(View.VISIBLE); + } + }); + } } }