Merge "[Partial Screensharing] Handle app's name when media projection is called by system apps" into tm-qpr-dev
This commit is contained in:
@@ -109,7 +109,6 @@ public class MediaProjectionPermissionActivity extends Activity
|
|||||||
CharSequence dialogTitle = null;
|
CharSequence dialogTitle = null;
|
||||||
String appName = null;
|
String appName = null;
|
||||||
if (Utils.isHeadlessRemoteDisplayProvider(packageManager, mPackageName)) {
|
if (Utils.isHeadlessRemoteDisplayProvider(packageManager, mPackageName)) {
|
||||||
// TODO(b/253438807): handle special app name
|
|
||||||
dialogText = getString(R.string.media_projection_dialog_service_text);
|
dialogText = getString(R.string.media_projection_dialog_service_text);
|
||||||
dialogTitle = getString(R.string.media_projection_dialog_service_title);
|
dialogTitle = getString(R.string.media_projection_dialog_service_title);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -23,11 +23,15 @@ import com.android.systemui.R
|
|||||||
class MediaProjectionPermissionDialog(
|
class MediaProjectionPermissionDialog(
|
||||||
context: Context?,
|
context: Context?,
|
||||||
private val onStartRecordingClicked: Runnable,
|
private val onStartRecordingClicked: Runnable,
|
||||||
appName: String?
|
private val appName: String?
|
||||||
) : BaseScreenSharePermissionDialog(context, createOptionList(), appName) {
|
) : BaseScreenSharePermissionDialog(context, createOptionList(appName), appName) {
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
setDialogTitle(R.string.media_projection_permission_dialog_title)
|
if (appName == null) {
|
||||||
|
setDialogTitle(R.string.media_projection_permission_dialog_system_service_title)
|
||||||
|
} else {
|
||||||
|
setDialogTitle(R.string.media_projection_permission_dialog_title)
|
||||||
|
}
|
||||||
setStartButtonText(R.string.media_projection_permission_dialog_continue)
|
setStartButtonText(R.string.media_projection_permission_dialog_continue)
|
||||||
setStartButtonOnClickListener {
|
setStartButtonOnClickListener {
|
||||||
// Note that it is important to run this callback before dismissing, so that the
|
// Note that it is important to run this callback before dismissing, so that the
|
||||||
@@ -38,17 +42,30 @@ class MediaProjectionPermissionDialog(
|
|||||||
}
|
}
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
private fun createOptionList(): List<ScreenShareOption> {
|
private fun createOptionList(appName: String?): List<ScreenShareOption> {
|
||||||
|
val singleAppWarningText =
|
||||||
|
if (appName == null) {
|
||||||
|
R.string.media_projection_permission_dialog_system_service_warning_single_app
|
||||||
|
} else {
|
||||||
|
R.string.media_projection_permission_dialog_warning_single_app
|
||||||
|
}
|
||||||
|
val entireScreenWarningText =
|
||||||
|
if (appName == null) {
|
||||||
|
R.string.media_projection_permission_dialog_system_service_warning_entire_screen
|
||||||
|
} else {
|
||||||
|
R.string.media_projection_permission_dialog_warning_entire_screen
|
||||||
|
}
|
||||||
|
|
||||||
return listOf(
|
return listOf(
|
||||||
ScreenShareOption(
|
ScreenShareOption(
|
||||||
ENTIRE_SCREEN,
|
mode = ENTIRE_SCREEN,
|
||||||
R.string.media_projection_permission_dialog_option_entire_screen,
|
spinnerText = R.string.media_projection_permission_dialog_option_entire_screen,
|
||||||
R.string.media_projection_permission_dialog_warning_entire_screen
|
warningText = entireScreenWarningText
|
||||||
),
|
),
|
||||||
ScreenShareOption(
|
ScreenShareOption(
|
||||||
SINGLE_APP,
|
mode = SINGLE_APP,
|
||||||
R.string.media_projection_permission_dialog_option_single_app,
|
spinnerText = R.string.media_projection_permission_dialog_option_single_app,
|
||||||
R.string.media_projection_permission_dialog_warning_single_app
|
warningText = singleAppWarningText
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user