[Flag cleanup] edit_shortcuts_in_full_screen is always on now

- Cleaned up the code that won't be executed when the flag is on
- Remove unused resources

Bug: 300302098
Test: Manually verify the user can change the shortcut type, and the
changes are saved
Test: atest com.android.settings.accessibility
Flag: EXEMPT removing com.android.settings.accessibility.edit_shortcuts_in_full_screen

Change-Id: I1e32b724ca3da909feda55e20fb1d51dc4680c09
This commit is contained in:
Chun-Ku Lin
2024-07-25 02:52:33 +00:00
parent e6198dea95
commit 919019ca56
69 changed files with 31 additions and 5444 deletions

View File

@@ -19,9 +19,6 @@
<item name="a11y_timeout_banner" type="raw" product="default">@raw/accessibility_timeout_banner</item>
<item name="a11y_timeout_banner" type="raw" product="tablet">@raw/accessibility_timeout_banner_tablet</item>
<item name="a11y_shortcut_type_triple_tap" type="raw" product="default">@raw/accessibility_shortcut_type_triple_tap</item>
<item name="a11y_shortcut_type_triple_tap" type="raw" product="tablet">@raw/accessibility_shortcut_type_triple_tap_tablet</item>
<item name="a11y_color_inversion_banner" type="raw" product="default">@raw/accessibility_color_inversion_banner</item>
<item name="a11y_color_inversion_banner" type="raw" product="tablet">@raw/accessibility_color_inversion_banner_tablet</item>

View File

@@ -14,45 +14,9 @@
limitations under the License.
-->
<resources>
<drawable name="a11y_button_preview_large_floating_menu" product="default">@drawable/accessibility_button_preview_large_floating_menu</drawable>
<drawable name="a11y_button_preview_large_floating_menu" product="tablet">@drawable/accessibility_button_preview_large_floating_menu_tablet</drawable>
<drawable name="a11y_button_preview_small_floating_menu" product="default">@drawable/accessibility_button_preview_small_floating_menu</drawable>
<drawable name="a11y_button_preview_small_floating_menu" product="tablet">@drawable/accessibility_button_preview_small_floating_menu_tablet</drawable>
<drawable name="a11y_button_navigation" product="default">@drawable/accessibility_button_navigation</drawable>
<drawable name="a11y_button_navigation" product="tablet">@drawable/accessibility_button_navigation_tablet</drawable>
<drawable name="a11y_captioning_banner" product="default">@drawable/accessibility_captioning_banner</drawable>
<drawable name="a11y_captioning_banner" product="tablet">@drawable/accessibility_captioning_banner_tablet</drawable>
<drawable name="a11y_shortcut_type_hardware" product="default">@drawable/accessibility_shortcut_type_hardware</drawable>
<drawable name="a11y_shortcut_type_hardware" product="tablet">@drawable/accessibility_shortcut_type_hardware_tablet</drawable>
<drawable name="a11y_shortcut_type_software" product="default">@drawable/accessibility_shortcut_type_software</drawable>
<drawable name="a11y_shortcut_type_software" product="tablet">@drawable/accessibility_shortcut_type_software_tablet</drawable>
<drawable name="a11y_shortcut_type_software_floating" product="default">@drawable/accessibility_shortcut_type_software_floating</drawable>
<drawable name="a11y_shortcut_type_software_floating" product="tablet">@drawable/accessibility_shortcut_type_software_floating_tablet</drawable>
<drawable name="a11y_shortcut_type_software_gesture" product="default">@drawable/accessibility_shortcut_type_software_gesture</drawable>
<drawable name="a11y_shortcut_type_software_gesture" product="tablet">@drawable/accessibility_shortcut_type_software_gesture_tablet</drawable>
<drawable name="a11y_shortcut_type_software_gesture_talkback" product="default">@drawable/accessibility_shortcut_type_software_gesture_talkback</drawable>
<drawable name="a11y_shortcut_type_software_gesture_talkback" product="tablet">@drawable/accessibility_shortcut_type_software_gesture_talkback_tablet</drawable>
<drawable name="a11y_gesture_navigation_two_finger_preview" product="default">@drawable/accessibility_gesture_navigation_two_finger_preview</drawable>
<drawable name="a11y_gesture_navigation_two_finger_preview" product="tablet">@drawable/accessibility_gesture_navigation_two_finger_preview_tablet</drawable>
<drawable name="a11y_gesture_navigation_three_finger_preview" product="default">@drawable/accessibility_gesture_navigation_three_finger_preview</drawable>
<drawable name="a11y_gesture_navigation_three_finger_preview" product="tablet">@drawable/accessibility_gesture_navigation_three_finger_preview_tablet</drawable>
<drawable name="a11y_button_preview_two_finger" product="default">@drawable/accessibility_button_preview_two_finger</drawable>
<drawable name="a11y_button_preview_two_finger" product="tablet">@drawable/accessibility_button_preview_two_finger_tablet</drawable>
<drawable name="a11y_button_preview_three_finger" product="default">@drawable/accessibility_button_preview_three_finger</drawable>
<drawable name="a11y_button_preview_three_finger" product="tablet">@drawable/accessibility_button_preview_three_finger_tablet</drawable>
<drawable name="a11y_magnification_mode_fullscreen" product="default">@drawable/accessibility_magnification_mode_fullscreen</drawable>
<drawable name="a11y_magnification_mode_fullscreen" product="tablet">@drawable/accessibility_magnification_mode_fullscreen_tablet</drawable>

View File

@@ -1,43 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:fillColor="#FF000000"
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
<path
android:pathData="M325.2,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7v-42.2h239V231.9z"
android:fillColor="#3D4043"/>
<path
android:pathData="M269.7,205.2c1.5,0 2.7,1.2 2.7,2.7s-1.2,2.7 -2.7,2.7c-1.5,0 -2.7,-1.2 -2.7,-2.7S268.2,205.2 269.7,205.2zM273.8,214.7v17.6H271v-8.1h-2.7v8.1h-2.7v-17.6c-2.7,-0.2 -5.6,-0.7 -8.1,-1.4l0.7,-2.7c3.5,0.9 7.7,1.4 11.5,1.4c3.8,0 8,-0.4 11.5,-1.4l0.7,2.7C279.4,214 276.5,214.5 273.8,214.7z"
android:fillColor="#FFFFFF"/>
<path
android:pathData="M205.7,219.7m-9.4,0a9.4,9.4 0,1 1,18.8 0a9.4,9.4 0,1 1,-18.8 0"
android:fillColor="#808589"/>
<path
android:pathData="M132.1,219.7l16,9.2l0,-18.5z"
android:fillColor="#808589"/>
<path
android:pathData="M325.4,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7V0h-4.4v231.9c0,12.2 9.9,22.2 22.1,22.2h203.8c12.2,0 22.1,-9.9 22.1,-22.2V14.8c2.4,0 4.4,-2 4.4,-4.4V0h-8.9V231.9z"
android:fillColor="#808589"/>
<path
android:pathData="M269.7,255.3c-19.6,0 -35.6,-16 -35.6,-35.6s16,-35.6 35.6,-35.6s35.6,16 35.6,35.6S289.3,255.3 269.7,255.3zM269.7,187.1c-17.9,0 -32.5,14.6 -32.5,32.5c0,17.9 14.6,32.5 32.5,32.5s32.5,-14.6 32.5,-32.5C302.2,201.7 287.6,187.1 269.7,187.1z"
android:fillColor="#729CEE"/>
</vector>

View File

@@ -1,54 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2023 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M28,0L384,0A28,28 0,0 1,412 28L412,272A28,28 0,0 1,384 300L28,300A28,28 0,0 1,0 272L0,28A28,28 0,0 1,28 0z"
android:fillColor="#000000"/>
<group>
<clip-path
android:pathData="M62.23,50.19L349.77,50.19A16,16 0,0 1,365.77 66.19L365.77,236.14A16,16 0,0 1,349.77 252.14L62.23,252.14A16,16 0,0 1,46.23 236.14L46.23,66.19A16,16 0,0 1,62.23 50.19z"/>
<path
android:pathData="M46.23,204.14h320v48h-320z"
android:fillColor="#3D4043"/>
<path
android:pathData="M268.93,214.14C270.43,214.14 271.63,215.34 271.63,216.84C271.63,218.34 270.43,219.54 268.93,219.54C267.43,219.54 266.23,218.34 266.23,216.84C266.23,215.34 267.43,214.14 268.93,214.14ZM273.03,223.64V241.24H270.23V233.14H267.53V241.24H264.83V223.64C262.13,223.44 259.23,222.94 256.73,222.24L257.43,219.54C260.93,220.44 265.13,220.94 268.93,220.94C272.73,220.94 276.93,220.54 280.43,219.54L281.13,222.24C278.63,222.94 275.73,223.44 273.03,223.64Z"
android:fillColor="#ffffff"/>
<path
android:pathData="M206.23,238.04C211.42,238.04 215.63,233.83 215.63,228.64C215.63,223.45 211.42,219.24 206.23,219.24C201.04,219.24 196.83,223.45 196.83,228.64C196.83,233.83 201.04,238.04 206.23,238.04Z"
android:fillColor="#808589"/>
<path
android:pathData="M131.33,228.64L147.33,237.84V219.34L131.33,228.64Z"
android:fillColor="#808589"/>
</group>
<path
android:pathData="M62.23,51.69L349.77,51.69A14.5,14.5 0,0 1,364.27 66.19L364.27,236.14A14.5,14.5 0,0 1,349.77 250.64L62.23,250.64A14.5,14.5 0,0 1,47.73 236.14L47.73,66.19A14.5,14.5 0,0 1,62.23 51.69z"
android:strokeWidth="3"
android:fillColor="#00000000"
android:strokeColor="#80868B"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.87 313.92,47.87L322.84,47.87C324.2,47.87 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.87 266.06,47.87L287.85,47.87C289.22,47.87 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M268.93,259.69C251.31,259.69 236.93,245.3 236.93,227.69C236.93,210.07 251.31,195.69 268.93,195.69C286.55,195.69 300.93,210.07 300.93,227.69C300.93,245.3 286.55,259.69 268.93,259.69ZM268.93,198.38C252.84,198.38 239.72,211.51 239.72,227.6C239.72,243.69 252.84,256.81 268.93,256.81C285.02,256.81 298.14,243.69 298.14,227.6C298.14,211.51 285.02,198.38 268.93,198.38Z"
android:fillColor="#729CEE"/>
</vector>

View File

@@ -1,28 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M325.4,198.2h-40.9c-22.1,0 -40,-18 -40,-40s18,-40 40,-40h40.9v2.6h-40.9c-20.7,0 -37.5,16.8 -37.5,37.5s16.8,37.5 37.5,37.5h40.9V198.2z"
android:fillColor="#808589"/>
<path
android:pathData="M284.3,128.4c-16.5,0 -29.8,13.4 -29.8,29.8c0,16.5 13.4,29.8 29.8,29.8s29.8,-13.4 29.8,-29.8C314.2,141.7 300.9,128.4 284.3,128.4zM284.3,142.7c1.7,0 3.1,1.4 3.1,3.1c0,1.7 -1.4,3.1 -3.1,3.1s-3.1,-1.4 -3.1,-3.1C281.2,144.1 282.7,142.7 284.3,142.7zM289.1,153.7V174H286v-9.4h-3.1v9.4h-3.2v-20.3c-3.1,-0.3 -6.5,-0.8 -9.4,-1.5l0.8,-3.1c4.1,1 8.9,1.5 13.3,1.5s9.2,-0.5 13.3,-1.5l0.8,3.1C295.6,152.9 292.2,153.4 289.1,153.7z"
android:fillColor="#D9DBDF"/>
</vector>

View File

@@ -1,12 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M365.76,226.17h-27.68c-14.95,0 -27.07,-12.18 -27.07,-27.07s12.18,-27.07 27.07,-27.07h27.68v1.76h-27.68c-14.01,0 -25.37,11.37 -25.37,25.37s11.37,25.37 25.37,25.37h27.68v1.62Z"
android:fillColor="#80868b"/>
<path
android:pathData="M337.95,178.94c-11.16,0 -20.16,9.07 -20.16,20.16 0,11.16 9.07,20.16 20.16,20.16s20.16,-9.07 20.16,-20.16c0.07,-11.16 -8.93,-20.16 -20.16,-20.16ZM337.95,188.62c1.15,0 2.1,0.95 2.1,2.1 0,1.15 -0.95,2.1 -2.1,2.1s-2.1,-0.95 -2.1,-2.1c0,-1.15 1.02,-2.1 2.1,-2.1ZM341.2,196.06v13.74h-2.1v-6.36h-2.1v6.36h-2.17v-13.74c-2.1,-0.2 -4.4,-0.54 -6.36,-1.01l0.54,-2.1c2.77,0.68 6.02,1.01 9,1.01s6.23,-0.34 9,-1.01l0.54,2.1c-1.96,0.47 -4.26,0.81 -6.36,1.01Z"
android:fillColor="#d9dbdf"/>
</vector>

View File

