From 7a059c2948c48df3e7d312da113cc9b385abb529 Mon Sep 17 00:00:00 2001 From: Caitlin Shkuratov Date: Thu, 1 Aug 2024 14:52:34 +0000 Subject: [Screen share] Update strings for screen record dialog. Bug: 352327853 Flag: NONE string changes Test: Click screen record QS tile -> verify dialog has new strings for both single app case and entire screen case Test: atest ScreenRecordPermissionDialogDelegateTest Change-Id: I0df0bd5f1561cd4b2b421e2452b47281d941df23 --- packages/SystemUI/res/values/strings.xml | 18 +++++------ .../ScreenRecordPermissionDialogDelegate.kt | 11 ++++--- .../ScreenRecordPermissionDialogDelegateTest.kt | 36 +++++++++++++++++++--- 3 files changed, 48 insertions(+), 17 deletions(-) diff --git a/packages/SystemUI/res/values/strings.xml b/packages/SystemUI/res/values/strings.xml index d30b77e018c7..17831f1398d1 100644 --- a/packages/SystemUI/res/values/strings.xml +++ b/packages/SystemUI/res/values/strings.xml @@ -280,13 +280,17 @@ - Start Recording? + Record your screen? + + Record one app + + Record entire screen - While you’re recording, Android has access to anything visible on your screen or played on your device. So be careful with things like passwords, payment details, messages, photos, and audio and video. + When you’re recording your entire screen, anything shown on your screen is recorded. So be careful with things like passwords, payment details, messages, photos, and audio and video. - While you’re recording an app, Android has access to anything shown or played on that app. So be careful with things like passwords, payment details, messages, photos, and audio and video. - - Start recording + When you’re recording an app, anything shown or played in that app is recorded. So be careful with things like passwords, payment details, messages, photos, and audio and video. + + Record screen Record audio @@ -1358,10 +1362,6 @@ The service providing this function will have access to all of the information that is visible on your screen or played from your device while recording or casting. This includes information such as passwords, payment details, photos, messages, and audio that you play. - - Entire screen - - A single app Share or record an app diff --git a/packages/SystemUI/src/com/android/systemui/screenrecord/ScreenRecordPermissionDialogDelegate.kt b/packages/SystemUI/src/com/android/systemui/screenrecord/ScreenRecordPermissionDialogDelegate.kt index b54bf6ca9ef8..46ac54f63183 100644 --- a/packages/SystemUI/src/com/android/systemui/screenrecord/ScreenRecordPermissionDialogDelegate.kt +++ b/packages/SystemUI/src/com/android/systemui/screenrecord/ScreenRecordPermissionDialogDelegate.kt @@ -270,15 +270,18 @@ class ScreenRecordPermissionDialogDelegate( return listOf( ScreenShareOption( SINGLE_APP, - R.string.screen_share_permission_dialog_option_single_app, + R.string.screenrecord_permission_dialog_option_text_single_app, R.string.screenrecord_permission_dialog_warning_single_app, - startButtonText = R.string.screenrecord_permission_dialog_continue, + startButtonText = + R.string + .media_projection_entry_generic_permission_dialog_continue_single_app, ), ScreenShareOption( ENTIRE_SCREEN, - R.string.screen_share_permission_dialog_option_entire_screen, + R.string.screenrecord_permission_dialog_option_text_entire_screen, R.string.screenrecord_permission_dialog_warning_entire_screen, - startButtonText = R.string.screenrecord_permission_dialog_continue, + startButtonText = + R.string.screenrecord_permission_dialog_continue_entire_screen, ) ) } diff --git a/packages/SystemUI/tests/src/com/android/systemui/screenrecord/ScreenRecordPermissionDialogDelegateTest.kt b/packages/SystemUI/tests/src/com/android/systemui/screenrecord/ScreenRecordPermissionDialogDelegateTest.kt index 11b0bdf3effd..7dae5ccd05c4 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/screenrecord/ScreenRecordPermissionDialogDelegateTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/screenrecord/ScreenRecordPermissionDialogDelegateTest.kt @@ -21,13 +21,13 @@ import android.os.UserHandle import android.testing.TestableLooper import android.view.View import android.widget.Spinner +import android.widget.TextView import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import com.android.systemui.Dependency import com.android.systemui.SysuiTestCase import com.android.systemui.animation.DialogTransitionAnimator import com.android.systemui.broadcast.BroadcastDispatcher -import com.android.systemui.flags.FeatureFlags import com.android.systemui.mediaprojection.MediaProjectionMetricsLogger import com.android.systemui.mediaprojection.appselector.MediaProjectionAppSelectorActivity import com.android.systemui.mediaprojection.permission.ENTIRE_SCREEN @@ -60,7 +60,6 @@ class ScreenRecordPermissionDialogDelegateTest : SysuiTestCase() { @Mock private lateinit var starter: ActivityStarter @Mock private lateinit var controller: RecordingController @Mock private lateinit var userContextProvider: UserContextProvider - @Mock private lateinit var flags: FeatureFlags @Mock private lateinit var onStartRecordingClicked: Runnable @Mock private lateinit var mediaProjectionMetricsLogger: MediaProjectionMetricsLogger @@ -127,6 +126,32 @@ class ScreenRecordPermissionDialogDelegateTest : SysuiTestCase() { assertThat(visibility).isEqualTo(View.VISIBLE) } + @Test + fun startButtonText_entireScreenSelected() { + showDialog() + + onSpinnerItemSelected(ENTIRE_SCREEN) + + assertThat(getStartButton().text) + .isEqualTo( + context.getString(R.string.screenrecord_permission_dialog_continue_entire_screen) + ) + } + + @Test + fun startButtonText_singleAppSelected() { + showDialog() + + onSpinnerItemSelected(SINGLE_APP) + + assertThat(getStartButton().text) + .isEqualTo( + context.getString( + R.string.media_projection_entry_generic_permission_dialog_continue_single_app + ) + ) + } + @Test fun startClicked_singleAppSelected_passesHostUidToAppSelector() { showDialog() @@ -152,7 +177,8 @@ class ScreenRecordPermissionDialogDelegateTest : SysuiTestCase() { showDialog() val spinner = dialog.requireViewById(R.id.screen_share_mode_options) - val singleApp = context.getString(R.string.screen_share_permission_dialog_option_single_app) + val singleApp = + context.getString(R.string.screenrecord_permission_dialog_option_text_single_app) assertEquals(spinner.adapter.getItem(0), singleApp) } @@ -208,8 +234,10 @@ class ScreenRecordPermissionDialogDelegateTest : SysuiTestCase() { dialog.requireViewById(android.R.id.button2).performClick() } + private fun getStartButton() = dialog.requireViewById(android.R.id.button1) + private fun clickOnStart() { - dialog.requireViewById(android.R.id.button1).performClick() + getStartButton().performClick() } private fun onSpinnerItemSelected(position: Int) { -- cgit v1.2.3-59-g8ed1b