Merge "Fix bugs with QS customizer when split shade is active." into sc-v2-dev

This commit is contained in:
Jamie Garside
2021-11-16 16:12:38 +00:00
committed by Android (Google) Code Review
4 changed files with 27 additions and 2 deletions

View File

@@ -34,7 +34,7 @@ public interface QS extends FragmentBase {
String ACTION = "com.android.systemui.action.PLUGIN_QS";
int VERSION = 11;
int VERSION = 12;
String TAG = "QS";
@@ -46,6 +46,8 @@ public interface QS extends FragmentBase {
void setHeightOverride(int desiredHeight);
void setHeaderClickable(boolean qsExpansionEnabled);
boolean isCustomizing();
/** Close the QS customizer, if it is open. */
void closeCustomizer();
void setOverscrolling(boolean overscrolling);
void setExpanded(boolean qsExpanded);
void setListening(boolean listening);

View File

@@ -15,10 +15,10 @@
package com.android.systemui.qs;
import static android.app.StatusBarManager.DISABLE2_QUICK_SETTINGS;
import static com.android.systemui.statusbar.DisableFlagsLogger.DisableState;
import static com.android.systemui.media.dagger.MediaModule.QS_PANEL;
import static com.android.systemui.media.dagger.MediaModule.QUICK_QS_PANEL;
import static com.android.systemui.statusbar.DisableFlagsLogger.DisableState;
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
@@ -696,6 +696,11 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca
mQSPanelController.closeDetail();
}
@Override
public void closeCustomizer() {
mQSCustomizerController.hide();
}
public void notifyCustomizeChanged() {
// The customize state changed, so our height changed.
mContainer.updateExpansion();

View File

@@ -2869,6 +2869,10 @@ public class NotificationPanelViewController extends PanelViewController {
mStatusBarTouchableRegionManager.setPanelExpanded(isExpanded);
mStatusBar.setPanelExpanded(isExpanded);
mPanelExpanded = isExpanded;
if (!isExpanded && mQs != null && mQs.isCustomizing()) {
mQs.closeCustomizer();
}
}
}
@@ -3167,10 +3171,20 @@ public class NotificationPanelViewController extends PanelViewController {
return mQs.isShowingDetail();
}
/** Returns whether the QS customizer is currently active. */
public boolean isQsCustomizing() {
return mQs.isCustomizing();
}
public void closeQsDetail() {
mQs.closeDetail();
}
/** Close the QS customizer if it is open. */
public void closeQsCustomizer() {
mQs.closeCustomizer();
}
public boolean isLaunchTransitionFinished() {
return mIsLaunchTransitionFinished;
}

View File

@@ -3280,6 +3280,10 @@ public class StatusBar extends SystemUI implements
}
return true;
}
if (mNotificationPanelViewController.isQsCustomizing()) {
mNotificationPanelViewController.closeQsCustomizer();
return true;
}
if (mNotificationPanelViewController.isQsExpanded()) {
if (mNotificationPanelViewController.isQsDetailShowing()) {
mNotificationPanelViewController.closeQsDetail();