@@ -1,28 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M325.4,189.2h-31.7c-17.1,0 -31,-13.9 -31,-31s13.9,-31 31,-31h31.7v2h-31.7c-16,0 -29,13 -29,29s13,29 29,29h31.7V189.2z"
android:fillColor="#808589"/>
<path
android:pathData="M293.6,135.1c-12.8,0 -23.1,10.4 -23.1,23.1c0,12.8 10.4,23.1 23.1,23.1s23.1,-10.4 23.1,-23.1C316.7,145.4 306.4,135.1 293.6,135.1zM293.6,146.2c1.3,0 2.4,1.1 2.4,2.4s-1.1,2.4 -2.4,2.4s-2.4,-1.1 -2.4,-2.4S292.3,146.2 293.6,146.2zM297.3,154.7v15.7h-2.4v-7.3h-2.4v7.3H290v-15.7c-2.4,-0.2 -5,-0.6 -7.3,-1.2l0.6,-2.4c3.2,0.8 6.9,1.2 10.3,1.2s7.1,-0.4 10.3,-1.2l0.6,2.4C302.3,154.1 299.7,154.5 297.3,154.7z"
android:fillColor="#D9DBDF"/>
</vector>

View File

@@ -1,12 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M365.88,219.24h-20.7c-5.38,0 -10.43,-2.09 -14.23,-5.9s-5.9,-8.86 -5.9,-14.23c0,-5.38 2.09,-10.43 5.9,-14.24 3.8,-3.8 8.86,-5.9 14.23,-5.9h20.7v1h-20.7c-5.11,0 -9.91,1.99 -13.53,5.6s-5.6,8.42 -5.6,13.53c0,5.11 1.99,9.91 5.6,13.53s8.42,5.6 13.53,5.6h20.7v1Z"
android:fillColor="#80868b"/>
<path
android:pathData="M345.19,184c-2.99,-0 -5.91,0.88 -8.4,2.54 -2.49,1.66 -4.43,4.02 -5.57,6.78s-1.45,5.8 -0.86,8.73c0.58,2.93 2.02,5.63 4.13,7.74 2.11,2.11 4.81,3.55 7.74,4.14 2.93,0.58 5.97,0.29 8.73,-0.86 2.76,-1.14 5.12,-3.08 6.78,-5.57 1.66,-2.49 2.55,-5.41 2.55,-8.4 0,-4.01 -1.59,-7.85 -4.42,-10.68 -2.83,-2.83 -6.67,-4.43 -10.68,-4.43ZM345.19,191.28c0.4,0.03 0.77,0.21 1.04,0.51 0.27,0.29 0.42,0.68 0.42,1.08 0,0.4 -0.15,0.79 -0.42,1.08 -0.27,0.29 -0.64,0.47 -1.04,0.51 -0.22,0.02 -0.44,-0.01 -0.65,-0.08 -0.21,-0.07 -0.4,-0.19 -0.56,-0.33 -0.16,-0.15 -0.29,-0.33 -0.38,-0.53 -0.09,-0.2 -0.13,-0.42 -0.13,-0.64 0,-0.22 0.05,-0.44 0.13,-0.64 0.09,-0.2 0.22,-0.38 0.38,-0.53 0.16,-0.15 0.35,-0.26 0.56,-0.33 0.21,-0.07 0.43,-0.1 0.65,-0.08ZM347.56,196.82v10.29h-1.58v-4.76h-1.59v4.75h-1.58v-10.28c-1.6,-0.12 -3.19,-0.39 -4.75,-0.79l0.4,-1.58c4.42,1.05 9.04,1.05 13.46,0l0.39,1.58c-1.57,0.41 -3.17,0.67 -4.79,0.79h0.04Z"
android:fillColor="#dadce0"/>
</vector>

View File

@@ -1,40 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:fillColor="#FF000000"
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
<path
android:pathData="M242.5,226.9h-73.3c-1.7,0 -3.1,1.4 -3.1,3.1s1.4,3.1 3.1,3.1h73.3c1.7,0 3.1,-1.4 3.1,-3.1S244.2,226.9 242.5,226.9z"
android:fillColor="#80868B"/>
<path
android:pathData="M182.7,222.6v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-2.9,1.2 -4.9,4 -4.9,7.4c0,4.4 3.5,8 8,8c4.4,0 8,-3.5 8,-8C187.6,226.7 185.6,223.8 182.7,222.6z"
android:fillColor="#669DF6"/>
<path
android:pathData="M209,222.6v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-2.9,1.2 -4.9,4 -4.9,7.4c0,4.4 3.5,8 8,8c4.4,0 8,-3.5 8,-8C213.9,226.7 211.9,223.8 209,222.6z"
android:fillColor="#669DF6"/>
<path
android:pathData="M235.2,222.6v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-2.9,1.2 -4.9,4 -4.9,7.4c0,4.4 3.5,8 8,8c4.4,0 8,-3.5 8,-8C240,226.7 238,223.8 235.2,222.6z"
android:fillColor="#669DF6"/>
<path
android:pathData="M325.4,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7V0h-4.4v231.9c0,12.2 9.9,22.2 22.1,22.2h203.8c12.2,0 22.1,-9.9 22.1,-22.2V14.8c2.4,0 4.4,-2 4.4,-4.4V0h-8.9V231.9z"
android:fillColor="#80868B"/>
</vector>

View File

@@ -1,33 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
android:strokeWidth="2.5"
android:fillColor="#000000"
android:strokeColor="#80868B"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
android:fillColor="#80868B"/>
<path
android:pathData="M188.7,229.14V217.74H193.6L186.7,205.54L179.8,217.74H184.7V229.14C182.8,229.94 181.5,231.74 181.5,233.94C181.5,236.84 183.8,239.14 186.7,239.14C189.6,239.14 191.9,236.84 191.9,233.94C191.9,231.84 190.5,229.94 188.7,229.14Z"
android:fillColor="#669DF6"/>
<path
android:pathData="M208,229.14V217.74H212.9L206,205.54L199.1,217.74H204V229.14C202.1,229.94 200.8,231.74 200.8,233.94C200.8,236.84 203.1,239.14 206,239.14C208.9,239.14 211.2,236.84 211.2,233.94C211.2,231.84 209.9,229.94 208,229.14Z"
android:fillColor="#669DF6"/>
<path
android:pathData="M227.29,229.14V217.74H232.2L225.29,205.54L218.4,217.74H223.29V229.14C221.4,229.94 220.1,231.74 220.1,233.94C220.1,236.84 222.4,239.14 225.29,239.14C228.2,239.14 230.49,236.84 230.49,233.94C230.49,231.84 229.2,229.94 227.29,229.14Z"
android:fillColor="#669DF6"/>
</group>
</vector>

View File

@@ -1,37 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:fillColor="#FF000000"
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
<path
android:pathData="M325.4,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7V0h-4.4v231.9c0,12.2 9.9,22.2 22.1,22.2h203.8c12.2,0 22.1,-9.9 22.1,-22.2V14.8c2.4,0 4.4,-2 4.4,-4.4V0h-8.9V231.9z"
android:fillColor="#80868B"/>
<path
android:pathData="M242.4,226.9h-9.3h-5.6h-43.4h-4.7h-10.2c-1.7,0 -3.1,1.4 -3.1,3.1s1.4,3.1 3.1,3.1h10.2h3.9h45h4.8h9.3c1.7,0 3.1,-1.4 3.1,-3.1S244.1,226.9 242.4,226.9z"
android:fillColor="#80868B"/>
<path
android:pathData="M194,223.5v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-1.6,0.7 -2.9,1.9 -3.8,3.4c-0.7,1.2 -1.1,2.5 -1.1,4c0,0.7 0.1,1.5 0.3,2.2c0.9,3.3 4,5.8 7.7,5.8c3.6,0 6.7,-2.5 7.7,-5.8c0.2,-0.7 0.3,-1.4 0.3,-2.2c0,-1.5 -0.4,-2.8 -1.1,-4C197,225.4 195.6,224.2 194,223.5z"
android:fillColor="#669DF6"/>
<path
android:pathData="M223.7,223.5v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-1.6,0.7 -2.9,1.9 -3.8,3.4c-0.7,1.2 -1.1,2.5 -1.1,4c0,0.7 0.1,1.5 0.3,2.2c0.9,3.3 4,5.8 7.7,5.8c3.6,0 6.7,-2.5 7.7,-5.8c0.2,-0.7 0.3,-1.4 0.3,-2.2c0,-1.5 -0.4,-2.8 -1.1,-4C226.6,225.4 225.3,224.2 223.7,223.5z"
android:fillColor="#669DF6"/>
</vector>

View File

@@ -1,30 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
android:strokeWidth="2.5"
android:fillColor="#000000"
android:strokeColor="#80868B"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
android:fillColor="#80868B"/>
<path
android:pathData="M198.35,229.14V217.74H203.25L196.35,205.54L189.45,217.74H194.35V229.14C192.45,229.94 191.15,231.74 191.15,233.94C191.15,236.84 193.45,239.14 196.35,239.14C199.25,239.14 201.55,236.84 201.55,233.94C201.55,231.84 200.15,229.94 198.35,229.14Z"
android:fillColor="#669DF6"/>
<path
android:pathData="M217.65,229.14V217.74H222.55L215.65,205.54L208.75,217.74H213.65V229.14C211.75,229.94 210.45,231.74 210.45,233.94C210.45,236.84 212.75,239.14 215.65,239.14C218.55,239.14 220.85,236.84 220.85,233.94C220.85,231.84 219.55,229.94 217.65,229.14Z"
android:fillColor="#669DF6"/>
</group>
</vector>

View File

@@ -1,71 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:fillColor="#FF000000"
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
<path
android:pathData="M274.9,97.7v-9.5c0,-1.3 -1.1,-2.4 -2.4,-2.4V35.9c0,-6.6 -5.3,-11.9 -11.9,-11.9H151.3c-6.6,0 -11.9,5.3 -11.9,11.9v228.2c0,6.6 5.3,11.9 11.9,11.9h109.4c6.6,0 11.9,-5.3 11.9,-11.9V147.6c1.3,0 2.4,-1.1 2.4,-2.4v-23.8c0,-1.3 -1.1,-2.4 -2.4,-2.4v-19C273.9,100.1 274.9,99 274.9,97.7zM270.2,264.1c0,5.2 -4.3,9.5 -9.5,9.5H151.3c-5.2,0 -9.5,-4.3 -9.5,-9.5V35.9c0,-5.2 4.3,-9.5 9.5,-9.5h109.4c5.2,0 9.5,4.3 9.5,9.5V264.1z"
android:fillColor="#80868B"/>
<path
android:pathData="M176.7,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6h13.3v-24.6C183.4,212.6 180.4,209.6 176.7,209.6z">
<aapt:attr name="android:fillColor">
<gradient
android:startY="240.8954"
android:startX="176.75"
android:endY="209.6335"
android:endX="176.75"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.695" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
<path
android:pathData="M206,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6h13.3v-24.6C212.6,212.6 209.7,209.6 206,209.6z">
<aapt:attr name="android:fillColor">
<gradient
android:startY="240.8954"
android:startX="206.05"
android:endY="209.6335"
android:endX="206.05"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.695" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
<path
android:pathData="M235.3,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6H242v-24.6C241.9,212.6 239,209.6 235.3,209.6z">
<aapt:attr name="android:fillColor">
<gradient
android:startY="240.8954"
android:startX="235.35"
android:endY="209.6335"
android:endX="235.35"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.695" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
</vector>

View File

@@ -1,80 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2023 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
android:strokeWidth="2.5"
android:fillColor="#000000"
android:strokeColor="#80868B"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M176.84,188.94C173.14,188.94 170.24,191.94 170.24,195.54V220.14H183.54V195.54C183.54,191.94 180.54,188.94 176.84,188.94Z">
<aapt:attr name="android:fillColor">
<gradient
android:startX="176.89"
android:startY="220.23"
android:endX="176.89"
android:endY="188.97"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.69" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
<path
android:pathData="M206.14,188.94C202.44,188.94 199.54,191.94 199.54,195.54V220.14H212.84V195.54C212.74,191.94 209.84,188.94 206.14,188.94Z">
<aapt:attr name="android:fillColor">
<gradient
android:startX="206.19"
android:startY="220.23"
android:endX="206.19"
android:endY="188.97"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.69" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
<path
android:pathData="M235.44,188.94C231.74,188.94 228.84,191.94 228.84,195.54V220.14H242.14V195.54C242.04,191.94 239.14,188.94 235.44,188.94Z">
<aapt:attr name="android:fillColor">
<gradient
android:startX="235.49"
android:startY="220.23"
android:endX="235.49"
android:endY="188.97"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.69" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
</group>
</vector>

View File

