Merge "Interpolate corner to 0 when recording screen" into sc-dev am: e98202ed30 am: 8223a28b3e

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15276891
Fixes: 193658041
Fixes: 193658539
Fixes: 193657115
Change-Id: I76dcf594c42fb1921a4ba74cdc58e3ec12b42e98
This commit is contained in:
Lucas Dupin
2021-07-14 15:46:16 +00:00
parent f0f641d21d
commit 03df935de7
2 changed files with 10 additions and 1 deletions

View File

@@ -120,6 +120,7 @@ import com.android.systemui.plugins.qs.QS;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.plugins.statusbar.StatusBarStateController.StateListener;
import com.android.systemui.qs.QSDetailDisplayer;
import com.android.systemui.screenrecord.RecordingController;
import com.android.systemui.shared.system.QuickStepContract;
import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.FeatureFlags;
@@ -335,6 +336,7 @@ public class NotificationPanelViewController extends PanelViewController {
private final LockscreenShadeTransitionController mLockscreenShadeTransitionController;
private final TapAgainViewController mTapAgainViewController;
private final SplitShadeHeaderController mSplitShadeHeaderController;
private final RecordingController mRecordingController;
private boolean mShouldUseSplitNotificationShade;
// Current max allowed keyguard notifications determined by measuring the panel
private int mMaxAllowedKeyguardNotifications;
@@ -721,6 +723,7 @@ public class NotificationPanelViewController extends PanelViewController {
FragmentService fragmentService,
ContentResolver contentResolver,
QuickAccessWalletController quickAccessWalletController,
RecordingController recordingController,
@Main Executor uiExecutor,
SecureSettings secureSettings,
SplitShadeHeaderController splitShadeHeaderController,
@@ -767,6 +770,7 @@ public class NotificationPanelViewController extends PanelViewController {
mView.setAccessibilityPaneTitle(determineAccessibilityPaneTitle());
setPanelAlpha(255, false /* animate */);
mCommandQueue = commandQueue;
mRecordingController = recordingController;
mDisplayId = displayId;
mPulseExpansionHandler = pulseExpansionHandler;
mDozeParameters = dozeParameters;
@@ -2411,7 +2415,8 @@ public class NotificationPanelViewController extends PanelViewController {
// The padding on this area is large enough that we can use a cheaper clipping strategy
mKeyguardStatusAreaClipBounds.set(left, top, right, bottom);
clipStatusView = qsVisible;
radius = (int) MathUtils.lerp(mScreenCornerRadius, mScrimCornerRadius,
float screenCornerRadius = mRecordingController.isRecording() ? 0 : mScreenCornerRadius;
radius = (int) MathUtils.lerp(screenCornerRadius, mScrimCornerRadius,
Math.min(top / (float) mScrimCornerRadius, 1f));
statusBarClipTop = top - mKeyguardStatusBar.getTop();
}

View File

@@ -97,6 +97,7 @@ import com.android.systemui.media.MediaHierarchyManager;
import com.android.systemui.navigationbar.NavigationModeController;
import com.android.systemui.plugins.FalsingManager;
import com.android.systemui.qs.QSDetailDisplayer;
import com.android.systemui.screenrecord.RecordingController;
import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.FeatureFlags;
import com.android.systemui.statusbar.KeyguardAffordanceView;
@@ -300,6 +301,8 @@ public class NotificationPanelViewTest extends SysuiTestCase {
private NotificationRemoteInputManager mNotificationRemoteInputManager;
@Mock
private RemoteInputController mRemoteInputController;
@Mock
private RecordingController mRecordingController;
private SysuiStatusBarStateController mStatusBarStateController;
private NotificationPanelViewController mNotificationPanelViewController;
@@ -438,6 +441,7 @@ public class NotificationPanelViewTest extends SysuiTestCase {
mFragmentService,
mContentResolver,
mQuickAccessWalletController,
mRecordingController,
new FakeExecutor(new FakeSystemClock()),
mSecureSettings,
mSplitShadeHeaderController,