diff options
author | Jorim Jaggi <jjaggi@google.com> | 2014-06-03 19:57:26 +0200 |
---|---|---|
committer | Jorim Jaggi <jjaggi@google.com> | 2014-06-04 16:58:33 +0200 |
commit | b741f053394b6e8f59bdf72bb47e9f4484fbb808 (patch) | |
tree | 75f41704305da739b9cd87e29d50a7590035a3fb /packages/SystemUI/src | |
parent | e42c72e1b27888035e0ee4455c0c90d63abe3c75 (diff) | |
download | frameworks_base-b741f053394b6e8f59bdf72bb47e9f4484fbb808.zip frameworks_base-b741f053394b6e8f59bdf72bb47e9f4484fbb808.tar.gz frameworks_base-b741f053394b6e8f59bdf72bb47e9f4484fbb808.tar.bz2 |
Fix more card appearance to spec from design.
Bug: 15392952
Change-Id: I4539b48af33dc6838ef0c59dac7ca08fc1a2bd03
Diffstat (limited to 'packages/SystemUI/src')
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/ExpandableView.java | 8 | ||||
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/NotificationOverflowIconsView.java | 28 |
2 files changed, 26 insertions, 10 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/ExpandableView.java b/packages/SystemUI/src/com/android/systemui/statusbar/ExpandableView.java index 088f076..ac2537c 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/ExpandableView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/ExpandableView.java @@ -69,7 +69,9 @@ public abstract class ExpandableView extends FrameLayout { ? MeasureSpec.makeMeasureSpec(ownMaxHeight, MeasureSpec.EXACTLY) : MeasureSpec.makeMeasureSpec(layoutParams.height, MeasureSpec.EXACTLY); } - child.measure(widthMeasureSpec, childHeightSpec); + child.measure( + getChildMeasureSpec(widthMeasureSpec, 0 /* padding */, layoutParams.width), + childHeightSpec); int childHeight = child.getMeasuredHeight(); maxChildHeight = Math.max(maxChildHeight, childHeight); } else { @@ -79,7 +81,9 @@ public abstract class ExpandableView extends FrameLayout { int ownHeight = hasFixedHeight ? ownMaxHeight : maxChildHeight; newHeightSpec = MeasureSpec.makeMeasureSpec(ownHeight, MeasureSpec.EXACTLY); for (View child : mMatchParentViews) { - child.measure(widthMeasureSpec, newHeightSpec); + child.measure(getChildMeasureSpec( + widthMeasureSpec, 0 /* padding */, child.getLayoutParams().width), + newHeightSpec); } mMatchParentViews.clear(); int width = MeasureSpec.getSize(widthMeasureSpec); diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationOverflowIconsView.java b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationOverflowIconsView.java index ce31894..6819d9b 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationOverflowIconsView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationOverflowIconsView.java @@ -18,15 +18,13 @@ package com.android.systemui.statusbar; import android.app.Notification; import android.content.Context; -import android.graphics.Color; +import android.content.res.Configuration; import android.graphics.PorterDuff; import android.util.AttributeSet; -import android.view.View; import android.widget.ImageView; -import android.widget.LinearLayout; import android.widget.TextView; -import com.android.internal.statusbar.StatusBarIcon; +import com.android.internal.util.NotificationColorUtil; import com.android.systemui.R; import com.android.systemui.statusbar.phone.IconMerger; @@ -37,6 +35,8 @@ public class NotificationOverflowIconsView extends IconMerger { private TextView mMoreText; private int mTintColor; + private int mIconSize; + private NotificationColorUtil mNotificationColorUtil = new NotificationColorUtil(); public NotificationOverflowIconsView(Context context, AttributeSet attrs) { super(context, attrs); @@ -46,6 +46,8 @@ public class NotificationOverflowIconsView extends IconMerger { protected void onFinishInflate() { super.onFinishInflate(); mTintColor = getResources().getColor(R.color.keyguard_overflow_content_color); + mIconSize = getResources().getDimensionPixelSize( + com.android.internal.R.dimen.status_bar_icon_size); } public void setMoreText(TextView moreText) { @@ -56,14 +58,24 @@ public class NotificationOverflowIconsView extends IconMerger { StatusBarIconView v = new StatusBarIconView(getContext(), "", notification.notification.getNotification()); v.setScaleType(ImageView.ScaleType.CENTER_INSIDE); - v.setColorFilter(mTintColor, PorterDuff.Mode.MULTIPLY); - addView(v); + addView(v, mIconSize, mIconSize); v.set(notification.icon.getStatusBarIcon()); + applyColor(notification.notification.getNotification(), v); updateMoreText(); } + private void applyColor(Notification notification, StatusBarIconView view) { + if (notification.color != Notification.COLOR_DEFAULT) { + if (mNotificationColorUtil.isGrayscale(view.getDrawable())) { + view.setColorFilter(mTintColor, PorterDuff.Mode.MULTIPLY); + } + } else { + view.setColorFilter(notification.color, PorterDuff.Mode.SRC_ATOP); + } + } + private void updateMoreText() { - mMoreText.setText(getResources().getQuantityString( - R.plurals.keyguard_more_overflow_text, getChildCount(), getChildCount())); + mMoreText.setText( + getResources().getString(R.string.keyguard_more_overflow_text, getChildCount())); } } |