@@ -1,57 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:fillColor="#FF000000"
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
<path
android:pathData="M274.9,97.7v-9.5c0,-1.3 -1.1,-2.4 -2.4,-2.4V35.9c0,-6.6 -5.3,-11.9 -11.9,-11.9H151.3c-6.6,0 -11.9,5.3 -11.9,11.9v228.2c0,6.6 5.3,11.9 11.9,11.9h109.4c6.6,0 11.9,-5.3 11.9,-11.9V147.6c1.3,0 2.4,-1.1 2.4,-2.4v-23.8c0,-1.3 -1.1,-2.4 -2.4,-2.4v-19C273.9,100.1 274.9,99 274.9,97.7zM270.2,264.1c0,5.2 -4.3,9.5 -9.5,9.5H151.3c-5.2,0 -9.5,-4.3 -9.5,-9.5V35.9c0,-5.2 4.3,-9.5 9.5,-9.5h109.4c5.2,0 9.5,4.3 9.5,9.5V264.1z"
android:fillColor="#80868B"/>
<path
android:pathData="M188.6,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6h13.3v-24.6C195.3,212.6 192.3,209.6 188.6,209.6z">
<aapt:attr name="android:fillColor">
<gradient
android:startY="240.8954"
android:startX="188.65"
android:endY="209.6335"
android:endX="188.65"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.695" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
<path
android:pathData="M223.4,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6H230v-24.6C230,212.6 227.1,209.6 223.4,209.6z">
<aapt:attr name="android:fillColor">
<gradient
android:startY="240.8954"
android:startX="223.4"
android:endY="209.6335"
android:endX="223.4"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.695" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
</vector>

View File

@@ -1,66 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2023 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
android:strokeWidth="2.5"
android:fillColor="#000000"
android:strokeColor="#80868B"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M188.15,188.94C184.45,188.94 181.55,191.94 181.55,195.54V220.14H194.85V195.54C194.85,191.94 191.85,188.94 188.15,188.94Z">
<aapt:attr name="android:fillColor">
<gradient
android:startX="188.2"
android:startY="220.23"
android:endX="188.2"
android:endY="188.97"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.69" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
<path
android:pathData="M222.95,188.94C219.25,188.94 216.35,191.94 216.35,195.54V220.14H229.55V195.54C229.55,191.94 226.65,188.94 222.95,188.94Z">
<aapt:attr name="android:fillColor">
<gradient
android:startX="222.95"
android:startY="220.23"
android:endX="222.95"
android:endY="188.97"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.69" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
</group>
</vector>

View File

@@ -1,46 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:fillColor="#FF000000"
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
<path
android:pathData="M206.1,19.1c35,0 67.9,13.6 92.6,38.4C323.4,82.1 337,115 337,150s-13.6,67.9 -38.4,92.6C273.9,267.3 241,281 206,281s-67.9,-13.6 -92.6,-38.4C88.8,217.9 75.1,185 75.1,150s13.6,-67.9 38.4,-92.6S171.1,19.1 206.1,19.1M206.1,17.1c-73.4,0 -133,59.5 -133,132.9S132.6,282.9 206,282.9s133,-59.5 133,-132.9S279.5,17.1 206.1,17.1L206.1,17.1z"
android:fillColor="#3C4043"/>
<path
android:pathData="M287,187.8v-1.5h2.9v-13.7c0,-1.6 -1.3,-2.9 -2.9,-2.9v-23.2c1.6,0 2.9,-1.3 2.9,-2.9V132c0,-1.6 -1.3,-2.9 -2.9,-2.9V68.4c0,-8 -6.5,-14.5 -14.5,-14.5H139.4c-8,0 -14.5,6.5 -14.5,14.5v185.3c1,0.7 1.9,1.4 2.9,2.1V68.4c0,-6.4 5.2,-11.6 11.6,-11.6h133.1c6.4,0 11.6,5.2 11.6,11.6v188.7c1,-0.7 1.9,-1.4 2.9,-2.2v-50.5c1.6,0 2.9,-1.3 2.9,-2.9v-13.7H287z"
android:fillColor="#80868B"/>
<path
android:pathData="M287,204.4c1.6,0 2.9,-1.3 2.9,-2.9v-14H287v-0.9h2.9v-14c0,-1.6 -1.3,-2.9 -2.9,-2.9"
android:fillColor="#669DF6"/>
<path
android:pathData="M825.7,300H469.3c-15.3,0 -27.8,-12.8 -27.8,-28.5v-243C441.5,12.8 454,0 469.3,0h356.5c15.2,0 27.7,12.8 27.7,28.5v243.2C853.5,287.2 841,300 825.7,300z"
android:fillColor="#FFFFFF"/>
<path
android:pathData="M728.5,187.8v-1.5h2.9v-13.7c0,-1.6 -1.3,-2.9 -2.9,-2.9v-23.2c1.6,0 2.9,-1.3 2.9,-2.9V132c0,-1.6 -1.3,-2.9 -2.9,-2.9V68.4c0,-8 -6.5,-14.5 -14.5,-14.5H580.9c-8,0 -14.5,6.5 -14.5,14.5v185.3c1,0.7 1.9,1.4 2.9,2.1V68.4c0,-6.4 5.2,-11.6 11.6,-11.6H714c6.4,0 11.6,5.2 11.6,11.6v188.7c1,-0.7 1.9,-1.4 2.9,-2.2v-50.5c1.6,0 2.9,-1.3 2.9,-2.9v-13.7H728.5z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M728.5,204.4c1.6,0 2.9,-1.3 2.9,-2.9v-14h-2.9v-0.9h2.9v-14c0,-1.6 -1.3,-2.9 -2.9,-2.9"
android:fillColor="#1A73E8"/>
<path
android:pathData="M648.2,19.1c35,0 67.9,13.6 92.6,38.4c24.7,24.6 38.3,57.5 38.3,92.5s-13.6,67.9 -38.4,92.6C716,267.3 683.1,281 648.1,281s-67.9,-13.6 -92.6,-38.4c-24.6,-24.7 -38.3,-57.6 -38.3,-92.6s13.6,-67.9 38.4,-92.6C580.4,32.7 613.2,19.1 648.2,19.1M648.2,17.1c-73.4,0 -133,59.5 -133,132.9s59.5,132.9 132.9,132.9s133,-59.5 133,-132.9S721.6,17.1 648.2,17.1L648.2,17.1z"
android:fillColor="#E8EAED"/>
</vector>

View File

@@ -1,44 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M255.38,94.3C255.38,93.14 256.32,92.21 257.47,92.21L275.86,92.21C277.01,92.21 277.95,93.14 277.95,94.3L267.08,95.14L255.38,94.3Z"
android:fillColor="#669DF6"/>
<path
android:pathData="M340.09,110.17L340.09,248.55A14.5,14.5 0,0 1,325.59 263.05L88,263.05A14.5,14.5 0,0 1,73.5 248.55L73.5,110.17A14.5,14.5 0,0 1,88 95.67L325.59,95.67A14.5,14.5 0,0 1,340.09 110.17z"
android:strokeWidth="3"
android:fillColor="#000000"
android:strokeColor="#80868B"/>
<path
android:pathData="M295.77,94.3C295.77,93.14 296.7,92.21 297.86,92.21L305.38,92.21C306.53,92.21 307.46,93.14 307.46,94.3L302.45,95.14L295.77,94.3Z"
android:fillColor="#80868B"/>
<group>
<clip-path
android:pathData="M274,30L274,30A93,93 0,0 1,367 123L367,123A93,93 0,0 1,274 216L274,216A93,93 0,0 1,181 123L181,123A93,93 0,0 1,274 30z"/>
<path
android:pathData="M274,30L274,30A93,93 0,0 1,367 123L367,123A93,93 0,0 1,274 216L274,216A93,93 0,0 1,181 123L181,123A93,93 0,0 1,274 30z"
android:fillColor="#000000"/>
<path
android:pathData="M206.07,85.49C206.07,83.45 207.72,81.79 209.75,81.79L242.17,81.79C244.21,81.79 245.86,83.45 245.86,85.49L226.7,86.97L206.07,85.49Z"
android:fillColor="#669DF6"/>
<path
android:pathData="M345.84,101.25L345.84,369.73A14.25,14.25 0,0 1,331.59 383.98L-111.85,383.98A14.25,14.25 0,0 1,-126.1 369.73L-126.1,101.25A14.25,14.25 0,0 1,-111.85 87L331.59,87A14.25,14.25 0,0 1,345.84 101.25z"
android:strokeWidth="3.5"
android:fillColor="#000000"
android:strokeColor="#80868B"/>
<path
android:pathData="M266.77,85.49C266.77,83.45 268.42,81.79 270.46,81.79L283.72,81.79C285.75,81.79 287.4,83.45 287.4,85.49L278.56,86.97L266.77,85.49Z"
android:fillColor="#80868B"/>
</group>
<path
android:strokeWidth="1"
android:pathData="M274,30.5L274,30.5A92.5,92.5 0,0 1,366.5 123L366.5,123A92.5,92.5 0,0 1,274 215.5L274,215.5A92.5,92.5 0,0 1,181.5 123L181.5,123A92.5,92.5 0,0 1,274 30.5z"
android:fillColor="#00000000"
android:strokeColor="#80868B"/>
</group>
</vector>

View File

@@ -1,48 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:fillColor="#FF000000"
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5V28.5C0,12.8 12.5,0 27.8,0H384.3C399.5,0 412,12.8 412,28.5V271.7C412,287.2 399.5,300 384.2,300Z"/>
<path
android:pathData="M142,225.3H275.1a14.51,14.51 0,0 0,14.5 -14.5V69a2.9,2.9 0,0 0,2.9 -2.9v-17c-1.9,-1.6 -3.8,-3.2 -5.8,-4.7V210.8a11.61,11.61 0,0 1,-11.6 11.6H142a11.61,11.61 0,0 1,-11.6 -11.6V42.7c-1,0.7 -1.9,1.4 -2.9,2.1V210.9A14.62,14.62 0,0 0,142 225.3Z"
android:fillColor="#80868b"/>
<path
android:pathData="M286.7,210.83a11.59,11.59 0,0 1,-11.58 11.58H142a11.59,11.59 0,0 1,-11.58 -11.58V183.26H286.7Z"
android:fillColor="#3c4043"/>
<path
android:pathData="M250.41,193.38a1.77,1.77 0,1 1,-1.78 1.77A1.77,1.77 0,0 1,250.41 193.38ZM253.07,199.58v11.53h-1.78v-5.32h-1.77v5.32h-1.77L247.75,199.58a30.78,30.78 0,0 1,-5.32 -0.89l0.44,-1.77a32.34,32.34 0,0 0,15.07 0l0.45,1.77A30.78,30.78 0,0 1,253.07 199.58Z"
android:fillColor="#fff"/>
<path
android:pathData="M208.55,202.84m-6.13,0a6.13,6.13 0,1 1,12.26 0a6.13,6.13 0,1 1,-12.26 0"
android:fillColor="#80868b"/>
<path
android:pathData="M250.41,202.84m-22.28,0a22.28,22.28 0,1 1,44.56 0a22.28,22.28 0,1 1,-44.56 0"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#669df6"/>
<path
android:pathData="M160.45,202.84l10.43,6.02l0,-12.05l-10.43,6.03z"
android:fillColor="#80868b"/>
<path
android:pathData="M207.4,19.1a131.11,131.11 0,0 1,131 131,131 131,0 0,1 -262,-0.1 130.94,130.94 0,0 1,131 -130.9m0,-2A132.9,132.9 0,1 0,340.3 150,133 133,0 0,0 207.4,17.1Z"
android:fillColor="#3c4043"/>
</vector>

View File

@@ -1,39 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:fillColor="#FF000000"
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5V28.5C0,12.8 12.5,0 27.8,0H384.3C399.5,0 412,12.8 412,28.5V271.7C412,287.2 399.5,300 384.2,300Z"/>
<path
android:pathData="M142,225.3H275.1a14.51,14.51 0,0 0,14.5 -14.5V69a2.9,2.9 0,0 0,2.9 -2.9v-17c-1.9,-1.6 -3.8,-3.2 -5.8,-4.7V210.8a11.61,11.61 0,0 1,-11.6 11.6H142a11.61,11.61 0,0 1,-11.6 -11.6V42.7c-1,0.7 -1.9,1.4 -2.9,2.1V210.9A14.62,14.62 0,0 0,142 225.3Z"
android:fillColor="#80868b"/>
<path
android:strokeWidth="1"
android:pathData="M286.7,144.13H266a19.63,19.63 0,1 0,0 39.26H286.7"
android:fillColor="#00000000"
android:strokeColor="#80868b"/>
<path
android:pathData="M266,148.65a15.11,15.11 0,1 0,15.1 15.11A15.11,15.11 0,0 0,266 148.65ZM266,155.93a1.59,1.59 0,0 1,0 3.17,1.59 1.59,0 1,1 0,-3.17ZM268.37,161.47v10.29h-1.58L266.79,167h-1.59v4.75h-1.58L263.62,161.47a27.23,27.23 0,0 1,-4.75 -0.79l0.4,-1.58a29.06,29.06 0,0 0,13.46 0l0.39,1.58A27.23,27.23 0,0 1,268.33 161.47Z"
android:fillColor="#dadce0"/>
<path
android:pathData="M207.4,19.1a131.11,131.11 0,0 1,131 131,131 131,0 0,1 -262,-0.1 130.94,130.94 0,0 1,131 -130.9m0,-2A132.9,132.9 0,1 0,340.3 150,133 133,0 0,0 207.4,17.1Z"
android:fillColor="#3c4043"/>
</vector>

