diff --git a/res-product/values/config.xml b/res-product/values/config.xml
index ba4941852ec..86af61454df 100755
--- a/res-product/values/config.xml
+++ b/res-product/values/config.xml
@@ -19,9 +19,6 @@
- @raw/accessibility_timeout_banner
- @raw/accessibility_timeout_banner_tablet
- - @raw/accessibility_shortcut_type_triple_tap
- - @raw/accessibility_shortcut_type_triple_tap_tablet
-
- @raw/accessibility_color_inversion_banner
- @raw/accessibility_color_inversion_banner_tablet
diff --git a/res-product/values/drawables.xml b/res-product/values/drawables.xml
index 68b2115f51f..01fbc321eb3 100644
--- a/res-product/values/drawables.xml
+++ b/res-product/values/drawables.xml
@@ -14,45 +14,9 @@
limitations under the License.
-->
- @drawable/accessibility_button_preview_large_floating_menu
- @drawable/accessibility_button_preview_large_floating_menu_tablet
-
- @drawable/accessibility_button_preview_small_floating_menu
- @drawable/accessibility_button_preview_small_floating_menu_tablet
-
- @drawable/accessibility_button_navigation
- @drawable/accessibility_button_navigation_tablet
-
@drawable/accessibility_captioning_banner
@drawable/accessibility_captioning_banner_tablet
- @drawable/accessibility_shortcut_type_hardware
- @drawable/accessibility_shortcut_type_hardware_tablet
-
- @drawable/accessibility_shortcut_type_software
- @drawable/accessibility_shortcut_type_software_tablet
-
- @drawable/accessibility_shortcut_type_software_floating
- @drawable/accessibility_shortcut_type_software_floating_tablet
-
- @drawable/accessibility_shortcut_type_software_gesture
- @drawable/accessibility_shortcut_type_software_gesture_tablet
-
- @drawable/accessibility_shortcut_type_software_gesture_talkback
- @drawable/accessibility_shortcut_type_software_gesture_talkback_tablet
-
- @drawable/accessibility_gesture_navigation_two_finger_preview
- @drawable/accessibility_gesture_navigation_two_finger_preview_tablet
-
- @drawable/accessibility_gesture_navigation_three_finger_preview
- @drawable/accessibility_gesture_navigation_three_finger_preview_tablet
-
- @drawable/accessibility_button_preview_two_finger
- @drawable/accessibility_button_preview_two_finger_tablet
-
- @drawable/accessibility_button_preview_three_finger
- @drawable/accessibility_button_preview_three_finger_tablet
-
@drawable/accessibility_magnification_mode_fullscreen
@drawable/accessibility_magnification_mode_fullscreen_tablet
diff --git a/res/drawable-night/accessibility_button_navigation.xml b/res/drawable-night/accessibility_button_navigation.xml
deleted file mode 100644
index d6fd4854bf8..00000000000
--- a/res/drawable-night/accessibility_button_navigation.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_button_navigation_tablet.xml b/res/drawable-night/accessibility_button_navigation_tablet.xml
deleted file mode 100644
index d92b1440f54..00000000000
--- a/res/drawable-night/accessibility_button_navigation_tablet.xml
+++ /dev/null
@@ -1,54 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/res/drawable-night/accessibility_button_preview_large_floating_menu.xml b/res/drawable-night/accessibility_button_preview_large_floating_menu.xml
deleted file mode 100644
index 74ecbfcd7b1..00000000000
--- a/res/drawable-night/accessibility_button_preview_large_floating_menu.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_button_preview_large_floating_menu_tablet.xml b/res/drawable-night/accessibility_button_preview_large_floating_menu_tablet.xml
deleted file mode 100644
index 426403f1b3a..00000000000
--- a/res/drawable-night/accessibility_button_preview_large_floating_menu_tablet.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
diff --git a/res/drawable-night/accessibility_button_preview_small_floating_menu.xml b/res/drawable-night/accessibility_button_preview_small_floating_menu.xml
deleted file mode 100644
index 4226086d4eb..00000000000
--- a/res/drawable-night/accessibility_button_preview_small_floating_menu.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_button_preview_small_floating_menu_tablet.xml b/res/drawable-night/accessibility_button_preview_small_floating_menu_tablet.xml
deleted file mode 100644
index b738d8fbba4..00000000000
--- a/res/drawable-night/accessibility_button_preview_small_floating_menu_tablet.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
diff --git a/res/drawable-night/accessibility_button_preview_three_finger.xml b/res/drawable-night/accessibility_button_preview_three_finger.xml
deleted file mode 100644
index 7afb0f79cc3..00000000000
--- a/res/drawable-night/accessibility_button_preview_three_finger.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_button_preview_three_finger_tablet.xml b/res/drawable-night/accessibility_button_preview_three_finger_tablet.xml
deleted file mode 100644
index 5a0925c6182..00000000000
--- a/res/drawable-night/accessibility_button_preview_three_finger_tablet.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_button_preview_two_finger.xml b/res/drawable-night/accessibility_button_preview_two_finger.xml
deleted file mode 100644
index 05871d98e26..00000000000
--- a/res/drawable-night/accessibility_button_preview_two_finger.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_button_preview_two_finger_tablet.xml b/res/drawable-night/accessibility_button_preview_two_finger_tablet.xml
deleted file mode 100644
index ba9c7715f16..00000000000
--- a/res/drawable-night/accessibility_button_preview_two_finger_tablet.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_gesture_navigation_three_finger_preview.xml b/res/drawable-night/accessibility_gesture_navigation_three_finger_preview.xml
deleted file mode 100644
index 593c3afffa9..00000000000
--- a/res/drawable-night/accessibility_gesture_navigation_three_finger_preview.xml
+++ /dev/null
@@ -1,71 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_gesture_navigation_three_finger_preview_tablet.xml b/res/drawable-night/accessibility_gesture_navigation_three_finger_preview_tablet.xml
deleted file mode 100644
index 1710fa41f23..00000000000
--- a/res/drawable-night/accessibility_gesture_navigation_three_finger_preview_tablet.xml
+++ /dev/null
@@ -1,80 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_gesture_navigation_two_finger_preview.xml b/res/drawable-night/accessibility_gesture_navigation_two_finger_preview.xml
deleted file mode 100644
index c95523b1655..00000000000
--- a/res/drawable-night/accessibility_gesture_navigation_two_finger_preview.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_gesture_navigation_two_finger_preview_tablet.xml b/res/drawable-night/accessibility_gesture_navigation_two_finger_preview_tablet.xml
deleted file mode 100644
index 7a5cc48402c..00000000000
--- a/res/drawable-night/accessibility_gesture_navigation_two_finger_preview_tablet.xml
+++ /dev/null
@@ -1,66 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_shortcut_type_hardware.xml b/res/drawable-night/accessibility_shortcut_type_hardware.xml
deleted file mode 100644
index 9ef3664e745..00000000000
--- a/res/drawable-night/accessibility_shortcut_type_hardware.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_shortcut_type_hardware_tablet.xml b/res/drawable-night/accessibility_shortcut_type_hardware_tablet.xml
deleted file mode 100644
index 1040d057ddd..00000000000
--- a/res/drawable-night/accessibility_shortcut_type_hardware_tablet.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_shortcut_type_software.xml b/res/drawable-night/accessibility_shortcut_type_software.xml
deleted file mode 100644
index 8d55ae91dc7..00000000000
--- a/res/drawable-night/accessibility_shortcut_type_software.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_shortcut_type_software_floating.xml b/res/drawable-night/accessibility_shortcut_type_software_floating.xml
deleted file mode 100644
index 25d53cac89e..00000000000
--- a/res/drawable-night/accessibility_shortcut_type_software_floating.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_shortcut_type_software_floating_tablet.xml b/res/drawable-night/accessibility_shortcut_type_software_floating_tablet.xml
deleted file mode 100644
index c0b562e451a..00000000000
--- a/res/drawable-night/accessibility_shortcut_type_software_floating_tablet.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_shortcut_type_software_gesture.xml b/res/drawable-night/accessibility_shortcut_type_software_gesture.xml
deleted file mode 100644
index ea19f7451ff..00000000000
--- a/res/drawable-night/accessibility_shortcut_type_software_gesture.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/res/drawable-night/accessibility_shortcut_type_software_gesture_tablet.xml b/res/drawable-night/accessibility_shortcut_type_software_gesture_tablet.xml
deleted file mode 100644
index 129f13db30a..00000000000
--- a/res/drawable-night/accessibility_shortcut_type_software_gesture_tablet.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_shortcut_type_software_gesture_talkback.xml b/res/drawable-night/accessibility_shortcut_type_software_gesture_talkback.xml
deleted file mode 100644
index bd9bf19cae6..00000000000
--- a/res/drawable-night/accessibility_shortcut_type_software_gesture_talkback.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/res/drawable-night/accessibility_shortcut_type_software_gesture_talkback_tablet.xml b/res/drawable-night/accessibility_shortcut_type_software_gesture_talkback_tablet.xml
deleted file mode 100644
index d113fff8b72..00000000000
--- a/res/drawable-night/accessibility_shortcut_type_software_gesture_talkback_tablet.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable-night/accessibility_shortcut_type_software_tablet.xml b/res/drawable-night/accessibility_shortcut_type_software_tablet.xml
deleted file mode 100644
index 49a2661d205..00000000000
--- a/res/drawable-night/accessibility_shortcut_type_software_tablet.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_button_navigation.xml b/res/drawable/accessibility_button_navigation.xml
deleted file mode 100644
index 8fdb6272c2e..00000000000
--- a/res/drawable/accessibility_button_navigation.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_button_navigation_tablet.xml b/res/drawable/accessibility_button_navigation_tablet.xml
deleted file mode 100644
index d8ae5034663..00000000000
--- a/res/drawable/accessibility_button_navigation_tablet.xml
+++ /dev/null
@@ -1,54 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_button_preview_large_floating_menu.xml b/res/drawable/accessibility_button_preview_large_floating_menu.xml
deleted file mode 100644
index 794f3ca5f5a..00000000000
--- a/res/drawable/accessibility_button_preview_large_floating_menu.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_button_preview_large_floating_menu_tablet.xml b/res/drawable/accessibility_button_preview_large_floating_menu_tablet.xml
deleted file mode 100644
index 99798d5afa8..00000000000
--- a/res/drawable/accessibility_button_preview_large_floating_menu_tablet.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
diff --git a/res/drawable/accessibility_button_preview_small_floating_menu.xml b/res/drawable/accessibility_button_preview_small_floating_menu.xml
deleted file mode 100644
index 670a516348b..00000000000
--- a/res/drawable/accessibility_button_preview_small_floating_menu.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_button_preview_small_floating_menu_tablet.xml b/res/drawable/accessibility_button_preview_small_floating_menu_tablet.xml
deleted file mode 100644
index e31265c1148..00000000000
--- a/res/drawable/accessibility_button_preview_small_floating_menu_tablet.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
diff --git a/res/drawable/accessibility_button_preview_three_finger.xml b/res/drawable/accessibility_button_preview_three_finger.xml
deleted file mode 100644
index d18ce60e0bb..00000000000
--- a/res/drawable/accessibility_button_preview_three_finger.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_button_preview_three_finger_tablet.xml b/res/drawable/accessibility_button_preview_three_finger_tablet.xml
deleted file mode 100644
index a5590c4eea7..00000000000
--- a/res/drawable/accessibility_button_preview_three_finger_tablet.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_button_preview_two_finger.xml b/res/drawable/accessibility_button_preview_two_finger.xml
deleted file mode 100644
index bec95af17c0..00000000000
--- a/res/drawable/accessibility_button_preview_two_finger.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_button_preview_two_finger_tablet.xml b/res/drawable/accessibility_button_preview_two_finger_tablet.xml
deleted file mode 100644
index dbc5ad41931..00000000000
--- a/res/drawable/accessibility_button_preview_two_finger_tablet.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_gesture_navigation_three_finger_preview.xml b/res/drawable/accessibility_gesture_navigation_three_finger_preview.xml
deleted file mode 100644
index c14d7443110..00000000000
--- a/res/drawable/accessibility_gesture_navigation_three_finger_preview.xml
+++ /dev/null
@@ -1,71 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_gesture_navigation_three_finger_preview_tablet.xml b/res/drawable/accessibility_gesture_navigation_three_finger_preview_tablet.xml
deleted file mode 100644
index fab08537886..00000000000
--- a/res/drawable/accessibility_gesture_navigation_three_finger_preview_tablet.xml
+++ /dev/null
@@ -1,80 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_gesture_navigation_two_finger_preview.xml b/res/drawable/accessibility_gesture_navigation_two_finger_preview.xml
deleted file mode 100644
index 3ef4fd1db4b..00000000000
--- a/res/drawable/accessibility_gesture_navigation_two_finger_preview.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_gesture_navigation_two_finger_preview_tablet.xml b/res/drawable/accessibility_gesture_navigation_two_finger_preview_tablet.xml
deleted file mode 100644
index f976f02efa4..00000000000
--- a/res/drawable/accessibility_gesture_navigation_two_finger_preview_tablet.xml
+++ /dev/null
@@ -1,66 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_shortcut_type_hardware.xml b/res/drawable/accessibility_shortcut_type_hardware.xml
deleted file mode 100644
index b6b227bd3ad..00000000000
--- a/res/drawable/accessibility_shortcut_type_hardware.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_shortcut_type_hardware_tablet.xml b/res/drawable/accessibility_shortcut_type_hardware_tablet.xml
deleted file mode 100644
index db0906e9295..00000000000
--- a/res/drawable/accessibility_shortcut_type_hardware_tablet.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_shortcut_type_software.xml b/res/drawable/accessibility_shortcut_type_software.xml
deleted file mode 100644
index d0573aa4bbe..00000000000
--- a/res/drawable/accessibility_shortcut_type_software.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_shortcut_type_software_floating.xml b/res/drawable/accessibility_shortcut_type_software_floating.xml
deleted file mode 100644
index 88ce42d43bb..00000000000
--- a/res/drawable/accessibility_shortcut_type_software_floating.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_shortcut_type_software_floating_tablet.xml b/res/drawable/accessibility_shortcut_type_software_floating_tablet.xml
deleted file mode 100644
index 4b0470410aa..00000000000
--- a/res/drawable/accessibility_shortcut_type_software_floating_tablet.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_shortcut_type_software_gesture.xml b/res/drawable/accessibility_shortcut_type_software_gesture.xml
deleted file mode 100644
index 2ded59f63c8..00000000000
--- a/res/drawable/accessibility_shortcut_type_software_gesture.xml
+++ /dev/null
@@ -1,58 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_shortcut_type_software_gesture_tablet.xml b/res/drawable/accessibility_shortcut_type_software_gesture_tablet.xml
deleted file mode 100644
index 2dccf2a846d..00000000000
--- a/res/drawable/accessibility_shortcut_type_software_gesture_tablet.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_shortcut_type_software_gesture_talkback.xml b/res/drawable/accessibility_shortcut_type_software_gesture_talkback.xml
deleted file mode 100644
index 2de804c333b..00000000000
--- a/res/drawable/accessibility_shortcut_type_software_gesture_talkback.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/res/drawable/accessibility_shortcut_type_software_gesture_talkback_tablet.xml b/res/drawable/accessibility_shortcut_type_software_gesture_talkback_tablet.xml
deleted file mode 100644
index e122ae1fef8..00000000000
--- a/res/drawable/accessibility_shortcut_type_software_gesture_talkback_tablet.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/drawable/accessibility_shortcut_type_software_tablet.xml b/res/drawable/accessibility_shortcut_type_software_tablet.xml
deleted file mode 100644
index 334344d7d60..00000000000
--- a/res/drawable/accessibility_shortcut_type_software_tablet.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/layout/accessibility_edit_shortcut.xml b/res/layout/accessibility_edit_shortcut.xml
deleted file mode 100644
index d0c925ea4ec..00000000000
--- a/res/layout/accessibility_edit_shortcut.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/res/layout/accessibility_edit_shortcut_component.xml b/res/layout/accessibility_edit_shortcut_component.xml
deleted file mode 100644
index d54fff63ab3..00000000000
--- a/res/layout/accessibility_edit_shortcut_component.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/layout/accessibility_edit_shortcut_magnification.xml b/res/layout/accessibility_edit_shortcut_magnification.xml
deleted file mode 100644
index 0f30a01d92e..00000000000
--- a/res/layout/accessibility_edit_shortcut_magnification.xml
+++ /dev/null
@@ -1,91 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/res/raw/accessibility_shortcut_type_triple_tap.json b/res/raw/accessibility_shortcut_type_triple_tap.json
deleted file mode 100644
index 870e671a51f..00000000000
--- a/res/raw/accessibility_shortcut_type_triple_tap.json
+++ /dev/null
@@ -1,1959 +0,0 @@
-{
- "v": "5.6.5",
- "fr": 60,
- "ip": 0,
- "op": 180,
- "w": 412,
- "h": 300,
- "nm": "Triple_Tap_Screen",
- "ddd": 0,
- "assets": [
- {
- "id": "comp_0",
- "layers": [
- {
- "ddd": 0,
- "ind": 1,
- "ty": 4,
- "nm": ".white",
- "cl": "white",
- "hd": true,
- "sr": 1,
- "ks": {
- "o": {
- "a": 0,
- "k": 100,
- "ix": 11
- },
- "r": {
- "a": 0,
- "k": 0,
- "ix": 10
- },
- "p": {
- "a": 0,
- "k": [
- 206,
- 150,
- 0
- ],
- "ix": 2
- },
- "a": {
- "a": 0,
- "k": [
- 0,
- 0,
- 0
- ],
- "ix": 1
- },
- "s": {
- "a": 0,
- "k": [
- 100,
- 100,
- 100
- ],
- "ix": 6
- }
- },
- "ao": 0,
- "shapes": [
- {
- "ty": "gr",
- "it": [
- {
- "ind": 0,
- "ty": "sh",
- "ix": 1,
- "ks": {
- "a": 0,
- "k": {
- "i": [
- [
- 15.4,
- 0
- ],
- [
- 0,
- 0
- ],
- [
- 0,
- 15.4
- ],
- [
- 0,
- 0
- ],
- [
- -15.4,
- 0
- ],
- [
- 0,
- 0
- ],
- [
- 0,
- -15.4
- ],
- [
- 0,
- 0
- ]
- ],
- "o": [
- [
- 0,
- 0
- ],
- [
- -15.4,
- 0
- ],
- [
- 0,
- 0
- ],
- [
- 0,
- -15.4
- ],
- [
- 0,
- 0
- ],
- [
- 15.4,
- 0
- ],
- [
- 0,
- 0
- ],
- [
- 0,
- 15.4
- ]
- ],
- "v": [
- [
- 178,
- 150
- ],
- [
- -178,
- 150
- ],
- [
- -206,
- 122
- ],
- [
- -206,
- -122
- ],
- [
- -178,
- -150
- ],
- [
- 178,
- -150
- ],
- [
- 206,
- -122
- ],
- [
- 206,
- 122
- ]
- ],
- "c": true
- },
- "ix": 2
- },
- "nm": "Path 1",
- "mn": "ADBE Vector Shape - Group",
- "hd": false
- },
- {
- "ty": "fl",
- "c": {
- "a": 0,
- "k": [
- 1,
- 1,
- 1,
- 1
- ],
- "ix": 4
- },
- "o": {
- "a": 0,
- "k": 100,
- "ix": 5
- },
- "r": 1,
- "bm": 0,
- "nm": "Fill 1",
- "mn": "ADBE Vector Graphic - Fill",
- "hd": false
- },
- {
- "ty": "tr",
- "p": {
- "a": 0,
- "k": [
- 0,
- 0
- ],
- "ix": 2
- },
- "a": {
- "a": 0,
- "k": [
- 0,
- 0
- ],
- "ix": 1
- },
- "s": {
- "a": 0,
- "k": [
- 100,
- 100
- ],
- "ix": 3
- },
- "r": {
- "a": 0,
- "k": 0,
- "ix": 6
- },
- "o": {
- "a": 0,
- "k": 100,
- "ix": 7
- },
- "sk": {
- "a": 0,
- "k": 0,
- "ix": 4
- },
- "sa": {
- "a": 0,
- "k": 0,
- "ix": 5
- },
- "nm": "Transform"
- }
- ],
- "nm": "Group 1",
- "np": 2,
- "cix": 2,
- "bm": 0,
- "ix": 1,
- "mn": "ADBE Vector Group",
- "hd": false
- }
- ],
- "ip": 0,
- "op": 1800,
- "st": 0,
- "bm": 0
- }
- ]
- }
- ],
- "layers": [
- {
- "ddd": 0,
- "ind": 1,
- "ty": 4,
- "nm": ".grey200",
- "cl": "grey200",
- "sr": 1,
- "ks": {
- "o": {
- "a": 0,
- "k": 100,
- "ix": 11
- },
- "r": {
- "a": 0,
- "k": 0,
- "ix": 10
- },
- "p": {
- "a": 0,
- "k": [
- 206,
- 150,
- 0
- ],
- "ix": 2
- },
- "a": {
- "a": 0,
- "k": [
- 1.35,
- 0,
- 0
- ],
- "ix": 1
- },
- "s": {
- "a": 0,
- "k": [
- 100,
- 100,
- 100
- ],
- "ix": 6
- }
- },
- "ao": 0,
- "shapes": [
- {
- "ty": "gr",
- "it": [
- {
- "ind": 0,
- "ty": "sh",
- "ix": 1,
- "ks": {
- "a": 0,
- "k": {
- "i": [
- [
- 0,
- 0
- ],
- [
- 0,
- -73.4
- ],
- [
- -73.4,
- 0
- ],
- [
- 0,
- 73.4
- ],
- [
- 73.4,
- 0
- ]
- ],
- "o": [
- [
- -73.4,
- 0
- ],
- [
- 0,
- 73.4
- ],
- [
- 73.4,
- 0
- ],
- [
- 0,
- -73.4
- ],
- [
- 0,
- 0
- ]
- ],
- "v": [
- [
- 1.4,
- -132.9
- ],
- [
- -131.6,
- 0
- ],
- [
- 1.3,
- 132.9
- ],
- [
- 134.3,
- 0
- ],
- [
- 1.4,
- -132.9
- ]
- ],
- "c": true
- },
- "ix": 2
- },
- "nm": "Path 1",
- "mn": "ADBE Vector Shape - Group",
- "hd": false
- },
- {
- "ind": 1,
- "ty": "sh",
- "ix": 2,
- "ks": {
- "a": 0,
- "k": {
- "i": [
- [
- 0,
- 0
- ],
- [
- -24.7,
- -24.8
- ],
- [
- 0,
- -35
- ],
- [
- 24.8,
- -24.7
- ],
- [
- 35,
- 0
- ],
- [
- 24.7,
- 24.8
- ],
- [
- 0,
- 35
- ],
- [
- -24.8,
- 24.7
- ],
- [
- -35,
- 0
- ]
- ],
- "o": [
- [
- 35,
- 0
- ],
- [
- 24.7,
- 24.7
- ],
- [
- 0,
- 35
- ],
- [
- -24.7,
- 24.7
- ],
- [
- -35,
- 0
- ],
- [
- -24.7,
- -24.8
- ],
- [
- 0,
- -35
- ],
- [
- 24.7,
- -24.7
- ],
- [
- 0,
- 0
- ]
- ],
- "v": [
- [
- 1.4,
- -130.9
- ],
- [
- 94,
- -92.5
- ],
- [
- 132.4,
- 0.1
- ],
- [
- 94,
- 92.7
- ],
- [
- 1.4,
- 131.1
- ],
- [
- -91.2,
- 92.7
- ],
- [
- -129.6,
- 0
- ],
- [
- -91.2,
- -92.6
- ],
- [
- 1.4,
- -130.9
- ]
- ],
- "c": false
- },
- "ix": 2
- },
- "nm": "Path 2",
- "mn": "ADBE Vector Shape - Group",
- "hd": false
- },
- {
- "ty": "fl",
- "c": {
- "a": 0,
- "k": [
- 0.909803926945,
- 0.917647063732,
- 0.929411768913,
- 1
- ],
- "ix": 4
- },
- "o": {
- "a": 0,
- "k": 100,
- "ix": 5
- },
- "r": 1,
- "bm": 0,
- "nm": "Fill 1",
- "mn": "ADBE Vector Graphic - Fill",
- "hd": false
- },
- {
- "ty": "tr",
- "p": {
- "a": 0,
- "k": [
- 0,
- 0
- ],
- "ix": 2
- },
- "a": {
- "a": 0,
- "k": [
- 0,
- 0
- ],
- "ix": 1
- },
- "s": {
- "a": 0,
- "k": [
- 100,
- 100
- ],
- "ix": 3
- },
- "r": {
- "a": 0,
- "k": 0,
- "ix": 6
- },
- "o": {
- "a": 0,
- "k": 100,
- "ix": 7
- },
- "sk": {
- "a": 0,
- "k": 0,
- "ix": 4
- },
- "sa": {
- "a": 0,
- "k": 0,
- "ix": 5
- },
- "nm": "Transform"
- }
- ],
- "nm": "Group 1",
- "np": 3,
- "cix": 2,
- "bm": 0,
- "ix": 1,
- "mn": "ADBE Vector Group",
- "hd": false
- }
- ],
- "ip": 0,
- "op": 300,
- "st": 0,
- "bm": 0
- },
- {
- "ddd": 0,
- "ind": 2,
- "ty": 4,
- "nm": ".grey300",
- "cl": "grey300",
- "sr": 1,
- "ks": {
- "o": {
- "a": 0,
- "k": 100,
- "ix": 11
- },
- "r": {
- "a": 0,
- "k": 0,
- "ix": 10
- },
- "p": {
- "a": 0,
- "k": [
- 205,
- 150,
- 0
- ],
- "ix": 2
- },
- "a": {
- "a": 0,
- "k": [
- 0,
- 0,
- 0
- ],
- "ix": 1
- },
- "s": {
- "a": 0,
- "k": [
- 100,
- 100,
- 100
- ],
- "ix": 6
- }
- },
- "ao": 0,
- "shapes": [
- {
- "ty": "gr",
- "it": [
- {
- "ty": "gr",
- "it": [
- {
- "ind": 0,
- "ty": "sh",
- "ix": 1,
- "ks": {
- "a": 0,
- "k": {
- "i": [
- [
- -7.9,
- 0
- ],
- [
- 0,
- 0
- ],
- [
- 0,
- 8
- ],
- [
- 0,
- 0
- ],
- [
- 0,
- 1.6
- ],
- [
- 0,
- 0
- ],
- [
- 2,
- 1.5
- ],
- [
- 0,
- 0
- ],
- [
- 6.4,
- 0
- ],
- [
- 0,
- 0
- ],
- [
- 0,
- 6.4
- ],
- [
- 0,
- 0
- ],
- [
- 1,
- -0.7
- ],
- [
- 0,
- 0
- ]
- ],
- "o": [
- [
- 0,
- 0
- ],
- [
- 8,
- 0
- ],
- [
- 0,
- 0
- ],
- [
- 1.6,
- 0
- ],
- [
- 0,
- 0
- ],
- [
- -1.9,
- -1.6
- ],
- [
- 0,
- 0
- ],
- [
- 0,
- 6.4
- ],
- [
- 0,
- 0
- ],
- [
- -6.4,
- 0
- ],
- [
- 0,
- 0
- ],
- [
- -1,
- 0.7
- ],
- [
- 0,
- 0
- ],
- [
- 0.1,
- 7.9
- ]
- ],
- "v": [
- [
- -64,
- 75.3
- ],
- [
- 69.1,
- 75.3
- ],
- [
- 83.6,
- 60.8
- ],
- [
- 83.6,
- -81
- ],
- [
- 86.5,
- -83.9
- ],
- [
- 86.5,
- -100.9
- ],
- [
- 80.7,
- -105.6
- ],
- [
- 80.7,
- 60.8
- ],
- [
- 69.1,
- 72.4
- ],
- [
- -64,
- 72.4
- ],
- [
- -75.6,
- 60.8
- ],
- [
- -75.6,
- -107.3
- ],
- [
- -78.5,
- -105.2
- ],
- [
- -78.5,
- 60.9
- ]
- ],
- "c": true
- },
- "ix": 2
- },
- "nm": "Path 1",
- "mn": "ADBE Vector Shape - Group",
- "hd": false
- },
- {
- "ty": "fl",
- "c": {
- "a": 0,
- "k": [
- 0.854901969433,
- 0.86274510622,
- 0.878431379795,
- 1
- ],
- "ix": 4
- },
- "o": {
- "a": 0,
- "k": 100,
- "ix": 5
- },
- "r": 1,
- "bm": 0,
- "nm": "Fill 1",
- "mn": "ADBE Vector Graphic - Fill",
- "hd": false
- },
- {
- "ty": "tr",
- "p": {
- "a": 0,
- "k": [
- 0,
- 0
- ],
- "ix": 2
- },
- "a": {
- "a": 0,
- "k": [
- 0,
- 0
- ],
- "ix": 1
- },
- "s": {
- "a": 0,
- "k": [
- 100,
- 100
- ],
- "ix": 3
- },
- "r": {
- "a": 0,
- "k": 0,
- "ix": 6
- },
- "o": {
- "a": 0,
- "k": 100,
- "ix": 7
- },
- "sk": {
- "a": 0,
- "k": 0,
- "ix": 4
- },
- "sa": {
- "a": 0,
- "k": 0,
- "ix": 5
- },
- "nm": "Transform"
- }
- ],
- "nm": "Group 1",
- "np": 2,
- "cix": 2,
- "bm": 0,
- "ix": 1,
- "mn": "ADBE Vector Group",
- "hd": false
- },
- {
- "ty": "tr",
- "p": {
- "a": 0,
- "k": [
- 0,
- 0
- ],
- "ix": 2
- },
- "a": {
- "a": 0,
- "k": [
- 0,
- 0
- ],
- "ix": 1
- },
- "s": {
- "a": 0,
- "k": [
- 100,
- 100
- ],
- "ix": 3
- },
- "r": {
- "a": 0,
- "k": 0,
- "ix": 6
- },
- "o": {
- "a": 0,
- "k": 100,
- "ix": 7
- },
- "sk": {
- "a": 0,
- "k": 0,
- "ix": 4
- },
- "sa": {
- "a": 0,
- "k": 0,
- "ix": 5
- },
- "nm": "Transform"
- }
- ],
- "nm": "Group 1",
- "np": 1,
- "cix": 2,
- "bm": 0,
- "ix": 1,
- "mn": "ADBE Vector Group",
- "hd": false
- }
- ],
- "ip": 0,
- "op": 300,
- "st": 0,
- "bm": 0
- },
- {
- "ddd": 0,
- "ind": 3,
- "ty": 4,
- "nm": "cursor 5",
- "sr": 1,
- "ks": {
- "o": {
- "a": 1,
- "k": [
- {
- "i": {
- "x": [
- 0.833
- ],
- "y": [
- 0.833
- ]
- },
- "o": {
- "x": [
- 0.167
- ],
- "y": [
- 0.167
- ]
- },
- "t": 36,
- "s": [
- 0
- ]
- },
- {
- "i": {
- "x": [
- 0.833
- ],
- "y": [
- 0.833
- ]
- },
- "o": {
- "x": [
- 0.167
- ],
- "y": [
- 0.167
- ]
- },
- "t": 39.582,
- "s": [
- 100
- ]
- },
- {
- "i": {
- "x": [
- 0.833
- ],
- "y": [
- 0.833
- ]
- },
- "o": {
- "x": [
- 0.167
- ],
- "y": [
- 0.167
- ]
- },
- "t": 44.953,
- "s": [
- 100
- ]
- },
- {
- "t": 55.697265625,
- "s": [
- 0
- ]
- }
- ],
- "ix": 11
- },
- "r": {
- "a": 0,
- "k": 0,
- "ix": 10
- },
- "p": {
- "a": 0,
- "k": [
- 207.641,
- 154.48,
- 0
- ],
- "ix": 2
- },
- "a": {
- "a": 0,
- "k": [
- -180.5,
- -165.5,
- 0
- ],
- "ix": 1
- },
- "s": {
- "a": 1,
- "k": [
- {
- "i": {
- "x": [
- 0,
- 0,
- 0
- ],
- "y": [
- 1,
- 1,
- 1
- ]
- },
- "o": {
- "x": [
- 0.45,
- 0.45,
- 0.45
- ],
- "y": [
- 0,
- 0,
- 0
- ]
- },
- "t": 37.791,
- "s": [
- 27.252,
- 27.252,
- 100
- ]
- },
- {
- "t": 59,
- "s": [
- 56.661,
- 56.661,
- 100
- ]
- }
- ],
- "ix": 6
- }
- },
- "ao": 0,
- "shapes": [
- {
- "ty": "gr",
- "it": [
- {
- "d": 1,
- "ty": "el",
- "s": {
- "a": 0,
- "k": [
- 63.109,
- 63.109
- ],
- "ix": 2
- },
- "p": {
- "a": 0,
- "k": [
- 0,
- 0
- ],
- "ix": 3
- },
- "nm": "Ellipse Path 1",
- "mn": "ADBE Vector Shape - Ellipse",
- "hd": false
- },
- {
- "ty": "st",
- "c": {
- "a": 0,
- "k": [
- 1,
- 0.182245725744,
- 0.894323072246,
- 1
- ],
- "ix": 3
- },
- "o": {
- "a": 0,
- "k": 100,
- "ix": 4
- },
- "w": {
- "a": 0,
- "k": 3,
- "ix": 5
- },
- "lc": 1,
- "lj": 1,
- "ml": 4,
- "bm": 0,
- "nm": "Stroke 1",
- "mn": "ADBE Vector Graphic - Stroke",
- "hd": false
- },
- {
- "ty": "fl",
- "c": {
- "a": 0,
- "k": [
- 1,
- 0.522196631338,
- 0.9762855081,
- 1
- ],
- "ix": 4
- },
- "o": {
- "a": 0,
- "k": 50,
- "ix": 5
- },
- "r": 1,
- "bm": 0,
- "nm": "Fill 1",
- "mn": "ADBE Vector Graphic - Fill",
- "hd": false
- },
- {
- "ty": "tr",
- "p": {
- "a": 0,
- "k": [
- -180.5,
- -165.5
- ],
- "ix": 2
- },
- "a": {
- "a": 0,
- "k": [
- 0,
- 0
- ],
- "ix": 1
- },
- "s": {
- "a": 0,
- "k": [
- 100,
- 100
- ],
- "ix": 3
- },
- "r": {
- "a": 0,
- "k": 0,
- "ix": 6
- },
- "o": {
- "a": 0,
- "k": 100,
- "ix": 7
- },
- "sk": {
- "a": 0,
- "k": 0,
- "ix": 4
- },
- "sa": {
- "a": 0,
- "k": 0,
- "ix": 5
- },
- "nm": "Transform"
- }
- ],
- "nm": "Ellipse 1",
- "np": 3,
- "cix": 2,
- "bm": 0,
- "ix": 1,
- "mn": "ADBE Vector Group",
- "hd": false
- }
- ],
- "ip": 36,
- "op": 59,
- "st": -1,
- "bm": 0
- },
- {
- "ddd": 0,
- "ind": 4,
- "ty": 4,
- "nm": "cursor 4",
- "sr": 1,
- "ks": {
- "o": {
- "a": 1,
- "k": [
- {
- "i": {
- "x": [
- 0.833
- ],
- "y": [
- 0.833
- ]
- },
- "o": {
- "x": [
- 0.167
- ],
- "y": [
- 0.167
- ]
- },
- "t": 22,
- "s": [
- 0
- ]
- },
- {
- "i": {
- "x": [
- 0.833
- ],
- "y": [
- 0.833
- ]
- },
- "o": {
- "x": [
- 0.167
- ],
- "y": [
- 0.167
- ]
- },
- "t": 25.58,
- "s": [
- 100
- ]
- },
- {
- "i": {
- "x": [
- 0.833
- ],
- "y": [
- 0.833
- ]
- },
- "o": {
- "x": [
- 0.167
- ],
- "y": [
- 0.167
- ]
- },
- "t": 30.953,
- "s": [
- 100
- ]
- },
- {
- "t": 41.697265625,
- "s": [
- 0
- ]
- }
- ],
- "ix": 11
- },
- "r": {
- "a": 0,
- "k": 0,
- "ix": 10
- },
- "p": {
- "a": 0,
- "k": [
- 207.641,
- 154.48,
- 0
- ],
- "ix": 2
- },
- "a": {
- "a": 0,
- "k": [
- -180.5,
- -165.5,
- 0
- ],
- "ix": 1
- },
- "s": {
- "a": 1,
- "k": [
- {
- "i": {
- "x": [
- 0,
- 0,
- 0
- ],
- "y": [
- 1,
- 1,
- 1
- ]
- },
- "o": {
- "x": [
- 0.45,
- 0.45,
- 0.45
- ],
- "y": [
- 0,
- 0,
- 0
- ]
- },
- "t": 23.789,
- "s": [
- 27.252,
- 27.252,
- 100
- ]
- },
- {
- "t": 45,
- "s": [
- 56.661,
- 56.661,
- 100
- ]
- }
- ],
- "ix": 6
- }
- },
- "ao": 0,
- "shapes": [
- {
- "ty": "gr",
- "it": [
- {
- "d": 1,
- "ty": "el",
- "s": {
- "a": 0,
- "k": [
- 63.109,
- 63.109
- ],
- "ix": 2
- },
- "p": {
- "a": 0,
- "k": [
- 0,
- 0
- ],
- "ix": 3
- },
- "nm": "Ellipse Path 1",
- "mn": "ADBE Vector Shape - Ellipse",
- "hd": false
- },
- {
- "ty": "st",
- "c": {
- "a": 0,
- "k": [
- 1,
- 0.182245725744,
- 0.894323072246,
- 1
- ],
- "ix": 3
- },
- "o": {
- "a": 0,
- "k": 100,
- "ix": 4
- },
- "w": {
- "a": 0,
- "k": 3,
- "ix": 5
- },
- "lc": 1,
- "lj": 1,
- "ml": 4,
- "bm": 0,
- "nm": "Stroke 1",
- "mn": "ADBE Vector Graphic - Stroke",
- "hd": false
- },
- {
- "ty": "fl",
- "c": {
- "a": 0,
- "k": [
- 1,
- 0.522196631338,
- 0.9762855081,
- 1
- ],
- "ix": 4
- },
- "o": {
- "a": 0,
- "k": 50,
- "ix": 5
- },
- "r": 1,
- "bm": 0,
- "nm": "Fill 1",
- "mn": "ADBE Vector Graphic - Fill",
- "hd": false
- },
- {
- "ty": "tr",
- "p": {
- "a": 0,
- "k": [
- -180.5,
- -165.5
- ],
- "ix": 2
- },
- "a": {
- "a": 0,
- "k": [
- 0,
- 0
- ],
- "ix": 1
- },
- "s": {
- "a": 0,
- "k": [
- 100,
- 100
- ],
- "ix": 3
- },
- "r": {
- "a": 0,
- "k": 0,
- "ix": 6
- },
- "o": {
- "a": 0,
- "k": 100,
- "ix": 7
- },
- "sk": {
- "a": 0,
- "k": 0,
- "ix": 4
- },
- "sa": {
- "a": 0,
- "k": 0,
- "ix": 5
- },
- "nm": "Transform"
- }
- ],
- "nm": "Ellipse 1",
- "np": 3,
- "cix": 2,
- "bm": 0,
- "ix": 1,
- "mn": "ADBE Vector Group",
- "hd": false
- }
- ],
- "ip": 22,
- "op": 45,
- "st": -3,
- "bm": 0
- },
- {
- "ddd": 0,
- "ind": 5,
- "ty": 4,
- "nm": "cursor",
- "sr": 1,
- "ks": {
- "o": {
- "a": 1,
- "k": [
- {
- "i": {
- "x": [
- 0.833
- ],
- "y": [
- 0.833
- ]
- },
- "o": {
- "x": [
- 0.167
- ],
- "y": [
- 0.167
- ]
- },
- "t": 8,
- "s": [
- 0
- ]
- },
- {
- "i": {
- "x": [
- 0.833
- ],
- "y": [
- 0.833
- ]
- },
- "o": {
- "x": [
- 0.167
- ],
- "y": [
- 0.167
- ]
- },
- "t": 11.582,
- "s": [
- 100
- ]
- },
- {
- "i": {
- "x": [
- 0.833
- ],
- "y": [
- 0.833
- ]
- },
- "o": {
- "x": [
- 0.167
- ],
- "y": [
- 0.167
- ]
- },
- "t": 16.953,
- "s": [
- 100
- ]
- },
- {
- "t": 27.697265625,
- "s": [
- 0
- ]
- }
- ],
- "ix": 11
- },
- "r": {
- "a": 0,
- "k": 0,
- "ix": 10
- },
- "p": {
- "a": 0,
- "k": [
- 207.641,
- 154.48,
- 0
- ],
- "ix": 2
- },
- "a": {
- "a": 0,
- "k": [
- -180.5,
- -165.5,
- 0
- ],
- "ix": 1
- },
- "s": {
- "a": 1,
- "k": [
- {
- "i": {
- "x": [
- 0,
- 0,
- 0
- ],
- "y": [
- 1,
- 1,
- 1
- ]
- },
- "o": {
- "x": [
- 0.45,
- 0.45,
- 0.45
- ],
- "y": [
- 0,
- 0,
- 0
- ]
- },
- "t": 9.791,
- "s": [
- 27.252,
- 27.252,
- 100
- ]
- },
- {
- "t": 31,
- "s": [
- 56.661,
- 56.661,
- 100
- ]
- }
- ],
- "ix": 6
- }
- },
- "ao": 0,
- "shapes": [
- {
- "ty": "gr",
- "it": [
- {
- "d": 1,
- "ty": "el",
- "s": {
- "a": 0,
- "k": [
- 63.109,
- 63.109
- ],
- "ix": 2
- },
- "p": {
- "a": 0,
- "k": [
- 0,
- 0
- ],
- "ix": 3
- },
- "nm": "Ellipse Path 1",
- "mn": "ADBE Vector Shape - Ellipse",
- "hd": false
- },
- {
- "ty": "st",
- "c": {
- "a": 0,
- "k": [
- 1,
- 0.182245725744,
- 0.894323072246,
- 1
- ],
- "ix": 3
- },
- "o": {
- "a": 0,
- "k": 100,
- "ix": 4
- },
- "w": {
- "a": 0,
- "k": 3,
- "ix": 5
- },
- "lc": 1,
- "lj": 1,
- "ml": 4,
- "bm": 0,
- "nm": "Stroke 1",
- "mn": "ADBE Vector Graphic - Stroke",
- "hd": false
- },
- {
- "ty": "fl",
- "c": {
- "a": 0,
- "k": [
- 1,
- 0.522196631338,
- 0.9762855081,
- 1
- ],
- "ix": 4
- },
- "o": {
- "a": 0,
- "k": 50,
- "ix": 5
- },
- "r": 1,
- "bm": 0,
- "nm": "Fill 1",
- "mn": "ADBE Vector Graphic - Fill",
- "hd": false
- },
- {
- "ty": "tr",
- "p": {
- "a": 0,
- "k": [
- -180.5,
- -165.5
- ],
- "ix": 2
- },
- "a": {
- "a": 0,
- "k": [
- 0,
- 0
- ],
- "ix": 1
- },
- "s": {
- "a": 0,
- "k": [
- 100,
- 100
- ],
- "ix": 3
- },
- "r": {
- "a": 0,
- "k": 0,
- "ix": 6
- },
- "o": {
- "a": 0,
- "k": 100,
- "ix": 7
- },
- "sk": {
- "a": 0,
- "k": 0,
- "ix": 4
- },
- "sa": {
- "a": 0,
- "k": 0,
- "ix": 5
- },
- "nm": "Transform"
- }
- ],
- "nm": "Ellipse 1",
- "np": 3,
- "cix": 2,
- "bm": 0,
- "ix": 1,
- "mn": "ADBE Vector Group",
- "hd": false
- }
- ],
- "ip": 8,
- "op": 31,
- "st": -5,
- "bm": 0
- },
- {
- "ddd": 0,
- "ind": 6,
- "ty": 0,
- "nm": "BG_White",
- "refId": "comp_0",
- "sr": 1,
- "ks": {
- "o": {
- "a": 0,
- "k": 100,
- "ix": 11
- },
- "r": {
- "a": 0,
- "k": 0,
- "ix": 10
- },
- "p": {
- "a": 0,
- "k": [
- 206,
- 150,
- 0
- ],
- "ix": 2
- },
- "a": {
- "a": 0,
- "k": [
- 206,
- 150,
- 0
- ],
- "ix": 1
- },
- "s": {
- "a": 0,
- "k": [
- 100,
- 100,
- 100
- ],
- "ix": 6
- }
- },
- "ao": 0,
- "w": 412,
- "h": 300,
- "ip": 0,
- "op": 1800,
- "st": 0,
- "bm": 0
- }
- ],
- "markers": []
-}
\ No newline at end of file
diff --git a/res/raw/accessibility_shortcut_type_triple_tap_tablet.json b/res/raw/accessibility_shortcut_type_triple_tap_tablet.json
deleted file mode 100644
index b6a9b14d8d8..00000000000
--- a/res/raw/accessibility_shortcut_type_triple_tap_tablet.json
+++ /dev/null
@@ -1 +0,0 @@
-{"v":"5.10.0","fr":60,"ip":0,"op":180,"w":412,"h":300,"nm":"Triple_Tap_Screen_Tablet-DT","ddd":0,"assets":[],"layers":[{"ddd":0,"ind":1,"ty":4,"nm":".grey600","cl":"grey600","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[205.999,149.375,0],"ix":2,"l":2},"a":{"a":0,"k":[205.999,149.375,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-1.367,0],[0,0],[0,-1.372],[0,0]],"o":[[0,-1.372],[0,0],[1.366,0],[0,0],[0,0]],"v":[[-6.933,0.746],[-4.457,-1.74],[4.457,-1.74],[6.933,0.746],[0.99,1.74]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.501960784314,0.525490196078,0.545098039216,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tr","p":{"a":0,"k":[318.382,49.604],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Layer 3","np":1,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[-1.367,0],[0,0],[0,-1.372],[0,0]],"o":[[0,-1.372],[0,0],[1.367,0],[0,0],[0,0]],"v":[[-13.37,0.746],[-10.894,-1.74],[10.894,-1.74],[13.37,0.746],[0.495,1.74]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0.501960784314,0.525490196078,0.545098039216,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tr","p":{"a":0,"k":[276.958,49.604],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Layer 2","np":1,"cix":2,"bm":0,"ix":2,"mn":"ADBE Vector Group","hd":false},{"ty":"gr","it":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,-8.146],[0,0],[8.146,0],[0,0],[0,8.146],[0,0],[-8.146,0],[0,0]],"o":[[0,0],[0,8.146],[0,0],[-8.146,0],[0,0],[0,-8.146],[0,0],[8.146,0]],"v":[[158.519,-84.974],[158.519,84.974],[143.769,99.724],[-143.769,99.724],[-158.519,84.974],[-158.519,-84.974],[-143.769,-99.724],[143.769,-99.724]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.501960784314,0.525490196078,0.545098039216,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":2.5,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false},{"ty":"tr","p":{"a":0,"k":[205.999,151.162],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Layer 1","np":1,"cix":2,"bm":0,"ix":3,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":180,"st":0,"ct":1,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":".blue400","cl":"blue400","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":36,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":39.582,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":44.953,"s":[100]},{"t":55.697265625,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[207.641,154.48,0],"ix":2,"l":2},"a":{"a":0,"k":[-180.5,-165.5,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.45,0.45,0.45],"y":[0,0,0]},"t":37.791,"s":[27.252,27.252,100]},{"t":59,"s":[56.661,56.661,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[63.109,63.109],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.4,0.61568627451,0.964705882353,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":3,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-180.5,-165.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":36,"op":59,"st":-1,"ct":1,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":".blue800","cl":"blue800","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":36,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":39.582,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":44.953,"s":[100]},{"t":55.697265625,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[207.641,154.48,0],"ix":2,"l":2},"a":{"a":0,"k":[-180.5,-165.5,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.45,0.45,0.45],"y":[0,0,0]},"t":37.791,"s":[27.252,27.252,100]},{"t":59,"s":[56.661,56.661,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[63.109,63.109],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"fl","c":{"a":0,"k":[0.094117647059,0.352941176471,0.737254901961,1],"ix":4},"o":{"a":0,"k":50,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-180.5,-165.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":36,"op":59,"st":-1,"ct":1,"bm":0},{"ddd":0,"ind":4,"ty":4,"nm":".blue400","cl":"blue400","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":22,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":25.58,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":30.953,"s":[100]},{"t":41.697265625,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[207.641,154.48,0],"ix":2,"l":2},"a":{"a":0,"k":[-180.5,-165.5,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.45,0.45,0.45],"y":[0,0,0]},"t":23.789,"s":[27.252,27.252,100]},{"t":45,"s":[56.661,56.661,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[63.109,63.109],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.4,0.61568627451,0.964705882353,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":3,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-180.5,-165.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":22,"op":45,"st":-3,"ct":1,"bm":0},{"ddd":0,"ind":5,"ty":4,"nm":".blue800","cl":"blue800","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":22,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":25.58,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":30.953,"s":[100]},{"t":41.697265625,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[207.641,154.48,0],"ix":2,"l":2},"a":{"a":0,"k":[-180.5,-165.5,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.45,0.45,0.45],"y":[0,0,0]},"t":23.789,"s":[27.252,27.252,100]},{"t":45,"s":[56.661,56.661,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[63.109,63.109],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"fl","c":{"a":0,"k":[0.094117647059,0.352941176471,0.737254901961,1],"ix":4},"o":{"a":0,"k":50,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-180.5,-165.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":22,"op":45,"st":-3,"ct":1,"bm":0},{"ddd":0,"ind":6,"ty":4,"nm":".blue400","cl":"blue400","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":8,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":11.582,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":16.953,"s":[100]},{"t":27.697265625,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[207.641,154.48,0],"ix":2,"l":2},"a":{"a":0,"k":[-180.5,-165.5,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.45,0.45,0.45],"y":[0,0,0]},"t":9.791,"s":[27.252,27.252,100]},{"t":31,"s":[56.661,56.661,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[63.109,63.109],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"st","c":{"a":0,"k":[0.4,0.61568627451,0.964705882353,1],"ix":3},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":3,"ix":5},"lc":1,"lj":1,"ml":4,"bm":0,"nm":"Stroke 1","mn":"ADBE Vector Graphic - Stroke","hd":false},{"ty":"tr","p":{"a":0,"k":[-180.5,-165.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":8,"op":31,"st":-5,"ct":1,"bm":0},{"ddd":0,"ind":7,"ty":4,"nm":".blue800","cl":"blue800","sr":1,"ks":{"o":{"a":1,"k":[{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":8,"s":[0]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":11.582,"s":[100]},{"i":{"x":[0.833],"y":[0.833]},"o":{"x":[0.167],"y":[0.167]},"t":16.953,"s":[100]},{"t":27.697265625,"s":[0]}],"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[207.641,154.48,0],"ix":2,"l":2},"a":{"a":0,"k":[-180.5,-165.5,0],"ix":1,"l":2},"s":{"a":1,"k":[{"i":{"x":[0,0,0],"y":[1,1,1]},"o":{"x":[0.45,0.45,0.45],"y":[0,0,0]},"t":9.791,"s":[27.252,27.252,100]},{"t":31,"s":[56.661,56.661,100]}],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"d":1,"ty":"el","s":{"a":0,"k":[63.109,63.109],"ix":2},"p":{"a":0,"k":[0,0],"ix":3},"nm":"Ellipse Path 1","mn":"ADBE Vector Shape - Ellipse","hd":false},{"ty":"fl","c":{"a":0,"k":[0.094117647059,0.352941176471,0.737254901961,1],"ix":4},"o":{"a":0,"k":50,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[-180.5,-165.5],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Ellipse 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":8,"op":31,"st":-5,"ct":1,"bm":0},{"ddd":0,"ind":8,"ty":4,"nm":".black","cl":"black","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[206,150,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[15.4,0],[0,0],[0,15.4],[0,0],[-15.4,0],[0,0],[0,-15.4],[0,0]],"o":[[0,0],[-15.4,0],[0,0],[0,-15.4],[0,0],[15.4,0],[0,0],[0,15.4]],"v":[[178,150],[-178,150],[-206,122],[-206,-122],[-178,-150],[178,-150],[206,-122],[206,122]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"fl","c":{"a":0,"k":[0,0,0,1],"ix":4},"o":{"a":0,"k":100,"ix":5},"r":1,"bm":0,"nm":"Fill 1","mn":"ADBE Vector Graphic - Fill","hd":false},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Group 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"ct":1,"bm":0}],"markers":[]}
\ No newline at end of file
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 878c98d9943..22e727f076b 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -5057,10 +5057,6 @@
Accessibility gesture
Tap the accessibility button %s at the bottom of your screen. To switch between features, touch & hold the accessibility button.
-
- Swipe up from the bottom of the screen with 2 fingers.\n\nTo switch between features, swipe up with 2 fingers and hold.
-
- Swipe up from the bottom of the screen with 3 fingers.\n\nTo switch between features, swipe up with 3 fingers and hold.
{count, plural,
=1 {Swipe up from the bottom of your screen. To switch between features, swipe up and hold.}
@@ -5090,8 +5086,6 @@
volume keys
Press & hold both volume keys
-
- Two-finger double-tap screen
%1$d-finger double tap
@@ -5102,14 +5096,8 @@
Quickly tap the screen %1$d times. This may slow down your device.
%1$d-finger double tap
-
- Quickly tap screen {0,number,integer} times with two fingers
-
- Triple-tap screen
triple tap
-
- Quickly tap screen {0,number,integer} times. This shortcut may slow down your device
Advanced
diff --git a/src/com/android/settings/accessibility/AccessibilityDialogUtils.java b/src/com/android/settings/accessibility/AccessibilityDialogUtils.java
index ca3a7b1d53b..a1f59c8744a 100644
--- a/src/com/android/settings/accessibility/AccessibilityDialogUtils.java
+++ b/src/com/android/settings/accessibility/AccessibilityDialogUtils.java
@@ -19,53 +19,22 @@ package com.android.settings.accessibility;
import static com.android.settings.accessibility.ItemInfoArrayAdapter.ItemInfo;
import android.app.Dialog;
-import android.app.settings.SettingsEnums;
import android.content.Context;
import android.content.DialogInterface;
-import android.content.res.TypedArray;
-import android.graphics.drawable.Drawable;
-import android.icu.text.MessageFormat;
-import android.text.Spannable;
-import android.text.SpannableString;
-import android.text.SpannableStringBuilder;
-import android.text.TextUtils;
-import android.text.method.LinkMovementMethod;
-import android.text.style.ImageSpan;
-import android.util.Log;
-import android.view.LayoutInflater;
import android.view.View;
import android.widget.AbsListView;
import android.widget.AdapterView;
-import android.widget.CheckBox;
-import android.widget.ImageView;
-import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.ScrollView;
-import android.widget.TextView;
-import androidx.annotation.ColorInt;
-import androidx.annotation.DrawableRes;
-import androidx.annotation.IntDef;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import androidx.annotation.RawRes;
import androidx.appcompat.app.AlertDialog;
-import androidx.core.content.ContextCompat;
-
-import com.android.server.accessibility.Flags;
-import com.android.settings.R;
-import com.android.settings.core.SubSettingLauncher;
-import com.android.settings.utils.AnnotationSpan;
-import com.android.settingslib.widget.LottieColorUtils;
-
-import com.airbnb.lottie.LottieAnimationView;
-import com.airbnb.lottie.LottieDrawable;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.List;
-
/**
* Utility class for creating the edit dialog.
*/
@@ -75,25 +44,20 @@ public class AccessibilityDialogUtils {
/** Denotes the dialog emuns for show dialog. */
@Retention(RetentionPolicy.SOURCE)
public @interface DialogEnums {
-
- /** OPEN: Settings > Accessibility > Any toggle service > Shortcut > Settings. */
- int EDIT_SHORTCUT = 1;
-
- /** OPEN: Settings > Accessibility > Magnification > Shortcut > Settings. */
- int MAGNIFICATION_EDIT_SHORTCUT = 1001;
-
/**
* OPEN: Settings > Accessibility > Downloaded toggle service > Toggle use service to
* enable service.
*/
int ENABLE_WARNING_FROM_TOGGLE = 1002;
- /** OPEN: Settings > Accessibility > Downloaded toggle service > Shortcut checkbox. */
+ /**
+ * OPEN: Settings > Accessibility > Downloaded toggle service > Shortcut options
+ * settings.
+ */
int ENABLE_WARNING_FROM_SHORTCUT = 1003;
/**
- * OPEN: Settings > Accessibility > Downloaded toggle service > Shortcut checkbox
- * toggle.
+ * OPEN: Settings > Accessibility > Downloaded toggle service > Shortcut toggle
*/
int ENABLE_WARNING_FROM_SHORTCUT_TOGGLE = 1004;
@@ -127,83 +91,6 @@ public class AccessibilityDialogUtils {
int DIALOG_RESET_SETTINGS = 1009;
}
- /**
- * IntDef enum for dialog type that indicates different dialog for user to choose the shortcut
- * type.
- */
- @Retention(RetentionPolicy.SOURCE)
- @IntDef({
- DialogType.EDIT_SHORTCUT_GENERIC,
- DialogType.EDIT_SHORTCUT_GENERIC_SUW,
- DialogType.EDIT_SHORTCUT_MAGNIFICATION,
- DialogType.EDIT_SHORTCUT_MAGNIFICATION_SUW,
- })
-
- public @interface DialogType {
- int EDIT_SHORTCUT_GENERIC = 0;
- int EDIT_SHORTCUT_GENERIC_SUW = 1;
- int EDIT_SHORTCUT_MAGNIFICATION = 2;
- int EDIT_SHORTCUT_MAGNIFICATION_SUW = 3;
- }
-
- /**
- * Method to show the edit shortcut dialog.
- *
- * @param context A valid context
- * @param dialogType The type of edit shortcut dialog
- * @param dialogTitle The title of edit shortcut dialog
- * @param listener The listener to determine the action of edit shortcut dialog
- * @return A edit shortcut dialog for showing
- */
- public static AlertDialog showEditShortcutDialog(Context context, int dialogType,
- CharSequence dialogTitle, DialogInterface.OnClickListener listener) {
- final AlertDialog alertDialog = createDialog(context, dialogType, dialogTitle, listener);
- alertDialog.show();
- setScrollIndicators(alertDialog);
- return alertDialog;
- }
-
- /**
- * Updates the shortcut content in edit shortcut dialog.
- *
- * @param context A valid context
- * @param editShortcutDialog Need to be a type of edit shortcut dialog
- * @return True if the update is successful
- */
- public static boolean updateShortcutInDialog(Context context,
- Dialog editShortcutDialog) {
- final View container = editShortcutDialog.findViewById(R.id.container_layout);
- if (container != null) {
- initSoftwareShortcut(context, container);
- initHardwareShortcut(context, container);
- return true;
- }
- return false;
- }
-
- private static AlertDialog createDialog(Context context, int dialogType,
- CharSequence dialogTitle, DialogInterface.OnClickListener listener) {
-
- final AlertDialog alertDialog = new AlertDialog.Builder(context)
- .setView(createEditDialogContentView(context, dialogType))
- .setTitle(dialogTitle)
- .setPositiveButton(R.string.save, listener)
- .setNegativeButton(R.string.cancel,
- (DialogInterface dialog, int which) -> dialog.dismiss())
- .create();
-
- return alertDialog;
- }
-
- /**
- * Sets the scroll indicators for dialog view. The indicators appears while content view is
- * out of vision for vertical scrolling.
- */
- private static void setScrollIndicators(AlertDialog dialog) {
- final ScrollView scrollView = dialog.findViewById(R.id.container_layout);
- setScrollIndicators(scrollView);
- }
-
/**
* Sets the scroll indicators for dialog view. The indicators appear while content view is
* out of vision for vertical scrolling.
@@ -217,284 +104,6 @@ public class AccessibilityDialogUtils {
View.SCROLL_INDICATOR_TOP | View.SCROLL_INDICATOR_BOTTOM);
}
- /**
- * Get a content View for the edit shortcut dialog.
- *
- * @param context A valid context
- * @param dialogType The type of edit shortcut dialog
- * @return A content view suitable for viewing
- */
- private static View createEditDialogContentView(Context context, int dialogType) {
- final LayoutInflater inflater = (LayoutInflater) context.getSystemService(
- Context.LAYOUT_INFLATER_SERVICE);
-
- View contentView = null;
-
- switch (dialogType) {
- case DialogType.EDIT_SHORTCUT_GENERIC:
- contentView = inflater.inflate(
- R.layout.accessibility_edit_shortcut, null);
- initSoftwareShortcut(context, contentView);
- initHardwareShortcut(context, contentView);
- break;
- case DialogType.EDIT_SHORTCUT_GENERIC_SUW:
- contentView = inflater.inflate(
- R.layout.accessibility_edit_shortcut, null);
- initSoftwareShortcutForSUW(context, contentView);
- initHardwareShortcut(context, contentView);
- break;
- case DialogType.EDIT_SHORTCUT_MAGNIFICATION:
- contentView = inflater.inflate(
- R.layout.accessibility_edit_shortcut_magnification, null);
- initSoftwareShortcut(context, contentView);
- initHardwareShortcut(context, contentView);
- if (Flags.enableMagnificationMultipleFingerMultipleTapGesture()) {
- initTwoFingerDoubleTapMagnificationShortcut(context, contentView);
- }
- initMagnifyShortcut(context, contentView);
- initAdvancedWidget(contentView);
- break;
- case DialogType.EDIT_SHORTCUT_MAGNIFICATION_SUW:
- contentView = inflater.inflate(
- R.layout.accessibility_edit_shortcut_magnification, null);
- initSoftwareShortcutForSUW(context, contentView);
- initHardwareShortcut(context, contentView);
- if (Flags.enableMagnificationMultipleFingerMultipleTapGesture()) {
- initTwoFingerDoubleTapMagnificationShortcut(context, contentView);
- }
- initMagnifyShortcut(context, contentView);
- initAdvancedWidget(contentView);
- break;
- default:
- throw new IllegalArgumentException();
- }
-
- return contentView;
- }
-
- private static void setupShortcutWidget(View view, CharSequence titleText,
- CharSequence summaryText, @DrawableRes int imageResId) {
- setupShortcutWidgetWithTitleAndSummary(view, titleText, summaryText);
- setupShortcutWidgetWithImageResource(view, imageResId);
- }
-
- private static void setupShortcutWidgetWithImageRawResource(Context context,
- View view, CharSequence titleText,
- CharSequence summaryText, @RawRes int imageRawResId) {
- setupShortcutWidgetWithTitleAndSummary(view, titleText, summaryText);
- setupShortcutWidgetWithImageRawResource(context, view, imageRawResId);
- }
-
- private static void setupShortcutWidgetWithTitleAndSummary(View view, CharSequence titleText,
- CharSequence summaryText) {
- final CheckBox checkBox = view.findViewById(R.id.checkbox);
- checkBox.setText(titleText);
-
- final TextView summary = view.findViewById(R.id.summary);
- if (TextUtils.isEmpty(summaryText)) {
- summary.setVisibility(View.GONE);
- } else {
- summary.setText(summaryText);
- summary.setMovementMethod(LinkMovementMethod.getInstance());
- summary.setFocusable(false);
- }
- }
-
- private static void setupShortcutWidgetWithImageResource(View view,
- @DrawableRes int imageResId) {
- final ImageView imageView = view.findViewById(R.id.image);
- imageView.setImageResource(imageResId);
- }
-
- private static void setupShortcutWidgetWithImageRawResource(Context context, View view,
- @RawRes int imageRawResId) {
- final LottieAnimationView lottieView = view.findViewById(R.id.image);
- lottieView.setFailureListener(
- result -> Log.w(TAG, "Invalid image raw resource id: " + imageRawResId,
- result));
- lottieView.setAnimation(imageRawResId);
- lottieView.setRepeatCount(LottieDrawable.INFINITE);
- LottieColorUtils.applyDynamicColors(context, lottieView);
- lottieView.playAnimation();
- }
-
- private static void initSoftwareShortcutForSUW(Context context, View view) {
- final View dialogView = view.findViewById(R.id.software_shortcut);
- final CharSequence title = context.getText(
- R.string.accessibility_shortcut_edit_dialog_title_software);
- final TextView summary = dialogView.findViewById(R.id.summary);
- final int lineHeight = summary.getLineHeight();
-
- setupShortcutWidget(dialogView, title,
- retrieveSoftwareShortcutSummaryForSUW(context, lineHeight),
- retrieveSoftwareShortcutImageResId(context));
- }
-
- private static void initSoftwareShortcut(Context context, View view) {
- final View dialogView = view.findViewById(R.id.software_shortcut);
- final TextView summary = dialogView.findViewById(R.id.summary);
- final int lineHeight = summary.getLineHeight();
-
- setupShortcutWidget(dialogView,
- retrieveTitle(context),
- retrieveSoftwareShortcutSummary(context, lineHeight),
- retrieveSoftwareShortcutImageResId(context));
- }
-
- private static void initHardwareShortcut(Context context, View view) {
- final View dialogView = view.findViewById(R.id.hardware_shortcut);
- final CharSequence title = context.getText(
- R.string.accessibility_shortcut_edit_dialog_title_hardware);
- final CharSequence summary = context.getText(
- R.string.accessibility_shortcut_edit_dialog_summary_hardware);
- setupShortcutWidget(dialogView, title, summary,
- R.drawable.a11y_shortcut_type_hardware);
- }
-
- private static void initMagnifyShortcut(Context context, View view) {
- final View dialogView = view.findViewById(R.id.triple_tap_shortcut);
- final CharSequence title = context.getText(
- R.string.accessibility_shortcut_edit_dialog_title_triple_tap);
- String summary = context.getString(
- R.string.accessibility_shortcut_edit_dialog_summary_triple_tap);
- // Format the number '3' in the summary.
- final Object[] arguments = {3};
- summary = MessageFormat.format(summary, arguments);
-
- setupShortcutWidgetWithImageRawResource(context, dialogView, title, summary,
- R.raw.a11y_shortcut_type_triple_tap);
- }
-
- private static void initTwoFingerDoubleTapMagnificationShortcut(Context context, View view) {
- // TODO(b/306153204): Update shortcut string and image when UX provides them
- final View dialogView = view.findViewById(R.id.two_finger_triple_tap_shortcut);
- final CharSequence title = context.getText(
- R.string.accessibility_shortcut_edit_dialog_title_two_finger_double_tap);
- String summary = context.getString(
- R.string.accessibility_shortcut_edit_dialog_summary_two_finger_double_tap);
- // Format the number '2' in the summary.
- final Object[] arguments = {2};
- summary = MessageFormat.format(summary, arguments);
-
- setupShortcutWidgetWithImageRawResource(context, dialogView, title, summary,
- R.raw.a11y_shortcut_type_triple_tap);
-
- dialogView.setVisibility(View.VISIBLE);
- }
-
- private static void initAdvancedWidget(View view) {
- final LinearLayout advanced = view.findViewById(R.id.advanced_shortcut);
- final View tripleTap = view.findViewById(R.id.triple_tap_shortcut);
- advanced.setOnClickListener((View v) -> {
- advanced.setVisibility(View.GONE);
- tripleTap.setVisibility(View.VISIBLE);
- });
- }
-
- private static CharSequence retrieveSoftwareShortcutSummaryForSUW(Context context,
- int lineHeight) {
- final SpannableStringBuilder sb = new SpannableStringBuilder();
- if (!AccessibilityUtil.isFloatingMenuEnabled(context)) {
- sb.append(getSummaryStringWithIcon(context, lineHeight));
- }
- return sb;
- }
-
- private static CharSequence retrieveTitle(Context context) {
- int resId;
- if (AccessibilityUtil.isFloatingMenuEnabled(context)) {
- resId = R.string.accessibility_shortcut_edit_dialog_title_software;
- } else if (AccessibilityUtil.isGestureNavigateEnabled(context)) {
- resId = R.string.accessibility_shortcut_edit_dialog_title_software_by_gesture;
- } else {
- resId = R.string.accessibility_shortcut_edit_dialog_title_software;
- }
- return context.getText(resId);
- }
-
- private static CharSequence retrieveSoftwareShortcutSummary(Context context, int lineHeight) {
- final SpannableStringBuilder sb = new SpannableStringBuilder();
- if (AccessibilityUtil.isFloatingMenuEnabled(context)) {
- sb.append(getCustomizeAccessibilityButtonLink(context));
- } else if (AccessibilityUtil.isGestureNavigateEnabled(context)) {
- final int resId = AccessibilityUtil.isTouchExploreEnabled(context)
- ? R.string.accessibility_shortcut_edit_dialog_summary_software_gesture_talkback
- : R.string.accessibility_shortcut_edit_dialog_summary_software_gesture;
- sb.append(context.getText(resId));
- sb.append("\n\n");
- sb.append(getCustomizeAccessibilityButtonLink(context));
- } else {
- sb.append(getSummaryStringWithIcon(context, lineHeight));
- sb.append("\n\n");
- sb.append(getCustomizeAccessibilityButtonLink(context));
- }
- return sb;
- }
-
- private static int retrieveSoftwareShortcutImageResId(Context context) {
- int resId;
- if (AccessibilityUtil.isFloatingMenuEnabled(context)) {
- resId = R.drawable.a11y_shortcut_type_software_floating;
- } else if (AccessibilityUtil.isGestureNavigateEnabled(context)) {
- resId = AccessibilityUtil.isTouchExploreEnabled(context)
- ? R.drawable.a11y_shortcut_type_software_gesture_talkback
- : R.drawable.a11y_shortcut_type_software_gesture;
- } else {
- resId = R.drawable.a11y_shortcut_type_software;
- }
- return resId;
- }
-
- private static CharSequence getCustomizeAccessibilityButtonLink(Context context) {
- final View.OnClickListener linkListener = v -> new SubSettingLauncher(context)
- .setDestination(AccessibilityButtonFragment.class.getName())
- .setSourceMetricsCategory(
- SettingsEnums.SWITCH_SHORTCUT_DIALOG_ACCESSIBILITY_BUTTON_SETTINGS)
- .launch();
- final AnnotationSpan.LinkInfo linkInfo = new AnnotationSpan.LinkInfo(
- AnnotationSpan.LinkInfo.DEFAULT_ANNOTATION, linkListener);
- return AnnotationSpan.linkify(context.getText(
- R.string.accessibility_shortcut_edit_dialog_summary_software_floating), linkInfo);
- }
-
- private static SpannableString getSummaryStringWithIcon(Context context, int lineHeight) {
- final String summary = context
- .getString(R.string.accessibility_shortcut_edit_dialog_summary_software);
- final SpannableString spannableMessage = SpannableString.valueOf(summary);
-
- // Icon
- final int indexIconStart = summary.indexOf("%s");
- final int indexIconEnd = indexIconStart + 2;
- final Drawable icon = context.getDrawable(R.drawable.ic_accessibility_new);
- final ImageSpan imageSpan = new ImageSpan(icon);
- imageSpan.setContentDescription("");
- icon.setBounds(0, 0, lineHeight, lineHeight);
- spannableMessage.setSpan(
- imageSpan, indexIconStart, indexIconEnd,
- Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
- return spannableMessage;
- }
-
- /**
- * Returns the color associated with the specified attribute in the context's theme.
- */
- @ColorInt
- private static int getThemeAttrColor(final Context context, final int attributeColor) {
- final int colorResId = getAttrResourceId(context, attributeColor);
- return ContextCompat.getColor(context, colorResId);
- }
-
- /**
- * Returns the identifier of the resolved resource assigned to the given attribute.
- */
- private static int getAttrResourceId(final Context context, final int attributeColor) {
- final int[] attrs = {attributeColor};
- final TypedArray typedArray = context.obtainStyledAttributes(attrs);
- final int colorResId = typedArray.getResourceId(0, 0);
- typedArray.recycle();
- return colorResId;
- }
-
/**
* Creates a dialog with the given view.
*
diff --git a/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java b/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java
index 0f55a11d964..e92c86b32b0 100644
--- a/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java
+++ b/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java
@@ -39,7 +39,6 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.accessibility.AccessibilityManager;
-import android.widget.CheckBox;
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
@@ -66,19 +65,13 @@ import java.util.Locale;
public abstract class AccessibilityShortcutPreferenceFragment extends RestrictedDashboardFragment
implements ShortcutPreference.OnClickCallback {
private static final String KEY_SHORTCUT_PREFERENCE = "shortcut_preference";
- protected static final String KEY_SAVED_USER_SHORTCUT_TYPE = "shortcut_type";
protected static final String KEY_SAVED_QS_TOOLTIP_RESHOW = "qs_tooltip_reshow";
- protected static final int NOT_SET = -1;
- // Save user's shortcutType value when savedInstance has value (e.g. device rotated).
- protected int mSavedCheckBoxValue = NOT_SET;
protected ShortcutPreference mShortcutPreference;
protected Dialog mDialog;
private AccessibilityManager.TouchExplorationStateChangeListener
mTouchExplorationStateChangeListener;
private AccessibilitySettingsContentObserver mSettingsContentObserver;
- private CheckBox mSoftwareTypeCheckBox;
- private CheckBox mHardwareTypeCheckBox;
private AccessibilityQuickSettingsTooltipWindow mTooltipWindow;
private boolean mNeedsQSTooltipReshow = false;
private int mNeedsQSTooltipType = QuickSettingsTooltipType.GUIDE_TO_EDIT;
@@ -105,10 +98,6 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted
// Restore the user shortcut type and tooltip.
if (savedInstanceState != null) {
- if (savedInstanceState.containsKey(KEY_SAVED_USER_SHORTCUT_TYPE)) {
- mSavedCheckBoxValue = savedInstanceState.getInt(KEY_SAVED_USER_SHORTCUT_TYPE,
- NOT_SET);
- }
if (savedInstanceState.containsKey(KEY_SAVED_QS_TOOLTIP_RESHOW)) {
mNeedsQSTooltipReshow = savedInstanceState.getBoolean(KEY_SAVED_QS_TOOLTIP_RESHOW);
}
@@ -153,7 +142,6 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted
getPreferenceScreen().addPreference(mShortcutPreference);
mTouchExplorationStateChangeListener = isTouchExplorationEnabled -> {
- removeDialog(DialogEnums.EDIT_SHORTCUT);
mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext()));
};
@@ -185,8 +173,6 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted
mSettingsContentObserver.register(getContentResolver());
updateShortcutPreferenceData();
updateShortcutPreference();
-
- updateEditShortcutDialogIfNeeded();
}
@Override
@@ -200,10 +186,6 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted
@Override
public void onSaveInstanceState(Bundle outState) {
- final int value = getShortcutTypeCheckBoxValue();
- if (value != NOT_SET) {
- outState.putInt(KEY_SAVED_USER_SHORTCUT_TYPE, value);
- }
final boolean isTooltipWindowShowing = mTooltipWindow != null && mTooltipWindow.isShowing();
if (mNeedsQSTooltipReshow || isTooltipWindowShowing) {
outState.putBoolean(KEY_SAVED_QS_TOOLTIP_RESHOW, /* value= */ true);
@@ -215,15 +197,6 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted
@Override
public Dialog onCreateDialog(int dialogId) {
switch (dialogId) {
- case DialogEnums.EDIT_SHORTCUT:
- final int dialogType = WizardManagerHelper.isAnySetupWizard(getIntent())
- ? AccessibilityDialogUtils.DialogType.EDIT_SHORTCUT_GENERIC_SUW :
- AccessibilityDialogUtils.DialogType.EDIT_SHORTCUT_GENERIC;
- mDialog = AccessibilityDialogUtils.showEditShortcutDialog(
- getPrefContext(), dialogType, getShortcutTitle(),
- this::callOnAlertDialogCheckboxClicked);
- setupEditShortcutDialog(mDialog);
- return mDialog;
case DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL:
if (WizardManagerHelper.isAnySetupWizard(getIntent())) {
mDialog = AccessibilityShortcutsTutorial
@@ -250,8 +223,6 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted
@Override
public int getDialogMetricsCategory(int dialogId) {
switch (dialogId) {
- case DialogEnums.EDIT_SHORTCUT:
- return SettingsEnums.DIALOG_ACCESSIBILITY_SERVICE_EDIT_SHORTCUT;
case DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL:
return SettingsEnums.DIALOG_ACCESSIBILITY_TUTORIAL;
default:
@@ -261,17 +232,13 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted
@Override
public void onSettingsClicked(ShortcutPreference preference) {
- if (Flags.editShortcutsInFullScreen()) {
- EditShortcutsPreferenceFragment.showEditShortcutScreen(
- getContext(),
- getMetricsCategory(),
- getShortcutTitle(),
- getComponentName(),
- getIntent()
- );
- } else {
- showDialog(DialogEnums.EDIT_SHORTCUT);
- }
+ EditShortcutsPreferenceFragment.showEditShortcutScreen(
+ getContext(),
+ getMetricsCategory(),
+ getShortcutTitle(),
+ getComponentName(),
+ getIntent()
+ );
}
@Override
@@ -301,38 +268,6 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted
return KEY_SHORTCUT_PREFERENCE;
}
- @VisibleForTesting
- void setupEditShortcutDialog(Dialog dialog) {
- final View dialogSoftwareView = dialog.findViewById(R.id.software_shortcut);
- mSoftwareTypeCheckBox = dialogSoftwareView.findViewById(R.id.checkbox);
- setDialogTextAreaClickListener(dialogSoftwareView, mSoftwareTypeCheckBox);
-
- final View dialogHardwareView = dialog.findViewById(R.id.hardware_shortcut);
- mHardwareTypeCheckBox = dialogHardwareView.findViewById(R.id.checkbox);
- setDialogTextAreaClickListener(dialogHardwareView, mHardwareTypeCheckBox);
-
- updateEditShortcutDialogCheckBox();
- }
-
- /**
- * Returns accumulated {@link UserShortcutType} checkbox value or
- * {@code NOT_SET} if checkboxes did not exist.
- */
- protected int getShortcutTypeCheckBoxValue() {
- if (mSoftwareTypeCheckBox == null || mHardwareTypeCheckBox == null) {
- return NOT_SET;
- }
-
- int value = DEFAULT;
- if (mSoftwareTypeCheckBox.isChecked()) {
- value |= SOFTWARE;
- }
- if (mHardwareTypeCheckBox.isChecked()) {
- value |= HARDWARE;
- }
- return value;
- }
-
/**
* Returns the shortcut type list which has been checked by user.
*/
@@ -364,35 +299,6 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted
showQuickSettingsTooltipIfNeeded();
}
- /**
- * This method will be invoked when a button in the edit shortcut dialog is clicked.
- *
- * @param dialog The dialog that received the click
- * @param which The button that was clicked
- */
- protected void callOnAlertDialogCheckboxClicked(DialogInterface dialog, int which) {
- if (getComponentName() == null) {
- return;
- }
-
- final int value = getShortcutTypeCheckBoxValue();
- saveNonEmptyUserShortcutType(value);
- AccessibilityUtil.optInAllValuesToSettings(getPrefContext(), value, getComponentName());
- AccessibilityUtil.optOutAllValuesFromSettings(getPrefContext(), ~value, getComponentName());
- final boolean shortcutAssigned = value != DEFAULT;
- mShortcutPreference.setChecked(shortcutAssigned);
- mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext()));
-
- if (mHardwareTypeCheckBox.isChecked()) {
- AccessibilityUtil.skipVolumeShortcutDialogTimeoutRestriction(getPrefContext());
- }
-
- // Show the quick setting tooltip if the shortcut assigned in the first time
- if (shortcutAssigned) {
- showQuickSettingsTooltipIfNeeded();
- }
- }
-
@VisibleForTesting
void initGeneralCategory() {
final PreferenceCategory generalCategory = new PreferenceCategory(getPrefContext());
@@ -402,24 +308,6 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted
getPreferenceScreen().addPreference(generalCategory);
}
- private void updateEditShortcutDialogIfNeeded() {
- if (mDialog == null || !mDialog.isShowing()) {
- return;
- }
- AccessibilityDialogUtils.updateShortcutInDialog(getContext(), mDialog);
- }
-
- @VisibleForTesting
- void saveNonEmptyUserShortcutType(int type) {
- if (type == DEFAULT) {
- return;
- }
-
- final PreferredShortcut shortcut = new PreferredShortcut(
- getComponentName().flattenToString(), type);
- PreferredShortcuts.saveUserShortcutType(getPrefContext(), shortcut);
- }
-
/**
* Overrides to return customized description for general category above shortcut
*
@@ -442,11 +330,6 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted
return false;
}
- private void setDialogTextAreaClickListener(View dialogView, CheckBox checkBox) {
- final View dialogTextArea = dialogView.findViewById(R.id.container);
- dialogTextArea.setOnClickListener(v -> checkBox.toggle());
- }
-
protected CharSequence getShortcutTypeSummary(Context context) {
if (!mShortcutPreference.isSettingsEditable()) {
return context.getText(R.string.accessibility_shortcut_edit_dialog_title_hardware);
@@ -486,28 +369,6 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted
null, LocaleUtils.getConcatenatedString(list));
}
- private void updateEditShortcutDialogCheckBox() {
- // If it is during onConfigChanged process then restore the value, or get the saved value
- // when shortcutPreference is checked.
- int value = restoreOnConfigChangedValue();
- if (value == NOT_SET) {
- final int lastNonEmptyUserShortcutType = getUserPreferredShortcutTypes();
- value = mShortcutPreference.isChecked() ? lastNonEmptyUserShortcutType
- : DEFAULT;
- }
-
- mSoftwareTypeCheckBox.setChecked(
- hasShortcutType(value, SOFTWARE));
- mHardwareTypeCheckBox.setChecked(
- hasShortcutType(value, HARDWARE));
- }
-
- private int restoreOnConfigChangedValue() {
- final int savedValue = mSavedCheckBoxValue;
- mSavedCheckBoxValue = NOT_SET;
- return savedValue;
- }
-
private boolean hasShortcutType(int value, @UserShortcutType int type) {
return (value & type) == type;
}
diff --git a/src/com/android/settings/accessibility/InvisibleToggleAccessibilityServicePreferenceFragment.java b/src/com/android/settings/accessibility/InvisibleToggleAccessibilityServicePreferenceFragment.java
index eb7b27d1767..9c8560b485b 100644
--- a/src/com/android/settings/accessibility/InvisibleToggleAccessibilityServicePreferenceFragment.java
+++ b/src/com/android/settings/accessibility/InvisibleToggleAccessibilityServicePreferenceFragment.java
@@ -17,7 +17,6 @@
package com.android.settings.accessibility;
import android.accessibilityservice.AccessibilityServiceInfo;
-import android.content.DialogInterface;
import com.android.settingslib.accessibility.AccessibilityUtils;
@@ -63,17 +62,4 @@ public class InvisibleToggleAccessibilityServicePreferenceFragment extends
super.onAllowButtonFromShortcutToggleClicked();
AccessibilityUtils.setAccessibilityServiceState(getContext(), mComponentName, true);
}
-
- /**
- * {@inheritDoc}
- *
- * Enables accessibility service when shortcutPreference is checked.
- */
- @Override
- protected void callOnAlertDialogCheckboxClicked(DialogInterface dialog, int which) {
- super.callOnAlertDialogCheckboxClicked(dialog, which);
-
- final boolean enabled = mShortcutPreference.isChecked();
- AccessibilityUtils.setAccessibilityServiceState(getContext(), mComponentName, enabled);
- }
}
diff --git a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
index a79098b7f46..e41d857bbdb 100644
--- a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
@@ -40,7 +40,6 @@ import android.text.TextUtils;
import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
-import android.view.View;
import android.view.accessibility.AccessibilityManager;
import android.widget.CompoundButton;
@@ -411,17 +410,6 @@ public class ToggleAccessibilityServicePreferenceFragment extends
}
}
- private void onDialogButtonFromEnableToggleClicked(View view) {
- final int viewId = view.getId();
- if (viewId == R.id.permission_enable_allow_button) {
- onAllowButtonFromEnableToggleClicked();
- } else if (viewId == R.id.permission_enable_deny_button) {
- onDenyButtonFromEnableToggleClicked();
- } else {
- throw new IllegalArgumentException("Unexpected view id");
- }
- }
-
private void onDialogButtonFromUninstallClicked() {
mWarningDialog.dismiss();
final Intent uninstallIntent = createUninstallPackageActivityIntent();
@@ -491,17 +479,6 @@ public class ToggleAccessibilityServicePreferenceFragment extends
mWarningDialog.dismiss();
}
- void onDialogButtonFromShortcutToggleClicked(View view) {
- final int viewId = view.getId();
- if (viewId == R.id.permission_enable_allow_button) {
- onAllowButtonFromShortcutToggleClicked();
- } else if (viewId == R.id.permission_enable_deny_button) {
- onDenyButtonFromShortcutToggleClicked();
- } else {
- throw new IllegalArgumentException("Unexpected view id");
- }
- }
-
void onAllowButtonFromShortcutToggleClicked() {
mShortcutPreference.setChecked(true);
@@ -526,17 +503,13 @@ public class ToggleAccessibilityServicePreferenceFragment extends
private void onAllowButtonFromShortcutClicked() {
mIsDialogShown.set(false);
- if (Flags.editShortcutsInFullScreen()) {
- EditShortcutsPreferenceFragment.showEditShortcutScreen(
- getContext(),
- getMetricsCategory(),
- getShortcutTitle(),
- mComponentName,
- getIntent()
- );
- } else {
- showPopupDialog(DialogEnums.EDIT_SHORTCUT);
- }
+ EditShortcutsPreferenceFragment.showEditShortcutScreen(
+ getContext(),
+ getMetricsCategory(),
+ getShortcutTitle(),
+ mComponentName,
+ getIntent()
+ );
if (mWarningDialog != null) {
mWarningDialog.dismiss();
diff --git a/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
index 8bbc7a81367..0ac29bc6ba5 100644
--- a/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
@@ -47,7 +47,6 @@ import android.view.View;
import android.view.ViewGroup;
import android.view.accessibility.AccessibilityManager;
import android.view.accessibility.AccessibilityManager.TouchExplorationStateChangeListener;
-import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.ImageView;
@@ -62,7 +61,6 @@ import com.android.internal.accessibility.common.ShortcutConstants;
import com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
-import com.android.settings.accessibility.AccessibilityDialogUtils.DialogType;
import com.android.settings.accessibility.AccessibilityUtil.QuickSettingsTooltipType;
import com.android.settings.accessibility.shortcuts.EditShortcutsPreferenceFragment;
import com.android.settings.dashboard.DashboardFragment;
@@ -88,11 +86,9 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment
public static final String KEY_GENERAL_CATEGORY = "general_categories";
public static final String KEY_SHORTCUT_PREFERENCE = "shortcut_preference";
- public static final int NOT_SET = -1;
protected static final String KEY_TOP_INTRO_PREFERENCE = "top_intro";
protected static final String KEY_USE_SERVICE_PREFERENCE = "use_service";
protected static final String KEY_HTML_DESCRIPTION_PREFERENCE = "html_description";
- protected static final String KEY_SAVED_USER_SHORTCUT_TYPE = "shortcut_type";
protected static final String KEY_SAVED_QS_TOOLTIP_RESHOW = "qs_tooltip_reshow";
protected static final String KEY_SAVED_QS_TOOLTIP_TYPE = "qs_tooltip_type";
protected static final String KEY_ANIMATED_IMAGE = "animated_image";
@@ -117,15 +113,10 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment
protected Uri mImageUri;
protected CharSequence mHtmlDescription;
protected CharSequence mTopIntroTitle;
- // Save user's shortcutType value when savedInstance has value (e.g. device rotated).
- protected int mSavedCheckBoxValue = NOT_SET;
private CharSequence mDescription;
private TouchExplorationStateChangeListener mTouchExplorationStateChangeListener;
private AccessibilitySettingsContentObserver mSettingsContentObserver;
- private CheckBox mSoftwareTypeCheckBox;
- private CheckBox mHardwareTypeCheckBox;
-
private AccessibilityQuickSettingsTooltipWindow mTooltipWindow;
private boolean mNeedsQSTooltipReshow = false;
private int mNeedsQSTooltipType = QuickSettingsTooltipType.GUIDE_TO_EDIT;
@@ -148,10 +139,6 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment
onProcessArguments(getArguments());
// Restore the user shortcut type and tooltip.
if (savedInstanceState != null) {
- if (savedInstanceState.containsKey(KEY_SAVED_USER_SHORTCUT_TYPE)) {
- mSavedCheckBoxValue = savedInstanceState.getInt(KEY_SAVED_USER_SHORTCUT_TYPE,
- NOT_SET);
- }
if (savedInstanceState.containsKey(KEY_SAVED_QS_TOOLTIP_RESHOW)) {
mNeedsQSTooltipReshow = savedInstanceState.getBoolean(KEY_SAVED_QS_TOOLTIP_RESHOW);
}
@@ -209,7 +196,6 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment
updateToggleServiceTitle(mToggleServiceSwitchPreference);
mTouchExplorationStateChangeListener = isTouchExplorationEnabled -> {
- removeDialog(DialogEnums.EDIT_SHORTCUT);
mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext()));
};
@@ -220,14 +206,6 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment
@Override
public Dialog onCreateDialog(int dialogId) {
switch (dialogId) {
- case DialogEnums.EDIT_SHORTCUT:
- final int dialogType = isAnySetupWizard()
- ? DialogType.EDIT_SHORTCUT_GENERIC_SUW : DialogType.EDIT_SHORTCUT_GENERIC;
- mDialog = AccessibilityDialogUtils.showEditShortcutDialog(
- getPrefContext(), dialogType, getShortcutTitle(),
- this::callOnAlertDialogCheckboxClicked);
- setupEditShortcutDialog(mDialog);
- return mDialog;
case DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL:
if (isAnySetupWizard()) {
mDialog = AccessibilityShortcutsTutorial
@@ -278,8 +256,6 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment
mSettingsContentObserver.register(getContentResolver());
updateShortcutPreferenceData();
updateShortcutPreference();
-
- updateEditShortcutDialogIfNeeded();
}
@Override
@@ -293,10 +269,6 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment
@Override
public void onSaveInstanceState(Bundle outState) {
- final int value = getShortcutTypeCheckBoxValue();
- if (value != NOT_SET) {
- outState.putInt(KEY_SAVED_USER_SHORTCUT_TYPE, value);
- }
final boolean isTooltipWindowShowing = mTooltipWindow != null && mTooltipWindow.isShowing();
if (mNeedsQSTooltipReshow || isTooltipWindowShowing) {
outState.putBoolean(KEY_SAVED_QS_TOOLTIP_RESHOW, /* value= */ true);
@@ -318,8 +290,6 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment
@Override
public int getDialogMetricsCategory(int dialogId) {
switch (dialogId) {
- case DialogEnums.EDIT_SHORTCUT:
- return SettingsEnums.DIALOG_ACCESSIBILITY_SERVICE_EDIT_SHORTCUT;
case DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL:
return SettingsEnums.DIALOG_ACCESSIBILITY_TUTORIAL;
default:
@@ -656,69 +626,10 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment
mFooterPreferenceController.displayPreference(screen);
}
- @VisibleForTesting
- void setupEditShortcutDialog(Dialog dialog) {
- final View dialogSoftwareView = dialog.findViewById(R.id.software_shortcut);
- mSoftwareTypeCheckBox = dialogSoftwareView.findViewById(R.id.checkbox);
- setDialogTextAreaClickListener(dialogSoftwareView, mSoftwareTypeCheckBox);
-
- final View dialogHardwareView = dialog.findViewById(R.id.hardware_shortcut);
- mHardwareTypeCheckBox = dialogHardwareView.findViewById(R.id.checkbox);
- setDialogTextAreaClickListener(dialogHardwareView, mHardwareTypeCheckBox);
-
- updateEditShortcutDialogCheckBox();
- }
-
- private void setDialogTextAreaClickListener(View dialogView, CheckBox checkBox) {
- final View dialogTextArea = dialogView.findViewById(R.id.container);
- dialogTextArea.setOnClickListener(v -> checkBox.toggle());
- }
-
- private void updateEditShortcutDialogCheckBox() {
- // If it is during onConfigChanged process then restore the value, or get the saved value
- // when shortcutPreference is checked.
- int value = restoreOnConfigChangedValue();
- if (value == NOT_SET) {
- final int lastNonEmptyUserShortcutType = getUserPreferredShortcutTypes();
- value = mShortcutPreference.isChecked() ? lastNonEmptyUserShortcutType
- : DEFAULT;
- }
-
- mSoftwareTypeCheckBox.setChecked(
- hasShortcutType(value, SOFTWARE));
- mHardwareTypeCheckBox.setChecked(
- hasShortcutType(value, HARDWARE));
- }
-
- private int restoreOnConfigChangedValue() {
- final int savedValue = mSavedCheckBoxValue;
- mSavedCheckBoxValue = NOT_SET;
- return savedValue;
- }
-
private boolean hasShortcutType(int value, @UserShortcutType int type) {
return (value & type) == type;
}
- /**
- * Returns accumulated {@link UserShortcutType} checkbox value or {@code NOT_SET} if checkboxes
- * did not exist.
- */
- protected int getShortcutTypeCheckBoxValue() {
- if (mSoftwareTypeCheckBox == null || mHardwareTypeCheckBox == null) {
- return NOT_SET;
- }
-
- int value = DEFAULT;
- if (mSoftwareTypeCheckBox.isChecked()) {
- value |= SOFTWARE;
- }
- if (mHardwareTypeCheckBox.isChecked()) {
- value |= HARDWARE;
- }
- return value;
- }
-
protected CharSequence getShortcutTypeSummary(Context context) {
if (!mShortcutPreference.isSettingsEditable()) {
return context.getText(R.string.accessibility_shortcut_edit_dialog_title_hardware);
@@ -782,35 +693,6 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment
showQuickSettingsTooltipIfNeeded();
}
- /**
- * This method will be invoked when a button in the edit shortcut dialog is clicked.
- *
- * @param dialog The dialog that received the click
- * @param which The button that was clicked
- */
- protected void callOnAlertDialogCheckboxClicked(DialogInterface dialog, int which) {
- if (mComponentName == null) {
- return;
- }
-
- final int value = getShortcutTypeCheckBoxValue();
- saveNonEmptyUserShortcutType(value);
- AccessibilityUtil.optInAllValuesToSettings(getPrefContext(), value, mComponentName);
- AccessibilityUtil.optOutAllValuesFromSettings(getPrefContext(), ~value, mComponentName);
- final boolean shortcutAssigned = value != DEFAULT;
- mShortcutPreference.setChecked(shortcutAssigned);
- mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext()));
-
- if (mHardwareTypeCheckBox.isChecked()) {
- AccessibilityUtil.skipVolumeShortcutDialogTimeoutRestriction(getPrefContext());
- }
-
- // Show the quick setting tooltip if the shortcut assigned in the first time
- if (shortcutAssigned) {
- showQuickSettingsTooltipIfNeeded();
- }
- }
-
protected void updateShortcutPreferenceData() {
if (mComponentName == null) {
return;
@@ -861,13 +743,9 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment
@Override
public void onSettingsClicked(ShortcutPreference preference) {
- if (com.android.settings.accessibility.Flags.editShortcutsInFullScreen()) {
- EditShortcutsPreferenceFragment.showEditShortcutScreen(
- requireContext(), getMetricsCategory(), getShortcutTitle(),
- mComponentName, getIntent());
- } else {
- showDialog(DialogEnums.EDIT_SHORTCUT);
- }
+ EditShortcutsPreferenceFragment.showEditShortcutScreen(
+ requireContext(), getMetricsCategory(), getShortcutTitle(),
+ mComponentName, getIntent());
}
/**
@@ -904,24 +782,6 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment
}
}
- private void updateEditShortcutDialogIfNeeded() {
- if (mDialog == null || !mDialog.isShowing()) {
- return;
- }
- AccessibilityDialogUtils.updateShortcutInDialog(getContext(), mDialog);
- }
-
- @VisibleForTesting
- void saveNonEmptyUserShortcutType(int type) {
- if (type == DEFAULT) {
- return;
- }
-
- final PreferredShortcut shortcut = new PreferredShortcut(
- mComponentName.flattenToString(), type);
- PreferredShortcuts.saveUserShortcutType(getPrefContext(), shortcut);
- }
-
/**
* Shows the quick settings tooltip if the quick settings feature is assigned. The tooltip only
* shows once.
diff --git a/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java b/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java
index e339cb42505..a030a0a9e77 100644
--- a/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java
@@ -33,7 +33,6 @@ import android.app.settings.SettingsEnums;
import android.content.ComponentName;
import android.content.ContentResolver;
import android.content.Context;
-import android.content.DialogInterface;
import android.content.pm.PackageManager;
import android.icu.text.CaseMap;
import android.icu.text.MessageFormat;
@@ -48,7 +47,6 @@ import android.view.View;
import android.view.ViewGroup;
import android.view.accessibility.AccessibilityManager;
import android.view.accessibility.AccessibilityManager.TouchExplorationStateChangeListener;
-import android.widget.CheckBox;
import androidx.annotation.Nullable;
import androidx.annotation.StringRes;
@@ -62,7 +60,6 @@ import com.android.internal.annotations.VisibleForTesting;
import com.android.server.accessibility.Flags;
import com.android.settings.DialogCreatable;
import com.android.settings.R;
-import com.android.settings.accessibility.AccessibilityDialogUtils.DialogType;
import com.android.settings.accessibility.AccessibilityUtil.QuickSettingsTooltipType;
import com.android.settings.accessibility.shortcuts.EditShortcutsPreferenceFragment;
import com.android.settings.utils.LocaleUtils;
@@ -92,10 +89,6 @@ public class ToggleScreenMagnificationPreferenceFragment extends
// TODO(b/147021230): Move duplicated functions with android/internal/accessibility into util.
private TouchExplorationStateChangeListener mTouchExplorationStateChangeListener;
- private CheckBox mSoftwareTypeCheckBox;
- private CheckBox mHardwareTypeCheckBox;
- private CheckBox mTripleTapTypeCheckBox;
- @Nullable private CheckBox mTwoFingerTripleTapTypeCheckBox;
private DialogCreatable mDialogDelegate;
@Nullable
@@ -119,7 +112,6 @@ public class ToggleScreenMagnificationPreferenceFragment extends
.appendPath(String.valueOf(R.raw.a11y_magnification_banner))
.build();
mTouchExplorationStateChangeListener = isTouchExplorationEnabled -> {
- removeDialog(DialogEnums.EDIT_SHORTCUT);
mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext()));
};
@@ -184,15 +176,6 @@ public class ToggleScreenMagnificationPreferenceFragment extends
case DialogEnums.GESTURE_NAVIGATION_TUTORIAL:
return AccessibilityShortcutsTutorial
.showAccessibilityGestureTutorialDialog(getPrefContext());
- case DialogEnums.MAGNIFICATION_EDIT_SHORTCUT:
- final CharSequence dialogTitle = getShortcutTitle();
- final int dialogType = mInSetupWizard
- ? DialogType.EDIT_SHORTCUT_MAGNIFICATION_SUW
- : DialogType.EDIT_SHORTCUT_MAGNIFICATION;
- mDialog = AccessibilityDialogUtils.showEditShortcutDialog(getPrefContext(),
- dialogType, dialogTitle, this::callOnAlertDialogCheckboxClicked);
- setupMagnificationEditShortcutDialog(mDialog);
- return mDialog;
default:
return super.onCreateDialog(dialogId);
}
@@ -365,95 +348,6 @@ public class ToggleScreenMagnificationPreferenceFragment extends
mDialogDelegate = delegate;
}
- @Override
- protected int getShortcutTypeCheckBoxValue() {
- if (mSoftwareTypeCheckBox == null || mHardwareTypeCheckBox == null) {
- return NOT_SET;
- }
-
- int value = DEFAULT;
- if (mSoftwareTypeCheckBox.isChecked()) {
- value |= SOFTWARE;
- }
- if (mHardwareTypeCheckBox.isChecked()) {
- value |= HARDWARE;
- }
- if (mTripleTapTypeCheckBox.isChecked()) {
- value |= TRIPLETAP;
- }
- if (Flags.enableMagnificationMultipleFingerMultipleTapGesture()) {
- if (mTwoFingerTripleTapTypeCheckBox.isChecked()) {
- value |= TWOFINGER_DOUBLETAP;
- }
- }
- return value;
- }
-
- @VisibleForTesting
- void setupMagnificationEditShortcutDialog(Dialog dialog) {
- final View dialogSoftwareView = dialog.findViewById(R.id.software_shortcut);
- mSoftwareTypeCheckBox = dialogSoftwareView.findViewById(R.id.checkbox);
- setDialogTextAreaClickListener(dialogSoftwareView, mSoftwareTypeCheckBox);
-
- final View dialogHardwareView = dialog.findViewById(R.id.hardware_shortcut);
- mHardwareTypeCheckBox = dialogHardwareView.findViewById(R.id.checkbox);
- setDialogTextAreaClickListener(dialogHardwareView, mHardwareTypeCheckBox);
-
- if (Flags.enableMagnificationMultipleFingerMultipleTapGesture()) {
- final View dialogTwoFignerTripleTapView =
- dialog.findViewById(R.id.two_finger_triple_tap_shortcut);
- mTwoFingerTripleTapTypeCheckBox = dialogTwoFignerTripleTapView.findViewById(
- R.id.checkbox);
- setDialogTextAreaClickListener(
- dialogTwoFignerTripleTapView, mTwoFingerTripleTapTypeCheckBox);
- }
-
- final View dialogTripleTapView = dialog.findViewById(R.id.triple_tap_shortcut);
- mTripleTapTypeCheckBox = dialogTripleTapView.findViewById(R.id.checkbox);
- setDialogTextAreaClickListener(dialogTripleTapView, mTripleTapTypeCheckBox);
-
- final View advancedView = dialog.findViewById(R.id.advanced_shortcut);
- if (mTripleTapTypeCheckBox.isChecked()) {
- advancedView.setVisibility(View.GONE);
- dialogTripleTapView.setVisibility(View.VISIBLE);
- }
-
- updateMagnificationEditShortcutDialogCheckBox();
- }
-
- private void setDialogTextAreaClickListener(View dialogView, CheckBox checkBox) {
- final View dialogTextArea = dialogView.findViewById(R.id.container);
- dialogTextArea.setOnClickListener(v -> checkBox.toggle());
- }
-
- private void updateMagnificationEditShortcutDialogCheckBox() {
- // If it is during onConfigChanged process then restore the value, or get the saved value
- // when shortcutPreference is checked.
- int value = restoreOnConfigChangedValue();
- if (value == NOT_SET) {
- final int lastNonEmptyUserShortcutType = getUserPreferredShortcutTypes();
- value = mShortcutPreference.isChecked() ? lastNonEmptyUserShortcutType
- : DEFAULT;
- }
-
- mSoftwareTypeCheckBox.setChecked(
- hasShortcutType(value, SOFTWARE));
- mHardwareTypeCheckBox.setChecked(
- hasShortcutType(value, HARDWARE));
- mTripleTapTypeCheckBox.setChecked(
- hasShortcutType(value, TRIPLETAP));
- if (Flags.enableMagnificationMultipleFingerMultipleTapGesture()) {
- mTwoFingerTripleTapTypeCheckBox.setChecked(
- hasShortcutType(value, TWOFINGER_DOUBLETAP));
- }
- }
-
- private int restoreOnConfigChangedValue() {
- final int savedValue = mSavedCheckBoxValue;
- mSavedCheckBoxValue = NOT_SET;
- return savedValue;
- }
-
private boolean hasShortcutType(int value, @UserShortcutType int type) {
return (value & type) == type;
}
@@ -572,22 +466,6 @@ public class ToggleScreenMagnificationPreferenceFragment extends
null, LocaleUtils.getConcatenatedString(list));
}
- @Override
- protected void callOnAlertDialogCheckboxClicked(DialogInterface dialog, int which) {
- final int value = getShortcutTypeCheckBoxValue();
-
- saveNonEmptyUserShortcutType(value);
- optInAllMagnificationValuesToSettings(getPrefContext(), value);
- optOutAllMagnificationValuesFromSettings(getPrefContext(), ~value);
- mShortcutPreference.setChecked(value != DEFAULT);
- mShortcutPreference.setSummary(
- getShortcutTypeSummary(getPrefContext()));
-
- if (mHardwareTypeCheckBox.isChecked()) {
- AccessibilityUtil.skipVolumeShortcutDialogTimeoutRestriction(getPrefContext());
- }
- }
-
@Override
public int getHelpResource() {
return R.string.help_url_magnification;
@@ -613,8 +491,6 @@ public class ToggleScreenMagnificationPreferenceFragment extends
return SettingsEnums.DIALOG_TOGGLE_SCREEN_MAGNIFICATION_GESTURE_NAVIGATION;
case DialogEnums.ACCESSIBILITY_BUTTON_TUTORIAL:
return SettingsEnums.DIALOG_TOGGLE_SCREEN_MAGNIFICATION_ACCESSIBILITY_BUTTON;
- case DialogEnums.MAGNIFICATION_EDIT_SHORTCUT:
- return SettingsEnums.DIALOG_MAGNIFICATION_EDIT_SHORTCUT;
default:
return super.getDialogMetricsCategory(dialogId);
}
@@ -664,16 +540,12 @@ public class ToggleScreenMagnificationPreferenceFragment extends
@Override
public void onSettingsClicked(ShortcutPreference preference) {
- if (com.android.settings.accessibility.Flags.editShortcutsInFullScreen()) {
- EditShortcutsPreferenceFragment.showEditShortcutScreen(
- requireContext(),
- getMetricsCategory(),
- getShortcutTitle(),
- MAGNIFICATION_COMPONENT_NAME,
- getIntent());
- } else {
- showDialog(DialogEnums.MAGNIFICATION_EDIT_SHORTCUT);
- }
+ EditShortcutsPreferenceFragment.showEditShortcutScreen(
+ requireContext(),
+ getMetricsCategory(),
+ getShortcutTitle(),
+ MAGNIFICATION_COMPONENT_NAME,
+ getIntent());
}
@Override
@@ -712,17 +584,6 @@ public class ToggleScreenMagnificationPreferenceFragment extends
mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext()));
}
- @VisibleForTesting
- void saveNonEmptyUserShortcutType(int type) {
- if (type == DEFAULT) {
- return;
- }
-
- final PreferredShortcut shortcut = new PreferredShortcut(
- MAGNIFICATION_CONTROLLER_NAME, type);
- PreferredShortcuts.saveUserShortcutType(getPrefContext(), shortcut);
- }
-
@VisibleForTesting
static void optInAllMagnificationValuesToSettings(Context context, int shortcutTypes) {
if ((shortcutTypes & SOFTWARE) == SOFTWARE) {
diff --git a/src/com/android/settings/accessibility/shortcuts/EditShortcutsPreferenceFragment.java b/src/com/android/settings/accessibility/shortcuts/EditShortcutsPreferenceFragment.java
index 9e1290ec1f0..bdf785766c2 100644
--- a/src/com/android/settings/accessibility/shortcuts/EditShortcutsPreferenceFragment.java
+++ b/src/com/android/settings/accessibility/shortcuts/EditShortcutsPreferenceFragment.java
@@ -60,7 +60,6 @@ import com.android.internal.accessibility.dialog.AccessibilityTargetHelper;
import com.android.settings.R;
import com.android.settings.SetupWizardUtils;
import com.android.settings.accessibility.AccessibilitySetupWizardUtils;
-import com.android.settings.accessibility.Flags;
import com.android.settings.accessibility.PreferredShortcuts;
import com.android.settings.core.SubSettingLauncher;
import com.android.settings.dashboard.DashboardFragment;
@@ -199,8 +198,7 @@ public class EditShortcutsPreferenceFragment extends DashboardFragment {
Activity activity = getActivity();
if (!activity.getIntent().getAction().equals(
- Settings.ACTION_ACCESSIBILITY_SHORTCUT_SETTINGS)
- || !Flags.editShortcutsInFullScreen()) {
+ Settings.ACTION_ACCESSIBILITY_SHORTCUT_SETTINGS)) {
return;
}
diff --git a/tests/robotests/src/com/android/settings/accessibility/AccessibilityDialogUtilsTest.java b/tests/robotests/src/com/android/settings/accessibility/AccessibilityDialogUtilsTest.java
index ad53ad60e05..547d0b65427 100644
--- a/tests/robotests/src/com/android/settings/accessibility/AccessibilityDialogUtilsTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/AccessibilityDialogUtilsTest.java
@@ -21,7 +21,6 @@ import static com.google.common.truth.Truth.assertThat;
import android.app.Dialog;
import android.content.Context;
-import androidx.appcompat.app.AlertDialog;
import androidx.test.core.app.ApplicationProvider;
import org.junit.Before;
@@ -40,24 +39,6 @@ public class AccessibilityDialogUtilsTest {
mContext.setTheme(androidx.appcompat.R.style.Theme_AppCompat);
}
- @Test
- public void updateShortcutInDialog_correctDialogType_success() {
- final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
- mContext, AccessibilityDialogUtils.DialogType.EDIT_SHORTCUT_GENERIC, "Title",
- null);
-
- assertThat(
- AccessibilityDialogUtils.updateShortcutInDialog(mContext, dialog)).isTrue();
- }
-
- @Test
- public void updateShortcutInDialog_useNotSupportedDialog_fail() {
- final AlertDialog dialog = new AlertDialog.Builder(mContext).setTitle("Title").show();
-
- assertThat(AccessibilityDialogUtils.updateShortcutInDialog(mContext,
- dialog)).isFalse();
- }
-
@Test
public void showDialog_createCustomDialog_isShowing() {
final Dialog dialog = AccessibilityDialogUtils.createCustomDialog(mContext,
diff --git a/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java b/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java
index b74f38ee554..9d18c44e392 100644
--- a/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java
@@ -16,12 +16,10 @@
package com.android.settings.accessibility;
-import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.DEFAULT;
import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.HARDWARE;
import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.QUICK_SETTINGS;
import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.SOFTWARE;
import static com.android.settings.accessibility.AccessibilityShortcutPreferenceFragment.KEY_SAVED_QS_TOOLTIP_RESHOW;
-import static com.android.settings.accessibility.AccessibilityShortcutPreferenceFragment.KEY_SAVED_USER_SHORTCUT_TYPE;
import static com.android.settings.accessibility.AccessibilityUtil.QuickSettingsTooltipType;
import static com.google.common.truth.Truth.assertThat;
@@ -37,7 +35,6 @@ import android.app.Activity;
import android.app.Application;
import android.content.ComponentName;
import android.content.Context;
-import android.content.DialogInterface;
import android.content.Intent;
import android.icu.text.CaseMap;
import android.os.Bundle;
@@ -52,7 +49,6 @@ import android.view.accessibility.Flags;
import android.widget.PopupWindow;
import androidx.annotation.Nullable;
-import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.FragmentActivity;
import androidx.preference.PreferenceManager;
import androidx.preference.PreferenceScreen;
@@ -159,71 +155,6 @@ public class AccessibilityShortcutPreferenceFragmentTest {
assertThat(expectedType).isEqualTo(HARDWARE);
}
- @Test
- public void setupEditShortcutDialog_shortcutPreferenceOff_checkboxIsEmptyValue() {
- mContext.setTheme(androidx.appcompat.R.style.Theme_AppCompat);
- final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
- mContext, AccessibilityDialogUtils.DialogType.EDIT_SHORTCUT_GENERIC,
- PLACEHOLDER_DIALOG_TITLE,
- this::callEmptyOnClicked);
- final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
- null);
- mFragment.mShortcutPreference = shortcutPreference;
-
- mFragment.mShortcutPreference.setChecked(false);
- mFragment.setupEditShortcutDialog(dialog);
-
- final int checkboxValue = mFragment.getShortcutTypeCheckBoxValue();
- assertThat(checkboxValue).isEqualTo(DEFAULT);
- }
-
- @Test
- public void setupEditShortcutDialog_shortcutPreferenceOn_checkboxIsSavedValue() {
- mContext.setTheme(androidx.appcompat.R.style.Theme_AppCompat);
- final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
- mContext, AccessibilityDialogUtils.DialogType.EDIT_SHORTCUT_GENERIC,
- PLACEHOLDER_DIALOG_TITLE,
- this::callEmptyOnClicked);
- final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
- null);
- final PreferredShortcut hardwareShortcut = new PreferredShortcut(
- PLACEHOLDER_COMPONENT_NAME.flattenToString(), HARDWARE);
- mFragment.mShortcutPreference = shortcutPreference;
-
- PreferredShortcuts.saveUserShortcutType(mContext, hardwareShortcut);
- mFragment.mShortcutPreference.setChecked(true);
- mFragment.setupEditShortcutDialog(dialog);
-
- final int checkboxValue = mFragment.getShortcutTypeCheckBoxValue();
- assertThat(checkboxValue).isEqualTo(HARDWARE);
- }
-
- @Test
- @Config(shadows = ShadowFragment.class)
- public void restoreValueFromSavedInstanceState_assignShortcutTypeToVariable() {
- mContext.setTheme(androidx.appcompat.R.style.Theme_AppCompat);
- final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
- mContext, AccessibilityDialogUtils.DialogType.EDIT_SHORTCUT_GENERIC,
- PLACEHOLDER_DIALOG_TITLE,
- this::callEmptyOnClicked);
- final Bundle savedInstanceState = new Bundle();
- final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
- null);
- mFragment.mShortcutPreference = shortcutPreference;
-
- savedInstanceState.putInt(KEY_SAVED_USER_SHORTCUT_TYPE,
- SOFTWARE | HARDWARE);
- mFragment.onAttach(mContext);
- mFragment.onCreate(savedInstanceState);
- mFragment.setupEditShortcutDialog(dialog);
- final int value = mFragment.getShortcutTypeCheckBoxValue();
- mFragment.saveNonEmptyUserShortcutType(value);
-
- final int expectedType = PreferredShortcuts.retrieveUserShortcutType(mContext,
- mFragment.getComponentName().flattenToString());
- assertThat(expectedType).isEqualTo(SOFTWARE | HARDWARE);
- }
-
@Test
@DisableFlags(Flags.FLAG_A11Y_QS_SHORTCUT)
@Config(shadows = ShadowFragment.class)
@@ -268,8 +199,7 @@ public class AccessibilityShortcutPreferenceFragmentTest {
}
@Test
- @EnableFlags(com.android.settings.accessibility.Flags.FLAG_EDIT_SHORTCUTS_IN_FULL_SCREEN)
- public void onSettingsClicked_editShortcutsFullScreenFlagOn_showFullScreenEditShortcutScreen() {
+ public void onSettingsClicked_showFullScreenEditShortcutScreen() {
Activity activity = Robolectric.setupActivity(FragmentActivity.class);
when(mFragment.getContext()).thenReturn(activity);
Context context = mFragment.getContext();
@@ -311,8 +241,6 @@ public class AccessibilityShortcutPreferenceFragmentTest {
assertThat(summary).isEqualTo(expected);
}
- private void callEmptyOnClicked(DialogInterface dialog, int which) {}
-
private void putStringIntoSettings(String key, String componentName) {
Settings.Secure.putString(mContext.getContentResolver(), key, componentName);
}
diff --git a/tests/robotests/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragmentTest.java b/tests/robotests/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragmentTest.java
index 552236124bc..008f542b500 100644
--- a/tests/robotests/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragmentTest.java
@@ -299,21 +299,6 @@ public class ToggleAccessibilityServicePreferenceFragmentTest {
}
@Test
- @DisableFlags(
- com.android.settings.accessibility.Flags.FLAG_EDIT_SHORTCUTS_IN_FULL_SCREEN)
- public void clickShortcutSettingsPreference_warningNotRequired_dontShowWarning_showDialog()
- throws Throwable {
- setupServiceWarningRequired(false);
- mFragment.mShortcutPreference = new ShortcutPreference(mContext, /* attrs= */null);
-
- mFragment.onSettingsClicked(mFragment.mShortcutPreference);
-
- assertThat(mFragment.mLastShownDialogId).isEqualTo(
- AccessibilityDialogUtils.DialogEnums.EDIT_SHORTCUT);
- }
-
- @Test
- @EnableFlags(com.android.settings.accessibility.Flags.FLAG_EDIT_SHORTCUTS_IN_FULL_SCREEN)
public void clickShortcutSettingsPreference_warningNotRequired_dontShowWarning_launchActivity()
throws Throwable {
setupServiceWarningRequired(false);
diff --git a/tests/robotests/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragmentTest.java b/tests/robotests/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragmentTest.java
index 04ff4fec2eb..71855e023d0 100644
--- a/tests/robotests/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragmentTest.java
@@ -16,11 +16,9 @@
package com.android.settings.accessibility;
-import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.DEFAULT;
import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.HARDWARE;
import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.QUICK_SETTINGS;
import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.SOFTWARE;
-import static com.android.settings.accessibility.ToggleFeaturePreferenceFragment.KEY_SAVED_USER_SHORTCUT_TYPE;
import static com.google.common.truth.Truth.assertThat;
@@ -36,7 +34,6 @@ import static org.mockito.Mockito.when;
import android.content.ComponentName;
import android.content.ContentResolver;
import android.content.Context;
-import android.content.DialogInterface;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.icu.text.CaseMap;
@@ -48,10 +45,8 @@ import android.provider.Settings;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import android.widget.CheckBox;
import android.widget.PopupWindow;
-import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.FragmentActivity;
import androidx.preference.Preference;
import androidx.preference.PreferenceManager;
@@ -59,7 +54,6 @@ import androidx.preference.PreferenceScreen;
import androidx.test.core.app.ApplicationProvider;
import com.android.settings.R;
-import com.android.settings.accessibility.AccessibilityDialogUtils.DialogType;
import com.android.settings.accessibility.AccessibilityUtil.QuickSettingsTooltipType;
import com.android.settings.flags.Flags;
import com.android.settings.testutils.shadow.ShadowFragment;
@@ -79,7 +73,6 @@ import org.robolectric.RobolectricTestRunner;
import org.robolectric.annotation.Config;
import org.robolectric.shadow.api.Shadow;
import org.robolectric.shadows.ShadowApplication;
-import org.robolectric.shadows.ShadowLooper;
import java.util.Locale;
@@ -239,89 +232,6 @@ public class ToggleFeaturePreferenceFragmentTest {
assertThat(expectedType).isEqualTo(HARDWARE);
}
- @Test
- public void dialogCheckboxClicked_hardwareType_skipTimeoutRestriction() {
- final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
- null);
- mFragment.mComponentName = PLACEHOLDER_COMPONENT_NAME;
- mFragment.mShortcutPreference = shortcutPreference;
- final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
- mContext, DialogType.EDIT_SHORTCUT_GENERIC, PLACEHOLDER_DIALOG_TITLE,
- mFragment::callOnAlertDialogCheckboxClicked);
- mFragment.setupEditShortcutDialog(dialog);
-
- final View dialogHardwareView = dialog.findViewById(R.id.hardware_shortcut);
- final CheckBox hardwareTypeCheckBox = dialogHardwareView.findViewById(R.id.checkbox);
- hardwareTypeCheckBox.setChecked(true);
- dialog.getButton(DialogInterface.BUTTON_POSITIVE).callOnClick();
- ShadowLooper.idleMainLooper();
- final boolean skipTimeoutRestriction = Settings.Secure.getInt(mContext.getContentResolver(),
- Settings.Secure.SKIP_ACCESSIBILITY_SHORTCUT_DIALOG_TIMEOUT_RESTRICTION, 0) != 0;
-
- assertThat(skipTimeoutRestriction).isTrue();
- }
-
- @Test
- public void setupEditShortcutDialog_shortcutPreferenceOff_checkboxIsEmptyValue() {
- final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
- mContext, DialogType.EDIT_SHORTCUT_GENERIC, PLACEHOLDER_DIALOG_TITLE,
- this::callEmptyOnClicked);
- final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
- null);
- mFragment.mComponentName = PLACEHOLDER_COMPONENT_NAME;
- mFragment.mShortcutPreference = shortcutPreference;
-
- mFragment.mShortcutPreference.setChecked(false);
- mFragment.setupEditShortcutDialog(dialog);
-
- final int checkboxValue = mFragment.getShortcutTypeCheckBoxValue();
- assertThat(checkboxValue).isEqualTo(DEFAULT);
- }
-
- @Test
- public void setupEditShortcutDialog_shortcutPreferenceOn_checkboxIsSavedValue() {
- final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
- mContext, DialogType.EDIT_SHORTCUT_GENERIC, PLACEHOLDER_DIALOG_TITLE,
- this::callEmptyOnClicked);
- final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
- null);
- final PreferredShortcut hardwareShortcut = new PreferredShortcut(
- PLACEHOLDER_COMPONENT_NAME.flattenToString(), HARDWARE);
- mFragment.mComponentName = PLACEHOLDER_COMPONENT_NAME;
- mFragment.mShortcutPreference = shortcutPreference;
-
- PreferredShortcuts.saveUserShortcutType(mContext, hardwareShortcut);
- mFragment.mShortcutPreference.setChecked(true);
- mFragment.setupEditShortcutDialog(dialog);
-
- final int checkboxValue = mFragment.getShortcutTypeCheckBoxValue();
- assertThat(checkboxValue).isEqualTo(HARDWARE);
- }
-
- @Test
- @Config(shadows = ShadowFragment.class)
- public void restoreValueFromSavedInstanceState_assignShortcutTypeToVariable() {
- final AlertDialog dialog = AccessibilityDialogUtils.showEditShortcutDialog(
- mContext, DialogType.EDIT_SHORTCUT_GENERIC, PLACEHOLDER_DIALOG_TITLE,
- this::callEmptyOnClicked);
- final Bundle savedInstanceState = new Bundle();
- final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
- null);
- mFragment.mComponentName = PLACEHOLDER_COMPONENT_NAME;
- mFragment.mShortcutPreference = shortcutPreference;
-
- savedInstanceState.putInt(KEY_SAVED_USER_SHORTCUT_TYPE,
- SOFTWARE | HARDWARE);
- mFragment.onCreate(savedInstanceState);
- mFragment.setupEditShortcutDialog(dialog);
- final int value = mFragment.getShortcutTypeCheckBoxValue();
- mFragment.saveNonEmptyUserShortcutType(value);
-
- final int expectedType = PreferredShortcuts.retrieveUserShortcutType(mContext,
- mFragment.mComponentName.flattenToString());
- assertThat(expectedType).isEqualTo(SOFTWARE | HARDWARE);
- }
-
@Test
@Config(shadows = ShadowFragment.class)
public void onPreferenceToggledOnDisabledService_notShowTooltipView() {
@@ -505,9 +415,6 @@ public class ToggleFeaturePreferenceFragmentTest {
PreferredShortcut shortcut) {
PreferredShortcuts.saveUserShortcutType(context, shortcut);
}
-
- private void callEmptyOnClicked(DialogInterface dialog, int which) {}
-
private static PopupWindow getLatestPopupWindow() {
final ShadowApplication shadowApplication =
Shadow.extract(ApplicationProvider.getApplicationContext());
diff --git a/tests/robotests/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragmentTest.java b/tests/robotests/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragmentTest.java
index ea6504a3d55..22bb2669bb5 100644
--- a/tests/robotests/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragmentTest.java
@@ -16,7 +16,6 @@
package com.android.settings.accessibility;
-import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.DEFAULT;
import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.HARDWARE;
import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.QUICK_SETTINGS;
import static com.android.internal.accessibility.common.ShortcutConstants.UserShortcutType.SOFTWARE;
@@ -25,7 +24,6 @@ import static com.android.internal.accessibility.common.ShortcutConstants.UserSh
import static com.android.settings.accessibility.AccessibilityUtil.State.OFF;
import static com.android.settings.accessibility.AccessibilityUtil.State.ON;
import static com.android.settings.accessibility.MagnificationCapabilities.MagnificationMode;
-import static com.android.settings.accessibility.ToggleFeaturePreferenceFragment.KEY_SAVED_USER_SHORTCUT_TYPE;
import static com.google.common.truth.Truth.assertThat;
@@ -42,7 +40,6 @@ import static org.mockito.Mockito.when;
import android.app.settings.SettingsEnums;
import android.content.ComponentName;
import android.content.Context;
-import android.content.DialogInterface;
import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.database.ContentObserver;
@@ -57,7 +54,6 @@ import android.provider.DeviceConfig;
import android.provider.Settings;
import android.view.accessibility.AccessibilityManager;
-import androidx.appcompat.app.AlertDialog;
import androidx.preference.Preference;
import androidx.preference.TwoStatePreference;
import androidx.test.core.app.ApplicationProvider;
@@ -66,7 +62,6 @@ import com.android.server.accessibility.Flags;
import com.android.settings.DialogCreatable;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
-import com.android.settings.accessibility.AccessibilityDialogUtils.DialogType;
import com.android.settings.testutils.AccessibilityTestUtils;
import com.android.settings.testutils.shadow.ShadowDeviceConfig;
import com.android.settings.testutils.shadow.ShadowStorageManager;
@@ -735,105 +730,6 @@ public class ToggleScreenMagnificationPreferenceFragmentTest {
assertThat(expectedType).isEqualTo(TWOFINGER_DOUBLETAP);
}
- @Test
- public void setupMagnificationEditShortcutDialog_shortcutPreferenceOff_checkboxIsEmptyValue() {
- ToggleScreenMagnificationPreferenceFragment fragment =
- mFragController.create(R.id.main_content, /* bundle= */
- null).start().resume().get();
- fragment.mShortcutPreference = new ShortcutPreference(mContext, /* attrs= */ null);
-
- fragment.mShortcutPreference.setChecked(false);
- fragment.setupMagnificationEditShortcutDialog(
- createEditShortcutDialog(fragment.getActivity()));
-
- final int checkboxValue = fragment.getShortcutTypeCheckBoxValue();
- assertThat(checkboxValue).isEqualTo(DEFAULT);
- }
-
- @Test
- public void setupMagnificationEditShortcutDialog_shortcutPreferenceOn_checkboxIsSavedValue() {
- ToggleScreenMagnificationPreferenceFragment fragment =
- mFragController.create(R.id.main_content, /* bundle= */
- null).start().resume().get();
- final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
- null);
- final PreferredShortcut tripletapShortcut = new PreferredShortcut(
- MAGNIFICATION_CONTROLLER_NAME, TRIPLETAP);
- fragment.mShortcutPreference = shortcutPreference;
-
- PreferredShortcuts.saveUserShortcutType(mContext, tripletapShortcut);
- fragment.mShortcutPreference.setChecked(true);
- fragment.setupMagnificationEditShortcutDialog(
- createEditShortcutDialog(fragment.getActivity()));
-
- final int checkboxValue = fragment.getShortcutTypeCheckBoxValue();
- assertThat(checkboxValue).isEqualTo(TRIPLETAP);
- }
-
- @Test
- @EnableFlags(Flags.FLAG_ENABLE_MAGNIFICATION_MULTIPLE_FINGER_MULTIPLE_TAP_GESTURE)
- public void setupMagnificationEditShortcutDialog_twoFingerTripleTapOn_checkboxIsSavedValue() {
- ToggleScreenMagnificationPreferenceFragment fragment =
- mFragController.create(R.id.main_content, /* bundle= */
- null).start().resume().get();
- final ShortcutPreference shortcutPreference = new ShortcutPreference(mContext, /* attrs= */
- null);
- final PreferredShortcut twoFingerTripleTapShortcut = new PreferredShortcut(
- MAGNIFICATION_CONTROLLER_NAME, TWOFINGER_DOUBLETAP);
- fragment.mShortcutPreference = shortcutPreference;
-
- PreferredShortcuts.saveUserShortcutType(mContext, twoFingerTripleTapShortcut);
- fragment.mShortcutPreference.setChecked(true);
- fragment.setupMagnificationEditShortcutDialog(
- createEditShortcutDialog(fragment.getActivity()));
-
- final int checkboxValue = fragment.getShortcutTypeCheckBoxValue();
- assertThat(checkboxValue).isEqualTo(TWOFINGER_DOUBLETAP);
- }
-
- @Test
- public void restoreValueFromSavedInstanceState_assignToVariable() {
- final Bundle fragmentState = createFragmentSavedInstanceState(
- HARDWARE | TRIPLETAP);
- ToggleScreenMagnificationPreferenceFragment fragment = mFragController.get();
- // Had to use reflection to pass the savedInstanceState when launching the fragment
- ReflectionHelpers.setField(fragment, "mSavedFragmentState", fragmentState);
-
- FragmentController.of(fragment, SettingsActivity.class).create(
- R.id.main_content, /* bundle= */ null).start().resume().get();
- fragment.setupMagnificationEditShortcutDialog(
- createEditShortcutDialog(fragment.getActivity()));
- final int value = fragment.getShortcutTypeCheckBoxValue();
- fragment.saveNonEmptyUserShortcutType(value);
-
- final int expectedType = PreferredShortcuts.retrieveUserShortcutType(mContext,
- MAGNIFICATION_CONTROLLER_NAME);
- assertThat(value).isEqualTo(6);
- assertThat(expectedType).isEqualTo(HARDWARE | TRIPLETAP);
- }
-
- @Test
- @EnableFlags(Flags.FLAG_ENABLE_MAGNIFICATION_MULTIPLE_FINGER_MULTIPLE_TAP_GESTURE)
- public void restoreValueFromSavedInstanceState_twoFingerTripleTap_assignToVariable() {
- final Bundle fragmentState =
- createFragmentSavedInstanceState(TWOFINGER_DOUBLETAP);
- ToggleScreenMagnificationPreferenceFragment fragment = mFragController.get();
- // Had to use reflection to pass the savedInstanceState when launching the fragment
- ReflectionHelpers.setField(fragment, "mSavedFragmentState", fragmentState);
-
- FragmentController.of(fragment, SettingsActivity.class).create(
- R.id.main_content, /* bundle= */ null).start().resume().get();
- fragment.setupMagnificationEditShortcutDialog(
- createEditShortcutDialog(fragment.getActivity()));
- final int value = fragment.getShortcutTypeCheckBoxValue();
- fragment.saveNonEmptyUserShortcutType(value);
-
- final int expectedType = PreferredShortcuts.retrieveUserShortcutType(mContext,
- MAGNIFICATION_CONTROLLER_NAME);
- assertThat(value).isEqualTo(TWOFINGER_DOUBLETAP);
- assertThat(expectedType).isEqualTo(TWOFINGER_DOUBLETAP);
- }
-
@Test
public void onCreateView_magnificationAreaNotSupported_settingsPreferenceIsNull() {
setWindowMagnificationSupported(
@@ -1167,9 +1063,6 @@ public class ToggleScreenMagnificationPreferenceFragmentTest {
== ON;
}
- private void callEmptyOnClicked(DialogInterface dialog, int which) {
- }
-
private void setWindowMagnificationSupported(boolean magnificationAreaSupported,
boolean windowMagnificationSupported) {
when(mSpyResources.getBoolean(
@@ -1179,24 +1072,6 @@ public class ToggleScreenMagnificationPreferenceFragmentTest {
windowMagnificationSupported);
}
- private AlertDialog createEditShortcutDialog(Context context) {
- context.setTheme(androidx.appcompat.R.style.Theme_AppCompat);
- return AccessibilityDialogUtils.showEditShortcutDialog(
- context,
- DialogType.EDIT_SHORTCUT_MAGNIFICATION, PLACEHOLDER_DIALOG_TITLE,
- this::callEmptyOnClicked);
- }
-
- private Bundle createFragmentSavedInstanceState(int userShortcutType) {
- final Bundle savedInstanceState = new Bundle();
- savedInstanceState.putInt(KEY_SAVED_USER_SHORTCUT_TYPE, userShortcutType);
- final Bundle fragmentState = new Bundle();
- fragmentState.putBundle(
- /* FragmentStateManager.SAVED_INSTANCE_STATE_KEY */ "savedInstanceState",
- savedInstanceState);
- return fragmentState;
- }
-
/**
* A test fragment that provides a way to change the context
*/
diff --git a/tests/robotests/src/com/android/settings/accessibility/shortcuts/ShortcutOptionPreferenceTest.java b/tests/robotests/src/com/android/settings/accessibility/shortcuts/ShortcutOptionPreferenceTest.java
index 954c72d5ce6..17d416fd4c5 100644
--- a/tests/robotests/src/com/android/settings/accessibility/shortcuts/ShortcutOptionPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/accessibility/shortcuts/ShortcutOptionPreferenceTest.java
@@ -62,7 +62,7 @@ public class ShortcutOptionPreferenceTest {
@Test
public void bindViewHolder_imageResIdSet_shouldShowImageView() {
mShortcutOptionPreference.setIntroImageResId(
- R.drawable.accessibility_shortcut_type_hardware);
+ R.drawable.accessibility_shortcut_type_volume_keys);
mShortcutOptionPreference.onBindViewHolder(mViewHolder);