Merge "Prototype flag for moving controls"
This commit is contained in:
committed by
Android (Google) Code Review
commit
14b110db3e
@@ -28,10 +28,12 @@ import android.metrics.LogMaker;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.os.Message;
|
||||
import android.provider.Settings;
|
||||
import android.service.quicksettings.Tile;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.widget.FrameLayout;
|
||||
import android.widget.LinearLayout;
|
||||
|
||||
import com.android.internal.logging.MetricsLogger;
|
||||
@@ -49,6 +51,8 @@ import com.android.systemui.qs.customize.QSCustomizer;
|
||||
import com.android.systemui.qs.external.CustomTile;
|
||||
import com.android.systemui.settings.BrightnessController;
|
||||
import com.android.systemui.settings.ToggleSliderView;
|
||||
import com.android.systemui.shared.plugins.PluginManager;
|
||||
import com.android.systemui.statusbar.phone.NPVPluginManager;
|
||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController;
|
||||
import com.android.systemui.statusbar.policy.BrightnessMirrorController.BrightnessMirrorListener;
|
||||
import com.android.systemui.tuner.TunerService;
|
||||
@@ -98,6 +102,10 @@ public class QSPanel extends LinearLayout implements Tunable, Callback, Brightne
|
||||
private BrightnessMirrorController mBrightnessMirrorController;
|
||||
private View mDivider;
|
||||
|
||||
private FrameLayout mPluginFrame;
|
||||
private final PluginManager mPluginManager;
|
||||
private NPVPluginManager mNPVPluginManager;
|
||||
|
||||
public QSPanel(Context context) {
|
||||
this(context, null);
|
||||
}
|
||||
@@ -106,9 +114,13 @@ public class QSPanel extends LinearLayout implements Tunable, Callback, Brightne
|
||||
this(context, attrs, null);
|
||||
}
|
||||
|
||||
public QSPanel(Context context, AttributeSet attrs, DumpController dumpController) {
|
||||
this(context, attrs, dumpController, null);
|
||||
}
|
||||
|
||||
@Inject
|
||||
public QSPanel(@Named(VIEW_CONTEXT) Context context, AttributeSet attrs,
|
||||
DumpController dumpController) {
|
||||
DumpController dumpController, PluginManager pluginManager) {
|
||||
super(context, attrs);
|
||||
mContext = context;
|
||||
|
||||
@@ -136,6 +148,15 @@ public class QSPanel extends LinearLayout implements Tunable, Callback, Brightne
|
||||
mBrightnessController = new BrightnessController(getContext(),
|
||||
findViewById(R.id.brightness_slider));
|
||||
mDumpController = dumpController;
|
||||
mPluginManager = pluginManager;
|
||||
if (mPluginManager != null && Settings.System.getInt(
|
||||
mContext.getContentResolver(), "npv_plugin_flag", 0) == 2) {
|
||||
mPluginFrame = (FrameLayout) LayoutInflater.from(mContext).inflate(
|
||||
R.layout.status_bar_expanded_plugin_frame, this, false);
|
||||
addView(mPluginFrame);
|
||||
mNPVPluginManager = new NPVPluginManager(mPluginFrame, mPluginManager);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
protected void addDivider() {
|
||||
@@ -377,6 +398,7 @@ public class QSPanel extends LinearLayout implements Tunable, Callback, Brightne
|
||||
if (mListening) {
|
||||
refreshAllTiles();
|
||||
}
|
||||
if (mNPVPluginManager != null) mNPVPluginManager.setListening(listening);
|
||||
}
|
||||
|
||||
public void setListening(boolean listening, boolean expanded) {
|
||||
|
||||
@@ -43,6 +43,7 @@ import android.hardware.biometrics.BiometricSourceType;
|
||||
import android.os.PowerManager;
|
||||
import android.os.SystemClock;
|
||||
import android.provider.DeviceConfig;
|
||||
import android.provider.Settings;
|
||||
import android.util.AttributeSet;
|
||||
import android.util.Log;
|
||||
import android.util.MathUtils;
|
||||
@@ -541,7 +542,10 @@ public class NotificationPanelView extends PanelView implements
|
||||
mQsNavbarScrim = findViewById(R.id.qs_navbar_scrim);
|
||||
mLastOrientation = getResources().getConfiguration().orientation;
|
||||
mPluginFrame = findViewById(R.id.plugin_frame);
|
||||
mNPVPluginManager = new NPVPluginManager(mPluginFrame, mPluginManager);
|
||||
if (Settings.System.getInt(
|
||||
mContext.getContentResolver(), "npv_plugin_flag", 0) == 1) {
|
||||
mNPVPluginManager = new NPVPluginManager(mPluginFrame, mPluginManager);
|
||||
}
|
||||
|
||||
|
||||
initBottomArea();
|
||||
@@ -778,7 +782,7 @@ public class NotificationPanelView extends PanelView implements
|
||||
mPluginFrame.setLayoutParams(lp);
|
||||
}
|
||||
|
||||
mNPVPluginManager.replaceFrameLayout(mPluginFrame);
|
||||
if (mNPVPluginManager != null) mNPVPluginManager.replaceFrameLayout(mPluginFrame);
|
||||
}
|
||||
|
||||
private void initBottomArea() {
|
||||
@@ -808,8 +812,10 @@ public class NotificationPanelView extends PanelView implements
|
||||
int oldMaxHeight = mQsMaxExpansionHeight;
|
||||
if (mQs != null) {
|
||||
mQsMinExpansionHeight = mKeyguardShowing ? 0 : mQs.getQsMinExpansionHeight();
|
||||
mNPVPluginManager.setYOffset(mQsMinExpansionHeight);
|
||||
mQsMinExpansionHeight += mNPVPluginManager.getHeight();
|
||||
if (mNPVPluginManager != null) {
|
||||
mNPVPluginManager.setYOffset(mQsMinExpansionHeight);
|
||||
mQsMinExpansionHeight += mNPVPluginManager.getHeight();
|
||||
}
|
||||
mQsMaxExpansionHeight = mQs.getDesiredHeight();
|
||||
mNotificationStackScroller.setMaxTopPadding(
|
||||
mQsMaxExpansionHeight + mQsNotificationTopPadding);
|
||||
@@ -1915,9 +1921,11 @@ public class NotificationPanelView extends PanelView implements
|
||||
mBarState != StatusBarState.KEYGUARD && (!mQsExpanded
|
||||
|| mQsExpansionFromOverscroll));
|
||||
updateEmptyShadeView();
|
||||
mNPVPluginManager.changeVisibility((mBarState != StatusBarState.KEYGUARD)
|
||||
? View.VISIBLE
|
||||
: View.INVISIBLE);
|
||||
if (mNPVPluginManager != null) {
|
||||
mNPVPluginManager.changeVisibility((mBarState != StatusBarState.KEYGUARD)
|
||||
? View.VISIBLE
|
||||
: View.INVISIBLE);
|
||||
}
|
||||
mQsNavbarScrim.setVisibility(mBarState == StatusBarState.SHADE && mQsExpanded
|
||||
&& !mStackScrollerOverscrolling && mQsScrimEnabled
|
||||
? View.VISIBLE
|
||||
@@ -1975,7 +1983,9 @@ public class NotificationPanelView extends PanelView implements
|
||||
float qsExpansionFraction = getQsExpansionFraction();
|
||||
mQs.setQsExpansion(qsExpansionFraction, getHeaderTranslation());
|
||||
int heightDiff = mQs.getDesiredHeight() - mQs.getQsMinExpansionHeight();
|
||||
mNPVPluginManager.setExpansion(qsExpansionFraction, getHeaderTranslation(), heightDiff);
|
||||
if (mNPVPluginManager != null) {
|
||||
mNPVPluginManager.setExpansion(qsExpansionFraction, getHeaderTranslation(), heightDiff);
|
||||
}
|
||||
mNotificationStackScroller.setQsExpansionFraction(qsExpansionFraction);
|
||||
}
|
||||
|
||||
@@ -2396,7 +2406,7 @@ public class NotificationPanelView extends PanelView implements
|
||||
appearAmount = mNotificationStackScroller.calculateAppearFractionBypass();
|
||||
}
|
||||
startHeight = -mQs.getQsMinExpansionHeight();
|
||||
startHeight -= mNPVPluginManager.getHeight();
|
||||
if (mNPVPluginManager != null) startHeight -= mNPVPluginManager.getHeight();
|
||||
}
|
||||
float translation = MathUtils.lerp(startHeight, 0,
|
||||
Math.min(1.0f, appearAmount))
|
||||
@@ -2540,7 +2550,7 @@ public class NotificationPanelView extends PanelView implements
|
||||
mKeyguardStatusBar.setListening(listening);
|
||||
if (mQs == null) return;
|
||||
mQs.setListening(listening);
|
||||
mNPVPluginManager.setListening(listening);
|
||||
if (mNPVPluginManager != null) mNPVPluginManager.setListening(listening);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user