View File

@@ -1,29 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
android:strokeWidth="2.5"
android:fillColor="#000000"
android:strokeColor="#80868B"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#80868B"/>
</group>
<path
android:strokeWidth="1"
android:pathData="M365.64,179.48H344.94C339.74,179.48 334.74,181.54 331.06,185.23C327.38,188.91 325.31,193.9 325.31,199.11C325.31,204.31 327.38,209.3 331.06,212.99C334.74,216.67 339.74,218.74 344.94,218.74H365.64"
android:fillColor="#00000000"
android:strokeColor="#80868B"/>
<path
android:pathData="M344.95,184C341.96,183.99 339.04,184.88 336.55,186.54C334.06,188.2 332.12,190.56 330.98,193.32C329.83,196.08 329.53,199.12 330.11,202.05C330.7,204.98 332.14,207.67 334.25,209.79C336.36,211.9 339.05,213.34 341.98,213.93C344.92,214.51 347.95,214.21 350.72,213.07C353.48,211.92 355.84,209.99 357.5,207.5C359.16,205.02 360.05,202.1 360.05,199.11C360.05,195.1 358.46,191.26 355.62,188.43C352.79,185.59 348.95,184 344.95,184ZM344.95,191.28C345.35,191.31 345.72,191.49 345.99,191.78C346.26,192.08 346.41,192.46 346.41,192.86C346.41,193.26 346.26,193.65 345.99,193.94C345.72,194.23 345.35,194.41 344.95,194.45C344.73,194.46 344.51,194.43 344.3,194.36C344.09,194.29 343.9,194.18 343.74,194.03C343.58,193.88 343.45,193.7 343.36,193.5C343.28,193.3 343.23,193.08 343.23,192.86C343.23,192.64 343.28,192.43 343.36,192.22C343.45,192.02 343.58,191.84 343.74,191.69C343.9,191.54 344.09,191.43 344.3,191.36C344.51,191.29 344.73,191.26 344.95,191.28ZM347.32,196.82V207.11H345.74V202.35H344.15V207.1H342.57V196.82C340.96,196.69 339.37,196.43 337.82,196.03L338.22,194.45C342.64,195.5 347.25,195.5 351.68,194.45L352.07,196.03C350.5,196.43 348.89,196.7 347.28,196.82H347.32Z"
android:fillColor="#DADCE0"/>
</vector>

View File

@@ -1,40 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:fillColor="#FF000000"
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
<path
android:pathData="M139.5,225.3h133.1c8,0 14.5,-6.5 14.5,-14.5V69c1.6,0 2.9,-1.3 2.9,-2.9v-17c-1.9,-1.6 -3.8,-3.2 -5.8,-4.7v166.4c0,6.4 -5.2,11.6 -11.6,11.6H139.5c-6.4,0 -11.6,-5.2 -11.6,-11.6V42.7c-1,0.7 -1.9,1.4 -2.9,2.1v166.1C125.1,218.8 131.6,225.3 139.5,225.3z"
android:fillColor="#80868B"/>
<path
android:pathData="M229.9,207.9h-47.8c-1.1,0 -2,0.9 -2,2s0.9,2 2,2h47.8c1.1,0 2,-0.9 2,-2S231,207.9 229.9,207.9z"
android:fillColor="#80868B"/>
<path
android:pathData="M198.4,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2s5.2,-2.3 5.2,-5.2C201.6,208.4 200.2,206.5 198.4,205.7z"
android:fillColor="#669DF6"/>
<path
android:pathData="M217.7,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2s5.2,-2.3 5.2,-5.2C220.9,208.4 219.6,206.5 217.7,205.7z"
android:fillColor="#669DF6"/>
<path
android:pathData="M206.1,19.1c35,0 67.9,13.6 92.6,38.4c24.7,24.7 38.4,57.6 38.4,92.6s-13.6,67.9 -38.4,92.6c-24.7,24.7 -57.6,38.4 -92.6,38.4s-67.9,-13.6 -92.6,-38.4C88.8,217.9 75.1,185 75.1,150s13.6,-67.9 38.4,-92.6C138.2,32.7 171.1,19.1 206.1,19.1M206.1,17.1c-73.4,0 -133,59.5 -133,132.9S132.6,282.9 206,282.9S339,223.4 339,150S279.5,17.1 206.1,17.1L206.1,17.1z"
android:fillColor="#3C4043"/>
</vector>

View File

@@ -1,46 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2023 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
android:strokeWidth="2.5"
android:fillColor="#000000"
android:strokeColor="#80868B"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
android:fillColor="#80868B"/>
<path
android:pathData="M198.35,229.14V217.74H203.25L196.35,205.54L189.45,217.74H194.35V229.14C192.45,229.94 191.15,231.74 191.15,233.94C191.15,236.84 193.45,239.14 196.35,239.14C199.25,239.14 201.55,236.84 201.55,233.94C201.55,231.84 200.15,229.94 198.35,229.14Z"
android:fillColor="#669DF6"/>
<path
android:pathData="M217.65,229.14V217.74H222.55L215.65,205.54L208.75,217.74H213.65V229.14C211.75,229.94 210.45,231.74 210.45,233.94C210.45,236.84 212.75,239.14 215.65,239.14C218.55,239.14 220.85,236.84 220.85,233.94C220.85,231.84 219.55,229.94 217.65,229.14Z"
android:fillColor="#669DF6"/>
</group>
</vector>

View File

@@ -1,43 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:fillColor="#FF000000"
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"/>
<path
android:pathData="M138,225.3h133.1c8,0 14.5,-6.5 14.5,-14.5V69c1.6,0 2.9,-1.3 2.9,-2.9V45.7c-1.9,-1.5 -3.8,-2.9 -5.8,-4.3v169.4c0,6.4 -5.2,11.6 -11.6,11.6H138c-6.4,0 -11.6,-5.2 -11.6,-11.6V43.5c-1,0.7 -1.9,1.5 -2.9,2.2v165C123.5,218.8 130,225.3 138,225.3z"
android:fillColor="#80868B"/>
<path
android:pathData="M206,283.9c-73.9,0 -133.9,-60.1 -133.9,-133.9S132.1,16.1 206,16.1c73.9,0 133.9,60.1 133.9,133.9S279.9,283.9 206,283.9zM206,18.1C133.2,18.1 74.1,77.2 74.1,150S133.2,281.9 206,281.9S337.9,222.8 337.9,150S278.8,18.1 206,18.1z"
android:fillColor="#3C4043"/>
<path
android:pathData="M229.9,207.9h-47.8c-1.1,0 -2,0.9 -2,2s0.9,2 2,2h47.8c1.1,0 2,-0.9 2,-2S231,207.9 229.9,207.9z"
android:fillColor="#80868B"/>
<path
android:pathData="M190.9,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C194.1,208.4 192.8,206.5 190.9,205.7z"
android:fillColor="#669DF6"/>
<path
android:pathData="M208,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C211.2,208.4 209.9,206.5 208,205.7z"
android:fillColor="#669DF6"/>
<path
android:pathData="M225.1,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C228.2,208.4 226.9,206.5 225.1,205.7z"
android:fillColor="#669DF6"/>
</vector>

View File

@@ -1,49 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2023 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
android:strokeWidth="2.5"
android:fillColor="#000000"
android:strokeColor="#80868B"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
android:fillColor="#80868B"/>
<path
android:pathData="M188.7,229.14V217.74H193.6L186.7,205.54L179.8,217.74H184.7V229.14C182.8,229.94 181.5,231.74 181.5,233.94C181.5,236.84 183.8,239.14 186.7,239.14C189.6,239.14 191.9,236.84 191.9,233.94C191.9,231.84 190.5,229.94 188.7,229.14Z"
android:fillColor="#669DF6"/>
<path
android:pathData="M208,229.14V217.74H212.9L206,205.54L199.1,217.74H204V229.14C202.1,229.94 200.8,231.74 200.8,233.94C200.8,236.84 203.1,239.14 206,239.14C208.9,239.14 211.2,236.84 211.2,233.94C211.2,231.84 209.9,229.94 208,229.14Z"
android:fillColor="#669DF6"/>
<path
android:pathData="M227.29,229.14V217.74H232.2L225.29,205.54L218.4,217.74H223.29V229.14C221.4,229.94 220.1,231.74 220.1,233.94C220.1,236.84 222.4,239.14 225.29,239.14C228.2,239.14 230.49,236.84 230.49,233.94C230.49,231.84 229.2,229.94 227.29,229.14Z"
android:fillColor="#669DF6"/>
</group>
</vector>

View File

@@ -1,36 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M62.23,50.19L349.77,50.19A16,16 0,0 1,365.77 66.19L365.77,236.14A16,16 0,0 1,349.77 252.14L62.23,252.14A16,16 0,0 1,46.23 236.14L46.23,66.19A16,16 0,0 1,62.23 50.19z"/>
<path
android:pathData="M46.23,204.14h320v48h-320z"
android:fillColor="#3D4043"/>
<path
android:pathData="M268.93,214.14C270.43,214.14 271.63,215.34 271.63,216.84C271.63,218.34 270.43,219.54 268.93,219.54C267.43,219.54 266.23,218.34 266.23,216.84C266.23,215.34 267.43,214.14 268.93,214.14ZM273.03,223.64V241.24H270.23V233.14H267.53V241.24H264.83V223.64C262.13,223.44 259.23,222.94 256.73,222.24L257.43,219.54C260.93,220.44 265.13,220.94 268.93,220.94C272.73,220.94 276.93,220.54 280.43,219.54L281.13,222.24C278.63,222.94 275.73,223.44 273.03,223.64Z"
android:fillColor="#ffffff"/>
<path
android:pathData="M206.23,238.04C211.42,238.04 215.63,233.83 215.63,228.64C215.63,223.45 211.42,219.24 206.23,219.24C201.04,219.24 196.83,223.45 196.83,228.64C196.83,233.83 201.04,238.04 206.23,238.04Z"
android:fillColor="#808589"/>
<path
android:pathData="M131.33,228.64L147.33,237.84V219.34L131.33,228.64Z"
android:fillColor="#808589"/>
</group>
<path
android:pathData="M62.23,51.69L349.77,51.69A14.5,14.5 0,0 1,364.27 66.19L364.27,236.14A14.5,14.5 0,0 1,349.77 250.64L62.23,250.64A14.5,14.5 0,0 1,47.73 236.14L47.73,66.19A14.5,14.5 0,0 1,62.23 51.69z"
android:strokeWidth="3"
android:fillColor="#00000000"
android:strokeColor="#80868B"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.87 313.92,47.87L322.84,47.87C324.2,47.87 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.87 266.06,47.87L287.85,47.87C289.22,47.87 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#80868B"/>
<path
android:pathData="M268.93,259.69C251.31,259.69 236.93,245.3 236.93,227.69C236.93,210.07 251.31,195.69 268.93,195.69C286.55,195.69 300.93,210.07 300.93,227.69C300.93,245.3 286.55,259.69 268.93,259.69ZM268.93,198.38C252.84,198.38 239.72,211.51 239.72,227.6C239.72,243.69 252.84,256.81 268.93,256.81C285.02,256.81 298.14,243.69 298.14,227.6C298.14,211.51 285.02,198.38 268.93,198.38Z"
android:fillColor="#729CEE"/>
</vector>

View File

@@ -1,43 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
android:fillColor="#FFFFFF"/>
<path
android:fillColor="#FF000000"
android:pathData="M325.2,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7v-42.2h239V231.9z"/>
<path
android:pathData="M269.7,205.2c1.5,0 2.7,1.2 2.7,2.7s-1.2,2.7 -2.7,2.7c-1.5,0 -2.7,-1.2 -2.7,-2.7S268.2,205.2 269.7,205.2zM273.8,214.7v17.6H271v-8.1h-2.7v8.1h-2.7v-17.6c-2.7,-0.2 -5.6,-0.7 -8.1,-1.4l0.7,-2.7c3.5,0.9 7.7,1.4 11.5,1.4c3.8,0 8,-0.4 11.5,-1.4l0.7,2.7C279.4,214 276.5,214.5 273.8,214.7z"
android:fillColor="#FFFFFF"/>
<path
android:pathData="M205.7,219.7m-9.4,0a9.4,9.4 0,1 1,18.8 0a9.4,9.4 0,1 1,-18.8 0"
android:fillColor="#BDC0C4"/>
<path
android:pathData="M132.1,219.7l16,9.2l0,-18.5z"
android:fillColor="#BDC0C4"/>
<path
android:pathData="M325.4,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7V0h-4.4v231.9c0,12.2 9.9,22.2 22.1,22.2h203.8c12.2,0 22.1,-9.9 22.1,-22.2V14.8c2.4,0 4.4,-2 4.4,-4.4V0h-8.9V231.9z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M269.7,255.3c-19.6,0 -35.6,-16 -35.6,-35.6s16,-35.6 35.6,-35.6s35.6,16 35.6,35.6S289.3,255.3 269.7,255.3zM269.7,187.1c-17.9,0 -32.5,14.6 -32.5,32.5c0,17.9 14.6,32.5 32.5,32.5s32.5,-14.6 32.5,-32.5C302.2,201.7 287.6,187.1 269.7,187.1z"
android:fillColor="#3773DF"/>
</vector>

