Home Controls: Consolidate flags for QS media player/NPV
Use 'adb shell settings put system npv_plugin_flag X' to enable/disable media player as well as NPV Test: visual Change-Id: I0d889300b4b08c2d89ab75983e77ec3ba739783e
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:id="@+id/home_controls_layout"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="125dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="@integer/notification_panel_layout_gravity"
|
||||
android:visibility="gone"
|
||||
android:padding="8dp"
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
android:id="@+id/plugin_frame"
|
||||
android:theme="@style/qs_theme"
|
||||
android:layout_width="@dimen/qs_panel_width"
|
||||
android:layout_height="105dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:layout_marginTop="@dimen/notification_side_paddings"
|
||||
android:layout_marginLeft="@dimen/notification_side_paddings"
|
||||
|
||||
@@ -14,7 +14,6 @@
|
||||
|
||||
package com.android.systemui.qs;
|
||||
|
||||
import android.provider.Settings;
|
||||
import android.util.Log;
|
||||
import android.view.View;
|
||||
import android.view.View.OnAttachStateChangeListener;
|
||||
@@ -31,6 +30,7 @@ import com.android.systemui.qs.TouchAnimator.Builder;
|
||||
import com.android.systemui.qs.TouchAnimator.Listener;
|
||||
import com.android.systemui.tuner.TunerService;
|
||||
import com.android.systemui.tuner.TunerService.Tunable;
|
||||
import com.android.systemui.util.Utils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
@@ -270,9 +270,7 @@ public class QSAnimator implements Callback, PageListener, Listener, OnLayoutCha
|
||||
}
|
||||
|
||||
|
||||
int flag = Settings.System.getInt(mQsPanel.getContext().getContentResolver(),
|
||||
"qs_media_player", 0);
|
||||
if (flag == 1) {
|
||||
if (Utils.useQsMediaPlayer(mQsPanel.getContext())) {
|
||||
View qsMediaView = mQsPanel.getMediaPanel();
|
||||
View qqsMediaView = mQuickQsPanel.getMediaPlayer().getView();
|
||||
translationXBuilder.addFloat(qsMediaView, "alpha", 0, 1);
|
||||
|
||||
@@ -18,6 +18,7 @@ package com.android.systemui.qs;
|
||||
|
||||
import static com.android.systemui.qs.tileimpl.QSTileImpl.getColorForState;
|
||||
import static com.android.systemui.util.InjectionInflationController.VIEW_CONTEXT;
|
||||
import static com.android.systemui.util.Utils.useQsMediaPlayer;
|
||||
|
||||
import android.annotation.Nullable;
|
||||
import android.content.ComponentName;
|
||||
@@ -150,8 +151,7 @@ public class QSPanel extends LinearLayout implements Tunable, Callback, Brightne
|
||||
addDivider();
|
||||
|
||||
// Add media carousel
|
||||
int flag = Settings.System.getInt(context.getContentResolver(), "qs_media_player", 0);
|
||||
if (flag == 1) {
|
||||
if (useQsMediaPlayer(context)) {
|
||||
HorizontalScrollView mediaScrollView = new HorizontalScrollView(mContext);
|
||||
mediaScrollView.setHorizontalScrollBarEnabled(false);
|
||||
int playerHeight = (int) getResources().getDimension(R.dimen.qs_media_height);
|
||||
@@ -201,8 +201,7 @@ public class QSPanel extends LinearLayout implements Tunable, Callback, Brightne
|
||||
*/
|
||||
public void addMediaSession(MediaSession.Token token, Icon icon, int iconColor, int bgColor,
|
||||
View actionsContainer, StatusBarNotification notif) {
|
||||
int flag = Settings.System.getInt(mContext.getContentResolver(), "qs_media_player", 0);
|
||||
if (flag != 1) {
|
||||
if (!useQsMediaPlayer(mContext)) {
|
||||
// Shouldn't happen, but just in case
|
||||
Log.e(TAG, "Tried to add media session without player!");
|
||||
return;
|
||||
|
||||
@@ -21,7 +21,6 @@ import static com.android.systemui.util.InjectionInflationController.VIEW_CONTEX
|
||||
import android.content.Context;
|
||||
import android.content.res.Configuration;
|
||||
import android.graphics.Rect;
|
||||
import android.provider.Settings;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.Gravity;
|
||||
import android.view.View;
|
||||
@@ -36,6 +35,7 @@ import com.android.systemui.plugins.qs.QSTile.State;
|
||||
import com.android.systemui.qs.customize.QSCustomizer;
|
||||
import com.android.systemui.tuner.TunerService;
|
||||
import com.android.systemui.tuner.TunerService.Tunable;
|
||||
import com.android.systemui.util.Utils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
@@ -72,8 +72,7 @@ public class QuickQSPanel extends QSPanel {
|
||||
removeView((View) mTileLayout);
|
||||
}
|
||||
|
||||
int flag = Settings.System.getInt(context.getContentResolver(), "qs_media_player", 0);
|
||||
if (flag == 1) {
|
||||
if (Utils.useQsMediaPlayer(context)) {
|
||||
LinearLayout mHorizontalLinearLayout = new LinearLayout(mContext);
|
||||
mHorizontalLinearLayout.setOrientation(LinearLayout.HORIZONTAL);
|
||||
mHorizontalLinearLayout.setClipChildren(false);
|
||||
|
||||
@@ -17,6 +17,7 @@ package com.android.systemui.qs;
|
||||
import static android.app.StatusBarManager.DISABLE2_QUICK_SETTINGS;
|
||||
|
||||
import static com.android.systemui.util.InjectionInflationController.VIEW_CONTEXT;
|
||||
import static com.android.systemui.util.Utils.useQsMediaPlayer;
|
||||
|
||||
import android.annotation.ColorInt;
|
||||
import android.app.ActivityManager;
|
||||
@@ -393,11 +394,10 @@ public class QuickStatusBarHeader extends RelativeLayout implements
|
||||
|
||||
FrameLayout.LayoutParams lp = (FrameLayout.LayoutParams) getLayoutParams();
|
||||
|
||||
int flag = Settings.System.getInt(mContext.getContentResolver(), "qs_media_player", 0);
|
||||
if (mQsDisabled) {
|
||||
lp.height = resources.getDimensionPixelSize(
|
||||
com.android.internal.R.dimen.quick_qs_offset_height);
|
||||
} else if (flag == 1) {
|
||||
} else if (useQsMediaPlayer(mContext)) {
|
||||
lp.height = Math.max(getMinimumHeight(),
|
||||
resources.getDimensionPixelSize(
|
||||
com.android.internal.R.dimen.quick_qs_total_height_with_media));
|
||||
|
||||
@@ -21,7 +21,6 @@ import android.content.res.Resources;
|
||||
import android.os.Handler;
|
||||
import android.os.Trace;
|
||||
import android.os.UserHandle;
|
||||
import android.provider.Settings;
|
||||
import android.util.Log;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
@@ -40,6 +39,7 @@ import com.android.systemui.statusbar.phone.KeyguardBypassController;
|
||||
import com.android.systemui.statusbar.phone.NotificationGroupManager;
|
||||
import com.android.systemui.statusbar.phone.ShadeController;
|
||||
import com.android.systemui.util.Assert;
|
||||
import com.android.systemui.util.Utils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
@@ -146,9 +146,7 @@ public class NotificationViewHierarchyManager implements DynamicPrivacyControlle
|
||||
final int N = activeNotifications.size();
|
||||
for (int i = 0; i < N; i++) {
|
||||
NotificationEntry ent = activeNotifications.get(i);
|
||||
int flag = Settings.System.getInt(mContext.getContentResolver(),
|
||||
"qs_media_player", 0);
|
||||
boolean hideMedia = (flag == 1);
|
||||
boolean hideMedia = Utils.useQsMediaPlayer(mContext);
|
||||
if (ent.isRowDismissed() || ent.isRowRemoved()
|
||||
|| (ent.isMediaNotification() && hideMedia)
|
||||
|| mBubbleController.isBubbleNotificationSuppressedFromShade(ent.getKey())) {
|
||||
|
||||
@@ -28,7 +28,6 @@ import android.media.session.MediaSession;
|
||||
import android.media.session.PlaybackState;
|
||||
import android.metrics.LogMaker;
|
||||
import android.os.Handler;
|
||||
import android.provider.Settings;
|
||||
import android.text.format.DateUtils;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
@@ -48,6 +47,7 @@ import com.android.systemui.statusbar.NotificationMediaManager;
|
||||
import com.android.systemui.statusbar.TransformableView;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
import com.android.systemui.statusbar.phone.StatusBarWindowController;
|
||||
import com.android.systemui.util.Utils;
|
||||
|
||||
import java.util.Timer;
|
||||
import java.util.TimerTask;
|
||||
@@ -182,8 +182,7 @@ public class NotificationMediaTemplateViewWrapper extends NotificationTemplateVi
|
||||
final MediaSession.Token token = mRow.getEntry().getSbn().getNotification().extras
|
||||
.getParcelable(Notification.EXTRA_MEDIA_SESSION);
|
||||
|
||||
int flag = Settings.System.getInt(mContext.getContentResolver(), "qs_media_player", 0);
|
||||
if (flag == 1) {
|
||||
if (Utils.useQsMediaPlayer(mContext)) {
|
||||
StatusBarWindowController ctrl = Dependency.get(StatusBarWindowController.class);
|
||||
QuickQSPanel panel = ctrl.getStatusBarView().findViewById(
|
||||
com.android.systemui.R.id.quick_qs_panel);
|
||||
|
||||
@@ -109,6 +109,7 @@ import com.android.systemui.statusbar.policy.KeyguardUserSwitcher;
|
||||
import com.android.systemui.statusbar.policy.OnHeadsUpChangedListener;
|
||||
import com.android.systemui.statusbar.policy.ZenModeController;
|
||||
import com.android.systemui.util.InjectionInflationController;
|
||||
import com.android.systemui.util.Utils;
|
||||
|
||||
import java.io.FileDescriptor;
|
||||
import java.io.PrintWriter;
|
||||
@@ -769,8 +770,7 @@ public class NotificationPanelView extends PanelView implements
|
||||
int sideMargin = res.getDimensionPixelOffset(R.dimen.notification_side_paddings);
|
||||
int topMargin =
|
||||
res.getDimensionPixelOffset(com.android.internal.R.dimen.quick_qs_total_height);
|
||||
int flag = Settings.System.getInt(mContext.getContentResolver(), "qs_media_player", 0);
|
||||
if (flag == 1) {
|
||||
if (Utils.useQsMediaPlayer(mContext)) {
|
||||
topMargin = res.getDimensionPixelOffset(
|
||||
com.android.internal.R.dimen.quick_qs_total_height_with_media);
|
||||
}
|
||||
|
||||
@@ -20,6 +20,7 @@ import android.Manifest;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.provider.Settings;
|
||||
import android.view.View;
|
||||
|
||||
import com.android.systemui.SysUiServiceProvider;
|
||||
@@ -124,4 +125,13 @@ public class Utils {
|
||||
&& QuickStepContract.isGesturalMode(navMode);
|
||||
}
|
||||
|
||||
/**
|
||||
* Allow the media player to be shown in the QS area, controlled by 2 flags.
|
||||
*/
|
||||
public static boolean useQsMediaPlayer(Context context) {
|
||||
int flag = Settings.System.getInt(context.getContentResolver(), "qs_media_player", 0);
|
||||
flag |= Settings.System.getInt(context.getContentResolver(), "npv_plugin_flag", 0);
|
||||
|
||||
return flag > 0;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user