Loading packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/ScreenRecordTileTest.java +10 −0 Original line number Diff line number Diff line Loading @@ -345,9 +345,19 @@ public class ScreenRecordTileTest extends SysuiTestCase { public void testNotStartingAndRecording_returnDetailsViewModel() { when(mController.isStarting()).thenReturn(false); when(mController.isRecording()).thenReturn(false); when(mController.isScreenCaptureDisabled()).thenReturn(false); mTile.getDetailsViewModel(Assert::assertNotNull); } @Test @EnableFlags(QsDetailedView.FLAG_NAME) public void testRecordingDisabled_notReturnDetailsViewModel() { when(mController.isStarting()).thenReturn(false); when(mController.isRecording()).thenReturn(false); when(mController.isScreenCaptureDisabled()).thenReturn(true); mTile.getDetailsViewModel(Assert::assertNull); } @Test @EnableFlags(QsDetailedView.FLAG_NAME) public void testStarting_notReturnDetailsViewModel() { Loading packages/SystemUI/src/com/android/systemui/qs/tiles/ScreenRecordTile.java +20 −2 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.text.TextUtils; import android.util.Log; import android.widget.Button; import android.widget.Switch; import android.widget.Toast; import androidx.annotation.Nullable; Loading Loading @@ -192,8 +193,19 @@ public class ScreenRecordTile extends QSTileImpl<QSTile.BooleanState> @Override public boolean getDetailsViewModel(Consumer<TileDetailsViewModel> callback) { handleClick(() -> executeWhenUnlockedKeyguard( () -> callback.accept(new ScreenRecordDetailsViewModel(mController, this::onStartRecordingClicked))) () -> { if (mController.isScreenCaptureDisabled()) { // Close the panel first so that the toast can show up. mDialogTransitionAnimator.disableAllCurrentDialogsExitAnimations(); mPanelInteractor.collapsePanels(); showDisabledByPolicyToast(); return; } callback.accept(new ScreenRecordDetailsViewModel(mController, this::onStartRecordingClicked)); }) ); return true; } Loading Loading @@ -244,6 +256,12 @@ public class ScreenRecordTile extends QSTileImpl<QSTile.BooleanState> return mContext.getString(R.string.quick_settings_screen_record_label); } void showDisabledByPolicyToast() { Toast.makeText(mContext, R.string.screen_capturing_disabled_by_policy_dialog_description, Toast.LENGTH_SHORT) .show(); } private void cancelCountdown() { Log.d(TAG, "Cancelling countdown"); mController.cancelCountdown(); Loading packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/ScreenRecordDetailsContent.kt +0 −7 Original line number Diff line number Diff line Loading @@ -28,13 +28,6 @@ import com.android.systemui.screenrecord.ScreenRecordPermissionViewBinder @Composable fun ScreenRecordDetailsContent(viewModel: ScreenRecordDetailsViewModel) { // TODO(b/378514312): Finish implementing this function. if (viewModel.recordingController.isScreenCaptureDisabled) { // TODO(b/388345506): Show disabled page here. return } val viewBinder: ScreenRecordPermissionViewBinder = remember { viewModel.recordingController.createScreenRecordPermissionViewBinder( viewModel.onStartRecordingClicked Loading Loading
packages/SystemUI/multivalentTests/src/com/android/systemui/qs/tiles/ScreenRecordTileTest.java +10 −0 Original line number Diff line number Diff line Loading @@ -345,9 +345,19 @@ public class ScreenRecordTileTest extends SysuiTestCase { public void testNotStartingAndRecording_returnDetailsViewModel() { when(mController.isStarting()).thenReturn(false); when(mController.isRecording()).thenReturn(false); when(mController.isScreenCaptureDisabled()).thenReturn(false); mTile.getDetailsViewModel(Assert::assertNotNull); } @Test @EnableFlags(QsDetailedView.FLAG_NAME) public void testRecordingDisabled_notReturnDetailsViewModel() { when(mController.isStarting()).thenReturn(false); when(mController.isRecording()).thenReturn(false); when(mController.isScreenCaptureDisabled()).thenReturn(true); mTile.getDetailsViewModel(Assert::assertNull); } @Test @EnableFlags(QsDetailedView.FLAG_NAME) public void testStarting_notReturnDetailsViewModel() { Loading
packages/SystemUI/src/com/android/systemui/qs/tiles/ScreenRecordTile.java +20 −2 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.text.TextUtils; import android.util.Log; import android.widget.Button; import android.widget.Switch; import android.widget.Toast; import androidx.annotation.Nullable; Loading Loading @@ -192,8 +193,19 @@ public class ScreenRecordTile extends QSTileImpl<QSTile.BooleanState> @Override public boolean getDetailsViewModel(Consumer<TileDetailsViewModel> callback) { handleClick(() -> executeWhenUnlockedKeyguard( () -> callback.accept(new ScreenRecordDetailsViewModel(mController, this::onStartRecordingClicked))) () -> { if (mController.isScreenCaptureDisabled()) { // Close the panel first so that the toast can show up. mDialogTransitionAnimator.disableAllCurrentDialogsExitAnimations(); mPanelInteractor.collapsePanels(); showDisabledByPolicyToast(); return; } callback.accept(new ScreenRecordDetailsViewModel(mController, this::onStartRecordingClicked)); }) ); return true; } Loading Loading @@ -244,6 +256,12 @@ public class ScreenRecordTile extends QSTileImpl<QSTile.BooleanState> return mContext.getString(R.string.quick_settings_screen_record_label); } void showDisabledByPolicyToast() { Toast.makeText(mContext, R.string.screen_capturing_disabled_by_policy_dialog_description, Toast.LENGTH_SHORT) .show(); } private void cancelCountdown() { Log.d(TAG, "Cancelling countdown"); mController.cancelCountdown(); Loading
packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/ScreenRecordDetailsContent.kt +0 −7 Original line number Diff line number Diff line Loading @@ -28,13 +28,6 @@ import com.android.systemui.screenrecord.ScreenRecordPermissionViewBinder @Composable fun ScreenRecordDetailsContent(viewModel: ScreenRecordDetailsViewModel) { // TODO(b/378514312): Finish implementing this function. if (viewModel.recordingController.isScreenCaptureDisabled) { // TODO(b/388345506): Show disabled page here. return } val viewBinder: ScreenRecordPermissionViewBinder = remember { viewModel.recordingController.createScreenRecordPermissionViewBinder( viewModel.onStartRecordingClicked Loading