View File

@@ -1,54 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2023 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M28,0L384,0A28,28 0,0 1,412 28L412,272A28,28 0,0 1,384 300L28,300A28,28 0,0 1,0 272L0,28A28,28 0,0 1,28 0z"
android:fillColor="#ffffff"/>
<group>
<clip-path
android:pathData="M62.23,50.19L349.77,50.19A16,16 0,0 1,365.77 66.19L365.77,236.14A16,16 0,0 1,349.77 252.14L62.23,252.14A16,16 0,0 1,46.23 236.14L46.23,66.19A16,16 0,0 1,62.23 50.19z"/>
<path
android:pathData="M46.23,204.14h320v48h-320z"
android:fillColor="#000000"/>
<path
android:pathData="M268.93,214.14C270.43,214.14 271.63,215.34 271.63,216.84C271.63,218.34 270.43,219.54 268.93,219.54C267.43,219.54 266.23,218.34 266.23,216.84C266.23,215.34 267.43,214.14 268.93,214.14ZM273.03,223.64V241.24H270.23V233.14H267.53V241.24H264.83V223.64C262.13,223.44 259.23,222.94 256.73,222.24L257.43,219.54C260.93,220.44 265.13,220.94 268.93,220.94C272.73,220.94 276.93,220.54 280.43,219.54L281.13,222.24C278.63,222.94 275.73,223.44 273.03,223.64Z"
android:fillColor="#ffffff"/>
<path
android:pathData="M206.23,238.04C211.42,238.04 215.63,233.83 215.63,228.64C215.63,223.45 211.42,219.24 206.23,219.24C201.04,219.24 196.83,223.45 196.83,228.64C196.83,233.83 201.04,238.04 206.23,238.04Z"
android:fillColor="#BDC0C4"/>
<path
android:pathData="M131.33,228.64L147.33,237.84V219.34L131.33,228.64Z"
android:fillColor="#BDC0C4"/>
</group>
<path
android:pathData="M62.23,51.69L349.77,51.69A14.5,14.5 0,0 1,364.27 66.19L364.27,236.14A14.5,14.5 0,0 1,349.77 250.64L62.23,250.64A14.5,14.5 0,0 1,47.73 236.14L47.73,66.19A14.5,14.5 0,0 1,62.23 51.69z"
android:strokeWidth="3"
android:fillColor="#00000000"
android:strokeColor="#DADCE0"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.87 313.92,47.87L322.84,47.87C324.2,47.87 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.87 266.06,47.87L287.85,47.87C289.22,47.87 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M268.93,259.69C251.31,259.69 236.93,245.3 236.93,227.69C236.93,210.07 251.31,195.69 268.93,195.69C286.55,195.69 300.93,210.07 300.93,227.69C300.93,245.3 286.55,259.69 268.93,259.69ZM268.93,198.38C252.84,198.38 239.72,211.51 239.72,227.6C239.72,243.69 252.84,256.81 268.93,256.81C285.02,256.81 298.14,243.69 298.14,227.6C298.14,211.51 285.02,198.38 268.93,198.38Z"
android:fillColor="#729CEE"/>
</vector>

View File

@@ -1,28 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M325.4,198.2h-40.9c-22.1,0 -40,-18 -40,-40s18,-40 40,-40h40.9v2.6h-40.9c-20.7,0 -37.5,16.8 -37.5,37.5s16.8,37.5 37.5,37.5h40.9V198.2z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M284.3,128.4c-16.5,0 -29.8,13.4 -29.8,29.8c0,16.5 13.4,29.8 29.8,29.8s29.8,-13.4 29.8,-29.8C314.2,141.7 300.9,128.4 284.3,128.4zM284.3,142.7c1.7,0 3.1,1.4 3.1,3.1c0,1.7 -1.4,3.1 -3.1,3.1s-3.1,-1.4 -3.1,-3.1C281.2,144.1 282.7,142.7 284.3,142.7zM289.1,153.7V174H286v-9.4h-3.1v9.4h-3.2v-20.3c-3.1,-0.3 -6.5,-0.8 -9.4,-1.5l0.8,-3.1c4.1,1 8.9,1.5 13.3,1.5s9.2,-0.5 13.3,-1.5l0.8,3.1C295.6,152.9 292.2,153.4 289.1,153.7z"
android:fillColor="#606368"/>
</vector>

View File

@@ -1,12 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M365.76,226.17h-27.68c-14.95,0 -27.07,-12.18 -27.07,-27.07s12.18,-27.07 27.07,-27.07h27.68v1.76h-27.68c-14.01,0 -25.37,11.37 -25.37,25.37s11.37,25.37 25.37,25.37h27.68v1.62Z"
android:fillColor="#dadce0"/>
<path
android:pathData="M337.95,178.94c-11.16,0 -20.16,9.07 -20.16,20.16 0,11.16 9.07,20.16 20.16,20.16s20.16,-9.07 20.16,-20.16c0.07,-11.16 -8.93,-20.16 -20.16,-20.16ZM337.95,188.62c1.15,0 2.1,0.95 2.1,2.1 0,1.15 -0.95,2.1 -2.1,2.1s-2.1,-0.95 -2.1,-2.1c0,-1.15 1.02,-2.1 2.1,-2.1ZM341.2,196.06v13.74h-2.1v-6.36h-2.1v6.36h-2.17v-13.74c-2.1,-0.2 -4.4,-0.54 -6.36,-1.01l0.54,-2.1c2.77,0.68 6.02,1.01 9,1.01s6.23,-0.34 9,-1.01l0.54,2.1c-1.96,0.47 -4.26,0.81 -6.36,1.01Z"
android:fillColor="#5f6368"/>
</vector>

View File

@@ -1,28 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M325.4,189.2h-31.7c-17.1,0 -31,-13.9 -31,-31s13.9,-31 31,-31h31.7v2h-31.7c-16,0 -29,13 -29,29s13,29 29,29h31.7V189.2z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M293.6,135.1c-12.8,0 -23.1,10.4 -23.1,23.1c0,12.8 10.4,23.1 23.1,23.1s23.1,-10.4 23.1,-23.1C316.7,145.4 306.4,135.1 293.6,135.1zM293.6,146.2c1.3,0 2.4,1.1 2.4,2.4s-1.1,2.4 -2.4,2.4s-2.4,-1.1 -2.4,-2.4S292.3,146.2 293.6,146.2zM297.3,154.7v15.7h-2.4v-7.3h-2.4v7.3H290v-15.7c-2.4,-0.2 -5,-0.6 -7.3,-1.2l0.6,-2.4c3.2,0.8 6.9,1.2 10.3,1.2s7.1,-0.4 10.3,-1.2l0.6,2.4C302.3,154.1 299.7,154.5 297.3,154.7z"
android:fillColor="#606368"/>
</vector>

View File

@@ -1,12 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M365.88,219.24h-20.7c-5.38,0 -10.43,-2.09 -14.23,-5.9s-5.9,-8.86 -5.9,-14.23c0,-5.38 2.09,-10.43 5.9,-14.24 3.8,-3.8 8.86,-5.9 14.23,-5.9h20.7v1h-20.7c-5.11,0 -9.91,1.99 -13.53,5.6s-5.6,8.42 -5.6,13.53c0,5.11 1.99,9.91 5.6,13.53s8.42,5.6 13.53,5.6h20.7v1Z"
android:fillColor="#dadce0"/>
<path
android:pathData="M345.19,184c-2.99,-0 -5.91,0.88 -8.4,2.54 -2.49,1.66 -4.43,4.02 -5.57,6.78s-1.45,5.8 -0.86,8.73c0.58,2.93 2.02,5.63 4.13,7.74 2.11,2.11 4.81,3.55 7.74,4.14 2.93,0.58 5.97,0.29 8.73,-0.86 2.76,-1.14 5.12,-3.08 6.78,-5.57 1.66,-2.49 2.55,-5.41 2.55,-8.4 0,-4.01 -1.59,-7.85 -4.42,-10.68 -2.83,-2.83 -6.67,-4.43 -10.68,-4.43ZM345.19,191.28c0.4,0.03 0.77,0.21 1.04,0.51 0.27,0.29 0.42,0.68 0.42,1.08 0,0.4 -0.15,0.79 -0.42,1.08 -0.27,0.29 -0.64,0.47 -1.04,0.51 -0.22,0.02 -0.44,-0.01 -0.65,-0.08 -0.21,-0.07 -0.4,-0.19 -0.56,-0.33 -0.16,-0.15 -0.29,-0.33 -0.38,-0.53 -0.09,-0.2 -0.13,-0.42 -0.13,-0.64 0,-0.22 0.05,-0.44 0.13,-0.64 0.09,-0.2 0.22,-0.38 0.38,-0.53 0.16,-0.15 0.35,-0.26 0.56,-0.33 0.21,-0.07 0.43,-0.1 0.65,-0.08ZM347.56,196.82v10.29h-1.58v-4.76h-1.59v4.75h-1.58v-10.28c-1.6,-0.12 -3.19,-0.39 -4.75,-0.79l0.4,-1.58c4.42,1.05 9.04,1.05 13.46,0l0.39,1.58c-1.57,0.41 -3.17,0.67 -4.79,0.79h0.04Z"
android:fillColor="#5f6368"/>
</vector>

View File

@@ -1,40 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
android:fillColor="#FFFFFF"/>
<path
android:pathData="M242.5,226.9h-73.3c-1.7,0 -3.1,1.4 -3.1,3.1s1.4,3.1 3.1,3.1h73.3c1.7,0 3.1,-1.4 3.1,-3.1S244.2,226.9 242.5,226.9z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M182.7,222.6v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-2.9,1.2 -4.9,4 -4.9,7.4c0,4.4 3.5,8 8,8c4.4,0 8,-3.5 8,-8C187.6,226.7 185.6,223.8 182.7,222.6z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M209,222.6v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-2.9,1.2 -4.9,4 -4.9,7.4c0,4.4 3.5,8 8,8c4.4,0 8,-3.5 8,-8C213.9,226.7 211.9,223.8 209,222.6z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M235.2,222.6v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-2.9,1.2 -4.9,4 -4.9,7.4c0,4.4 3.5,8 8,8c4.4,0 8,-3.5 8,-8C240,226.7 238,223.8 235.2,222.6z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M325.4,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7V0h-4.4v231.9c0,12.2 9.9,22.2 22.1,22.2h203.8c12.2,0 22.1,-9.9 22.1,-22.2V14.8c2.4,0 4.4,-2 4.4,-4.4V0h-8.9V231.9z"
android:fillColor="#DADCE0"/>
</vector>

View File

@@ -1,33 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
android:strokeWidth="2.5"
android:fillColor="#ffffff"
android:strokeColor="#DADCE0"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M188.7,229.14V217.74H193.6L186.7,205.54L179.8,217.74H184.7V229.14C182.8,229.94 181.5,231.74 181.5,233.94C181.5,236.84 183.8,239.14 186.7,239.14C189.6,239.14 191.9,236.84 191.9,233.94C191.9,231.84 190.5,229.94 188.7,229.14Z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M208,229.14V217.74H212.9L206,205.54L199.1,217.74H204V229.14C202.1,229.94 200.8,231.74 200.8,233.94C200.8,236.84 203.1,239.14 206,239.14C208.9,239.14 211.2,236.84 211.2,233.94C211.2,231.84 209.9,229.94 208,229.14Z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M227.29,229.14V217.74H232.2L225.29,205.54L218.4,217.74H223.29V229.14C221.4,229.94 220.1,231.74 220.1,233.94C220.1,236.84 222.4,239.14 225.29,239.14C228.2,239.14 230.49,236.84 230.49,233.94C230.49,231.84 229.2,229.94 227.29,229.14Z"
android:fillColor="#1A73E8"/>
</group>
</vector>

View File

@@ -1,37 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
android:fillColor="#FFFFFF"/>
<path
android:pathData="M325.4,231.9c0,9.8 -7.9,17.7 -17.7,17.7H103.9c-9.8,0 -17.7,-7.9 -17.7,-17.7V0h-4.4v231.9c0,12.2 9.9,22.2 22.1,22.2h203.8c12.2,0 22.1,-9.9 22.1,-22.2V14.8c2.4,0 4.4,-2 4.4,-4.4V0h-8.9V231.9z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M242.4,226.9h-9.3h-5.6h-43.4h-4.7h-10.2c-1.7,0 -3.1,1.4 -3.1,3.1s1.4,3.1 3.1,3.1h10.2h3.9h45h4.8h9.3c1.7,0 3.1,-1.4 3.1,-3.1S244.1,226.9 242.4,226.9z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M194,223.5v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-1.6,0.7 -2.9,1.9 -3.8,3.4c-0.7,1.2 -1.1,2.5 -1.1,4c0,0.7 0.1,1.5 0.3,2.2c0.9,3.3 4,5.8 7.7,5.8c3.6,0 6.7,-2.5 7.7,-5.8c0.2,-0.7 0.3,-1.4 0.3,-2.2c0,-1.5 -0.4,-2.8 -1.1,-4C197,225.4 195.6,224.2 194,223.5z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M223.7,223.5v-17.5h7.5l-10.6,-18.7l-10.6,18.7h7.5v17.5c-1.6,0.7 -2.9,1.9 -3.8,3.4c-0.7,1.2 -1.1,2.5 -1.1,4c0,0.7 0.1,1.5 0.3,2.2c0.9,3.3 4,5.8 7.7,5.8c3.6,0 6.7,-2.5 7.7,-5.8c0.2,-0.7 0.3,-1.4 0.3,-2.2c0,-1.5 -0.4,-2.8 -1.1,-4C226.6,225.4 225.3,224.2 223.7,223.5z"
android:fillColor="#1A73E8"/>
</vector>

