Change disable accessibility service dialog layout

Bug: 140307087
Test: Visual
Change-Id: I78d573f121e2f799a8395fcd2d21ee48a5fffb23
This commit is contained in:
Kevin Chang
2019-09-09 16:53:11 +08:00
parent 552e5cef78
commit ee15fa1c2d
3 changed files with 49 additions and 130 deletions

View File

@@ -22,6 +22,7 @@ import android.accessibilityservice.AccessibilityServiceInfo;
import android.app.Activity;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.graphics.drawable.Drawable;
import android.os.storage.StorageManager;
import android.text.BidiFormatter;
@@ -77,10 +78,16 @@ public class AccessibilityServiceWarning {
}
public static Dialog createDisableDialog(Activity parentActivity,
AccessibilityServiceInfo info, View.OnClickListener listener) {
AccessibilityServiceInfo info, DialogInterface.OnClickListener listener) {
final AlertDialog ad = new AlertDialog.Builder(parentActivity)
.setView(createDisableDialogContentView(parentActivity, info, listener))
.setTitle(parentActivity.getString(R.string.disable_service_title,
info.getResolveInfo().loadLabel(parentActivity.getPackageManager())))
.setMessage(parentActivity.getString(R.string.disable_service_message,
parentActivity.getString(R.string.accessibility_dialog_button_stop),
getServiceName(parentActivity, info)))
.setCancelable(true)
.setPositiveButton(R.string.accessibility_dialog_button_stop, listener)
.setNegativeButton(R.string.accessibility_dialog_button_cancel, listener)
.create();
return ad;
@@ -148,33 +155,6 @@ public class AccessibilityServiceWarning {
return content;
}
private static View createDisableDialogContentView(Context context,
AccessibilityServiceInfo info, View.OnClickListener listener) {
LayoutInflater inflater = (LayoutInflater) context.getSystemService(
Context.LAYOUT_INFLATER_SERVICE);
View content = inflater.inflate(R.layout.disable_accessibility_service_dialog_content,
null);
TextView permissionDialogTitle = content.findViewById(R.id.permissionDialog_disable_title);
permissionDialogTitle.setText(context.getString(R.string.disable_service_title,
getServiceName(context, info)));
TextView permissionDialogMessage = content
.findViewById(R.id.permissionDialog_disable_message);
permissionDialogMessage.setText(context.getString(R.string.disable_service_message,
context.getString(R.string.accessibility_dialog_button_stop),
getServiceName(context, info)));
Button permissionAllowButton = content.findViewById(
R.id.permission_disable_stop_button);
Button permissionDenyButton = content.findViewById(
R.id.permission_disable_cancel_button);
permissionAllowButton.setOnClickListener(listener);
permissionDenyButton.setOnClickListener(listener);
return content;
}
// Get the service name and bidi wrap it to protect from bidi side effects.
private static CharSequence getServiceName(Context context, AccessibilityServiceInfo info) {
final Locale locale = context.getResources().getConfiguration().getLocales().get(0);