Merge "Make QS light" into oc-dev
am: 755138bb1c
Change-Id: I2a76725f4fb4edb0fa478619b28498c9bfc490ac
This commit is contained in:
@@ -748,12 +748,12 @@ easier.
|
||||
|
||||
<!-- @hide DeviceDefault theme for a window that should use Settings theme colors
|
||||
but has a full dark palette. ONLY USED FOR QUICK SETTINGS THEME -->
|
||||
<style name="Theme.DeviceDefault.QuickSettings" parent="Theme.Material">
|
||||
<style name="Theme.DeviceDefault.QuickSettings" parent="Theme.DeviceDefault.Light">
|
||||
<!-- Color palette -->
|
||||
<item name="colorPrimary">@color/primary_device_default_settings</item>
|
||||
<item name="colorPrimaryDark">@color/primary_dark_device_default_settings</item>
|
||||
<item name="colorSecondary">@color/secondary_device_default_settings</item>
|
||||
<item name="colorAccent">@color/accent_device_default_dark</item>
|
||||
<item name="colorPrimary">@color/primary_device_default_settings_light</item>
|
||||
<item name="colorPrimaryDark">@color/primary_dark_device_default_settings_light</item>
|
||||
<item name="colorSecondary">@color/secondary_device_default_settings_light</item>
|
||||
<item name="colorAccent">@color/accent_device_default_light</item>
|
||||
<item name="colorControlNormal">?attr/textColorPrimary</item>
|
||||
</style>
|
||||
|
||||
|
||||
@@ -186,6 +186,11 @@ public class Utils {
|
||||
TypedArray ta = context.obtainStyledAttributes(new int[]{attr});
|
||||
float alpha = ta.getFloat(0, 0);
|
||||
ta.recycle();
|
||||
return applyAlpha(alpha, inputColor);
|
||||
}
|
||||
|
||||
@ColorInt
|
||||
public static int applyAlpha(float alpha, int inputColor) {
|
||||
alpha *= Color.alpha(inputColor);
|
||||
return Color.argb((int) (alpha), Color.red(inputColor), Color.green(inputColor),
|
||||
Color.blue(inputColor));
|
||||
|
||||
@@ -15,6 +15,6 @@
|
||||
-->
|
||||
<inset xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<shape>
|
||||
<solid android:color="?android:attr/colorPrimary"/>
|
||||
<solid android:color="?android:attr/colorPrimaryDark"/>
|
||||
</shape>
|
||||
</inset>
|
||||
|
||||
@@ -16,6 +16,5 @@
|
||||
<View xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1dp"
|
||||
android:layout_marginStart="16dp"
|
||||
android:layout_marginEnd="16dp"
|
||||
android:alpha=".12"
|
||||
android:background="?android:attr/colorForeground" />
|
||||
|
||||
@@ -32,6 +32,7 @@ import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import com.android.internal.logging.MetricsLogger;
|
||||
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
||||
import com.android.settingslib.Utils;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.plugins.qs.DetailAdapter;
|
||||
@@ -118,7 +119,8 @@ public class QSPanel extends LinearLayout implements Tunable, Callback {
|
||||
|
||||
protected void addDivider() {
|
||||
mDivider = LayoutInflater.from(mContext).inflate(R.layout.qs_divider, this, false);
|
||||
mDivider.setBackgroundColor(getColorForState(mContext, Tile.STATE_INACTIVE));
|
||||
mDivider.setBackgroundColor(Utils.applyAlpha(mDivider.getAlpha(),
|
||||
getColorForState(mContext, Tile.STATE_ACTIVE)));
|
||||
addView(mDivider);
|
||||
}
|
||||
|
||||
|
||||
@@ -21,15 +21,19 @@ import android.graphics.Color;
|
||||
import android.graphics.Rect;
|
||||
import android.support.annotation.VisibleForTesting;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.View;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.TextClock;
|
||||
|
||||
import com.android.settingslib.Utils;
|
||||
import com.android.systemui.BatteryMeterView;
|
||||
import com.android.systemui.Dependency;
|
||||
import com.android.systemui.R;
|
||||
import com.android.systemui.R.id;
|
||||
import com.android.systemui.plugins.ActivityStarter;
|
||||
import com.android.systemui.qs.QSDetail.Callback;
|
||||
import com.android.systemui.statusbar.SignalClusterView;
|
||||
import com.android.systemui.statusbar.policy.DarkIconDispatcher.DarkReceiver;
|
||||
|
||||
|
||||
public class QuickStatusBarHeader extends RelativeLayout {
|
||||
@@ -63,19 +67,27 @@ public class QuickStatusBarHeader extends RelativeLayout {
|
||||
updateResources();
|
||||
|
||||
// Set the light/dark theming on the header status UI to match the current theme.
|
||||
SignalClusterView cluster = findViewById(R.id.signal_cluster);
|
||||
int colorForeground = Utils.getColorAttr(getContext(), android.R.attr.colorForeground);
|
||||
float intensity = colorForeground == Color.WHITE ? 0 : 1;
|
||||
cluster.onDarkChanged(new Rect(0, 0, 0, 0), intensity, colorForeground);
|
||||
Rect tintArea = new Rect(0, 0, 0, 0);
|
||||
|
||||
applyDarkness(R.id.signal_cluster, tintArea, intensity, colorForeground);
|
||||
applyDarkness(R.id.battery, tintArea, intensity, colorForeground);
|
||||
applyDarkness(R.id.clock, tintArea, intensity, colorForeground);
|
||||
|
||||
BatteryMeterView battery = findViewById(R.id.battery);
|
||||
battery.setForceShowPercent(true);
|
||||
int colorSecondary = Utils.getColorAttr(getContext(), android.R.attr.textColorSecondary);
|
||||
battery.setRawColors(colorForeground, colorSecondary);
|
||||
|
||||
mActivityStarter = Dependency.get(ActivityStarter.class);
|
||||
}
|
||||
|
||||
private void applyDarkness(int id, Rect tintArea, float intensity, int color) {
|
||||
View v = findViewById(id);
|
||||
if (v instanceof DarkReceiver) {
|
||||
((DarkReceiver) v).onDarkChanged(tintArea, intensity, color);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onConfigurationChanged(Configuration newConfig) {
|
||||
super.onConfigurationChanged(newConfig);
|
||||
|
||||
@@ -22,6 +22,7 @@ import static com.android.internal.logging.nano.MetricsProto.MetricsEvent.FIELD_
|
||||
import static com.android.internal.logging.nano.MetricsProto.MetricsEvent.TYPE_ACTION;
|
||||
import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
|
||||
|
||||
import android.R.attr;
|
||||
import android.app.ActivityManager;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
@@ -342,9 +343,9 @@ public abstract class QSTileImpl<TState extends State> implements QSTile {
|
||||
Utils.getColorAttr(context, android.R.attr.textColorTertiary));
|
||||
case Tile.STATE_INACTIVE:
|
||||
return Utils.getDisabled(context,
|
||||
Utils.getColorAttr(context, android.R.attr.colorForeground));
|
||||
Utils.getColorAttr(context, android.R.attr.textColorSecondary));
|
||||
case Tile.STATE_ACTIVE:
|
||||
return Utils.getColorAttr(context, android.R.attr.colorForeground);
|
||||
return Utils.getColorAttr(context, attr.textColorSecondary);
|
||||
default:
|
||||
Log.e("QSTile", "Invalid state " + state);
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user