Merge "AOD: update AOD2 views to spec" into oc-dev
This commit is contained in:
@@ -3793,9 +3793,9 @@ public class Notification implements Parcelable
|
||||
// Ambient view does not have these
|
||||
bindHeaderText(contentView);
|
||||
bindHeaderChronometerAndTime(contentView);
|
||||
bindExpandButton(contentView);
|
||||
bindProfileBadge(contentView);
|
||||
}
|
||||
bindExpandButton(contentView);
|
||||
}
|
||||
|
||||
private void bindExpandButton(RemoteViews contentView) {
|
||||
|
||||
@@ -20,6 +20,8 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:tag="ambient"
|
||||
android:paddingStart="@dimen/notification_extra_margin_ambient"
|
||||
android:paddingEnd="@dimen/notification_extra_margin_ambient"
|
||||
>
|
||||
<include layout="@layout/notification_template_header" />
|
||||
|
||||
@@ -52,7 +54,7 @@
|
||||
android:ellipsize="marquee"
|
||||
android:fadingEdge="horizontal"
|
||||
android:textSize="20sp"
|
||||
android:textColor="#e6fafafa"
|
||||
android:textColor="#ffffffff"
|
||||
/>
|
||||
<TextView android:id="@+id/text"
|
||||
android:layout_width="match_parent"
|
||||
@@ -63,7 +65,7 @@
|
||||
android:gravity="top"
|
||||
android:visibility="gone"
|
||||
android:textSize="16sp"
|
||||
android:textColor="#ccfafafa"
|
||||
android:textColor="#eeffffff"
|
||||
android:layout_marginTop="4dp"
|
||||
/>
|
||||
</LinearLayout>
|
||||
|
||||
@@ -165,6 +165,9 @@
|
||||
-->
|
||||
<dimen name="notification_content_plus_picture_margin_end">72dp</dimen>
|
||||
|
||||
<!-- The additional margin on the sides of the ambient view. -->
|
||||
<dimen name="notification_extra_margin_ambient">16dp</dimen>
|
||||
|
||||
<!-- The height of the notification action list -->
|
||||
<dimen name="notification_action_list_height">56dp</dimen>
|
||||
|
||||
|
||||
@@ -34,9 +34,11 @@ import android.widget.GridLayout;
|
||||
import android.widget.TextClock;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.android.internal.util.ArrayUtils;
|
||||
import com.android.internal.widget.LockPatternUtils;
|
||||
import com.android.systemui.ChargingView;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Locale;
|
||||
|
||||
public class KeyguardStatusView extends GridLayout {
|
||||
@@ -53,6 +55,10 @@ public class KeyguardStatusView extends GridLayout {
|
||||
private ViewGroup mClockContainer;
|
||||
private ChargingView mBatteryDoze;
|
||||
|
||||
private View[] mVisibleInDoze;
|
||||
private boolean mPulsing;
|
||||
private boolean mDark;
|
||||
|
||||
private KeyguardUpdateMonitorCallback mInfoCallback = new KeyguardUpdateMonitorCallback() {
|
||||
|
||||
@Override
|
||||
@@ -117,6 +123,7 @@ public class KeyguardStatusView extends GridLayout {
|
||||
mClockView.setShowCurrentUserTime(true);
|
||||
mOwnerInfo = (TextView) findViewById(R.id.owner_info);
|
||||
mBatteryDoze = (ChargingView) findViewById(R.id.battery_doze);
|
||||
mVisibleInDoze = new View[]{mBatteryDoze, mClockView};
|
||||
|
||||
boolean shouldMarquee = KeyguardUpdateMonitor.getInstance(mContext).isDeviceInteractive();
|
||||
setEnableMarquee(shouldMarquee);
|
||||
@@ -273,14 +280,28 @@ public class KeyguardStatusView extends GridLayout {
|
||||
}
|
||||
|
||||
public void setDark(boolean dark) {
|
||||
mDark = dark;
|
||||
|
||||
final int N = mClockContainer.getChildCount();
|
||||
for (int i = 0; i < N; i++) {
|
||||
View child = mClockContainer.getChildAt(i);
|
||||
if (child == mClockView || child == mBatteryDoze) {
|
||||
if (ArrayUtils.contains(mVisibleInDoze, child)) {
|
||||
continue;
|
||||
}
|
||||
child.setAlpha(dark ? 0 : 1);
|
||||
}
|
||||
updateDozeVisibleViews();
|
||||
mBatteryDoze.setDark(dark);
|
||||
}
|
||||
|
||||
public void setPulsing(boolean pulsing) {
|
||||
mPulsing = pulsing;
|
||||
updateDozeVisibleViews();
|
||||
}
|
||||
|
||||
private void updateDozeVisibleViews() {
|
||||
for (View child : mVisibleInDoze) {
|
||||
child.setAlpha(mDark && mPulsing ? 0.5f : 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -167,7 +167,7 @@ public class NotificationShelf extends ActivatableNotificationView implements
|
||||
openedAmount = Math.min(1.0f, openedAmount);
|
||||
mShelfState.openedAmount = openedAmount;
|
||||
mShelfState.clipTopAmount = 0;
|
||||
mShelfState.alpha = 1.0f;
|
||||
mShelfState.alpha = mAmbientState.isPulsing() ? 0 : 1;
|
||||
mShelfState.belowSpeedBump = mAmbientState.getSpeedBumpIndex() == 0;
|
||||
mShelfState.shadowAlpha = 1.0f;
|
||||
mShelfState.hideSensitive = false;
|
||||
@@ -601,6 +601,11 @@ public class NotificationShelf extends ActivatableNotificationView implements
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasOverlappingRendering() {
|
||||
return false; // Shelf only uses alpha for transitions where the difference can't be seen.
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLayoutChange(View v, int left, int top, int right, int bottom, int oldLeft,
|
||||
int oldTop, int oldRight, int oldBottom) {
|
||||
|
||||
@@ -2472,4 +2472,8 @@ public class NotificationPanelView extends PanelView implements
|
||||
public void setNoVisibleNotifications(boolean noNotifications) {
|
||||
mNoVisibleNotifications = noNotifications;
|
||||
}
|
||||
|
||||
public void setPulsing(boolean pulsing) {
|
||||
mKeyguardStatusView.setPulsing(pulsing);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -89,7 +89,6 @@ import android.os.Vibrator;
|
||||
import android.provider.Settings;
|
||||
import android.service.notification.NotificationListenerService.RankingMap;
|
||||
import android.service.notification.StatusBarNotification;
|
||||
import android.support.annotation.VisibleForTesting;
|
||||
import android.util.ArraySet;
|
||||
import android.util.DisplayMetrics;
|
||||
import android.util.EventLog;
|
||||
@@ -242,7 +241,6 @@ import com.android.systemui.RecentsComponent;
|
||||
import com.android.systemui.SwipeHelper;
|
||||
import com.android.systemui.SystemUI;
|
||||
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin.MenuItem;
|
||||
import com.android.systemui.plugins.statusbar.NotificationSwipeActionHelper;
|
||||
import com.android.systemui.recents.Recents;
|
||||
import com.android.systemui.statusbar.policy.RemoteInputView;
|
||||
import com.android.systemui.statusbar.stack.StackStateAnimator;
|
||||
@@ -5015,16 +5013,20 @@ public class StatusBar extends SystemUI implements DemoMode,
|
||||
if (!mHeadsUpManager.getAllEntries().isEmpty()) {
|
||||
// Only pulse the stack scroller if there's actually something to show.
|
||||
// Otherwise just show the always-on screen.
|
||||
mStackScroller.setPulsing(true);
|
||||
mVisualStabilityManager.setPulsing(true);
|
||||
setPulsing(true);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPulseFinished() {
|
||||
callback.onPulseFinished();
|
||||
mStackScroller.setPulsing(false);
|
||||
mVisualStabilityManager.setPulsing(false);
|
||||
setPulsing(false);
|
||||
}
|
||||
|
||||
private void setPulsing(boolean pulsing) {
|
||||
mStackScroller.setPulsing(pulsing);
|
||||
mNotificationPanel.setPulsing(pulsing);
|
||||
mVisualStabilityManager.setPulsing(pulsing);
|
||||
}
|
||||
}, reason);
|
||||
}
|
||||
|
||||
@@ -59,6 +59,7 @@ public class AmbientState {
|
||||
private boolean mPanelTracking;
|
||||
private boolean mExpansionChanging;
|
||||
private boolean mPanelFullWidth;
|
||||
private boolean mPulsing;
|
||||
|
||||
public AmbientState(Context context) {
|
||||
reload(context);
|
||||
@@ -285,6 +286,14 @@ public class AmbientState {
|
||||
mPanelTracking = panelTracking;
|
||||
}
|
||||
|
||||
public boolean isPulsing() {
|
||||
return mPulsing;
|
||||
}
|
||||
|
||||
public void setPulsing(boolean pulsing) {
|
||||
mPulsing = pulsing;
|
||||
}
|
||||
|
||||
public boolean isPanelTracking() {
|
||||
return mPanelTracking;
|
||||
}
|
||||
|
||||
@@ -4060,9 +4060,11 @@ public class NotificationStackScrollLayout extends ViewGroup
|
||||
return;
|
||||
}
|
||||
mPulsing = pulsing;
|
||||
mAmbientState.setPulsing(pulsing);
|
||||
updateNotificationAnimationStates();
|
||||
updateContentHeight();
|
||||
notifyHeightChangeListener(mShelf);
|
||||
requestChildrenUpdate();
|
||||
}
|
||||
|
||||
public void setFadingOut(boolean fadingOut) {
|
||||
|
||||
Reference in New Issue
Block a user