View File

@@ -1,30 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
android:strokeWidth="2.5"
android:fillColor="#ffffff"
android:strokeColor="#DADCE0"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M198.35,229.14V217.74H203.25L196.35,205.54L189.45,217.74H194.35V229.14C192.45,229.94 191.15,231.74 191.15,233.94C191.15,236.84 193.45,239.14 196.35,239.14C199.25,239.14 201.55,236.84 201.55,233.94C201.55,231.84 200.15,229.94 198.35,229.14Z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M217.65,229.14V217.74H222.55L215.65,205.54L208.75,217.74H213.65V229.14C211.75,229.94 210.45,231.74 210.45,233.94C210.45,236.84 212.75,239.14 215.65,239.14C218.55,239.14 220.85,236.84 220.85,233.94C220.85,231.84 219.55,229.94 217.65,229.14Z"
android:fillColor="#1A73E8"/>
</group>
</vector>

View File

@@ -1,71 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
android:fillColor="#FFFFFF"/>
<path
android:pathData="M274.9,97.7v-9.5c0,-1.3 -1.1,-2.4 -2.4,-2.4V35.9c0,-6.6 -5.3,-11.9 -11.9,-11.9H151.3c-6.6,0 -11.9,5.3 -11.9,11.9v228.2c0,6.6 5.3,11.9 11.9,11.9h109.4c6.6,0 11.9,-5.3 11.9,-11.9V147.6c1.3,0 2.4,-1.1 2.4,-2.4v-23.8c0,-1.3 -1.1,-2.4 -2.4,-2.4v-19C273.9,100.1 274.9,99 274.9,97.7zM270.2,264.1c0,5.2 -4.3,9.5 -9.5,9.5H151.3c-5.2,0 -9.5,-4.3 -9.5,-9.5V35.9c0,-5.2 4.3,-9.5 9.5,-9.5h109.4c5.2,0 9.5,4.3 9.5,9.5V264.1z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M176.7,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6h13.3v-24.6C183.4,212.6 180.4,209.6 176.7,209.6z">
<aapt:attr name="android:fillColor">
<gradient
android:startY="240.8954"
android:startX="176.7163"
android:endY="209.6335"
android:endX="176.7163"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.695" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
<path
android:pathData="M206,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6h13.3v-24.6C212.6,212.6 209.7,209.6 206,209.6z">
<aapt:attr name="android:fillColor">
<gradient
android:startY="240.8954"
android:startX="206"
android:endY="209.6335"
android:endX="206"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.695" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
<path
android:pathData="M235.3,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6h13.3v-24.6C241.9,212.6 239,209.6 235.3,209.6z">
<aapt:attr name="android:fillColor">
<gradient
android:startY="240.8954"
android:startX="235.2837"
android:endY="209.6335"
android:endX="235.2837"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.695" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
</vector>

View File

@@ -1,80 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2023 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
android:strokeWidth="2.5"
android:fillColor="#ffffff"
android:strokeColor="#DADCE0"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M176.84,188.94C173.14,188.94 170.24,191.94 170.24,195.54V220.14H183.54V195.54C183.54,191.94 180.54,188.94 176.84,188.94Z">
<aapt:attr name="android:fillColor">
<gradient
android:startX="176.89"
android:startY="220.23"
android:endX="176.89"
android:endY="188.97"
android:type="linear">
<item android:offset="0" android:color="#001A73E8"/>
<item android:offset="0.69" android:color="#FF1A73E8"/>
</gradient>
</aapt:attr>
</path>
<path
android:pathData="M206.14,188.94C202.44,188.94 199.54,191.94 199.54,195.54V220.14H212.84V195.54C212.74,191.94 209.84,188.94 206.14,188.94Z">
<aapt:attr name="android:fillColor">
<gradient
android:startX="206.19"
android:startY="220.23"
android:endX="206.19"
android:endY="188.97"
android:type="linear">
<item android:offset="0" android:color="#001A73E8"/>
<item android:offset="0.69" android:color="#FF1A73E8"/>
</gradient>
</aapt:attr>
</path>
<path
android:pathData="M235.44,188.94C231.74,188.94 228.84,191.94 228.84,195.54V220.14H242.14V195.54C242.04,191.94 239.14,188.94 235.44,188.94Z">
<aapt:attr name="android:fillColor">
<gradient
android:startX="235.49"
android:startY="220.23"
android:endX="235.49"
android:endY="188.97"
android:type="linear">
<item android:offset="0" android:color="#001A73E8"/>
<item android:offset="0.69" android:color="#FF1A73E8"/>
</gradient>
</aapt:attr>
</path>
</group>
</vector>

View File

@@ -1,57 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
android:fillColor="#FFFFFF"/>
<path
android:pathData="M274.9,97.7v-9.5c0,-1.3 -1.1,-2.4 -2.4,-2.4V35.9c0,-6.6 -5.3,-11.9 -11.9,-11.9H151.3c-6.6,0 -11.9,5.3 -11.9,11.9v228.2c0,6.6 5.3,11.9 11.9,11.9h109.4c6.6,0 11.9,-5.3 11.9,-11.9V147.6c1.3,0 2.4,-1.1 2.4,-2.4v-23.8c0,-1.3 -1.1,-2.4 -2.4,-2.4v-19C273.9,100.1 274.9,99 274.9,97.7zM270.2,264.1c0,5.2 -4.3,9.5 -9.5,9.5H151.3c-5.2,0 -9.5,-4.3 -9.5,-9.5V35.9c0,-5.2 4.3,-9.5 9.5,-9.5h109.4c5.2,0 9.5,4.3 9.5,9.5V264.1z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M188.6,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6h13.3v-24.6C195.3,212.6 192.3,209.6 188.6,209.6z">
<aapt:attr name="android:fillColor">
<gradient
android:startY="240.8954"
android:startX="188.65"
android:endY="209.6335"
android:endX="188.65"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.695" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
<path
android:pathData="M223.4,209.6c-3.7,0 -6.6,3 -6.6,6.6v24.6H230v-24.6C230,212.6 227.1,209.6 223.4,209.6z">
<aapt:attr name="android:fillColor">
<gradient
android:startY="240.8954"
android:startX="223.4"
android:endY="209.6335"
android:endX="223.4"
android:type="linear">
<item android:offset="0" android:color="#00669DF6"/>
<item android:offset="0.695" android:color="#FF669DF6"/>
</gradient>
</aapt:attr>
</path>
</vector>

View File

@@ -1,66 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2023 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
android:strokeWidth="2.5"
android:fillColor="#ffffff"
android:strokeColor="#DADCE0"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M188.15,188.94C184.45,188.94 181.55,191.94 181.55,195.54V220.14H194.85V195.54C194.85,191.94 191.85,188.94 188.15,188.94Z">
<aapt:attr name="android:fillColor">
<gradient
android:startX="188.2"
android:startY="220.23"
android:endX="188.2"
android:endY="188.97"
android:type="linear">
<item android:offset="0" android:color="#001A73E8"/>
<item android:offset="0.69" android:color="#FF1A73E8"/>
</gradient>
</aapt:attr>
</path>
<path
android:pathData="M222.95,188.94C219.25,188.94 216.35,191.94 216.35,195.54V220.14H229.55V195.54C229.55,191.94 226.65,188.94 222.95,188.94Z">
<aapt:attr name="android:fillColor">
<gradient
android:startX="222.95"
android:startY="220.23"
android:endX="222.95"
android:endY="188.97"
android:type="linear">
<item android:offset="0" android:color="#001A73E8"/>
<item android:offset="0.69" android:color="#FF1A73E8"/>
</gradient>
</aapt:attr>
</path>
</group>
</vector>

View File

@@ -1,34 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
android:fillColor="#FFFFFF"/>
<path
android:pathData="M287,187.8v-1.5h2.9v-13.7c0,-1.6 -1.3,-2.9 -2.9,-2.9v-23.2c1.6,0 2.9,-1.3 2.9,-2.9V132c0,-1.6 -1.3,-2.9 -2.9,-2.9V68.4c0,-8 -6.5,-14.5 -14.5,-14.5H139.4c-8,0 -14.5,6.5 -14.5,14.5v185.3c1,0.7 1.9,1.4 2.9,2.1V68.4c0,-6.4 5.2,-11.6 11.6,-11.6h133.1c6.4,0 11.6,5.2 11.6,11.6v188.7c1,-0.7 1.9,-1.4 2.9,-2.2v-50.5c1.6,0 2.9,-1.3 2.9,-2.9v-13.7L287,187.8L287,187.8z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M287,204.4c1.6,0 2.9,-1.3 2.9,-2.9v-14H287v-0.9h2.9v-14c0,-1.6 -1.3,-2.9 -2.9,-2.9"
android:fillColor="#1A73E8"/>
<path
android:pathData="M206.7,19.1c35,0 67.9,13.6 92.6,38.4C324,82.1 337.6,115 337.6,150s-13.6,67.9 -38.4,92.6c-24.7,24.7 -57.6,38.4 -92.6,38.4s-67.9,-13.6 -92.6,-38.4C89.4,217.9 75.7,185 75.7,150s13.6,-67.9 38.4,-92.6C138.9,32.7 171.7,19.1 206.7,19.1M206.7,17.1c-73.4,0 -133,59.5 -133,132.9s59.5,132.9 132.9,132.9s133,-59.5 133,-132.9S280.1,17.1 206.7,17.1L206.7,17.1z"
android:fillColor="#E8EAED"/>
</vector>

View File

@@ -1,44 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M255.38,94.3C255.38,93.14 256.32,92.21 257.47,92.21L275.86,92.21C277.01,92.21 277.95,93.14 277.95,94.3L267.08,95.14L255.38,94.3Z"
android:fillColor="#669DF6"/>
<path
android:pathData="M340.09,110.17L340.09,248.55A14.5,14.5 0,0 1,325.59 263.05L88,263.05A14.5,14.5 0,0 1,73.5 248.55L73.5,110.17A14.5,14.5 0,0 1,88 95.67L325.59,95.67A14.5,14.5 0,0 1,340.09 110.17z"
android:strokeWidth="3"
android:fillColor="#ffffff"
android:strokeColor="#DADCE0"/>
<path
android:pathData="M295.77,94.3C295.77,93.14 296.7,92.21 297.86,92.21L305.38,92.21C306.53,92.21 307.46,93.14 307.46,94.3L302.45,95.14L295.77,94.3Z"
android:fillColor="#DADCE0"/>
<group>
<clip-path
android:pathData="M274,30L274,30A93,93 0,0 1,367 123L367,123A93,93 0,0 1,274 216L274,216A93,93 0,0 1,181 123L181,123A93,93 0,0 1,274 30z"/>
<path
android:pathData="M274,30L274,30A93,93 0,0 1,367 123L367,123A93,93 0,0 1,274 216L274,216A93,93 0,0 1,181 123L181,123A93,93 0,0 1,274 30z"
android:fillColor="#ffffff"/>
<path
android:pathData="M206.07,85.49C206.07,83.45 207.72,81.79 209.75,81.79L242.17,81.79C244.21,81.79 245.86,83.45 245.86,85.49L226.7,86.97L206.07,85.49Z"
android:fillColor="#669DF6"/>
<path
android:pathData="M331.59,87C339.46,87 345.84,93.38 345.84,101.25L345.84,369.73C345.84,377.6 339.46,383.98 331.59,383.98L-111.85,383.98C-119.72,383.98 -126.1,377.6 -126.1,369.73L-126.1,101.25C-126.1,93.38 -119.72,87 -111.85,87L331.59,87Z"
android:strokeWidth="3.5"
android:fillColor="#ffffff"
android:strokeColor="#DADCE0"/>
<path
android:pathData="M266.77,85.49C266.77,83.45 268.42,81.79 270.46,81.79L283.72,81.79C285.75,81.79 287.4,83.45 287.4,85.49L278.56,86.97L266.77,85.49Z"
android:fillColor="#DADCE0"/>
</group>
<path
android:strokeWidth="1"
android:pathData="M274,30.5L274,30.5A92.5,92.5 0,0 1,366.5 123L366.5,123A92.5,92.5 0,0 1,274 215.5L274,215.5A92.5,92.5 0,0 1,181.5 123L181.5,123A92.5,92.5 0,0 1,274 30.5z"
android:fillColor="#00000000"
android:strokeColor="#DADCE0"/>
</group>
</vector>

