Merge "Accessibility shortcut secondary action - Invisible type fragment need to handle AccessibilityServiceState"
This commit is contained in:
@@ -18,9 +18,12 @@ package com.android.settings.accessibility;
|
||||
|
||||
import android.accessibilityservice.AccessibilityServiceInfo;
|
||||
import android.os.Bundle;
|
||||
import android.view.View;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.SettingsActivity;
|
||||
import com.android.settings.widget.SwitchBar;
|
||||
import com.android.settingslib.accessibility.AccessibilityUtils;
|
||||
|
||||
/**
|
||||
* For accessibility services that target SDK > Q, and
|
||||
@@ -28,7 +31,7 @@ import com.android.settings.widget.SwitchBar;
|
||||
* is set.
|
||||
*/
|
||||
public class InvisibleToggleAccessibilityServicePreferenceFragment extends
|
||||
ToggleAccessibilityServicePreferenceFragment {
|
||||
ToggleAccessibilityServicePreferenceFragment implements ShortcutPreference.OnClickListener{
|
||||
|
||||
@Override
|
||||
public void onActivityCreated(Bundle savedInstanceState) {
|
||||
@@ -38,4 +41,30 @@ public class InvisibleToggleAccessibilityServicePreferenceFragment extends
|
||||
final SwitchBar mSwitchBar = activity.getSwitchBar();
|
||||
mSwitchBar.hide();
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* Enables accessibility service only when user had allowed permission.
|
||||
*/
|
||||
@Override
|
||||
public void onCheckboxClicked(ShortcutPreference preference) {
|
||||
super.onCheckboxClicked(preference);
|
||||
AccessibilityUtils.setAccessibilityServiceState(getContext(), mComponentName,
|
||||
getArguments().getBoolean(AccessibilitySettings.EXTRA_CHECKED));
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*
|
||||
* Enables accessibility service when user clicks permission allow button.
|
||||
*/
|
||||
@Override
|
||||
void onDialogButtonFromShortcutClicked(View view) {
|
||||
super.onDialogButtonFromShortcutClicked(view);
|
||||
if (view.getId() == R.id.permission_enable_allow_button) {
|
||||
AccessibilityUtils.setAccessibilityServiceState(getContext(), mComponentName,
|
||||
true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -565,7 +565,7 @@ public class ToggleAccessibilityServicePreferenceFragment extends
|
||||
mDialog.dismiss();
|
||||
}
|
||||
|
||||
private void onDialogButtonFromShortcutClicked(View view) {
|
||||
void onDialogButtonFromShortcutClicked(View view) {
|
||||
if (view.getId() == R.id.permission_enable_allow_button) {
|
||||
onAllowButtonFromShortcutClicked();
|
||||
} else if (view.getId() == R.id.permission_enable_deny_button) {
|
||||
|
Reference in New Issue
Block a user