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);