Fixed a few issues with status bar density changes
Reinflated the brightnessmirror to have the propper layouting. Also fixed the height of the heads up scrim. Bug: 26844819 Change-Id: Idb24dbd40f071a2a722c59cc202ae46c5ace2da8
This commit is contained in:
32
packages/SystemUI/res/layout/brightness_mirror.xml
Normal file
32
packages/SystemUI/res/layout/brightness_mirror.xml
Normal file
@@ -0,0 +1,32 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
~ Copyright (C) 2016 The Android Open Source Project
|
||||
~
|
||||
~ Licensed under the Apache License, Version 2.0 (the "License");
|
||||
~ you may not use this file except in compliance with the License.
|
||||
~ You may obtain a copy of the License at
|
||||
~
|
||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
||||
~
|
||||
~ Unless required by applicable law or agreed to in writing, software
|
||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
~ See the License for the specific language governing permissions and
|
||||
~ limitations under the License
|
||||
-->
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:id="@+id/brightness_mirror"
|
||||
android:layout_width="@dimen/notification_panel_width"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="@integer/notification_panel_layout_gravity"
|
||||
android:visibility="invisible">
|
||||
<FrameLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@drawable/brightness_mirror_background"
|
||||
android:elevation="2dp">
|
||||
<include layout="@layout/quick_settings_brightness_dialog"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"/>
|
||||
</FrameLayout>
|
||||
</FrameLayout>
|
||||
@@ -62,21 +62,7 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="@dimen/status_bar_height" />
|
||||
|
||||
<FrameLayout android:id="@+id/brightness_mirror"
|
||||
android:layout_width="@dimen/notification_panel_width"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="@integer/notification_panel_layout_gravity"
|
||||
android:visibility="invisible">
|
||||
<FrameLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:elevation="2dp"
|
||||
android:background="@drawable/brightness_mirror_background">
|
||||
<include layout="@layout/quick_settings_brightness_dialog"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" />
|
||||
</FrameLayout>
|
||||
</FrameLayout>
|
||||
<include layout="@layout/brightness_mirror" />
|
||||
|
||||
<ViewStub android:id="@+id/fullscreen_user_switcher_stub"
|
||||
android:layout="@layout/car_fullscreen_user_switcher"
|
||||
|
||||
@@ -953,6 +953,8 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode,
|
||||
@Override
|
||||
protected void reInflateViews() {
|
||||
super.reInflateViews();
|
||||
mScrimController.reInflateViews();
|
||||
mBrightnessMirrorController.reInflate();
|
||||
inflateDismissView();
|
||||
updateClearAll();
|
||||
inflateEmptyShadeView();
|
||||
|
||||
@@ -24,6 +24,7 @@ import android.content.Context;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.Rect;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.ViewTreeObserver;
|
||||
import android.view.animation.DecelerateInterpolator;
|
||||
import android.view.animation.Interpolator;
|
||||
@@ -519,4 +520,11 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener,
|
||||
public void setScrimBehindChangeRunnable(Runnable changeRunnable) {
|
||||
mScrimBehind.setChangeRunnable(changeRunnable);
|
||||
}
|
||||
|
||||
public void reInflateViews() {
|
||||
ViewGroup.LayoutParams layoutParams = mHeadsUpScrim.getLayoutParams();
|
||||
layoutParams.height = mHeadsUpScrim.getResources().getDimensionPixelSize(
|
||||
R.dimen.heads_up_scrim_height);
|
||||
mHeadsUpScrim.setLayoutParams(layoutParams);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.android.systemui.statusbar.policy;
|
||||
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewPropertyAnimator;
|
||||
import android.widget.FrameLayout;
|
||||
@@ -33,12 +34,14 @@ public class BrightnessMirrorController {
|
||||
public long TRANSITION_DURATION_OUT = 150;
|
||||
public long TRANSITION_DURATION_IN = 200;
|
||||
|
||||
private final StatusBarWindowView mStatusBarWindow;
|
||||
private final ScrimView mScrimBehind;
|
||||
private final View mBrightnessMirror;
|
||||
private final View mNotificationPanel;
|
||||
private final int[] mInt2Cache = new int[2];
|
||||
private View mBrightnessMirror;
|
||||
|
||||
public BrightnessMirrorController(StatusBarWindowView statusBarWindow) {
|
||||
mStatusBarWindow = statusBarWindow;
|
||||
mScrimBehind = (ScrimView) statusBarWindow.findViewById(R.id.scrim_behind);
|
||||
mBrightnessMirror = statusBarWindow.findViewById(R.id.brightness_mirror);
|
||||
mNotificationPanel = statusBarWindow.findViewById(R.id.notification_panel);
|
||||
@@ -56,11 +59,11 @@ public class BrightnessMirrorController {
|
||||
inAnimation(mNotificationPanel.animate())
|
||||
.withLayer()
|
||||
.withEndAction(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
mBrightnessMirror.setVisibility(View.INVISIBLE);
|
||||
}
|
||||
});
|
||||
@Override
|
||||
public void run() {
|
||||
mBrightnessMirror.setVisibility(View.INVISIBLE);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private ViewPropertyAnimator outAnimation(ViewPropertyAnimator a) {
|
||||
@@ -104,4 +107,12 @@ public class BrightnessMirrorController {
|
||||
R.integer.notification_panel_layout_gravity);
|
||||
mBrightnessMirror.setLayoutParams(lp);
|
||||
}
|
||||
|
||||
public void reInflate() {
|
||||
int index = mStatusBarWindow.indexOfChild(mBrightnessMirror);
|
||||
mStatusBarWindow.removeView(mBrightnessMirror);
|
||||
mBrightnessMirror = LayoutInflater.from(mBrightnessMirror.getContext()).inflate(
|
||||
R.layout.brightness_mirror, mStatusBarWindow, false);
|
||||
mStatusBarWindow.addView(mBrightnessMirror, index);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user