Merge changes I76427c00,Idcbbc90a into udc-dev
* changes: Set corner radius to 0 when casting Make bouncer title font the same as num pad font.
This commit is contained in:
@@ -22,6 +22,7 @@
|
|||||||
<!-- Keyguard PIN pad styles -->
|
<!-- Keyguard PIN pad styles -->
|
||||||
<style name="Keyguard.TextView" parent="@android:style/Widget.DeviceDefault.TextView">
|
<style name="Keyguard.TextView" parent="@android:style/Widget.DeviceDefault.TextView">
|
||||||
<item name="android:textSize">@dimen/kg_status_line_font_size</item>
|
<item name="android:textSize">@dimen/kg_status_line_font_size</item>
|
||||||
|
<item name="android:fontFamily">@*android:string/config_bodyFontFamily</item>
|
||||||
</style>
|
</style>
|
||||||
<style name="Keyguard.TextView.EmergencyButton" parent="Theme.SystemUI">
|
<style name="Keyguard.TextView.EmergencyButton" parent="Theme.SystemUI">
|
||||||
<item name="android:textColor">?androidprv:attr/materialColorOnTertiaryFixed</item>
|
<item name="android:textColor">?androidprv:attr/materialColorOnTertiaryFixed</item>
|
||||||
|
|||||||
@@ -90,6 +90,7 @@ import com.android.systemui.statusbar.phone.ScrimController;
|
|||||||
import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager;
|
import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager;
|
||||||
import com.android.systemui.statusbar.phone.StatusBarTouchableRegionManager;
|
import com.android.systemui.statusbar.phone.StatusBarTouchableRegionManager;
|
||||||
import com.android.systemui.statusbar.phone.dagger.CentralSurfacesComponent;
|
import com.android.systemui.statusbar.phone.dagger.CentralSurfacesComponent;
|
||||||
|
import com.android.systemui.statusbar.policy.CastController;
|
||||||
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
||||||
import com.android.systemui.util.LargeScreenUtils;
|
import com.android.systemui.util.LargeScreenUtils;
|
||||||
|
|
||||||
@@ -135,6 +136,7 @@ public class QuickSettingsController {
|
|||||||
private final LockscreenGestureLogger mLockscreenGestureLogger;
|
private final LockscreenGestureLogger mLockscreenGestureLogger;
|
||||||
private final ShadeLogger mShadeLog;
|
private final ShadeLogger mShadeLog;
|
||||||
private final KeyguardFaceAuthInteractor mKeyguardFaceAuthInteractor;
|
private final KeyguardFaceAuthInteractor mKeyguardFaceAuthInteractor;
|
||||||
|
private final CastController mCastController;
|
||||||
private final FeatureFlags mFeatureFlags;
|
private final FeatureFlags mFeatureFlags;
|
||||||
private final InteractionJankMonitor mInteractionJankMonitor;
|
private final InteractionJankMonitor mInteractionJankMonitor;
|
||||||
private final ShadeRepository mShadeRepository;
|
private final ShadeRepository mShadeRepository;
|
||||||
@@ -324,7 +326,8 @@ public class QuickSettingsController {
|
|||||||
InteractionJankMonitor interactionJankMonitor,
|
InteractionJankMonitor interactionJankMonitor,
|
||||||
ShadeLogger shadeLog,
|
ShadeLogger shadeLog,
|
||||||
KeyguardFaceAuthInteractor keyguardFaceAuthInteractor,
|
KeyguardFaceAuthInteractor keyguardFaceAuthInteractor,
|
||||||
ShadeRepository shadeRepository
|
ShadeRepository shadeRepository,
|
||||||
|
CastController castController
|
||||||
) {
|
) {
|
||||||
mPanelViewControllerLazy = panelViewControllerLazy;
|
mPanelViewControllerLazy = panelViewControllerLazy;
|
||||||
mPanelView = panelView;
|
mPanelView = panelView;
|
||||||
@@ -364,6 +367,7 @@ public class QuickSettingsController {
|
|||||||
mMetricsLogger = metricsLogger;
|
mMetricsLogger = metricsLogger;
|
||||||
mShadeLog = shadeLog;
|
mShadeLog = shadeLog;
|
||||||
mKeyguardFaceAuthInteractor = keyguardFaceAuthInteractor;
|
mKeyguardFaceAuthInteractor = keyguardFaceAuthInteractor;
|
||||||
|
mCastController = castController;
|
||||||
mFeatureFlags = featureFlags;
|
mFeatureFlags = featureFlags;
|
||||||
mInteractionJankMonitor = interactionJankMonitor;
|
mInteractionJankMonitor = interactionJankMonitor;
|
||||||
mShadeRepository = shadeRepository;
|
mShadeRepository = shadeRepository;
|
||||||
@@ -1188,7 +1192,9 @@ public class QuickSettingsController {
|
|||||||
mLastClipBounds.set(left, top, right, bottom);
|
mLastClipBounds.set(left, top, right, bottom);
|
||||||
if (mIsFullWidth) {
|
if (mIsFullWidth) {
|
||||||
clipStatusView = qsVisible;
|
clipStatusView = qsVisible;
|
||||||
float screenCornerRadius = mRecordingController.isRecording() ? 0 : mScreenCornerRadius;
|
float screenCornerRadius =
|
||||||
|
mRecordingController.isRecording() || mCastController.hasConnectedCastDevice()
|
||||||
|
? 0 : mScreenCornerRadius;
|
||||||
radius = (int) MathUtils.lerp(screenCornerRadius, mScrimCornerRadius,
|
radius = (int) MathUtils.lerp(screenCornerRadius, mScrimCornerRadius,
|
||||||
Math.min(top / (float) mScrimCornerRadius, 1f));
|
Math.min(top / (float) mScrimCornerRadius, 1f));
|
||||||
mScrimController.setNotificationBottomRadius(radius);
|
mScrimController.setNotificationBottomRadius(radius);
|
||||||
|
|||||||
@@ -28,6 +28,11 @@ public interface CastController extends CallbackController<Callback>, Dumpable {
|
|||||||
void startCasting(CastDevice device);
|
void startCasting(CastDevice device);
|
||||||
void stopCasting(CastDevice device);
|
void stopCasting(CastDevice device);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return whether we have a connected device.
|
||||||
|
*/
|
||||||
|
boolean hasConnectedCastDevice();
|
||||||
|
|
||||||
public interface Callback {
|
public interface Callback {
|
||||||
void onCastDevicesChanged();
|
void onCastDevicesChanged();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -217,6 +217,12 @@ public class CastControllerImpl implements CastController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean hasConnectedCastDevice() {
|
||||||
|
return getCastDevices().stream().anyMatch(
|
||||||
|
castDevice -> castDevice.state == CastDevice.STATE_CONNECTED);
|
||||||
|
}
|
||||||
|
|
||||||
private void setProjection(MediaProjectionInfo projection, boolean started) {
|
private void setProjection(MediaProjectionInfo projection, boolean started) {
|
||||||
boolean changed = false;
|
boolean changed = false;
|
||||||
final MediaProjectionInfo oldProjection = mProjection;
|
final MediaProjectionInfo oldProjection = mProjection;
|
||||||
|
|||||||
@@ -158,6 +158,7 @@ import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager;
|
|||||||
import com.android.systemui.statusbar.phone.StatusBarTouchableRegionManager;
|
import com.android.systemui.statusbar.phone.StatusBarTouchableRegionManager;
|
||||||
import com.android.systemui.statusbar.phone.TapAgainViewController;
|
import com.android.systemui.statusbar.phone.TapAgainViewController;
|
||||||
import com.android.systemui.statusbar.phone.UnlockedScreenOffAnimationController;
|
import com.android.systemui.statusbar.phone.UnlockedScreenOffAnimationController;
|
||||||
|
import com.android.systemui.statusbar.policy.CastController;
|
||||||
import com.android.systemui.statusbar.policy.ConfigurationController;
|
import com.android.systemui.statusbar.policy.ConfigurationController;
|
||||||
import com.android.systemui.statusbar.policy.KeyguardQsUserSwitchController;
|
import com.android.systemui.statusbar.policy.KeyguardQsUserSwitchController;
|
||||||
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
||||||
@@ -306,6 +307,7 @@ public class NotificationPanelViewControllerBaseTest extends SysuiTestCase {
|
|||||||
@Mock protected ActivityStarter mActivityStarter;
|
@Mock protected ActivityStarter mActivityStarter;
|
||||||
@Mock protected KeyguardFaceAuthInteractor mKeyguardFaceAuthInteractor;
|
@Mock protected KeyguardFaceAuthInteractor mKeyguardFaceAuthInteractor;
|
||||||
@Mock protected ShadeRepository mShadeRepository;
|
@Mock protected ShadeRepository mShadeRepository;
|
||||||
|
@Mock private CastController mCastController;
|
||||||
|
|
||||||
protected final int mMaxUdfpsBurnInOffsetY = 5;
|
protected final int mMaxUdfpsBurnInOffsetY = 5;
|
||||||
protected KeyguardBottomAreaInteractor mKeyguardBottomAreaInteractor;
|
protected KeyguardBottomAreaInteractor mKeyguardBottomAreaInteractor;
|
||||||
@@ -675,7 +677,8 @@ public class NotificationPanelViewControllerBaseTest extends SysuiTestCase {
|
|||||||
mInteractionJankMonitor,
|
mInteractionJankMonitor,
|
||||||
mShadeLog,
|
mShadeLog,
|
||||||
mKeyguardFaceAuthInteractor,
|
mKeyguardFaceAuthInteractor,
|
||||||
mShadeRepository
|
mShadeRepository,
|
||||||
|
mCastController
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -87,6 +87,7 @@ import com.android.systemui.statusbar.phone.LockscreenGestureLogger;
|
|||||||
import com.android.systemui.statusbar.phone.ScrimController;
|
import com.android.systemui.statusbar.phone.ScrimController;
|
||||||
import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager;
|
import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager;
|
||||||
import com.android.systemui.statusbar.phone.StatusBarTouchableRegionManager;
|
import com.android.systemui.statusbar.phone.StatusBarTouchableRegionManager;
|
||||||
|
import com.android.systemui.statusbar.policy.CastController;
|
||||||
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
||||||
|
|
||||||
import dagger.Lazy;
|
import dagger.Lazy;
|
||||||
@@ -155,6 +156,7 @@ public class QuickSettingsControllerTest extends SysuiTestCase {
|
|||||||
@Mock private ShadeLogger mShadeLogger;
|
@Mock private ShadeLogger mShadeLogger;
|
||||||
@Mock private DumpManager mDumpManager;
|
@Mock private DumpManager mDumpManager;
|
||||||
@Mock private UiEventLogger mUiEventLogger;
|
@Mock private UiEventLogger mUiEventLogger;
|
||||||
|
@Mock private CastController mCastController;
|
||||||
|
|
||||||
private SysuiStatusBarStateController mStatusBarStateController;
|
private SysuiStatusBarStateController mStatusBarStateController;
|
||||||
|
|
||||||
@@ -243,7 +245,8 @@ public class QuickSettingsControllerTest extends SysuiTestCase {
|
|||||||
mInteractionJankMonitor,
|
mInteractionJankMonitor,
|
||||||
mShadeLogger,
|
mShadeLogger,
|
||||||
mock(KeyguardFaceAuthInteractor.class),
|
mock(KeyguardFaceAuthInteractor.class),
|
||||||
mock(ShadeRepository.class)
|
mock(ShadeRepository.class),
|
||||||
|
mCastController
|
||||||
);
|
);
|
||||||
|
|
||||||
mFragmentListener = mQsController.getQsFragmentListener();
|
mFragmentListener = mQsController.getQsFragmentListener();
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package com.android.systemui.statusbar.policy;
|
package com.android.systemui.statusbar.policy;
|
||||||
|
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertTrue;
|
||||||
import static org.junit.Assert.fail;
|
import static org.junit.Assert.fail;
|
||||||
import static org.mockito.Mockito.mock;
|
import static org.mockito.Mockito.mock;
|
||||||
import static org.mockito.Mockito.never;
|
import static org.mockito.Mockito.never;
|
||||||
@@ -125,4 +126,20 @@ public class CastControllerImplTest extends SysuiTestCase {
|
|||||||
fail("Concurrent modification exception");
|
fail("Concurrent modification exception");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void hasConnectedCastDevice_connected() {
|
||||||
|
CastController.CastDevice castDevice = new CastController.CastDevice();
|
||||||
|
castDevice.state = CastController.CastDevice.STATE_CONNECTED;
|
||||||
|
mController.startCasting(castDevice);
|
||||||
|
assertTrue(mController.hasConnectedCastDevice());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void hasConnectedCastDevice_notConnected() {
|
||||||
|
CastController.CastDevice castDevice = new CastController.CastDevice();
|
||||||
|
castDevice.state = CastController.CastDevice.STATE_CONNECTING;
|
||||||
|
mController.startCasting(castDevice);
|
||||||
|
assertTrue(mController.hasConnectedCastDevice());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,4 +51,9 @@ public class FakeCastController extends BaseLeakChecker<Callback> implements Cas
|
|||||||
public void stopCasting(CastDevice device) {
|
public void stopCasting(CastDevice device) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean hasConnectedCastDevice() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user