View File

@@ -1,48 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5V28.5C0,12.8 12.5,0 27.8,0H384.3C399.5,0 412,12.8 412,28.5V271.7C412,287.2 399.5,300 384.2,300Z"
android:fillColor="#fff"/>
<path
android:pathData="M142,225.3H275.1a14.51,14.51 0,0 0,14.5 -14.5V69a2.9,2.9 0,0 0,2.9 -2.9v-17c-1.9,-1.6 -3.8,-3.2 -5.8,-4.7V210.8a11.61,11.61 0,0 1,-11.6 11.6H142a11.61,11.61 0,0 1,-11.6 -11.6V42.7c-1,0.7 -1.9,1.4 -2.9,2.1V210.9A14.62,14.62 0,0 0,142 225.3Z"
android:fillColor="#dadce0"/>
<path
android:pathData="M207.4,19.1a131.11,131.11 0,0 1,131 131,131 131,0 0,1 -262,-0.1 130.94,130.94 0,0 1,131 -130.9m0,-2A132.9,132.9 0,1 0,340.3 150,133 133,0 0,0 207.4,17.1Z"
android:fillColor="#e8eaed"/>
<path
android:fillColor="#FF000000"
android:pathData="M286.7,210.83a11.59,11.59 0,0 1,-11.58 11.58H142a11.59,11.59 0,0 1,-11.58 -11.58V183.26H286.7Z"/>
<path
android:pathData="M250.41,193.38a1.77,1.77 0,1 1,-1.78 1.77A1.77,1.77 0,0 1,250.41 193.38ZM253.07,199.58v11.53h-1.78v-5.32h-1.77v5.32h-1.77L247.75,199.58a30.78,30.78 0,0 1,-5.32 -0.89l0.44,-1.77a32.34,32.34 0,0 0,15.07 0l0.45,1.77A30.78,30.78 0,0 1,253.07 199.58Z"
android:fillColor="#fff"/>
<path
android:pathData="M208.55,202.84m-6.13,0a6.13,6.13 0,1 1,12.26 0a6.13,6.13 0,1 1,-12.26 0"
android:fillColor="#bdc1c6"/>
<path
android:pathData="M250.41,202.84m-22.28,0a22.28,22.28 0,1 1,44.56 0a22.28,22.28 0,1 1,-44.56 0"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#1a73e8"/>
<path
android:pathData="M160.45,202.84l10.43,6.02l0,-12.05l-10.43,6.03z"
android:fillColor="#bdc1c6"/>
</vector>

View File

@@ -1,39 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5V28.5C0,12.8 12.5,0 27.8,0H384.3C399.5,0 412,12.8 412,28.5V271.7C412,287.2 399.5,300 384.2,300Z"
android:fillColor="#fff"/>
<path
android:pathData="M142,225.3H275.1a14.51,14.51 0,0 0,14.5 -14.5V69a2.9,2.9 0,0 0,2.9 -2.9v-17c-1.9,-1.6 -3.8,-3.2 -5.8,-4.7V210.8a11.61,11.61 0,0 1,-11.6 11.6H142a11.61,11.61 0,0 1,-11.6 -11.6V42.7c-1,0.7 -1.9,1.4 -2.9,2.1V210.9A14.62,14.62 0,0 0,142 225.3Z"
android:fillColor="#dadce0"/>
<path
android:strokeWidth="1"
android:pathData="M286.7,144.13H266a19.63,19.63 0,1 0,0 39.26H286.7"
android:fillColor="#00000000"
android:strokeColor="#dadce0"/>
<path
android:pathData="M266,148.65a15.11,15.11 0,1 0,15.1 15.11A15.11,15.11 0,0 0,266 148.65ZM266,155.93a1.59,1.59 0,0 1,0 3.17,1.59 1.59,0 1,1 0,-3.17ZM268.37,161.47v10.29h-1.58L266.79,167h-1.59v4.75h-1.58L263.62,161.47a27.23,27.23 0,0 1,-4.75 -0.79l0.4,-1.58a29.06,29.06 0,0 0,13.46 0l0.39,1.58A27.23,27.23 0,0 1,268.33 161.47Z"
android:fillColor="#5f6368"/>
<path
android:pathData="M207.4,19.1a131.11,131.11 0,0 1,131 131,131 131,0 0,1 -262,-0.1 130.94,130.94 0,0 1,131 -130.9m0,-2A132.9,132.9 0,1 0,340.3 150,133 133,0 0,0 207.4,17.1Z"
android:fillColor="#e8eaed"/>
</vector>

View File

@@ -1,29 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
android:strokeWidth="2.5"
android:fillColor="#ffffff"
android:strokeColor="#DADCE0"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#DADCE0"/>
</group>
<path
android:strokeWidth="1"
android:pathData="M365.64,179.48H344.94C339.74,179.48 334.74,181.54 331.06,185.23C327.38,188.91 325.31,193.9 325.31,199.11C325.31,204.31 327.38,209.3 331.06,212.99C334.74,216.67 339.74,218.74 344.94,218.74H365.64"
android:fillColor="#00000000"
android:strokeColor="#DADCE0"/>
<path
android:pathData="M344.95,184C341.96,183.99 339.04,184.88 336.55,186.54C334.06,188.2 332.12,190.56 330.98,193.32C329.83,196.08 329.53,199.12 330.11,202.05C330.7,204.98 332.14,207.67 334.25,209.79C336.36,211.9 339.05,213.34 341.98,213.93C344.92,214.51 347.95,214.21 350.72,213.07C353.48,211.92 355.84,209.99 357.5,207.5C359.16,205.02 360.05,202.1 360.05,199.11C360.05,195.1 358.46,191.26 355.62,188.43C352.79,185.59 348.95,184 344.95,184ZM344.95,191.28C345.35,191.31 345.72,191.49 345.99,191.78C346.26,192.08 346.41,192.46 346.41,192.86C346.41,193.26 346.26,193.65 345.99,193.94C345.72,194.23 345.35,194.41 344.95,194.45C344.73,194.46 344.51,194.43 344.3,194.36C344.09,194.29 343.9,194.18 343.74,194.03C343.58,193.88 343.45,193.7 343.36,193.5C343.28,193.3 343.23,193.08 343.23,192.86C343.23,192.64 343.28,192.43 343.36,192.22C343.45,192.02 343.58,191.84 343.74,191.69C343.9,191.54 344.09,191.43 344.3,191.36C344.51,191.29 344.73,191.26 344.95,191.28ZM347.32,196.82V207.11H345.74V202.35H344.15V207.1H342.57V196.82C340.96,196.69 339.37,196.43 337.82,196.03L338.22,194.45C342.64,195.5 347.25,195.5 351.68,194.45L352.07,196.03C350.5,196.43 348.89,196.7 347.28,196.82H347.32Z"
android:fillColor="#5F6368"/>
</vector>

View File

@@ -1,58 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:fillColor="#FF000000"
android:pathData="M842.3,299.9H485.9c-15.3,0 -27.8,-12.8 -27.8,-28.5v-243c0,-15.7 12.5,-28.5 27.8,-28.5h356.5c15.2,0 27.7,12.8 27.7,28.5v243.2C870.1,287.1 857.6,299.9 842.3,299.9z"/>
<path
android:pathData="M597.6,225.2h133.1c8,0 14.5,-6.5 14.5,-14.5V68.9c1.6,0 2.9,-1.3 2.9,-2.9V49c-1.9,-1.6 -3.8,-3.2 -5.8,-4.7v166.4c0,6.4 -5.2,11.6 -11.6,11.6H597.6c-6.4,0 -11.6,-5.2 -11.6,-11.6V42.6c-1,0.7 -1.9,1.4 -2.9,2.1v166.1C583.2,218.7 589.7,225.2 597.6,225.2z"
android:fillColor="#80868B"/>
<path
android:pathData="M688,207.8h-47.8c-1.1,0 -2,0.9 -2,2s0.9,2 2,2H688c1.1,0 2,-0.9 2,-2S689.1,207.8 688,207.8z"
android:fillColor="#80868B"/>
<path
android:pathData="M656.5,205.6v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C659.7,208.3 658.3,206.4 656.5,205.6z"
android:fillColor="#669DF6"/>
<path
android:pathData="M675.8,205.6v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C679,208.3 677.7,206.4 675.8,205.6z"
android:fillColor="#669DF6"/>
<path
android:pathData="M664.2,19c35,0 67.9,13.6 92.6,38.4c24.7,24.7 38.4,57.6 38.4,92.6s-13.6,67.9 -38.4,92.6c-24.7,24.7 -57.6,38.4 -92.6,38.4s-67.9,-13.6 -92.6,-38.4c-24.7,-24.8 -38.4,-57.7 -38.4,-92.7s13.6,-67.9 38.4,-92.6C596.3,32.6 629.2,19 664.2,19M664.2,17c-73.4,0 -133,59.5 -133,132.9s59.5,132.9 132.9,132.9s133,-59.5 133,-132.9S737.6,17 664.2,17L664.2,17z"
android:fillColor="#3C4043"/>
<path
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
android:fillColor="#FFFFFF"/>
<path
android:pathData="M139.4,225.3h133.1c8,0 14.5,-6.5 14.5,-14.5V69c1.6,0 2.9,-1.3 2.9,-2.9v-17c-1.9,-1.6 -3.8,-3.2 -5.8,-4.7v166.4c0,6.4 -5.2,11.6 -11.6,11.6H139.4c-6.4,0 -11.6,-5.2 -11.6,-11.6V42.7c-1,0.7 -1.9,1.4 -2.9,2.1v166.1C125,218.8 131.5,225.3 139.4,225.3z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M229.9,207.9h-47.8c-1.1,0 -2,0.9 -2,2s0.9,2 2,2h47.8c1.1,0 2,-0.9 2,-2S231,207.9 229.9,207.9z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M198.4,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2s5.2,-2.3 5.2,-5.2C201.5,208.4 200.1,206.5 198.4,205.7z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M217.6,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2s5.2,-2.3 5.2,-5.2C220.9,208.4 219.5,206.5 217.6,205.7z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M206.1,19.1c35,0 67.9,13.6 92.6,38.4c24.7,24.7 38.4,57.6 38.4,92.6s-13.6,67.9 -38.4,92.6c-24.7,24.7 -57.6,38.4 -92.6,38.4s-67.9,-13.6 -92.6,-38.4S75.1,185 75.1,150s13.6,-67.9 38.4,-92.6C138.2,32.7 171.1,19.1 206.1,19.1M206.1,17.1c-73.4,0 -133,59.5 -133,132.9S132.6,282.9 206,282.9S339,223.4 339,150S279.5,17.1 206.1,17.1L206.1,17.1z"
android:fillColor="#E8EAED"/>
</vector>

View File

@@ -1,46 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2023 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
android:strokeWidth="2.5"
android:fillColor="#ffffff"
android:strokeColor="#DADCE0"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M198.35,229.14V217.74H203.25L196.35,205.54L189.45,217.74H194.35V229.14C192.45,229.94 191.15,231.74 191.15,233.94C191.15,236.84 193.45,239.14 196.35,239.14C199.25,239.14 201.55,236.84 201.55,233.94C201.55,231.84 200.15,229.94 198.35,229.14Z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M217.65,229.14V217.74H222.55L215.65,205.54L208.75,217.74H213.65V229.14C211.75,229.94 210.45,231.74 210.45,233.94C210.45,236.84 212.75,239.14 215.65,239.14C218.55,239.14 220.85,236.84 220.85,233.94C220.85,231.84 219.55,229.94 217.65,229.14Z"
android:fillColor="#1A73E8"/>
</group>
</vector>

View File

@@ -1,43 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<path
android:pathData="M384.2,300H27.8C12.5,300 0,287.2 0,271.5v-243C0,12.8 12.5,0 27.8,0h356.5C399.5,0 412,12.8 412,28.5v243.2C412,287.2 399.5,300 384.2,300z"
android:fillColor="#FFFFFF"/>
<path
android:pathData="M138,225.3h133.1c8,0 14.5,-6.5 14.5,-14.5V69c1.6,0 2.9,-1.3 2.9,-2.9V45.7c-1.9,-1.5 -3.8,-2.9 -5.8,-4.3v169.4c0,6.4 -5.2,11.6 -11.6,11.6H138c-6.4,0 -11.6,-5.2 -11.6,-11.6V43.5c-1,0.7 -1.9,1.5 -2.9,2.2v165C123.5,218.8 130,225.3 138,225.3z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M206,283.9c-73.9,0 -133.9,-60.1 -133.9,-133.9S132.1,16.1 206,16.1c73.9,0 133.9,60.1 133.9,133.9S279.9,283.9 206,283.9zM206,18.1C133.2,18.1 74.1,77.2 74.1,150S133.2,281.9 206,281.9S337.9,222.8 337.9,150S278.8,18.1 206,18.1z"
android:fillColor="#E8EAED"/>
<path
android:pathData="M229.9,207.9h-47.8c-1.1,0 -2,0.9 -2,2s0.9,2 2,2h47.8c1.1,0 2,-0.9 2,-2S231,207.9 229.9,207.9z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M190.9,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C194.1,208.4 192.8,206.5 190.9,205.7z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M208,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C211.2,208.4 209.9,206.5 208,205.7z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M225.1,205.7v-11.4h4.9l-6.9,-12.2l-6.9,12.2h4.9v11.4c-1.9,0.8 -3.2,2.6 -3.2,4.8c0,2.9 2.3,5.2 5.2,5.2c2.9,0 5.2,-2.3 5.2,-5.2C228.2,208.4 226.9,206.5 225.1,205.7z"
android:fillColor="#1A73E8"/>
</vector>

