diff options
| author | 2022-11-04 17:12:53 +0000 | |
|---|---|---|
| committer | 2022-11-04 17:12:53 +0000 | |
| commit | 773e7877425d1cb11f6daa26a978483637f68418 (patch) | |
| tree | 0cf7a42d88ec3875bbdc2e94801e95724c117f34 | |
| parent | 71bf4aaf9e469f922b365ec05da59e2d2b39119b (diff) | |
QS in split shade should listen to changes earlier
This makes QS listen to changes and update itself immediately when expansion starts, compared to current state when state is updated only after full expansion is finished.
Bug: 253162395
Test: QSFragmentTest
Test: go to settings -> change brightness -> expand split shade and see brightness is updated immediately, before shade is fully expanded
Change-Id: If1fb81ed3a0d0963fde83e95650c2b3b7663562c
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/qs/QSFragment.java | 8 | ||||
| -rw-r--r-- | packages/SystemUI/tests/src/com/android/systemui/qs/QSFragmentTest.java | 11 |
2 files changed, 18 insertions, 1 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSFragment.java b/packages/SystemUI/src/com/android/systemui/qs/QSFragment.java index 20f1a8ed7689..1422a25bfe12 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/QSFragment.java +++ b/packages/SystemUI/src/com/android/systemui/qs/QSFragment.java @@ -515,7 +515,13 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca public void setExpanded(boolean expanded) { if (DEBUG) Log.d(TAG, "setExpanded " + expanded); mQsExpanded = expanded; - updateQsPanelControllerListening(); + if (mInSplitShade && mQsExpanded) { + // in split shade QS is expanded immediately when shade expansion starts and then we + // also need to listen to changes - otherwise QS is updated only once its fully expanded + setListening(true); + } else { + updateQsPanelControllerListening(); + } updateQsState(); } diff --git a/packages/SystemUI/tests/src/com/android/systemui/qs/QSFragmentTest.java b/packages/SystemUI/tests/src/com/android/systemui/qs/QSFragmentTest.java index cd7a949443c9..72e022ed7bbb 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/qs/QSFragmentTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/qs/QSFragmentTest.java @@ -439,6 +439,17 @@ public class QSFragmentTest extends SysuiBaseFragmentTest { verify(mQSPanelController).setExpanded(false); } + @Test + public void startsListeningAfterStateChangeToExpanded_inSplitShade() { + QSFragment fragment = resumeAndGetFragment(); + enableSplitShade(); + fragment.setQsVisible(true); + clearInvocations(mQSPanelController); + + fragment.setExpanded(true); + verify(mQSPanelController).setListening(true, true); + } + @Override protected Fragment instantiate(Context context, String className, Bundle arguments) { MockitoAnnotations.initMocks(this); |