View File

@@ -1,49 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2023 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M0,0h412v300h-412z"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.86 266.06,47.86L287.85,47.86C289.22,47.86 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M364.52,66.19L364.52,236.14A14.75,14.75 0,0 1,349.77 250.89L62.23,250.89A14.75,14.75 0,0 1,47.48 236.14L47.48,66.19A14.75,14.75 0,0 1,62.23 51.44L349.77,51.44A14.75,14.75 0,0 1,364.52 66.19z"
android:strokeWidth="2.5"
android:fillColor="#ffffff"
android:strokeColor="#DADCE0"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.86 313.92,47.86L322.84,47.86C324.2,47.86 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M170.9,232.14L241.9,232.14A2,2 0,0 1,243.9 234.14L243.9,234.14A2,2 0,0 1,241.9 236.14L170.9,236.14A2,2 0,0 1,168.9 234.14L168.9,234.14A2,2 0,0 1,170.9 232.14z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M188.7,229.14V217.74H193.6L186.7,205.54L179.8,217.74H184.7V229.14C182.8,229.94 181.5,231.74 181.5,233.94C181.5,236.84 183.8,239.14 186.7,239.14C189.6,239.14 191.9,236.84 191.9,233.94C191.9,231.84 190.5,229.94 188.7,229.14Z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M208,229.14V217.74H212.9L206,205.54L199.1,217.74H204V229.14C202.1,229.94 200.8,231.74 200.8,233.94C200.8,236.84 203.1,239.14 206,239.14C208.9,239.14 211.2,236.84 211.2,233.94C211.2,231.84 209.9,229.94 208,229.14Z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M227.29,229.14V217.74H232.2L225.29,205.54L218.4,217.74H223.29V229.14C221.4,229.94 220.1,231.74 220.1,233.94C220.1,236.84 222.4,239.14 225.29,239.14C228.2,239.14 230.49,236.84 230.49,233.94C230.49,231.84 229.2,229.94 227.29,229.14Z"
android:fillColor="#1A73E8"/>
</group>
</vector>

View File

@@ -1,36 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="412dp"
android:height="300dp"
android:viewportWidth="412"
android:viewportHeight="300">
<group>
<clip-path
android:pathData="M62.23,50.19L349.77,50.19A16,16 0,0 1,365.77 66.19L365.77,236.14A16,16 0,0 1,349.77 252.14L62.23,252.14A16,16 0,0 1,46.23 236.14L46.23,66.19A16,16 0,0 1,62.23 50.19z"/>
<path
android:pathData="M46.23,204.14h320v48h-320z"
android:fillColor="#000000"/>
<path
android:pathData="M268.93,214.14C270.43,214.14 271.63,215.34 271.63,216.84C271.63,218.34 270.43,219.54 268.93,219.54C267.43,219.54 266.23,218.34 266.23,216.84C266.23,215.34 267.43,214.14 268.93,214.14ZM273.03,223.64V241.24H270.23V233.14H267.53V241.24H264.83V223.64C262.13,223.44 259.23,222.94 256.73,222.24L257.43,219.54C260.93,220.44 265.13,220.94 268.93,220.94C272.73,220.94 276.93,220.54 280.43,219.54L281.13,222.24C278.63,222.94 275.73,223.44 273.03,223.64Z"
android:fillColor="#ffffff"/>
<path
android:pathData="M206.23,238.04C211.42,238.04 215.63,233.83 215.63,228.64C215.63,223.45 211.42,219.24 206.23,219.24C201.04,219.24 196.83,223.45 196.83,228.64C196.83,233.83 201.04,238.04 206.23,238.04Z"
android:fillColor="#BDC0C4"/>
<path
android:pathData="M131.33,228.64L147.33,237.84V219.34L131.33,228.64Z"
android:fillColor="#BDC0C4"/>
</group>
<path
android:pathData="M62.23,51.69L349.77,51.69A14.5,14.5 0,0 1,364.27 66.19L364.27,236.14A14.5,14.5 0,0 1,349.77 250.64L62.23,250.64A14.5,14.5 0,0 1,47.73 236.14L47.73,66.19A14.5,14.5 0,0 1,62.23 51.69z"
android:strokeWidth="3"
android:fillColor="#00000000"
android:strokeColor="#DADCE0"/>
<path
android:pathData="M311.45,50.35C311.45,48.98 312.56,47.87 313.92,47.87L322.84,47.87C324.2,47.87 325.32,48.98 325.32,50.35L319.37,51.34L311.45,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M263.59,50.35C263.59,48.98 264.7,47.87 266.06,47.87L287.85,47.87C289.22,47.87 290.33,48.98 290.33,50.35L277.45,51.34L263.59,50.35Z"
android:fillColor="#DADCE0"/>
<path
android:pathData="M268.93,259.69C251.31,259.69 236.93,245.3 236.93,227.69C236.93,210.07 251.31,195.69 268.93,195.69C286.55,195.69 300.93,210.07 300.93,227.69C300.93,245.3 286.55,259.69 268.93,259.69ZM268.93,198.38C252.84,198.38 239.72,211.51 239.72,227.6C239.72,243.69 252.84,256.81 268.93,256.81C285.02,256.81 298.14,243.69 298.14,227.6C298.14,211.51 285.02,198.38 268.93,198.38Z"
android:fillColor="#729CEE"/>
</vector>

View File

@@ -1,46 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2019 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License
-->
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clipChildren="true">
<ScrollView
android:id="@+id/container_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbarStyle="outsideOverlay">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="24dp">
<include android:id="@+id/software_shortcut"
layout="@layout/accessibility_edit_shortcut_component"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="32dp" />
<include android:id="@+id/hardware_shortcut"
layout="@layout/accessibility_edit_shortcut_component" />
</LinearLayout>
</ScrollView>
</FrameLayout>

View File

@@ -1,61 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2019 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License
-->
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?android:attr/selectableItemBackground"
android:orientation="vertical">
<CheckBox
android:id="@+id/checkbox"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="48dp"
android:background="@null"
android:clickable="false"
android:focusable="false"
android:focusableInTouchMode="false"
android:paddingStart="12dp"
android:saveEnabled="false"
android:textColor="?android:attr/textColorAlertDialogListItem"
android:textSize="16sp" />
<TextView
android:id="@+id/summary"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingBottom="8dp"
android:paddingStart="44dp"
android:textAppearance="?android:attr/textAppearanceListItemSecondary"
android:textColor="?android:attr/textColorSecondary" />
</LinearLayout>
<include layout="@layout/accessibility_lottie_animation_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="44dp"/>
</LinearLayout>

View File

@@ -1,91 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2019 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License
-->
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:clipChildren="true">
<ScrollView
android:id="@+id/container_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbarStyle="outsideOverlay">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="24dp">
<include
android:id="@+id/software_shortcut"
layout="@layout/accessibility_edit_shortcut_component"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="32dp" />
<include
android:id="@+id/hardware_shortcut"
layout="@layout/accessibility_edit_shortcut_component"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="32dp" />
<include
android:id="@+id/two_finger_triple_tap_shortcut"
layout="@layout/accessibility_edit_shortcut_component"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="32dp"
android:visibility="gone" />
<LinearLayout
android:id="@+id/advanced_shortcut"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="?android:attr/listPreferredItemHeightSmall"
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:contentDescription="@null"
android:scaleType="centerCrop"
android:src="@drawable/ic_keyboard_arrow_down" />
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_vertical"
android:paddingStart="12dp"
android:text="@string/accessibility_shortcut_edit_dialog_title_advance"
android:textAppearance="?android:attr/textAppearanceListItem"
android:textColor="?android:attr/colorAccent"
android:textSize="16sp" />
</LinearLayout>
<include
android:id="@+id/triple_tap_shortcut"
layout="@layout/accessibility_edit_shortcut_component"
android:visibility="gone" />
</LinearLayout>
</ScrollView>
</FrameLayout>

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -5057,10 +5057,6 @@
<string name="accessibility_shortcut_edit_dialog_title_software_by_gesture">Accessibility gesture</string>
<!-- Summary for software shortcut in accessibility edit shortcut dialog. [CHAR LIMIT=NONE] -->
<string name="accessibility_shortcut_edit_dialog_summary_software">Tap the accessibility button <xliff:g id="accessibility_icon" example="[Icon]">%s</xliff:g> at the bottom of your screen. To switch between features, touch &amp; hold the accessibility button.</string>
<!-- Summary for software shortcut in gesture mode in accessibility edit shortcut dialog while using gesture navigation is enabled. [CHAR LIMIT=NONE] -->
<string name="accessibility_shortcut_edit_dialog_summary_software_gesture">Swipe up from the bottom of the screen with 2 fingers.\n\nTo switch between features, swipe up with 2 fingers and hold.</string>
<!-- Summary for software shortcut in gesture mode in accessibility edit shortcut dialog while using gesture navigation and touch exploration are enabled [CHAR LIMIT=NONE] -->
<string name="accessibility_shortcut_edit_dialog_summary_software_gesture_talkback">Swipe up from the bottom of the screen with 3 fingers.\n\nTo switch between features, swipe up with 3 fingers and hold.</string>
<!-- Summary for gesture shortcut option -->
<string name="accessibility_shortcut_edit_dialog_summary_gesture">{count, plural,
=1 {Swipe up from the bottom of your screen. To switch between features, swipe up and hold.}
@@ -5090,8 +5086,6 @@
<string name="accessibility_shortcut_hardware_keyword">volume keys</string>
<!-- Summary for hardware shortcut in accessibility edit shortcut dialog. [CHAR LIMIT=NONE] -->
<string name="accessibility_shortcut_edit_dialog_summary_hardware">Press &amp; hold both volume keys</string>
<!-- Title for two finger double tap shortcut in accessibility edit shortcut dialog. [CHAR LIMIT=NONE] -->
<string name="accessibility_shortcut_edit_dialog_title_two_finger_double_tap">Two-finger double-tap screen</string>
<!-- Title for 2-finger double tap shortcut in accessibility edit shortcut screen. [CHAR LIMIT=NONE] -->
<string name="accessibility_shortcut_edit_screen_title_two_finger_double_tap">%1$d-finger double tap</string>
<!-- Summary for 2-finger double tap shortcut in accessibility edit shortcut screen. [CHAR LIMIT=NONE] -->
@@ -5102,14 +5096,8 @@
<string name="accessibility_shortcut_edit_screen_summary_triple_tap">Quickly tap the screen %1$d times. This may slow down your device.</string>
<!-- 2-finger double tap is shown as part of list to compose user's accessibility shortcut list. [CHAR LIMIT=NONE] -->
<string name="accessibility_shortcut_two_finger_double_tap_keyword">%1$d-finger double tap</string>
<!-- Summary for two finger double tap shortcut in accessibility edit shortcut dialog. [CHAR LIMIT=NONE] -->
<string name="accessibility_shortcut_edit_dialog_summary_two_finger_double_tap">Quickly tap screen {0,number,integer} times with two fingers</string>
<!-- Title for triple tap shortcut in accessibility edit shortcut dialog. [CHAR LIMIT=NONE] -->
<string name="accessibility_shortcut_edit_dialog_title_triple_tap">Triple-tap screen</string>
<!-- Part of list to compose user's accessibility shortcut list. [CHAR LIMIT=NONE] -->
<string name="accessibility_shortcut_triple_tap_keyword">triple tap</string>
<!-- Summary for triple tap shortcut in accessibility edit shortcut dialog. [CHAR LIMIT=NONE] -->
<string name="accessibility_shortcut_edit_dialog_summary_triple_tap">Quickly tap screen {0,number,integer} times. This shortcut may slow down your device</string>
<!-- Title for the accessibility edit shortcut dialog to save the preference when user clicks it. [CHAR LIMIT=20] -->
<string name="accessibility_shortcut_edit_dialog_title_advance">Advanced</string>
<!-- Summary text appearing on the accessibility preference screen to enable screen magnification from the nav bar when the feature is enabled, but the accessibility button is not configured correctly for the feature to be used [CHAR LIMIT=none] -->

View File

@@ -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.
*

View File

@@ -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;
}

View File

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

View File

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

View File

@@ -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.

View File

@@ -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) {

View File

@@ -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;
}

View File

@@ -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,

View File

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

View File

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

View File

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

View File

@@ -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
*/

View File

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