Snap for 12229688 from afa281ce5b to 24Q4-release

Change-Id: I66a9203440ee8555fc75fbbf01a2ba94a3a6b8a2
This commit is contained in:
Android Build Coastguard Worker
2024-08-14 23:22:24 +00:00
30 changed files with 1215 additions and 278 deletions

View File

@@ -108,6 +108,7 @@ android_library {
"telephony_flags_core_java_lib", "telephony_flags_core_java_lib",
"setupdesign-lottie-loading-layout", "setupdesign-lottie-loading-layout",
"device_policy_aconfig_flags_lib", "device_policy_aconfig_flags_lib",
"keyboard_flags_lib",
], ],
plugins: ["androidx.room_room-compiler-plugin"], plugins: ["androidx.room_room-compiler-plugin"],

View File

@@ -66,3 +66,15 @@ java_aconfig_library {
name: "development_settings_flag_lib", name: "development_settings_flag_lib",
aconfig_declarations: "development_settings_flags", aconfig_declarations: "development_settings_flags",
} }
aconfig_declarations {
name: "keyboard_flags",
package: "com.android.settings.keyboard",
container: "system_ext",
srcs: ["keyboard/*.aconfig"],
}
java_aconfig_library {
name: "keyboard_flags_lib",
aconfig_declarations: "keyboard_flags",
}

View File

@@ -0,0 +1,9 @@
package: "com.android.settings.keyboard"
container: "system_ext"
flag {
name: "keyboard_and_touchpad_a11y_new_page_enabled"
namespace: "input"
description: "This flag enables or disables new page for physical keyboard and touchpad a11y features"
bug: "345399212"
}

View File

@@ -0,0 +1,62 @@
<!--
~ Copyright (C) 2024 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="412dp"
android:viewportWidth="412"
android:viewportHeight="412">
<group>
<clip-path
android:pathData="M0,0h412v412h-412z"/>
<path
android:pathData="M384,0H28C12.54,0 0,12.54 0,28V384C0,399.46 12.54,412 28,412H384C399.46,412 412,399.46 412,384V28C412,12.54 399.46,0 384,0Z"
android:fillColor="#000000"/>
<path
android:pathData="M392.38,173.12C392.38,147.42 371.58,126.86 346.11,126.86C326.79,126.86 310.39,138.61 303.29,155.25C296.43,148.15 286.64,143.75 276.11,143.75C260.2,143.75 246.51,153.54 240.88,167.74C237.21,166.03 233.29,165.05 229.13,165.05C224.66,165.05 220.48,166.11 216.79,167.99C211.35,170.77 213.35,179 219.46,179H386.55C389.77,179 392.39,176.4 392.39,173.18C392.39,173.16 392.39,173.14 392.39,173.12H392.38Z"
android:fillColor="#3C4043"/>
<path
android:pathData="M199.15,182.18C190.01,156.35 191.62,131.06 200.22,109.54C203.99,99.32 193.77,89.09 183.55,93.93C164.19,103.08 146.98,118.68 135.15,140.75C120.1,168.19 116.87,201.02 127.62,230.08C156.12,305.95 244.85,325.86 301.85,280.12C306.15,276.89 309.92,273.12 313.68,269.36C321.21,261.29 314.75,247.84 303.46,248.91C287.33,249.98 270.66,247.83 252.91,240.3C228.17,229.54 208.28,208.55 199.14,182.18H199.15Z"
android:fillColor="#F9AB00"/>
<path
android:pathData="M353.25,64.04C365.11,76.41 355.68,96.92 338.57,95.97L335.74,95.81C330.52,95.52 325.4,97.41 321.63,101.03L319.58,102.99C307.21,114.85 286.7,105.42 287.65,88.31L287.81,85.48C288.1,80.26 286.21,75.14 282.59,71.37L280.63,69.32C268.77,56.95 278.2,36.44 295.31,37.39L298.14,37.55C303.36,37.84 308.48,35.95 312.25,32.33L314.3,30.37C326.67,18.51 347.18,27.94 346.23,45.05L346.07,47.88C345.78,53.1 347.67,58.22 351.29,61.99L353.25,64.04Z"
android:strokeWidth="2.26997"
android:fillColor="#00000000"
android:strokeColor="#1A73E8"/>
<path
android:pathData="M79.5,311.95C96.63,312.45 104.3,333.67 91.44,345L89.31,346.87C85.38,350.33 83.07,355.26 82.92,360.49L82.84,363.32C82.34,380.45 61.12,388.12 49.79,375.26L47.92,373.13C44.46,369.2 39.53,366.89 34.3,366.74L31.47,366.66C14.34,366.16 6.67,344.94 19.53,333.61L21.66,331.74C25.59,328.28 27.9,323.35 28.05,318.12L28.13,315.29C28.63,298.16 49.85,290.49 61.18,303.35L63.05,305.48C66.51,309.41 71.44,311.72 76.67,311.87L79.5,311.95Z"
android:strokeWidth="2.26997"
android:fillColor="#00000000"
android:strokeColor="#D93025"/>
<path
android:pathData="M220.61,297.87C214.88,297.87 209.42,299.51 205.05,302.51C199.32,279.31 178.3,262.12 153.47,262.12C128.64,262.12 109.8,277.68 102.71,298.96C96.43,294.59 88.79,291.86 80.61,291.86C67.15,291.86 55.29,298.82 48.36,309.42C46.09,312.9 48.56,317.51 52.71,317.51H238.84C243.11,317.51 245.55,312.67 243.04,309.21C238.05,302.3 229.84,297.86 220.61,297.86V297.87Z"
android:fillColor="#3C4043"/>
<path
android:pathData="M99.26,237.27C107.22,244.78 101.87,258.15 90.93,258.1H89.12C85.78,258.08 82.58,259.45 80.29,261.88L79.05,263.2C71.54,271.16 58.17,265.81 58.22,254.87V253.06C58.24,249.72 56.87,246.52 54.44,244.23L53.12,242.99C45.16,235.48 50.51,222.11 61.45,222.16H63.26C66.6,222.18 69.8,220.81 72.09,218.38L73.33,217.06C80.84,209.1 94.21,214.45 94.16,225.39V227.2C94.14,230.54 95.51,233.74 97.94,236.03L99.26,237.27Z"
android:strokeWidth="2.26997"
android:fillColor="#00000000"
android:strokeColor="#1E8E3E"/>
<path
android:pathData="M381.01,335.46C388.11,341.2 384.52,352.66 375.41,353.32L373.9,353.43C371.12,353.63 368.55,354.97 366.8,357.14L365.85,358.31C360.11,365.41 348.65,361.82 347.99,352.71L347.88,351.2C347.68,348.42 346.34,345.85 344.17,344.1L343,343.15C335.9,337.41 339.49,325.95 348.6,325.29L350.11,325.18C352.89,324.98 355.46,323.64 357.21,321.47L358.16,320.3C363.9,313.2 375.36,316.79 376.02,325.9L376.13,327.41C376.33,330.19 377.67,332.76 379.84,334.51L381.01,335.46Z"
android:strokeWidth="2.26997"
android:fillColor="#00000000"
android:strokeColor="#1E8E3E"/>
<path
android:pathData="M86.28,44.32C98.91,46.65 102.15,63.25 91.33,70.16L89.54,71.3C86.24,73.41 83.96,76.8 83.24,80.65L82.85,82.74C80.52,95.37 63.92,98.61 57.01,87.79L55.87,86C53.76,82.7 50.37,80.42 46.52,79.7L44.43,79.31C31.8,76.98 28.56,60.38 39.38,53.47L41.17,52.33C44.47,50.22 46.75,46.83 47.47,42.98L47.86,40.89C50.19,28.26 66.79,25.02 73.7,35.84L74.84,37.63C76.95,40.93 80.34,43.21 84.19,43.93L86.28,44.32Z"
android:strokeWidth="2.26997"
android:fillColor="#00000000"
android:strokeColor="#F9AB00"/>
</group>
</vector>

View File

@@ -0,0 +1,81 @@
<!--
~ Copyright (C) 2024 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="412dp"
android:viewportWidth="412"
android:viewportHeight="412">
<group>
<clip-path
android:pathData="M0,0h412v412h-412z"/>
<path
android:pathData="M384,0H28C12.54,0 0,12.54 0,28V384C0,399.46 12.54,412 28,412H384C399.46,412 412,399.46 412,384V28C412,12.54 399.46,0 384,0Z"
android:fillColor="#000000"/>
<path
android:pathData="M388.81,244.64L252.55,99.8H158.3L24.49,239.88C28.08,246.82 35.84,251.76 45.06,251.76H58.07C77.9,229.58 106.73,215.61 138.82,215.61C170.91,215.61 199.74,229.58 219.57,251.76H371.66C378.59,251.76 384.69,248.98 388.82,244.65H388.81V244.64Z"
android:fillColor="#3B4043"/>
<path
android:pathData="M393.91,227.39C395.23,233.88 393.06,240.11 388.73,244.65H388.72L252.46,99.8H378.33L393.91,227.39Z"
android:fillColor="#00752A"/>
<path
android:pathData="M374.88,71.5C372.89,61.71 363.49,54.6 352.53,54.6H278.07C275.33,62.01 268.23,67.3 259.87,67.3H159.58C151.22,67.3 144.12,62.01 141.38,54.6H67.58C56.59,54.6 47.17,61.74 45.22,71.57L41.13,99.8H378.33L374.88,71.5Z"
android:fillColor="#7EB5FE"/>
<path
android:pathData="M158.21,99.8L24.4,239.88C22.47,236.16 21.73,231.87 22.61,227.45L41.12,99.8H158.21Z"
android:fillColor="#00752A"/>
<path
android:pathData="M42.79,88.16L82.41,75.6C88.19,73.77 94.39,73.82 100.14,75.75L128.66,85.31C135.15,87.49 142.21,87.26 148.56,84.67C154.79,82.13 161.72,81.86 168.13,83.93L175.72,86.37C180.43,87.89 185.45,88.16 190.29,87.15L252.84,74.17C257.24,73.26 261.79,73.39 266.12,74.57L311.12,86.76C315.79,88.02 320.71,88.08 325.41,86.93L343.07,82.6C348.04,81.38 353.25,81.52 358.15,83L376.97,88.69L378.33,99.8H41.12L42.79,88.16Z"
android:fillColor="#1A73E8"/>
<path
android:pathData="M379.71,163.04L376.86,161.08C375.38,160.06 374.74,158.2 375.28,156.49L376.33,153.19C377.26,150.26 374.73,147.39 371.7,147.95L368.3,148.58C366.53,148.91 364.76,148.04 363.94,146.45L362.35,143.38C360.93,140.65 357.11,140.41 355.37,142.95L353.41,145.8C352.39,147.28 350.53,147.92 348.82,147.38L345.52,146.33C342.59,145.4 339.72,147.93 340.28,150.96L340.91,154.36C341.24,156.13 340.37,157.9 338.78,158.72L335.71,160.31C333.84,161.28 333.14,163.37 333.7,165.16H381.31C381.05,164.34 380.53,163.58 379.73,163.03L379.71,163.04Z"
android:fillColor="#006725"/>
<path
android:pathData="M315.4,116.73L313.97,115.75C313.23,115.24 312.91,114.31 313.18,113.45L313.7,111.8C314.17,110.33 312.9,108.9 311.38,109.18L309.68,109.5C308.8,109.66 307.91,109.23 307.5,108.43L306.7,106.89C305.99,105.52 304.08,105.41 303.21,106.68L302.23,108.11C301.72,108.85 300.79,109.17 299.93,108.9L298.28,108.38C296.81,107.91 295.38,109.18 295.66,110.7L295.98,112.4C296.14,113.28 295.71,114.17 294.91,114.58L293.37,115.38C292.44,115.86 292.09,116.91 292.36,117.8H316.17C316.04,117.39 315.78,117.01 315.38,116.73H315.4Z"
android:fillColor="#006725"/>
<path
android:pathData="M103.02,139.55L100.83,138.05C99.69,137.27 99.2,135.84 99.62,134.53L100.42,132C101.13,129.75 99.19,127.55 96.87,127.98L94.26,128.47C92.91,128.72 91.55,128.06 90.91,126.84L89.69,124.48C88.6,122.38 85.67,122.2 84.34,124.15L82.84,126.34C82.06,127.48 80.63,127.97 79.32,127.55L76.79,126.75C74.54,126.04 72.34,127.98 72.77,130.3L73.26,132.91C73.51,134.26 72.85,135.62 71.63,136.26L69.27,137.48C67.84,138.22 67.3,139.83 67.73,141.2H104.25C104.05,140.57 103.65,139.99 103.04,139.56L103.02,139.55Z"
android:fillColor="#006725"/>
<path
android:pathData="M32.95,156.15L30.46,173.36H67.91C67.68,172.61 67.2,171.91 66.46,171.41L63.85,169.62C62.5,168.69 61.91,166.99 62.41,165.42L63.37,162.4C64.22,159.72 61.9,157.1 59.14,157.61L56.03,158.19C54.42,158.49 52.8,157.7 52.04,156.24L50.58,153.43C49.29,150.93 45.8,150.72 44.2,153.04L42.41,155.65C41.48,157 39.78,157.59 38.21,157.09L35.19,156.13C34.41,155.88 33.63,155.91 32.93,156.13L32.95,156.15Z"
android:fillColor="#006725"/>
<path
android:pathData="M202.85,187.03L202.06,211.24H213.72L212.72,187.03H202.85Z"
android:fillColor="#7F868C"/>
<path
android:pathData="M211.45,156.23H203.85L203.23,175.43H212.24L211.45,156.23Z"
android:fillColor="#7F868C"/>
<path
android:pathData="M209.39,106.23L209.12,99.8H205.68L205.47,106.23H209.39Z"
android:fillColor="#7F868C"/>
<path
android:pathData="M211.09,147.45L210.4,130.86H204.67L204.13,147.45H211.09Z"
android:fillColor="#7F868C"/>
<path
android:pathData="M204.88,124.43H210.14L209.65,112.66H205.26L204.88,124.43Z"
android:fillColor="#7F868C"/>
<path
android:pathData="M214.45,225.55H201.71L201.42,235.5C206.98,239.76 212.53,243.92 217.69,249.69H218L214.44,225.55H214.45Z"
android:fillColor="#7F868C"/>
<path
android:pathData="M141.03,179.06C89.29,178.41 46.73,219.68 46.08,271.42C45.43,323.16 86.7,365.72 138.44,366.37C190.18,367.02 232.74,325.75 233.39,274.01C234.17,222.27 192.77,179.71 141.03,179.06ZM67.82,245.03C79.07,215.8 107.66,195.23 140.78,195.62C173.89,196.01 201.84,217.35 212.31,246.84C213.22,249.3 211.28,251.76 208.69,251.76L167.43,251.24C159.02,241.15 145.44,235.98 131.73,238.95C123.84,240.63 117.11,244.9 112.2,250.46L71.32,249.94C68.73,250.07 66.92,247.48 67.83,245.02L67.82,245.03ZM122.66,347.87C87.99,339.98 62.25,308.8 62.77,271.68V271.42C62.77,268.96 65.23,267.28 67.56,267.93L103.26,278.67C103.39,279.96 103.65,281.26 103.91,282.55C106.24,293.16 112.96,301.69 121.76,306.61L127.32,343.73C127.71,346.19 125.25,348.39 122.66,347.87ZM153.45,348.52C150.86,349.04 148.66,346.71 149.18,344.12L156.29,307.12C166.77,301.69 173.88,291.6 175.56,280.08L212.04,270.25C214.37,269.6 216.7,271.41 216.7,273.87C216.31,311.25 189.02,342.17 153.45,348.51V348.52Z"
android:fillColor="#1A73E8"/>
<path
android:strokeWidth="1"
android:pathData="M139.74,299.91C153.98,299.91 165.52,288.37 165.52,274.13C165.52,259.89 153.98,248.35 139.74,248.35C125.5,248.35 113.96,259.89 113.96,274.13C113.96,288.37 125.5,299.91 139.74,299.91Z"
android:fillColor="#00000000"
android:strokeColor="#005CC3"/>
</group>
</vector>

View File

@@ -0,0 +1,83 @@
<!--
~ Copyright (C) 2024 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="412dp"
android:viewportWidth="412"
android:viewportHeight="412">
<group>
<clip-path
android:pathData="M0,0h412v412h-412z"/>
<path
android:pathData="M384,0H28C12.54,0 0,12.54 0,28V384C0,399.46 12.54,412 28,412H384C399.46,412 412,399.46 412,384V28C412,12.54 399.46,0 384,0Z"
android:fillColor="#000000"/>
<path
android:pathData="M169.93,276.93C173.11,290.9 174.7,297.89 173.77,303.93C172.42,312.67 167.51,320.47 160.21,325.47C155.17,328.93 148.18,330.52 134.21,333.69L126.71,335.4C112.74,338.58 105.75,340.17 99.71,339.24C90.97,337.89 83.17,332.98 78.17,325.68C74.71,320.64 73.13,313.65 69.95,299.68L68.24,292.18C65.06,278.21 63.47,271.22 64.4,265.18C65.75,256.44 70.66,248.64 77.96,243.64C83,240.18 89.99,238.6 103.96,235.42L111.46,233.71C125.43,230.53 132.42,228.94 138.46,229.87C147.2,231.22 155,236.13 160,243.43C163.46,248.47 165.05,255.46 168.22,269.43L169.93,276.93Z"
android:fillColor="#00752A"/>
<path
android:pathData="M191.17,273.74C195.68,293.55 197.93,303.46 196.61,312.02C194.69,324.42 187.74,335.47 177.39,342.56C170.24,347.46 160.33,349.71 140.52,354.22L129.89,356.64C110.08,361.15 100.17,363.4 91.61,362.08C79.21,360.16 68.16,353.21 61.06,342.86C56.16,335.71 53.91,325.8 49.4,305.99L46.98,295.36C42.47,275.55 40.22,265.64 41.54,257.08C43.46,244.68 50.41,233.63 60.76,226.53C67.91,221.63 77.82,219.38 97.63,214.87L108.26,212.45C128.07,207.94 137.98,205.69 146.54,207.01C158.94,208.93 169.99,215.88 177.09,226.23C181.99,233.38 184.24,243.29 188.75,263.1L191.17,273.73V273.74Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#00AB47"/>
<path
android:pathData="M211.39,270.71C217.16,296.08 220.05,308.76 218.35,319.73C215.9,335.61 206.99,349.76 193.74,358.84C184.58,365.11 171.9,368 146.53,373.77L132.92,376.87C107.55,382.64 94.87,385.53 83.9,383.83C68.02,381.38 53.87,372.47 44.79,359.22C38.52,350.06 35.63,337.38 29.86,312.01L26.76,298.4C20.99,273.03 18.1,260.35 19.8,249.38C22.25,233.5 31.16,219.35 44.41,210.27C53.56,204 66.25,201.11 91.62,195.34L105.23,192.24C130.6,186.47 143.28,183.58 154.25,185.28C170.13,187.73 184.28,196.64 193.36,209.89C199.63,219.04 202.52,231.73 208.29,257.1L211.39,270.71Z"
android:strokeWidth="3"
android:fillColor="#00000000"
android:strokeColor="#81C995"/>
<path
android:pathData="M253.51,117.5C250.2,112.06 248.72,105.46 249.75,98.66C252.08,83.33 266.33,72.78 281.58,75.1C288.48,76.15 294.41,79.65 298.61,84.59C304.08,81.12 310.76,79.53 317.65,80.57C332.86,82.88 343.31,97.18 340.98,112.51C339.95,119.31 336.57,125.17 331.81,129.39C335.11,134.83 336.59,141.43 335.56,148.23C333.23,163.56 319.01,174.11 303.8,171.8C296.91,170.75 291.01,167.25 286.81,162.31C281.33,165.78 274.63,167.37 267.73,166.32C252.48,164 242,149.7 244.33,134.37C245.36,127.57 248.74,121.71 253.51,117.5Z"
android:fillColor="#1C73E7"/>
<path
android:pathData="M301.87,63.25C310.34,57.87 320.69,55.4 331.36,57.02C354.93,60.6 371.12,82.75 367.51,106.5C365.91,117.04 360.68,126.12 353.31,132.65C358.42,141.08 360.71,151.3 359.11,161.83C355.5,185.58 333.47,201.93 309.9,198.35C299.23,196.73 290.08,191.31 283.58,183.65C275.09,189.03 264.72,191.49 254.02,189.87C230.39,186.28 214.16,164.12 217.77,140.37C219.37,129.83 224.61,120.75 232,114.23C226.88,105.8 224.57,95.58 226.17,85.04C229.78,61.29 251.85,44.95 275.48,48.53C286.17,50.15 295.35,55.58 301.86,63.24L301.87,63.25Z"
android:strokeLineJoin="round"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#659CF5"
android:strokeLineCap="round"/>
<path
android:pathData="M305.14,41.91C316.62,34.62 330.64,31.28 345.09,33.48C377.02,38.33 398.94,68.34 394.06,100.5C391.89,114.77 384.81,127.07 374.82,135.92C381.74,147.33 384.85,161.18 382.68,175.45C377.8,207.62 347.95,229.77 316.02,224.92C301.57,222.73 289.17,215.38 280.37,205.01C268.87,212.3 254.82,215.63 240.33,213.43C208.33,208.57 186.34,178.55 191.23,146.38C193.4,132.11 200.49,119.81 210.5,110.97C203.56,99.55 200.44,85.71 202.61,71.43C207.49,39.26 237.4,17.12 269.4,21.98C283.88,24.18 296.32,31.53 305.13,41.91H305.14Z"
android:strokeLineJoin="round"
android:strokeWidth="3"
android:fillColor="#00000000"
android:strokeColor="#89B3F8"
android:strokeLineCap="round"/>
<path
android:pathData="M310.7,107.65L310.09,107.56L302.74,106.44L288.07,104.21L280.91,103.12L280.1,103C273.27,101.96 266.89,106.66 265.85,113.49L263.3,130.29C262.61,134.86 265.75,139.12 270.31,139.81C273,140.22 275.73,139.29 277.61,137.32L284.07,130.57L298.74,132.8L302.9,141.16C304.11,143.6 306.44,145.29 309.13,145.7C313.7,146.39 317.96,143.25 318.65,138.69L321.2,121.89C322.24,115.06 317.54,108.68 310.71,107.64L310.7,107.65Z"
android:fillColor="#171717"/>
<path
android:pathData="M276.2,122.42L280.3,123.05L280.92,118.95L285.02,119.57L285.64,115.47L281.54,114.85L282.16,110.75L278.07,110.13L277.45,114.23L273.35,113.61L272.73,117.7L276.82,118.33L276.2,122.42Z"
android:fillColor="#1C73E7"/>
<path
android:pathData="M303.34,126.02C304.95,126.02 306.26,124.71 306.26,123.1C306.26,121.49 304.95,120.18 303.34,120.18C301.73,120.18 300.42,121.49 300.42,123.1C300.42,124.71 301.73,126.02 303.34,126.02Z"
android:fillColor="#1C73E7"/>
<path
android:pathData="M309.97,120.81C311.58,120.81 312.89,119.5 312.89,117.89C312.89,116.28 311.58,114.97 309.97,114.97C308.35,114.97 307.05,116.28 307.05,117.89C307.05,119.5 308.35,120.81 309.97,120.81Z"
android:fillColor="#1C73E7"/>
<path
android:pathData="M110.86,311.33L100.08,263.97L142.68,279.18L110.85,311.33H110.86Z"
android:fillColor="#171717"/>
<path
android:pathData="M66.59,97.12C78.25,85.46 97.16,85.46 108.82,97.12C120.48,108.78 120.48,127.69 108.82,139.35L99.07,149.1C87.41,160.76 68.5,160.76 56.84,149.1C45.18,137.44 45.18,118.53 56.84,106.87L66.59,97.12Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FFB900"/>
<path
android:pathData="M332.68,258.12C335.52,253.38 342.39,253.38 345.24,258.12L348.44,263.45C350.1,266.22 353.37,267.57 356.5,266.79L362.53,265.28C367.89,263.94 372.75,268.8 371.41,274.16L369.9,280.19C369.12,283.32 370.47,286.59 373.24,288.25L378.57,291.45C383.31,294.29 383.31,301.16 378.57,304.01L373.24,307.21C370.47,308.87 369.12,312.14 369.9,315.27L371.41,321.3C372.75,326.66 367.89,331.52 362.53,330.18L356.5,328.67C353.37,327.89 350.1,329.24 348.44,332.01L345.24,337.34C342.4,342.08 335.53,342.08 332.68,337.34L329.48,332.01C327.82,329.24 324.55,327.89 321.42,328.67L315.39,330.18C310.03,331.52 305.17,326.66 306.51,321.3L308.02,315.27C308.8,312.14 307.45,308.87 304.68,307.21L299.35,304.01C294.61,301.17 294.61,294.3 299.35,291.45L304.68,288.25C307.45,286.59 308.8,283.32 308.02,280.19L306.51,274.16C305.17,268.8 310.03,263.94 315.39,265.28L321.42,266.79C324.55,267.57 327.82,266.22 329.48,263.45L332.68,258.12Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#EA4335"/>
</group>
</vector>

View File

@@ -0,0 +1,56 @@
<!--
~ Copyright (C) 2024 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="412dp"
android:viewportWidth="412"
android:viewportHeight="412">
<group>
<clip-path
android:pathData="M0,0h412v412h-412z"/>
<path
android:pathData="M384,0.2H28C12.54,0.2 0,12.74 0,28.2V384.2C0,399.66 12.54,412.2 28,412.2H384C399.46,412.2 412,399.66 412,384.2V28.2C412,12.74 399.46,0.2 384,0.2Z"
android:fillColor="#000000"/>
<path
android:pathData="M146.64,179.97C181.43,154.82 229.04,185.27 220.78,227.4L219.42,234.37C216.9,247.23 219.83,260.56 227.51,271.18L231.67,276.93C256.82,311.72 226.37,359.33 184.24,351.07L177.27,349.71C164.41,347.19 151.08,350.12 140.46,357.8L134.71,361.96C99.92,387.11 52.31,356.66 60.57,314.53L61.93,307.57C64.45,294.71 61.52,281.38 53.84,270.76L49.68,265.01C24.53,230.22 54.98,182.61 97.11,190.87L104.08,192.23C116.94,194.75 130.27,191.82 140.89,184.14L146.64,179.98V179.97Z"
android:fillColor="#1C73E7"/>
<path
android:pathData="M361.61,135.37C356.66,153.92 354.19,163.19 349.31,169.77C342.25,179.29 331.57,185.47 319.8,186.85C311.67,187.8 302.39,185.32 283.85,180.37L273.9,177.71C255.36,172.76 246.08,170.29 239.5,165.41C229.98,158.35 223.8,147.67 222.42,135.9C221.47,127.77 223.95,118.49 228.9,99.95L231.56,90C236.51,71.46 238.98,62.18 243.86,55.6C250.92,46.08 261.6,39.9 273.37,38.52C281.5,37.57 290.78,40.05 309.32,45L319.27,47.66C337.82,52.61 347.09,55.08 353.67,59.96C363.19,67.02 369.37,77.7 370.75,89.47C371.7,97.6 369.22,106.88 364.27,125.42L361.61,135.37Z"
android:fillColor="#F9AA00"/>
<path
android:pathData="M348.57,230.93C345.11,227.47 337.24,229.18 327.74,234.66C324.89,224.07 320.54,217.29 315.65,217.29C310.76,217.29 306.4,224.07 303.56,234.66C294.06,229.18 286.19,227.47 282.73,230.93C279.27,234.39 280.98,242.26 286.46,251.76C275.87,254.6 269.09,258.96 269.09,263.85C269.09,268.74 275.87,273.1 286.46,275.94C280.98,285.44 279.27,293.32 282.73,296.77C286.19,300.23 294.06,298.52 303.56,293.04C306.4,303.63 310.76,310.41 315.65,310.41C320.54,310.41 324.9,303.63 327.74,293.04C337.24,298.52 345.12,300.23 348.57,296.77C352.03,293.31 350.32,285.44 344.84,275.94C355.43,273.09 362.21,268.74 362.21,263.85C362.21,258.96 355.43,254.6 344.84,251.76C350.32,242.26 352.03,234.38 348.57,230.93Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:fillType="evenOdd"
android:strokeColor="#D83025"/>
<path
android:pathData="M194.81,56.17C203.12,68.34 199.99,84.94 187.83,93.25C175.66,101.56 159.06,98.43 150.75,86.27L143.81,76.1C135.5,63.93 138.63,47.33 150.79,39.02C162.96,30.71 179.56,33.84 187.87,46L194.81,56.17Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#1F8D3E"/>
<path
android:pathData="M130.96,158.11C130.5,159.35 130.27,159.97 130.01,160.47C128.02,164.37 123.61,166.39 119.35,165.37C118.8,165.24 118.18,165.01 116.94,164.55L75.56,149.24C74.32,148.78 73.7,148.55 73.2,148.29C69.3,146.3 67.28,141.89 68.3,137.63C68.43,137.08 68.66,136.46 69.12,135.22L76.78,114.53C83.1,97.45 102.06,88.73 119.14,95.05C136.22,101.37 144.94,120.33 138.62,137.41L130.96,158.1V158.11Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#D83025"/>
<path
android:pathData="M152.86,267.48C151.12,267.79 149.53,267.48 148.08,266.55C146.7,265.52 145.85,264.13 145.54,262.39C145.23,260.65 145.54,259.1 146.5,257.73C147.52,256.27 148.9,255.38 150.63,255.06C152.36,254.74 153.93,255.11 155.31,256.14C156.76,257.07 157.64,258.41 157.95,260.15C158.26,261.89 157.91,263.49 156.89,264.95C155.94,266.32 154.6,267.16 152.86,267.47V267.48ZM128.04,271.95C126.3,272.26 124.71,271.95 123.26,271.02C121.88,269.99 121.03,268.6 120.72,266.86C120.41,265.12 120.72,263.57 121.68,262.2C122.7,260.74 124.08,259.85 125.81,259.53C127.54,259.21 129.11,259.58 130.49,260.61C131.94,261.54 132.82,262.88 133.13,264.62C133.44,266.36 133.09,267.96 132.07,269.42C131.12,270.79 129.78,271.63 128.04,271.94V271.95ZM145.15,295.79C140.18,296.68 135.43,296.13 130.88,294.13C126.42,292.11 122.83,289.04 120.12,284.92L164.81,276.87C163.71,281.68 161.38,285.82 157.82,289.28C154.34,292.73 150.12,294.9 145.15,295.79ZM148.72,315.65C142.51,316.77 136.47,316.66 130.59,315.33C124.78,313.9 119.49,311.56 114.72,308.32C110.02,304.98 105.98,300.84 102.61,295.89C99.31,290.85 97.1,285.22 95.98,279.01C94.86,272.8 94.98,266.8 96.33,261.01C97.75,255.12 100.08,249.83 103.34,245.14C106.66,240.35 110.81,236.32 115.77,233.03C120.8,229.65 126.42,227.4 132.62,226.28C138.82,225.16 144.84,225.32 150.65,226.75C156.53,228.08 161.82,230.42 166.52,233.76C171.29,237 175.33,241.14 178.63,246.19C182,251.14 184.24,256.71 185.36,262.92C186.48,269.13 186.33,275.18 184.91,281.07C183.56,286.87 181.23,292.16 177.9,296.94C174.64,301.63 170.5,305.66 165.47,309.05C160.51,312.34 154.92,314.54 148.72,315.66V315.65ZM146.93,305.72C156.53,303.99 164.11,299.12 169.67,291.12C175.23,283.11 177.15,274.31 175.42,264.71C173.69,255.11 168.82,247.53 160.82,241.97C152.81,236.41 144.01,234.49 134.41,236.22L132.92,236.49C132.42,236.58 131.94,236.75 131.48,237.01C131.07,237.6 130.84,238.19 130.78,238.8C130.72,239.41 130.75,240.04 130.87,240.71C131.18,242.45 132.03,243.83 133.41,244.87C134.86,245.8 136.45,246.12 138.19,245.8C138.93,245.67 139.57,245.42 140.11,245.07C140.73,244.7 141.37,244.46 142.03,244.34C143.02,244.16 143.92,244.38 144.71,245.01C145.51,245.64 145.99,246.44 146.17,247.44C146.51,249.34 145.83,250.75 144.11,251.66C142.46,252.47 140.93,253 139.53,253.25C135.81,253.92 132.34,253.18 129.13,251.02C125.99,248.77 124.08,245.78 123.41,242.05L123.28,241.31C123.24,241.06 123.22,240.72 123.23,240.29C116.81,244.01 111.98,249.19 108.73,255.84C105.49,262.49 104.55,269.62 105.92,277.24C107.65,286.84 112.52,294.42 120.52,299.98C128.53,305.54 137.33,307.46 146.93,305.73V305.72Z"
android:fillColor="#004FAC"/>
<path
android:pathData="M293.93,132.47C301.29,134.5 308.23,133.67 314.75,129.97C321.28,126.21 325.56,120.68 327.58,113.37C328.05,111.67 328.36,110.01 328.51,108.39C328.67,106.72 328.66,105.06 328.46,103.41C326.72,103.93 324.96,104.22 323.17,104.26C321.38,104.3 319.61,104.08 317.86,103.59C314.89,102.77 312.27,101.34 310,99.29C307.8,97.2 306.18,94.69 305.16,91.75C302.77,93.75 300.07,95.08 297.06,95.72C294.11,96.33 291.16,96.22 288.19,95.4C286.43,94.92 284.8,94.2 283.28,93.25C281.76,92.3 280.4,91.15 279.17,89.81C278.16,91.13 277.29,92.54 276.58,94.06C275.88,95.52 275.3,97.11 274.83,98.81C272.81,106.12 273.65,113.06 277.33,119.63C281.09,126.16 286.62,130.44 293.93,132.46V132.47ZM289.27,110.78C290.42,111.1 291.49,110.98 292.47,110.42C293.52,109.82 294.21,108.95 294.52,107.79C294.83,106.63 294.69,105.56 294.08,104.56C293.54,103.52 292.69,102.85 291.54,102.53C290.39,102.21 289.28,102.35 288.23,102.95C287.25,103.51 286.6,104.36 286.28,105.52C285.96,106.67 286.07,107.77 286.62,108.81C287.23,109.81 288.11,110.46 289.27,110.78ZM309.05,116.24C310.2,116.56 311.27,116.44 312.25,115.88C313.3,115.28 313.99,114.41 314.3,113.25C314.61,112.09 314.47,111.02 313.86,110.02C313.32,108.98 312.47,108.31 311.32,107.99C310.17,107.67 309.06,107.81 308.01,108.41C307.03,108.97 306.38,109.82 306.06,110.98C305.74,112.14 305.85,113.23 306.4,114.27C307.01,115.27 307.89,115.92 309.05,116.24ZM290,88.81C293.19,89.69 296.22,89.31 299.09,87.68C301.96,86.05 303.84,83.64 304.72,80.45L305.13,78.97C301.27,78.38 297.51,78.61 293.85,79.67C290.19,80.73 286.9,82.45 284,84.85C284.81,85.78 285.71,86.59 286.7,87.28C287.69,87.97 288.79,88.48 290,88.81ZM319.67,97C320.88,97.33 322.08,97.49 323.27,97.46C324.47,97.38 325.67,97.12 326.86,96.68C325.59,93.14 323.65,89.97 321.05,87.19C318.5,84.42 315.4,82.29 311.72,80.8L311.31,82.28C310.43,85.47 310.81,88.5 312.44,91.37C314.07,94.24 316.48,96.12 319.67,97ZM257.98,136.74C256.06,136.21 254.63,135.05 253.71,133.26C252.79,131.47 252.67,129.63 253.37,127.75L265.32,96.01C267.03,91.52 269.46,87.54 272.6,84.09C275.79,80.65 279.39,77.92 283.38,75.89C287.44,73.82 291.76,72.52 296.33,72.01C300.98,71.46 305.63,71.83 310.3,73.11C314.97,74.4 319.13,76.46 322.78,79.3C326.5,82.1 329.55,85.42 331.91,89.27C334.35,93.08 336.03,97.27 336.96,101.84C337.94,106.43 338.02,111.09 337.18,115.83L331.17,149.2C330.8,151.17 329.77,152.69 328.05,153.75C326.33,154.81 324.52,155.08 322.6,154.55L257.98,136.73V136.74ZM292.11,139.06C285.24,137.17 279.58,133.57 275.13,128.26C270.7,122.9 268.07,116.88 267.25,110.21L259.8,130.15L324.42,147.97L328.24,127.03C324.12,132.34 318.78,136.16 312.22,138.49C305.73,140.78 299.03,140.97 292.11,139.06ZM292.11,139.06C299.03,140.97 305.21,142.67 310.65,144.17C316.14,145.69 320.13,146.78 322.6,147.47L324.41,147.97L259.79,130.15L261.6,130.65C264.07,131.33 268.06,132.43 273.55,133.95C279.04,135.47 285.23,137.17 292.09,139.06H292.11Z"
android:fillColor="#FFEEBE"/>
</group>
</vector>

View File

@@ -0,0 +1,118 @@
<!--
~ Copyright (C) 2024 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="412dp"
android:viewportWidth="412"
android:viewportHeight="412">
<group>
<clip-path
android:pathData="M0,0h412v412h-412z"/>
<path
android:pathData="M384,0H28C12.54,0 0,12.54 0,28V384C0,399.46 12.54,412 28,412H384C399.46,412 412,399.46 412,384V28C412,12.54 399.46,0 384,0Z"
android:fillColor="#000000"/>
<path
android:pathData="M81.65,103.36C94.23,106.21 96.82,122.99 85.68,129.5L83.84,130.58C80.44,132.57 78.01,135.87 77.14,139.71L76.67,141.79C73.82,154.37 57.04,156.96 50.53,145.82L49.45,143.98C47.46,140.58 44.16,138.15 40.32,137.28L38.24,136.81C25.66,133.96 23.07,117.18 34.21,110.67L36.05,109.59C39.45,107.6 41.88,104.3 42.75,100.46L43.22,98.38C46.07,85.8 62.85,83.21 69.36,94.35L70.44,96.19C72.43,99.59 75.73,102.02 79.57,102.89L81.65,103.36Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#4285F4"/>
<path
android:pathData="M364.93,340.67C377.51,343.52 380.1,360.3 368.96,366.81L367.12,367.89C363.72,369.88 361.29,373.18 360.42,377.02L359.95,379.1C357.1,391.68 340.32,394.27 333.81,383.13L332.73,381.29C330.74,377.89 327.44,375.46 323.6,374.59L321.52,374.12C308.94,371.27 306.35,354.49 317.49,347.98L319.33,346.9C322.73,344.91 325.16,341.61 326.03,337.77L326.5,335.69C329.35,323.11 346.13,320.52 352.64,331.66L353.72,333.5C355.71,336.9 359.01,339.33 362.85,340.2L364.93,340.67Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#EA4335"/>
<path
android:pathData="M70.27,311.22C73.06,306.56 79.82,306.56 82.61,311.22L85.75,316.46C87.38,319.18 90.6,320.51 93.67,319.74L99.6,318.25C104.87,316.93 109.65,321.71 108.33,326.98L106.84,332.91C106.07,335.98 107.4,339.2 110.12,340.83L115.36,343.97C120.02,346.76 120.02,353.52 115.36,356.31L110.12,359.45C107.4,361.08 106.07,364.3 106.84,367.37L108.33,373.3C109.65,378.57 104.87,383.35 99.6,382.03L93.67,380.54C90.6,379.77 87.38,381.1 85.75,383.82L82.61,389.06C79.82,393.72 73.06,393.72 70.27,389.06L67.13,383.82C65.5,381.1 62.28,379.77 59.21,380.54L53.28,382.03C48.01,383.35 43.23,378.57 44.55,373.3L46.04,367.37C46.81,364.3 45.48,361.08 42.76,359.45L37.52,356.31C32.86,353.52 32.86,346.76 37.52,343.97L42.76,340.83C45.48,339.2 46.81,335.98 46.04,332.91L44.55,326.98C43.23,321.71 48.01,316.93 53.28,318.25L59.21,319.74C62.28,320.51 65.5,319.18 67.13,316.46L70.27,311.22Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#EA4335"/>
<path
android:pathData="M349.46,192.02C350.8,189.79 354.02,189.79 355.36,192.02L356.86,194.53C357.64,195.83 359.18,196.47 360.65,196.1L363.48,195.39C366,194.76 368.28,197.04 367.65,199.56L366.94,202.39C366.57,203.86 367.21,205.4 368.51,206.18L371.02,207.68C373.25,209.02 373.25,212.24 371.02,213.58L368.51,215.08C367.21,215.86 366.57,217.4 366.94,218.87L367.65,221.7C368.28,224.22 366,226.5 363.48,225.87L360.65,225.16C359.18,224.79 357.64,225.43 356.86,226.73L355.36,229.24C354.02,231.47 350.8,231.47 349.46,229.24L347.96,226.73C347.18,225.43 345.64,224.79 344.17,225.16L341.34,225.87C338.82,226.5 336.54,224.22 337.17,221.7L337.88,218.87C338.25,217.4 337.61,215.86 336.31,215.08L333.8,213.58C331.57,212.24 331.57,209.02 333.8,207.68L336.31,206.18C337.61,205.4 338.25,203.86 337.88,202.39L337.17,199.56C336.54,197.04 338.82,194.76 341.34,195.39L344.17,196.1C345.64,196.47 347.18,195.83 347.96,194.53L349.46,192.02Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#4285F4"/>
<path
android:pathData="M50.02,303.87L76.47,281.69C82,277.05 82.72,268.82 78.09,263.29C73.45,257.76 65.21,257.04 59.69,261.67L33.23,283.85C27.71,288.49 26.98,296.73 31.62,302.25C36.25,307.78 44.49,308.5 50.02,303.87Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#4285F4"/>
<path
android:pathData="M190.87,53.46L220.77,70.72C227.01,74.33 235,72.19 238.61,65.94C242.21,59.7 240.07,51.71 233.83,48.1L203.93,30.84C197.69,27.24 189.7,29.38 186.09,35.62C182.49,41.87 184.63,49.86 190.87,53.46Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#4285F4"/>
<path
android:pathData="M372.69,173.54C384.92,173.54 394.84,163.63 394.84,151.39C394.84,139.16 384.92,129.24 372.69,129.24C360.46,129.24 350.54,139.16 350.54,151.39C350.54,163.63 360.46,173.54 372.69,173.54Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#EA4335"/>
<path
android:pathData="M54.85,200.83C63.95,200.83 71.33,193.45 71.33,184.35C71.33,175.25 63.95,167.87 54.85,167.87C45.75,167.87 38.37,175.25 38.37,184.35C38.37,193.45 45.75,200.83 54.85,200.83Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#EA4335"/>
<path
android:pathData="M54.85,75.46C67.92,75.46 78.52,64.86 78.52,51.79C78.52,38.71 67.92,28.12 54.85,28.12C41.78,28.12 31.18,38.71 31.18,51.79C31.18,64.86 41.78,75.46 54.85,75.46Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#EA4335"/>
<path
android:pathData="M149.34,366.63C158.44,366.63 165.82,359.25 165.82,350.15C165.82,341.05 158.44,333.67 149.34,333.67C140.24,333.67 132.86,341.05 132.86,350.15C132.86,359.25 140.24,366.63 149.34,366.63Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FFB900"/>
<path
android:pathData="M164.35,104.14C188.06,81.2 225.76,81.2 249.47,104.14C256.72,111.16 265.61,116.28 275.34,119.03C307.12,128.03 325.97,160.58 317.9,192.52C315.43,202.29 315.43,212.53 317.9,222.3C325.97,254.24 307.12,286.79 275.34,295.79C265.62,298.54 256.73,303.66 249.47,310.68C225.76,333.62 188.06,333.62 164.35,310.68C157.1,303.66 148.21,298.54 138.48,295.79C106.7,286.79 87.85,254.24 95.92,222.3C98.39,212.53 98.39,202.29 95.92,192.52C87.85,160.58 106.7,128.03 138.48,119.03C148.21,116.28 157.09,111.16 164.35,104.14Z"
android:fillColor="#1E8E3E"/>
<path
android:pathData="M291.79,39.71C294.08,44.56 295.22,46.98 295.37,49.27C295.58,52.57 294.42,55.82 292.16,58.24C290.6,59.91 288.17,61.05 283.32,63.34L280.72,64.57C275.87,66.86 273.45,68 271.16,68.15C267.86,68.36 264.61,67.2 262.19,64.94C260.52,63.38 259.38,60.95 257.09,56.1L255.86,53.5C253.57,48.65 252.43,46.23 252.28,43.94C252.07,40.64 253.23,37.39 255.49,34.97C257.05,33.3 259.48,32.16 264.33,29.87L266.93,28.64C271.78,26.35 274.2,25.21 276.49,25.06C279.79,24.85 283.04,26.01 285.46,28.27C287.13,29.83 288.27,32.26 290.56,37.11L291.79,39.71Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#EA4335"/>
<path
android:pathData="M275.06,336.34C281.73,338.9 285.07,340.18 287.32,342.24C290.57,345.23 292.44,349.42 292.49,353.84C292.52,356.89 291.24,360.23 288.68,366.9L287.31,370.48C284.75,377.15 283.47,380.49 281.41,382.74C278.42,385.99 274.23,387.86 269.81,387.91C266.76,387.94 263.42,386.66 256.75,384.1L253.17,382.73C246.5,380.17 243.16,378.89 240.91,376.83C237.66,373.84 235.79,369.65 235.74,365.23C235.71,362.18 236.99,358.84 239.55,352.17L240.92,348.59C243.48,341.92 244.76,338.58 246.82,336.33C249.81,333.08 254,331.21 258.42,331.16C261.47,331.13 264.81,332.41 271.48,334.97L275.06,336.34Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FFB900"/>
<path
android:pathData="M56.34,227.85C58.63,232.7 59.77,235.12 59.92,237.41C60.13,240.71 58.97,243.96 56.71,246.38C55.15,248.05 52.72,249.19 47.87,251.48L45.27,252.71C40.42,255 38,256.14 35.71,256.29C32.41,256.5 29.16,255.34 26.74,253.08C25.07,251.52 23.93,249.09 21.64,244.24L20.41,241.64C18.12,236.79 16.98,234.37 16.83,232.08C16.62,228.78 17.78,225.53 20.04,223.11C21.6,221.44 24.03,220.3 28.88,218.01L31.48,216.78C36.33,214.49 38.75,213.35 41.04,213.2C44.34,212.99 47.59,214.15 50.01,216.41C51.68,217.97 52.82,220.4 55.11,225.25L56.34,227.85Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FFB900"/>
<path
android:pathData="M319.04,100.31C314.11,99.32 309.47,96.66 306.06,92.42C298.38,82.87 299.86,68.93 309.37,61.29C313.67,57.83 318.88,56.26 324,56.46C324.9,51.42 327.55,46.68 331.84,43.23C341.32,35.61 355.23,37.18 362.91,46.73C366.32,50.97 367.92,56.07 367.83,61.09C372.76,62.08 377.39,64.75 380.8,68.98C388.48,78.53 387.01,92.46 377.53,100.08C373.24,103.53 368.04,105.1 362.92,104.89C362.01,109.94 359.35,114.68 355.05,118.14C345.55,125.78 331.62,124.22 323.94,114.67C320.53,110.43 318.93,105.33 319.03,100.3L319.04,100.31Z"
android:strokeLineJoin="round"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FFB900"/>
<path
android:pathData="M183.62,383.49C180.85,382.54 178.39,380.64 176.76,377.93C173.09,371.82 175.03,363.91 181.1,360.26C183.85,358.61 186.97,358.11 189.91,358.62C190.82,355.79 192.72,353.26 195.46,351.61C201.52,347.96 209.41,349.95 213.09,356.06C214.72,358.77 215.25,361.83 214.8,364.72C217.56,365.68 220.02,367.58 221.65,370.28C225.32,376.39 223.39,384.29 217.33,387.94C214.59,389.59 211.47,390.09 208.54,389.57C207.62,392.41 205.72,394.93 202.97,396.59C196.9,400.25 188.99,398.26 185.32,392.16C183.69,389.45 183.17,386.39 183.62,383.5V383.49Z"
android:strokeLineJoin="round"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#4285F4"/>
<path
android:pathData="M136.6,94.6C135.54,95.43 135.01,95.85 134.53,96.14C130.73,98.45 125.84,97.87 122.7,94.72C122.3,94.32 121.88,93.79 121.05,92.73L93.38,57.49C92.55,56.43 92.13,55.9 91.84,55.42C89.53,51.62 90.11,46.73 93.26,43.6C93.66,43.2 94.19,42.78 95.25,41.95L112.87,28.12C127.41,16.7 148.46,19.24 159.88,33.78C171.3,48.32 168.76,69.37 154.22,80.79L136.6,94.62V94.6Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FFB900"/>
<path
android:pathData="M389.79,270.19C390.52,270.96 390.89,271.34 391.16,271.7C393.26,274.5 393.17,278.38 390.94,281.08C390.65,281.43 390.27,281.79 389.5,282.52L363.96,306.89C363.19,307.62 362.81,307.99 362.45,308.26C359.65,310.36 355.77,310.27 353.07,308.04C352.72,307.75 352.36,307.37 351.63,306.6L339.44,293.83C329.38,283.29 329.78,266.59 340.31,256.54C350.85,246.48 367.55,246.88 377.6,257.41L389.79,270.18V270.19Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FFB900"/>
</group>
</vector>

View File

@@ -0,0 +1,69 @@
<!--
~ Copyright (C) 2024 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="412dp"
android:viewportWidth="412"
android:viewportHeight="412">
<group>
<clip-path
android:pathData="M0,0h412v412h-412z"/>
<path
android:pathData="M384,0H28C12.54,0 0,12.54 0,28V384C0,399.46 12.54,412 28,412H384C399.46,412 412,399.46 412,384V28C412,12.54 399.46,0 384,0Z"
android:fillColor="#000000"/>
<path
android:pathData="M300.93,258.76C304.13,254.1 311.15,254.53 313.75,259.55L316.68,265.2C318.2,268.13 321.45,269.72 324.7,269.12L330.95,267.96C336.51,266.92 341.17,272.19 339.46,277.59L337.54,283.65C336.54,286.79 337.72,290.22 340.44,292.09L345.69,295.69C350.35,298.89 349.92,305.91 344.9,308.51L339.25,311.44C336.32,312.96 334.73,316.21 335.34,319.46L336.5,325.71C337.53,331.27 332.27,335.93 326.87,334.22L320.81,332.3C317.67,331.3 314.24,332.48 312.37,335.2L308.77,340.45C305.57,345.11 298.55,344.68 295.95,339.66L293.02,334.01C291.5,331.08 288.25,329.49 285,330.1L278.75,331.26C273.19,332.29 268.53,327.03 270.24,321.63L272.16,315.57C273.16,312.43 271.98,309 269.26,307.13L264.01,303.53C259.35,300.33 259.78,293.31 264.8,290.71L270.45,287.78C273.38,286.26 274.97,283.01 274.37,279.76L273.21,273.51C272.17,267.95 277.44,263.29 282.84,265L288.9,266.92C292.04,267.92 295.47,266.74 297.34,264.02L300.94,258.77L300.93,258.76Z"
android:fillColor="#4285F4"/>
<path
android:pathData="M77.66,50.23C76.29,45.91 76.37,41.09 78.22,36.56C82.41,26.34 94.04,21.44 104.2,25.6C108.8,27.49 112.31,30.91 114.39,35.03C118.76,33.54 123.65,33.57 128.24,35.45C138.38,39.61 143.21,51.26 139.02,61.47C137.16,66 133.84,69.49 129.84,71.61C131.21,75.93 131.12,80.74 129.27,85.28C125.08,95.5 113.47,100.41 103.33,96.26C98.74,94.38 95.24,90.96 93.17,86.84C88.79,88.32 83.89,88.3 79.29,86.41C69.13,82.24 64.28,70.59 68.47,60.37C70.33,55.84 73.65,52.35 77.66,50.24V50.23Z"
android:strokeLineJoin="round"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#C5221F"
android:strokeLineCap="round"/>
<path
android:pathData="M180.11,93.23C180.11,89.75 180.11,88.01 180.28,86.55C181.64,75.13 190.64,66.13 202.05,64.78C203.51,64.61 205.25,64.61 208.73,64.61H324.57C328.05,64.61 329.79,64.61 331.25,64.78C342.67,66.14 351.67,75.14 353.02,86.55C353.19,88.01 353.19,89.75 353.19,93.23V151.15C353.19,198.95 314.44,237.7 266.64,237.7C218.84,237.7 180.09,198.95 180.09,151.15V93.23H180.11Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#F29900"/>
<path
android:pathData="M228.49,100.85C219.06,100.85 211.26,107.82 209.95,116.89C209.74,118.31 210.86,119.59 212.3,119.59H244.69C246.13,119.59 247.24,118.31 247.04,116.89C245.73,107.82 237.93,100.85 228.5,100.85H228.49Z"
android:fillColor="#F29900"/>
<path
android:pathData="M304.85,100.85C295.42,100.85 287.62,107.82 286.31,116.89C286.1,118.31 287.22,119.59 288.66,119.59H321.05C322.49,119.59 323.6,118.31 323.4,116.89C322.09,107.82 314.29,100.85 304.86,100.85H304.85Z"
android:fillColor="#F29900"/>
<path
android:pathData="M266.67,172.93C253.45,172.93 242.5,182.7 240.67,195.42C240.38,197.42 241.94,199.21 243.96,199.21H289.38C291.4,199.21 292.96,197.42 292.67,195.42C290.83,182.7 279.89,172.93 266.67,172.93Z"
android:fillColor="#F29900"/>
<path
android:pathData="M55.38,166.77C55.38,163.29 55.38,161.55 55.55,160.09C56.91,148.67 65.91,139.67 77.32,138.32C78.78,138.15 80.52,138.15 84,138.15H199.84C203.32,138.15 205.06,138.15 206.52,138.32C217.94,139.68 226.94,148.68 228.29,160.09C228.46,161.55 228.46,163.29 228.46,166.77V224.69C228.46,272.49 189.71,311.24 141.91,311.24C94.11,311.24 55.36,272.49 55.36,224.69V166.77H55.38Z"
android:fillColor="#FFB900"/>
<path
android:pathData="M103.75,179.43C94.32,179.43 86.52,186.4 85.21,195.47C85,196.89 86.12,198.17 87.56,198.17H119.95C121.39,198.17 122.5,196.89 122.3,195.47C120.99,186.4 113.19,179.43 103.76,179.43H103.75Z"
android:fillColor="#1B1C16"/>
<path
android:pathData="M180.11,179.43C170.68,179.43 162.88,186.4 161.57,195.47C161.36,196.89 162.48,198.17 163.92,198.17H196.31C197.75,198.17 198.86,196.89 198.66,195.47C197.35,186.4 189.55,179.43 180.12,179.43H180.11Z"
android:fillColor="#1B1C16"/>
<path
android:pathData="M140.16,277.78C153.38,277.78 164.33,268.01 166.16,255.29C166.45,253.29 164.89,251.5 162.87,251.5H117.45C115.43,251.5 113.87,253.29 114.16,255.29C116,268.01 126.94,277.78 140.16,277.78Z"
android:fillColor="#1B1C16"/>
<path
android:pathData="M205.46,328.16C220.3,318.94 239.8,323.51 249.02,338.35C258.24,353.19 253.67,372.69 238.83,381.91L226.43,389.61C211.59,398.83 192.09,394.26 182.87,379.42C173.65,364.58 178.22,345.08 193.06,335.86L205.46,328.16Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#009132"/>
</group>
</vector>

View File

@@ -0,0 +1,65 @@
<!--
~ Copyright (C) 2024 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="412dp"
android:viewportWidth="412"
android:viewportHeight="412">
<group>
<clip-path
android:pathData="M0,0h412v412h-412z"/>
<path
android:pathData="M384,0H28C12.54,0 0,12.54 0,28V384C0,399.46 12.54,412 28,412H384C399.46,412 412,399.46 412,384V28C412,12.54 399.46,0 384,0Z"
android:fillColor="#000000"/>
<path
android:pathData="M147.09,65.18C149.2,72.23 150.26,75.75 149.99,78.88C149.6,83.41 147.36,87.57 143.79,90.39C141.33,92.34 137.8,93.39 130.75,95.51L126.97,96.64C119.92,98.75 116.4,99.81 113.27,99.54C108.74,99.15 104.58,96.91 101.76,93.34C99.81,90.88 98.76,87.35 96.64,80.3L95.51,76.52C93.4,69.47 92.34,65.95 92.61,62.82C93,58.29 95.24,54.13 98.81,51.31C101.27,49.36 104.8,48.31 111.85,46.19L115.63,45.06C122.68,42.95 126.2,41.89 129.33,42.16C133.86,42.55 138.02,44.79 140.84,48.36C142.79,50.82 143.84,54.35 145.96,61.4L147.09,65.18Z"
android:fillColor="#00AB47"/>
<path
android:pathData="M222.58,377.9C217.67,383.38 215.21,386.12 212.4,387.52C208.33,389.55 203.61,389.81 199.35,388.23C196.41,387.14 193.67,384.68 188.19,379.77L185.25,377.13C179.77,372.22 177.03,369.76 175.63,366.95C173.6,362.88 173.34,358.16 174.92,353.9C176.01,350.96 178.47,348.22 183.38,342.74L186.02,339.8C190.93,334.32 193.39,331.58 196.2,330.18C200.27,328.15 204.99,327.89 209.25,329.47C212.19,330.56 214.93,333.02 220.41,337.93L223.35,340.57C228.83,345.48 231.57,347.94 232.97,350.75C235,354.82 235.26,359.54 233.68,363.8C232.59,366.74 230.13,369.48 225.22,374.96L222.58,377.9Z"
android:fillColor="#FFB900"/>
<path
android:pathData="M341,204.85C338.84,202.27 337.54,198.95 337.54,195.31C337.54,187.12 344.14,180.49 352.29,180.49C355.98,180.49 359.35,181.85 361.93,184.1C364.51,181.85 367.87,180.49 371.55,180.49C379.67,180.49 386.26,187.13 386.26,195.31C386.26,198.94 384.96,202.27 382.81,204.85C384.96,207.43 386.26,210.75 386.26,214.39C386.26,222.58 379.67,229.21 371.55,229.21C367.87,229.21 364.51,227.85 361.93,225.6C359.34,227.85 355.97,229.21 352.29,229.21C344.15,229.21 337.54,222.57 337.54,214.39C337.54,210.76 338.84,207.43 341,204.85Z"
android:fillColor="#00AB47"/>
<path
android:pathData="M210.98,29.57C221.73,24.9 232.63,35.81 227.97,46.56L227.2,48.34C225.77,51.62 225.77,55.35 227.2,58.63L227.97,60.41C232.64,71.16 221.73,82.06 210.98,77.4L209.2,76.63C205.92,75.2 202.19,75.2 198.91,76.63L197.13,77.4C186.38,82.07 175.48,71.16 180.14,60.41L180.91,58.63C182.34,55.35 182.34,51.62 180.91,48.34L180.14,46.56C175.47,35.81 186.38,24.91 197.13,29.57L198.91,30.34C202.19,31.77 205.92,31.77 209.2,30.34L210.98,29.57Z"
android:fillColor="#4285F4"/>
<path
android:pathData="M112.23,310.56C117.35,305.61 125.49,305.61 130.6,310.56C132.17,312.08 134.08,313.18 136.18,313.77C143.04,315.71 147.11,322.74 145.37,329.63C144.84,331.74 144.84,333.95 145.37,336.06C147.11,342.95 143.04,349.98 136.18,351.92C134.08,352.51 132.16,353.62 130.6,355.13C125.48,360.08 117.34,360.08 112.23,355.13C110.66,353.61 108.75,352.51 106.65,351.92C99.79,349.98 95.72,342.95 97.46,336.06C97.99,333.95 97.99,331.74 97.46,329.63C95.72,322.74 99.79,315.71 106.65,313.77C108.75,313.18 110.67,312.07 112.23,310.56Z"
android:fillColor="#00AB47"/>
<path
android:pathData="M371.12,285.88C371.35,286.8 371.47,287.26 371.52,287.66C371.92,290.76 370.14,293.73 367.21,294.85C366.84,294.99 366.38,295.11 365.46,295.34L334.88,303C333.96,303.23 333.5,303.35 333.1,303.4C330,303.8 327.03,302.02 325.91,299.09C325.77,298.72 325.65,298.26 325.42,297.34L321.59,282.05C318.43,269.43 326.09,256.64 338.71,253.48C351.33,250.32 364.12,257.98 367.28,270.6L371.11,285.89L371.12,285.88Z"
android:fillColor="#4285F4"/>
<path
android:pathData="M70.59,304.57C69.85,305.15 69.47,305.45 69.13,305.66C66.46,307.29 63.02,306.87 60.81,304.66C60.53,304.38 60.23,304 59.65,303.26L40.18,278.47C39.6,277.73 39.3,277.35 39.09,277.01C37.46,274.34 37.88,270.9 40.09,268.69C40.37,268.41 40.75,268.11 41.49,267.53L53.89,257.8C64.12,249.77 78.93,251.55 86.96,261.78C94.99,272.01 93.21,286.82 82.98,294.85L70.58,304.58L70.59,304.57Z"
android:fillColor="#4285F4"/>
<path
android:pathData="M313.19,71.34C313.19,85.75 301.51,97.44 287.09,97.44C272.67,97.44 260.99,85.76 260.99,71.34C260.99,56.93 272.67,45.24 287.09,45.24C301.5,45.24 313.19,56.92 313.19,71.34Z"
android:fillColor="#EA4335"/>
<path
android:pathData="M69.28,183.38C67.16,181.26 62.32,182.31 56.49,185.67C54.74,179.16 52.06,175 49.06,175C46.06,175 43.38,179.16 41.63,185.67C35.79,182.31 30.96,181.26 28.84,183.38C26.72,185.5 27.77,190.34 31.13,196.18C24.62,197.93 20.46,200.61 20.46,203.61C20.46,206.61 24.62,209.29 31.13,211.04C27.77,216.88 26.72,221.71 28.84,223.84C30.96,225.96 35.8,224.91 41.64,221.55C43.39,228.06 46.07,232.22 49.07,232.22C52.07,232.22 54.75,228.06 56.5,221.55C62.34,224.92 67.17,225.97 69.3,223.84C71.42,221.72 70.37,216.88 67.01,211.04C73.52,209.29 77.68,206.61 77.68,203.61C77.68,200.61 73.52,197.93 67.01,196.18C70.37,190.34 71.42,185.51 69.3,183.39L69.28,183.38Z"
android:fillColor="#FFB900"
android:fillType="evenOdd"/>
<path
android:pathData="M284.91,311.14C286.75,308.06 291.22,308.06 293.06,311.14L295.13,314.6C296.21,316.4 298.33,317.28 300.36,316.77L304.28,315.79C307.76,314.92 310.92,318.07 310.04,321.55L309.06,325.47C308.55,327.5 309.43,329.62 311.23,330.7L314.69,332.77C317.77,334.61 317.77,339.08 314.69,340.92L311.23,342.99C309.43,344.07 308.55,346.19 309.06,348.22L310.04,352.14C310.91,355.62 307.76,358.78 304.28,357.9L300.36,356.92C298.33,356.41 296.21,357.29 295.13,359.09L293.06,362.55C291.22,365.63 286.75,365.63 284.91,362.55L282.84,359.09C281.76,357.29 279.64,356.41 277.61,356.92L273.69,357.9C270.21,358.77 267.05,355.62 267.93,352.14L268.91,348.22C269.42,346.19 268.54,344.07 266.74,342.99L263.28,340.92C260.2,339.08 260.2,334.61 263.28,332.77L266.74,330.7C268.54,329.62 269.42,327.5 268.91,325.47L267.93,321.55C267.06,318.07 270.21,314.91 273.69,315.79L277.61,316.77C279.64,317.28 281.76,316.4 282.84,314.6L284.91,311.14Z"
android:fillColor="#EA4335"/>
<path
android:pathData="M325.48,106.56C333.84,98.2 347.38,98.2 355.74,106.56C364.1,114.92 364.1,128.46 355.74,136.82L348.76,143.8C340.4,152.16 326.86,152.16 318.5,143.8C310.14,135.44 310.14,121.9 318.5,113.54L325.48,106.56Z"
android:fillColor="#FFB900"/>
<path
android:pathData="M62.52,107.52C73.44,103.01 85.95,108.22 90.46,119.14C94.97,130.06 89.76,142.57 78.84,147.08L69.71,150.85C58.79,155.36 46.28,150.15 41.77,139.23C37.26,128.31 42.47,115.8 53.39,111.29L62.52,107.52Z"
android:fillColor="#EA4335"/>
</group>
</vector>

View File

@@ -0,0 +1,62 @@
<!--
~ Copyright (C) 2024 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="412dp"
android:viewportWidth="412"
android:viewportHeight="412">
<group>
<clip-path
android:pathData="M0,0h412v412h-412z"/>
<path
android:pathData="M384,0H28C12.54,0 0,12.54 0,28V384C0,399.46 12.54,412 28,412H384C399.46,412 412,399.46 412,384V28C412,12.54 399.46,0 384,0Z"
android:fillColor="#ffffff"/>
<path
android:pathData="M392.38,173.12C392.38,147.42 371.58,126.86 346.11,126.86C326.79,126.86 310.39,138.61 303.29,155.25C296.43,148.15 286.64,143.75 276.11,143.75C260.2,143.75 246.51,153.54 240.88,167.74C237.21,166.03 233.29,165.05 229.13,165.05C224.66,165.05 220.48,166.11 216.79,167.99C211.35,170.77 213.35,179 219.46,179H386.55C389.77,179 392.39,176.4 392.39,173.18C392.39,173.16 392.39,173.14 392.39,173.12H392.38Z"
android:fillColor="#DEDEDE"/>
<path
android:pathData="M199.15,182.18C190.01,156.35 191.62,131.06 200.22,109.54C203.99,99.32 193.77,89.09 183.55,93.93C164.19,103.08 146.98,118.68 135.15,140.75C120.1,168.19 116.87,201.02 127.62,230.08C156.12,305.95 244.85,325.86 301.85,280.12C306.15,276.89 309.92,273.12 313.68,269.36C321.21,261.29 314.75,247.84 303.46,248.91C287.33,249.98 270.66,247.83 252.91,240.3C228.17,229.54 208.28,208.55 199.14,182.18H199.15Z"
android:fillColor="#F9AB00"/>
<path
android:pathData="M353.25,64.04C365.11,76.41 355.68,96.92 338.57,95.97L335.74,95.81C330.52,95.52 325.4,97.41 321.63,101.03L319.58,102.99C307.21,114.85 286.7,105.42 287.65,88.31L287.81,85.48C288.1,80.26 286.21,75.14 282.59,71.37L280.63,69.32C268.77,56.95 278.2,36.44 295.31,37.39L298.14,37.55C303.36,37.84 308.48,35.95 312.25,32.33L314.3,30.37C326.67,18.51 347.18,27.94 346.23,45.05L346.07,47.88C345.78,53.1 347.67,58.22 351.29,61.99L353.25,64.04Z"
android:strokeWidth="2.26997"
android:fillColor="#00000000"
android:strokeColor="#1A73E8"/>
<path
android:pathData="M79.5,311.95C96.63,312.45 104.3,333.67 91.44,345L89.31,346.87C85.38,350.33 83.07,355.26 82.92,360.49L82.84,363.32C82.34,380.45 61.12,388.12 49.79,375.26L47.92,373.13C44.46,369.2 39.53,366.89 34.3,366.74L31.47,366.66C14.34,366.16 6.67,344.94 19.53,333.61L21.66,331.74C25.59,328.28 27.9,323.35 28.05,318.12L28.13,315.29C28.63,298.16 49.85,290.49 61.18,303.35L63.05,305.48C66.51,309.41 71.44,311.72 76.67,311.87L79.5,311.95Z"
android:strokeWidth="2.26997"
android:fillColor="#00000000"
android:strokeColor="#D93025"/>
<path
android:pathData="M220.61,297.87C214.88,297.87 209.42,299.51 205.05,302.51C199.32,279.31 178.3,262.12 153.47,262.12C128.64,262.12 109.8,277.68 102.71,298.96C96.43,294.59 88.79,291.86 80.61,291.86C67.15,291.86 55.29,298.82 48.36,309.42C46.09,312.9 48.56,317.51 52.71,317.51H238.84C243.11,317.51 245.55,312.67 243.04,309.21C238.05,302.3 229.84,297.86 220.61,297.86V297.87Z"
android:fillColor="#DEDEDE"/>
<path
android:pathData="M99.26,237.27C107.22,244.78 101.87,258.15 90.93,258.1H89.12C85.78,258.08 82.58,259.45 80.29,261.88L79.05,263.2C71.54,271.16 58.17,265.81 58.22,254.87V253.06C58.24,249.72 56.87,246.52 54.44,244.23L53.12,242.99C45.16,235.48 50.51,222.11 61.45,222.16H63.26C66.6,222.18 69.8,220.81 72.09,218.38L73.33,217.06C80.84,209.1 94.21,214.45 94.16,225.39V227.2C94.14,230.54 95.51,233.74 97.94,236.03L99.26,237.27Z"
android:strokeWidth="2.26997"
android:fillColor="#00000000"
android:strokeColor="#1E8E3E"/>
<path
android:pathData="M381.01,335.46C388.11,341.2 384.52,352.66 375.41,353.32L373.9,353.43C371.12,353.63 368.55,354.97 366.8,357.14L365.85,358.31C360.11,365.41 348.65,361.82 347.99,352.71L347.88,351.2C347.68,348.42 346.34,345.85 344.17,344.1L343,343.15C335.9,337.41 339.49,325.95 348.6,325.29L350.11,325.18C352.89,324.98 355.46,323.64 357.21,321.47L358.16,320.3C363.9,313.2 375.36,316.79 376.02,325.9L376.13,327.41C376.33,330.19 377.67,332.76 379.84,334.51L381.01,335.46Z"
android:strokeWidth="2.26997"
android:fillColor="#00000000"
android:strokeColor="#1E8E3E"/>
<path
android:pathData="M86.28,44.32C98.91,46.65 102.15,63.25 91.33,70.16L89.54,71.3C86.24,73.41 83.96,76.8 83.24,80.65L82.85,82.74C80.52,95.37 63.92,98.61 57.01,87.79L55.87,86C53.76,82.7 50.37,80.42 46.52,79.7L44.43,79.31C31.8,76.98 28.56,60.38 39.38,53.47L41.17,52.33C44.47,50.22 46.75,46.83 47.47,42.98L47.86,40.89C50.19,28.26 66.79,25.02 73.7,35.84L74.84,37.63C76.95,40.93 80.34,43.21 84.19,43.93L86.28,44.32Z"
android:strokeWidth="2.26997"
android:fillColor="#00000000"
android:strokeColor="#F9AB00"/>
</group>
</vector>

View File

@@ -0,0 +1,81 @@
<!--
~ Copyright (C) 2024 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="412dp"
android:viewportWidth="412"
android:viewportHeight="412">
<group>
<clip-path
android:pathData="M0,0h412v412h-412z"/>
<path
android:pathData="M384,0H28C12.54,0 0,12.54 0,28V384C0,399.46 12.54,412 28,412H384C399.46,412 412,399.46 412,384V28C412,12.54 399.46,0 384,0Z"
android:fillColor="#ffffff"/>
<path
android:pathData="M388.81,244.64L252.55,99.8H158.3L24.49,239.88C28.08,246.82 35.84,251.76 45.06,251.76H58.07C77.9,229.58 106.73,215.61 138.82,215.61C170.91,215.61 199.74,229.58 219.57,251.76H371.66C378.59,251.76 384.69,248.98 388.82,244.65H388.81V244.64Z"
android:fillColor="#5E6369"/>
<path
android:pathData="M393.91,227.39C395.23,233.88 393.06,240.11 388.73,244.65H388.72L252.46,99.8H378.33L393.91,227.39Z"
android:fillColor="#009132"/>
<path
android:pathData="M374.88,71.5C372.89,61.71 363.49,54.6 352.53,54.6H278.07C275.33,62.01 268.23,67.3 259.87,67.3H159.58C151.22,67.3 144.12,62.01 141.38,54.6H67.58C56.59,54.6 47.17,61.74 45.22,71.57L41.13,99.8H378.33L374.88,71.5Z"
android:fillColor="#7EB5FE"/>
<path
android:pathData="M158.21,99.8L24.4,239.88C22.47,236.16 21.73,231.87 22.61,227.45L41.12,99.8H158.21Z"
android:fillColor="#009132"/>
<path
android:pathData="M42.79,88.16L82.41,75.6C88.19,73.77 94.39,73.82 100.14,75.75L128.66,85.31C135.15,87.49 142.21,87.26 148.56,84.67C154.79,82.13 161.72,81.86 168.13,83.93L175.72,86.37C180.43,87.89 185.45,88.16 190.29,87.15L252.84,74.17C257.24,73.26 261.79,73.39 266.12,74.57L311.12,86.76C315.79,88.02 320.71,88.08 325.41,86.93L343.07,82.6C348.04,81.38 353.25,81.52 358.15,83L376.97,88.69L378.33,99.8H41.12L42.79,88.16Z"
android:fillColor="#659DF6"/>
<path
android:pathData="M379.71,163.04L376.86,161.08C375.38,160.06 374.74,158.2 375.28,156.49L376.33,153.19C377.26,150.26 374.73,147.39 371.7,147.95L368.3,148.58C366.53,148.91 364.76,148.04 363.94,146.45L362.35,143.38C360.93,140.65 357.11,140.41 355.37,142.95L353.41,145.8C352.39,147.28 350.53,147.92 348.82,147.38L345.52,146.33C342.59,145.4 339.72,147.93 340.28,150.96L340.91,154.36C341.24,156.13 340.37,157.9 338.78,158.72L335.71,160.31C333.84,161.28 333.14,163.37 333.7,165.16H381.31C381.05,164.34 380.53,163.58 379.73,163.03L379.71,163.04Z"
android:fillColor="#00822D"/>
<path
android:pathData="M315.4,116.73L313.97,115.75C313.23,115.24 312.91,114.31 313.18,113.45L313.7,111.8C314.17,110.33 312.9,108.9 311.38,109.18L309.68,109.5C308.8,109.66 307.91,109.23 307.5,108.43L306.7,106.89C305.99,105.52 304.08,105.41 303.21,106.68L302.23,108.11C301.72,108.85 300.79,109.17 299.93,108.9L298.28,108.38C296.81,107.91 295.38,109.18 295.66,110.7L295.98,112.4C296.14,113.28 295.71,114.17 294.91,114.58L293.37,115.38C292.44,115.86 292.09,116.91 292.36,117.8H316.17C316.04,117.39 315.78,117.01 315.38,116.73H315.4Z"
android:fillColor="#00822D"/>
<path
android:pathData="M103.02,139.55L100.83,138.05C99.69,137.27 99.2,135.84 99.62,134.53L100.42,132C101.13,129.75 99.19,127.55 96.87,127.98L94.26,128.47C92.91,128.72 91.55,128.06 90.91,126.84L89.69,124.48C88.6,122.38 85.67,122.2 84.34,124.15L82.84,126.34C82.06,127.48 80.63,127.97 79.32,127.55L76.79,126.75C74.54,126.04 72.34,127.98 72.77,130.3L73.26,132.91C73.51,134.26 72.85,135.62 71.63,136.26L69.27,137.48C67.84,138.22 67.3,139.83 67.73,141.2H104.25C104.05,140.57 103.65,139.99 103.04,139.56L103.02,139.55Z"
android:fillColor="#00822D"/>
<path
android:pathData="M32.95,156.15L30.46,173.36H67.91C67.68,172.61 67.2,171.91 66.46,171.41L63.85,169.62C62.5,168.69 61.91,166.99 62.41,165.42L63.37,162.4C64.22,159.72 61.9,157.1 59.14,157.61L56.03,158.19C54.42,158.49 52.8,157.7 52.04,156.24L50.58,153.43C49.29,150.93 45.8,150.72 44.2,153.04L42.41,155.65C41.48,157 39.78,157.59 38.21,157.09L35.19,156.13C34.41,155.88 33.63,155.91 32.93,156.13L32.95,156.15Z"
android:fillColor="#00822D"/>
<path
android:pathData="M202.85,187.03L202.06,211.24H213.72L212.72,187.03H202.85Z"
android:fillColor="#BCC1C7"/>
<path
android:pathData="M211.45,156.23H203.85L203.23,175.43H212.24L211.45,156.23Z"
android:fillColor="#BCC1C7"/>
<path
android:pathData="M209.39,106.23L209.12,99.8H205.68L205.47,106.23H209.39Z"
android:fillColor="#BCC1C7"/>
<path
android:pathData="M211.09,147.45L210.4,130.86H204.67L204.13,147.45H211.09Z"
android:fillColor="#BCC1C7"/>
<path
android:pathData="M204.88,124.43H210.14L209.65,112.66H205.26L204.88,124.43Z"
android:fillColor="#BCC1C7"/>
<path
android:pathData="M214.45,225.55H201.71L201.42,235.5C206.98,239.76 212.53,243.92 217.69,249.69H218L214.44,225.55H214.45Z"
android:fillColor="#BCC1C7"/>
<path
android:pathData="M141.03,179.06C89.29,178.41 46.73,219.68 46.08,271.42C45.43,323.16 86.7,365.72 138.44,366.37C190.18,367.02 232.74,325.75 233.39,274.01C234.17,222.27 192.77,179.71 141.03,179.06ZM67.82,245.03C79.07,215.8 107.66,195.23 140.78,195.62C173.89,196.01 201.84,217.35 212.31,246.84C213.22,249.3 211.28,251.76 208.69,251.76L167.43,251.24C159.02,241.15 145.44,235.98 131.73,238.95C123.84,240.63 117.11,244.9 112.2,250.46L71.32,249.94C68.73,250.07 66.92,247.48 67.83,245.02L67.82,245.03ZM122.66,347.87C87.99,339.98 62.25,308.8 62.77,271.68V271.42C62.77,268.96 65.23,267.28 67.56,267.93L103.26,278.67C103.39,279.96 103.65,281.26 103.91,282.55C106.24,293.16 112.96,301.69 121.76,306.61L127.32,343.73C127.71,346.19 125.25,348.39 122.66,347.87ZM153.45,348.52C150.86,349.04 148.66,346.71 149.18,344.12L156.29,307.12C166.77,301.69 173.88,291.6 175.56,280.08L212.04,270.25C214.37,269.6 216.7,271.41 216.7,273.87C216.31,311.25 189.02,342.17 153.45,348.51V348.52Z"
android:fillColor="#659DF6"/>
<path
android:strokeWidth="1"
android:pathData="M139.74,299.91C153.98,299.91 165.52,288.37 165.52,274.13C165.52,259.89 153.98,248.35 139.74,248.35C125.5,248.35 113.96,259.89 113.96,274.13C113.96,288.37 125.5,299.91 139.74,299.91Z"
android:fillColor="#00000000"
android:strokeColor="#004FAC"/>
</group>
</vector>

View File

@@ -0,0 +1,83 @@
<!--
~ Copyright (C) 2024 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="412dp"
android:viewportWidth="412"
android:viewportHeight="412">
<group>
<clip-path
android:pathData="M0,0h412v412h-412z"/>
<path
android:pathData="M384,0H28C12.54,0 0,12.54 0,28V384C0,399.46 12.54,412 28,412H384C399.46,412 412,399.46 412,384V28C412,12.54 399.46,0 384,0Z"
android:fillColor="#ffffff"/>
<path
android:pathData="M169.93,276.93C173.11,290.9 174.7,297.89 173.77,303.93C172.42,312.67 167.51,320.47 160.21,325.47C155.17,328.93 148.18,330.52 134.21,333.69L126.71,335.4C112.74,338.58 105.75,340.17 99.71,339.24C90.97,337.89 83.17,332.98 78.17,325.68C74.71,320.64 73.13,313.65 69.95,299.68L68.24,292.18C65.06,278.21 63.47,271.22 64.4,265.18C65.75,256.44 70.66,248.64 77.96,243.64C83,240.18 89.99,238.6 103.96,235.42L111.46,233.71C125.43,230.53 132.42,228.94 138.46,229.87C147.2,231.22 155,236.13 160,243.43C163.46,248.47 165.05,255.46 168.22,269.43L169.93,276.93Z"
android:fillColor="#00AB47"/>
<path
android:pathData="M191.17,273.74C195.68,293.55 197.93,303.46 196.61,312.02C194.69,324.42 187.74,335.47 177.39,342.56C170.24,347.46 160.33,349.71 140.52,354.22L129.89,356.64C110.08,361.15 100.17,363.4 91.61,362.08C79.21,360.16 68.16,353.21 61.06,342.86C56.16,335.71 53.91,325.8 49.4,305.99L46.98,295.36C42.47,275.55 40.22,265.64 41.54,257.08C43.46,244.68 50.41,233.63 60.76,226.53C67.91,221.63 77.82,219.38 97.63,214.87L108.26,212.45C128.07,207.94 137.98,205.69 146.54,207.01C158.94,208.93 169.99,215.88 177.09,226.23C181.99,233.38 184.24,243.29 188.75,263.1L191.17,273.73V273.74Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#81C995"/>
<path
android:pathData="M211.39,270.71C217.16,296.08 220.05,308.76 218.35,319.73C215.9,335.61 206.99,349.76 193.74,358.84C184.58,365.11 171.9,368 146.53,373.77L132.92,376.87C107.55,382.64 94.87,385.53 83.9,383.83C68.02,381.38 53.87,372.47 44.79,359.22C38.52,350.06 35.63,337.38 29.86,312.01L26.76,298.4C20.99,273.03 18.1,260.35 19.8,249.38C22.25,233.5 31.16,219.35 44.41,210.27C53.56,204 66.25,201.11 91.62,195.34L105.23,192.24C130.6,186.47 143.28,183.58 154.25,185.28C170.13,187.73 184.28,196.64 193.36,209.89C199.63,219.04 202.52,231.73 208.29,257.1L211.39,270.71Z"
android:strokeWidth="3"
android:fillColor="#00000000"
android:strokeColor="#CEEAD6"/>
<path
android:pathData="M253.51,117.5C250.2,112.06 248.72,105.46 249.75,98.66C252.08,83.33 266.33,72.78 281.58,75.1C288.48,76.15 294.41,79.65 298.61,84.59C304.08,81.12 310.76,79.53 317.65,80.57C332.86,82.88 343.31,97.18 340.98,112.51C339.95,119.31 336.57,125.17 331.81,129.39C335.11,134.83 336.59,141.43 335.56,148.23C333.23,163.56 319.01,174.11 303.8,171.8C296.91,170.75 291.01,167.25 286.81,162.31C281.33,165.78 274.63,167.37 267.73,166.32C252.48,164 242,149.7 244.33,134.37C245.36,127.57 248.74,121.71 253.51,117.5Z"
android:fillColor="#1C73E7"/>
<path
android:pathData="M301.87,63.25C310.34,57.87 320.69,55.4 331.36,57.02C354.93,60.6 371.12,82.75 367.51,106.5C365.91,117.04 360.68,126.12 353.31,132.65C358.42,141.08 360.71,151.3 359.11,161.83C355.5,185.58 333.47,201.93 309.9,198.35C299.23,196.73 290.08,191.31 283.58,183.65C275.09,189.03 264.72,191.49 254.02,189.87C230.39,186.28 214.16,164.12 217.77,140.37C219.37,129.83 224.61,120.75 232,114.23C226.88,105.8 224.57,95.58 226.17,85.04C229.78,61.29 251.85,44.95 275.48,48.53C286.17,50.15 295.35,55.58 301.86,63.24L301.87,63.25Z"
android:strokeLineJoin="round"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#529FFD"
android:strokeLineCap="round"/>
<path
android:pathData="M305.14,41.91C316.62,34.62 330.64,31.28 345.09,33.48C377.02,38.33 398.94,68.34 394.06,100.5C391.89,114.77 384.81,127.07 374.82,135.92C381.74,147.33 384.85,161.18 382.68,175.45C377.8,207.62 347.95,229.77 316.02,224.92C301.57,222.73 289.17,215.38 280.37,205.01C268.87,212.3 254.82,215.63 240.33,213.43C208.33,208.57 186.34,178.55 191.23,146.38C193.4,132.11 200.49,119.81 210.5,110.97C203.56,99.55 200.44,85.71 202.61,71.43C207.49,39.26 237.4,17.12 269.4,21.98C283.88,24.18 296.32,31.53 305.13,41.91H305.14Z"
android:strokeLineJoin="round"
android:strokeWidth="3"
android:fillColor="#00000000"
android:strokeColor="#D2E3FC"
android:strokeLineCap="round"/>
<path
android:pathData="M310.7,107.65L310.09,107.56L302.74,106.44L288.07,104.21L280.91,103.12L280.1,103C273.27,101.96 266.89,106.66 265.85,113.49L263.3,130.29C262.61,134.86 265.75,139.12 270.31,139.81C273,140.22 275.73,139.29 277.61,137.32L284.07,130.57L298.74,132.8L302.9,141.16C304.11,143.6 306.44,145.29 309.13,145.7C313.7,146.39 317.96,143.25 318.65,138.69L321.2,121.89C322.24,115.06 317.54,108.68 310.71,107.64L310.7,107.65Z"
android:fillColor="#FFFAF0"/>
<path
android:pathData="M276.2,122.42L280.3,123.05L280.92,118.95L285.02,119.57L285.64,115.47L281.54,114.85L282.16,110.75L278.07,110.13L277.45,114.23L273.35,113.61L272.73,117.7L276.82,118.33L276.2,122.42Z"
android:fillColor="#1C73E7"/>
<path
android:pathData="M303.34,126.02C304.95,126.02 306.26,124.71 306.26,123.1C306.26,121.49 304.95,120.18 303.34,120.18C301.73,120.18 300.42,121.49 300.42,123.1C300.42,124.71 301.73,126.02 303.34,126.02Z"
android:fillColor="#1C73E7"/>
<path
android:pathData="M309.97,120.81C311.58,120.81 312.89,119.5 312.89,117.89C312.89,116.28 311.58,114.97 309.97,114.97C308.35,114.97 307.05,116.28 307.05,117.89C307.05,119.5 308.35,120.81 309.97,120.81Z"
android:fillColor="#1C73E7"/>
<path
android:pathData="M110.86,311.33L100.08,263.97L142.68,279.18L110.85,311.33H110.86Z"
android:fillColor="#FFFAF0"/>
<path
android:pathData="M66.59,97.12C78.25,85.46 97.16,85.46 108.82,97.12C120.48,108.78 120.48,127.69 108.82,139.35L99.07,149.1C87.41,160.76 68.5,160.76 56.84,149.1C45.18,137.44 45.18,118.53 56.84,106.87L66.59,97.12Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FDD663"/>
<path
android:pathData="M332.68,258.12C335.52,253.38 342.39,253.38 345.24,258.12L348.44,263.45C350.1,266.22 353.37,267.57 356.5,266.79L362.53,265.28C367.89,263.94 372.75,268.8 371.41,274.16L369.9,280.19C369.12,283.32 370.47,286.59 373.24,288.25L378.57,291.45C383.31,294.29 383.31,301.16 378.57,304.01L373.24,307.21C370.47,308.87 369.12,312.14 369.9,315.27L371.41,321.3C372.75,326.66 367.89,331.52 362.53,330.18L356.5,328.67C353.37,327.89 350.1,329.24 348.44,332.01L345.24,337.34C342.4,342.08 335.53,342.08 332.68,337.34L329.48,332.01C327.82,329.24 324.55,327.89 321.42,328.67L315.39,330.18C310.03,331.52 305.17,326.66 306.51,321.3L308.02,315.27C308.8,312.14 307.45,308.87 304.68,307.21L299.35,304.01C294.61,301.17 294.61,294.3 299.35,291.45L304.68,288.25C307.45,286.59 308.8,283.32 308.02,280.19L306.51,274.16C305.17,268.8 310.03,263.94 315.39,265.28L321.42,266.79C324.55,267.57 327.82,266.22 329.48,263.45L332.68,258.12Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#F28B82"/>
</group>
</vector>

View File

@@ -0,0 +1,57 @@
<!--
~ Copyright (C) 2024 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="412dp"
android:viewportWidth="412"
android:viewportHeight="412">
<group>
<clip-path
android:pathData="M0,0h412v412h-412z"/>
<path
android:pathData="M384,0.2H28C12.54,0.2 0,12.74 0,28.2V384.2C0,399.66 12.54,412.2 28,412.2H384C399.46,412.2 412,399.66 412,384.2V28.2C412,12.74 399.46,0.2 384,0.2Z"
android:fillColor="#ffffff"/>
<path
android:pathData="M146.64,179.97C181.43,154.82 229.04,185.27 220.78,227.4L219.42,234.37C216.9,247.23 219.83,260.56 227.51,271.18L231.67,276.93C256.82,311.72 226.37,359.33 184.24,351.07L177.27,349.71C164.41,347.19 151.08,350.12 140.46,357.8L134.71,361.96C99.92,387.11 52.31,356.66 60.57,314.53L61.93,307.57C64.45,294.71 61.52,281.38 53.84,270.76L49.68,265.01C24.53,230.22 54.98,182.61 97.11,190.87L104.08,192.23C116.94,194.75 130.27,191.82 140.89,184.14L146.64,179.98V179.97Z"
android:fillColor="#529FFD"/>
<path
android:pathData="M361.61,135.37C356.66,153.92 354.19,163.19 349.31,169.77C342.25,179.29 331.57,185.47 319.8,186.85C311.67,187.8 302.39,185.32 283.85,180.37L273.9,177.71C255.36,172.76 246.08,170.29 239.5,165.41C229.98,158.35 223.8,147.67 222.42,135.9C221.47,127.77 223.95,118.49 228.9,99.95L231.56,90C236.51,71.46 238.98,62.18 243.86,55.6C250.92,46.08 261.6,39.9 273.37,38.52C281.5,37.57 290.78,40.05 309.32,45L319.27,47.66C337.82,52.61 347.09,55.08 353.67,59.96C363.19,67.02 369.37,77.7 370.75,89.47C371.7,97.6 369.22,106.88 364.27,125.42L361.61,135.37Z"
android:fillColor="#FCC934"/>
<path
android:pathData="M348.57,230.93C345.11,227.47 337.24,229.18 327.74,234.66C324.89,224.07 320.54,217.29 315.65,217.29C310.76,217.29 306.4,224.07 303.56,234.66C294.06,229.18 286.19,227.47 282.73,230.93C279.27,234.39 280.98,242.26 286.46,251.76C275.87,254.6 269.09,258.96 269.09,263.85C269.09,268.74 275.87,273.1 286.46,275.94C280.98,285.44 279.27,293.32 282.73,296.77C286.19,300.23 294.06,298.52 303.56,293.04C306.4,303.63 310.76,310.41 315.65,310.41C320.54,310.41 324.9,303.63 327.74,293.04C337.24,298.52 345.12,300.23 348.57,296.77C352.03,293.31 350.32,285.44 344.84,275.94C355.43,273.09 362.21,268.74 362.21,263.85C362.21,258.96 355.43,254.6 344.84,251.76C350.32,242.26 352.03,234.38 348.57,230.93Z"
android:strokeLineJoin="round"
android:strokeWidth="2"
android:fillColor="#00000000"
android:fillType="evenOdd"
android:strokeColor="#EA4335"/>
<path
android:pathData="M194.81,56.17C203.12,68.34 199.99,84.94 187.83,93.25C175.66,101.56 159.06,98.43 150.75,86.27L143.81,76.1C135.5,63.93 138.63,47.33 150.79,39.02C162.96,30.71 179.56,33.84 187.87,46L194.81,56.17Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#00AB47"/>
<path
android:pathData="M130.96,158.11C130.5,159.35 130.27,159.97 130.01,160.47C128.02,164.37 123.61,166.39 119.35,165.37C118.8,165.24 118.18,165.01 116.94,164.55L75.56,149.24C74.32,148.78 73.7,148.55 73.2,148.29C69.3,146.3 67.28,141.89 68.3,137.63C68.43,137.08 68.66,136.46 69.12,135.22L76.78,114.53C83.1,97.45 102.06,88.73 119.14,95.05C136.22,101.37 144.94,120.33 138.62,137.41L130.96,158.1V158.11Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#EA4335"/>
<path
android:pathData="M152.86,267.48C151.12,267.79 149.53,267.48 148.08,266.55C146.7,265.52 145.85,264.13 145.54,262.39C145.23,260.65 145.54,259.1 146.5,257.73C147.52,256.27 148.9,255.38 150.63,255.06C152.36,254.74 153.93,255.11 155.31,256.14C156.76,257.07 157.64,258.41 157.95,260.15C158.26,261.89 157.91,263.49 156.89,264.95C155.94,266.32 154.6,267.16 152.86,267.47V267.48ZM128.04,271.95C126.3,272.26 124.71,271.95 123.26,271.02C121.88,269.99 121.03,268.6 120.72,266.86C120.41,265.12 120.72,263.57 121.68,262.2C122.7,260.74 124.08,259.85 125.81,259.53C127.54,259.21 129.11,259.58 130.49,260.61C131.94,261.54 132.82,262.88 133.13,264.62C133.44,266.36 133.09,267.96 132.07,269.42C131.12,270.79 129.78,271.63 128.04,271.94V271.95ZM145.15,295.79C140.18,296.68 135.43,296.13 130.88,294.13C126.42,292.11 122.83,289.04 120.12,284.92L164.81,276.87C163.71,281.68 161.38,285.82 157.82,289.28C154.34,292.73 150.12,294.9 145.15,295.79ZM148.72,315.65C142.51,316.77 136.47,316.66 130.59,315.33C124.78,313.9 119.49,311.56 114.72,308.32C110.02,304.98 105.98,300.84 102.61,295.89C99.31,290.85 97.1,285.22 95.98,279.01C94.86,272.8 94.98,266.8 96.33,261.01C97.75,255.12 100.08,249.83 103.34,245.14C106.66,240.35 110.81,236.32 115.77,233.03C120.8,229.65 126.42,227.4 132.62,226.28C138.82,225.16 144.84,225.32 150.65,226.75C156.53,228.08 161.82,230.42 166.52,233.76C171.29,237 175.33,241.14 178.63,246.19C182,251.14 184.24,256.71 185.36,262.92C186.48,269.13 186.33,275.18 184.91,281.07C183.56,286.87 181.23,292.16 177.9,296.94C174.64,301.63 170.5,305.66 165.47,309.05C160.51,312.34 154.92,314.54 148.72,315.66V315.65ZM146.93,305.72C156.53,303.99 164.11,299.12 169.67,291.12C175.23,283.11 177.15,274.31 175.42,264.71C173.69,255.11 168.82,247.53 160.82,241.97C152.81,236.41 144.01,234.49 134.41,236.22L132.92,236.49C132.42,236.58 131.94,236.75 131.48,237.01C131.07,237.6 130.84,238.19 130.78,238.8C130.72,239.41 130.75,240.04 130.87,240.71C131.18,242.45 132.03,243.83 133.41,244.87C134.86,245.8 136.45,246.12 138.19,245.8C138.93,245.67 139.57,245.42 140.11,245.07C140.73,244.7 141.37,244.46 142.03,244.34C143.02,244.16 143.92,244.38 144.71,245.01C145.51,245.64 145.99,246.44 146.17,247.44C146.51,249.34 145.83,250.75 144.11,251.66C142.46,252.47 140.93,253 139.53,253.25C135.81,253.92 132.34,253.18 129.13,251.02C125.99,248.77 124.08,245.78 123.41,242.05L123.28,241.31C123.24,241.06 123.22,240.72 123.23,240.29C116.81,244.01 111.98,249.19 108.73,255.84C105.49,262.49 104.55,269.62 105.92,277.24C107.65,286.84 112.52,294.42 120.52,299.98C128.53,305.54 137.33,307.46 146.93,305.73V305.72Z"
android:fillColor="#1967D2"/>
<path
android:pathData="M293.93,132.47C301.29,134.5 308.23,133.67 314.75,129.97C321.28,126.21 325.56,120.68 327.58,113.37C328.05,111.67 328.36,110.01 328.51,108.39C328.67,106.72 328.66,105.06 328.46,103.41C326.72,103.93 324.96,104.22 323.17,104.26C321.38,104.3 319.61,104.08 317.86,103.59C314.89,102.77 312.27,101.34 310,99.29C307.8,97.2 306.18,94.69 305.16,91.75C302.77,93.75 300.07,95.08 297.06,95.72C294.11,96.33 291.16,96.22 288.19,95.4C286.43,94.92 284.8,94.2 283.28,93.25C281.76,92.3 280.4,91.15 279.17,89.81C278.16,91.13 277.29,92.54 276.58,94.06C275.88,95.52 275.3,97.11 274.83,98.81C272.81,106.12 273.65,113.06 277.33,119.63C281.09,126.16 286.62,130.44 293.93,132.46V132.47ZM289.27,110.78C290.42,111.1 291.49,110.98 292.47,110.42C293.52,109.82 294.21,108.95 294.52,107.79C294.83,106.63 294.69,105.56 294.08,104.56C293.54,103.52 292.69,102.85 291.54,102.53C290.39,102.21 289.28,102.35 288.23,102.95C287.25,103.51 286.6,104.36 286.28,105.52C285.96,106.67 286.07,107.77 286.62,108.81C287.23,109.81 288.11,110.46 289.27,110.78ZM309.05,116.24C310.2,116.56 311.27,116.44 312.25,115.88C313.3,115.28 313.99,114.41 314.3,113.25C314.61,112.09 314.47,111.02 313.86,110.02C313.32,108.98 312.47,108.31 311.32,107.99C310.17,107.67 309.06,107.81 308.01,108.41C307.03,108.97 306.38,109.82 306.06,110.98C305.74,112.14 305.85,113.23 306.4,114.27C307.01,115.27 307.89,115.92 309.05,116.24ZM290,88.81C293.19,89.69 296.22,89.31 299.09,87.68C301.96,86.05 303.84,83.64 304.72,80.45L305.13,78.97C301.27,78.38 297.51,78.61 293.85,79.67C290.19,80.73 286.9,82.45 284,84.85C284.81,85.78 285.71,86.59 286.7,87.28C287.69,87.97 288.79,88.48 290,88.81ZM319.67,97C320.88,97.33 322.08,97.49 323.27,97.46C324.47,97.38 325.67,97.12 326.86,96.68C325.59,93.14 323.65,89.97 321.05,87.19C318.5,84.42 315.4,82.29 311.72,80.8L311.31,82.28C310.43,85.47 310.81,88.5 312.44,91.37C314.07,94.24 316.48,96.12 319.67,97ZM257.98,136.74C256.06,136.21 254.63,135.05 253.71,133.26C252.79,131.47 252.67,129.63 253.37,127.75L265.32,96.01C267.03,91.52 269.46,87.54 272.6,84.09C275.79,80.65 279.39,77.92 283.38,75.89C287.44,73.82 291.76,72.52 296.33,72.01C300.98,71.46 305.63,71.83 310.3,73.11C314.97,74.4 319.13,76.46 322.78,79.3C326.5,82.1 329.55,85.42 331.91,89.27C334.35,93.08 336.03,97.27 336.96,101.84C337.94,106.43 338.02,111.09 337.18,115.83L331.17,149.2C330.8,151.17 329.77,152.69 328.05,153.75C326.33,154.81 324.52,155.08 322.6,154.55L257.98,136.73V136.74ZM292.11,139.06C285.24,137.17 279.58,133.57 275.13,128.26C270.7,122.9 268.07,116.88 267.25,110.21L259.8,130.15L324.42,147.97L328.24,127.03C324.12,132.34 318.78,136.16 312.22,138.49C305.73,140.78 299.03,140.97 292.11,139.06ZM292.11,139.06C299.03,140.97 305.21,142.67 310.65,144.17C316.14,145.69 320.13,146.78 322.6,147.47L324.41,147.97L259.79,130.15L261.6,130.65C264.07,131.33 268.06,132.43 273.55,133.95C279.04,135.47 285.23,137.17 292.09,139.06H292.11Z"
android:fillColor="#F29900"/>
</group>
</vector>

View File

@@ -0,0 +1,118 @@
<!--
~ Copyright (C) 2024 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="412dp"
android:viewportWidth="412"
android:viewportHeight="412">
<group>
<clip-path
android:pathData="M0,0h412v412h-412z"/>
<path
android:pathData="M384,0H28C12.54,0 0,12.54 0,28V384C0,399.46 12.54,412 28,412H384C399.46,412 412,399.46 412,384V28C412,12.54 399.46,0 384,0Z"
android:fillColor="#ffffff"/>
<path
android:pathData="M81.65,103.36C94.23,106.21 96.82,122.99 85.68,129.5L83.84,130.58C80.44,132.57 78.01,135.87 77.14,139.71L76.67,141.79C73.82,154.37 57.04,156.96 50.53,145.82L49.45,143.98C47.46,140.58 44.16,138.15 40.32,137.28L38.24,136.81C25.66,133.96 23.07,117.18 34.21,110.67L36.05,109.59C39.45,107.6 41.88,104.3 42.75,100.46L43.22,98.38C46.07,85.8 62.85,83.21 69.36,94.35L70.44,96.19C72.43,99.59 75.73,102.02 79.57,102.89L81.65,103.36Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#1A73E8"/>
<path
android:pathData="M364.93,340.67C377.51,343.52 380.1,360.3 368.96,366.81L367.12,367.89C363.72,369.88 361.29,373.18 360.42,377.02L359.95,379.1C357.1,391.68 340.32,394.27 333.81,383.13L332.73,381.29C330.74,377.89 327.44,375.46 323.6,374.59L321.52,374.12C308.94,371.27 306.35,354.49 317.49,347.98L319.33,346.9C322.73,344.91 325.16,341.61 326.03,337.77L326.5,335.69C329.35,323.11 346.13,320.52 352.64,331.66L353.72,333.5C355.71,336.9 359.01,339.33 362.85,340.2L364.93,340.67Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#ED050E"/>
<path
android:pathData="M70.27,311.22C73.06,306.56 79.82,306.56 82.61,311.22L85.75,316.46C87.38,319.18 90.6,320.51 93.67,319.74L99.6,318.25C104.87,316.93 109.65,321.71 108.33,326.98L106.84,332.91C106.07,335.98 107.4,339.2 110.12,340.83L115.36,343.97C120.02,346.76 120.02,353.52 115.36,356.31L110.12,359.45C107.4,361.08 106.07,364.3 106.84,367.37L108.33,373.3C109.65,378.57 104.87,383.35 99.6,382.03L93.67,380.54C90.6,379.77 87.38,381.1 85.75,383.82L82.61,389.06C79.82,393.72 73.06,393.72 70.27,389.06L67.13,383.82C65.5,381.1 62.28,379.77 59.21,380.54L53.28,382.03C48.01,383.35 43.23,378.57 44.55,373.3L46.04,367.37C46.81,364.3 45.48,361.08 42.76,359.45L37.52,356.31C32.86,353.52 32.86,346.76 37.52,343.97L42.76,340.83C45.48,339.2 46.81,335.98 46.04,332.91L44.55,326.98C43.23,321.71 48.01,316.93 53.28,318.25L59.21,319.74C62.28,320.51 65.5,319.18 67.13,316.46L70.27,311.22Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#ED050E"/>
<path
android:pathData="M349.46,192.02C350.8,189.79 354.02,189.79 355.36,192.02L356.86,194.53C357.64,195.83 359.18,196.47 360.65,196.1L363.48,195.39C366,194.76 368.28,197.04 367.65,199.56L366.94,202.39C366.57,203.86 367.21,205.4 368.51,206.18L371.02,207.68C373.25,209.02 373.25,212.24 371.02,213.58L368.51,215.08C367.21,215.86 366.57,217.4 366.94,218.87L367.65,221.7C368.28,224.22 366,226.5 363.48,225.87L360.65,225.16C359.18,224.79 357.64,225.43 356.86,226.73L355.36,229.24C354.02,231.47 350.8,231.47 349.46,229.24L347.96,226.73C347.18,225.43 345.64,224.79 344.17,225.16L341.34,225.87C338.82,226.5 336.54,224.22 337.17,221.7L337.88,218.87C338.25,217.4 337.61,215.86 336.31,215.08L333.8,213.58C331.57,212.24 331.57,209.02 333.8,207.68L336.31,206.18C337.61,205.4 338.25,203.86 337.88,202.39L337.17,199.56C336.54,197.04 338.82,194.76 341.34,195.39L344.17,196.1C345.64,196.47 347.18,195.83 347.96,194.53L349.46,192.02Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#1A73E8"/>
<path
android:pathData="M50.02,303.87L76.47,281.69C82,277.05 82.72,268.82 78.09,263.29C73.45,257.76 65.21,257.04 59.69,261.67L33.23,283.85C27.71,288.49 26.98,296.73 31.62,302.25C36.25,307.78 44.49,308.5 50.02,303.87Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#1A73E8"/>
<path
android:pathData="M190.87,53.46L220.77,70.72C227.01,74.33 235,72.19 238.61,65.94C242.21,59.7 240.07,51.71 233.83,48.1L203.93,30.84C197.69,27.24 189.7,29.38 186.09,35.62C182.49,41.87 184.63,49.86 190.87,53.46Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#1A73E8"/>
<path
android:pathData="M372.69,173.54C384.92,173.54 394.84,163.63 394.84,151.39C394.84,139.16 384.92,129.24 372.69,129.24C360.46,129.24 350.54,139.16 350.54,151.39C350.54,163.63 360.46,173.54 372.69,173.54Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#ED050E"/>
<path
android:pathData="M54.85,200.83C63.95,200.83 71.33,193.45 71.33,184.35C71.33,175.25 63.95,167.87 54.85,167.87C45.75,167.87 38.37,175.25 38.37,184.35C38.37,193.45 45.75,200.83 54.85,200.83Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#ED050E"/>
<path
android:pathData="M54.85,75.46C67.92,75.46 78.52,64.86 78.52,51.79C78.52,38.71 67.92,28.12 54.85,28.12C41.78,28.12 31.18,38.71 31.18,51.79C31.18,64.86 41.78,75.46 54.85,75.46Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#ED050E"/>
<path
android:pathData="M149.34,366.63C158.44,366.63 165.82,359.25 165.82,350.15C165.82,341.05 158.44,333.67 149.34,333.67C140.24,333.67 132.86,341.05 132.86,350.15C132.86,359.25 140.24,366.63 149.34,366.63Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FFB900"/>
<path
android:pathData="M164.35,104.14C188.06,81.2 225.76,81.2 249.47,104.14C256.72,111.16 265.61,116.28 275.34,119.03C307.12,128.03 325.97,160.58 317.9,192.52C315.43,202.29 315.43,212.53 317.9,222.3C325.97,254.24 307.12,286.79 275.34,295.79C265.62,298.54 256.73,303.66 249.47,310.68C225.76,333.62 188.06,333.62 164.35,310.68C157.1,303.66 148.21,298.54 138.48,295.79C106.7,286.79 87.85,254.24 95.92,222.3C98.39,212.53 98.39,202.29 95.92,192.52C87.85,160.58 106.7,128.03 138.48,119.03C148.21,116.28 157.09,111.16 164.35,104.14Z"
android:fillColor="#00AB47"/>
<path
android:pathData="M291.79,39.71C294.08,44.56 295.22,46.98 295.37,49.27C295.58,52.57 294.42,55.82 292.16,58.24C290.6,59.91 288.17,61.05 283.32,63.34L280.72,64.57C275.87,66.86 273.45,68 271.16,68.15C267.86,68.36 264.61,67.2 262.19,64.94C260.52,63.38 259.38,60.95 257.09,56.1L255.86,53.5C253.57,48.65 252.43,46.23 252.28,43.94C252.07,40.64 253.23,37.39 255.49,34.97C257.05,33.3 259.48,32.16 264.33,29.87L266.93,28.64C271.78,26.35 274.2,25.21 276.49,25.06C279.79,24.85 283.04,26.01 285.46,28.27C287.13,29.83 288.27,32.26 290.56,37.11L291.79,39.71Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#ED050E"/>
<path
android:pathData="M275.06,336.34C281.73,338.9 285.07,340.18 287.32,342.24C290.57,345.23 292.44,349.42 292.49,353.84C292.52,356.89 291.24,360.23 288.68,366.9L287.31,370.48C284.75,377.15 283.47,380.49 281.41,382.74C278.42,385.99 274.23,387.86 269.81,387.91C266.76,387.94 263.42,386.66 256.75,384.1L253.17,382.73C246.5,380.17 243.16,378.89 240.91,376.83C237.66,373.84 235.79,369.65 235.74,365.23C235.71,362.18 236.99,358.84 239.55,352.17L240.92,348.59C243.48,341.92 244.76,338.58 246.82,336.33C249.81,333.08 254,331.21 258.42,331.16C261.47,331.13 264.81,332.41 271.48,334.97L275.06,336.34Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FFB900"/>
<path
android:pathData="M56.34,227.85C58.63,232.7 59.77,235.12 59.92,237.41C60.13,240.71 58.97,243.96 56.71,246.38C55.15,248.05 52.72,249.19 47.87,251.48L45.27,252.71C40.42,255 38,256.14 35.71,256.29C32.41,256.5 29.16,255.34 26.74,253.08C25.07,251.52 23.93,249.09 21.64,244.24L20.41,241.64C18.12,236.79 16.98,234.37 16.83,232.08C16.62,228.78 17.78,225.53 20.04,223.11C21.6,221.44 24.03,220.3 28.88,218.01L31.48,216.78C36.33,214.49 38.75,213.35 41.04,213.2C44.34,212.99 47.59,214.15 50.01,216.41C51.68,217.97 52.82,220.4 55.11,225.25L56.34,227.85Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FFB900"/>
<path
android:pathData="M319.04,100.31C314.11,99.32 309.47,96.66 306.06,92.42C298.38,82.87 299.86,68.93 309.37,61.29C313.67,57.83 318.88,56.26 324,56.46C324.9,51.42 327.55,46.68 331.84,43.23C341.32,35.61 355.23,37.18 362.91,46.73C366.32,50.97 367.92,56.07 367.83,61.09C372.76,62.08 377.39,64.75 380.8,68.98C388.48,78.53 387.01,92.46 377.53,100.08C373.24,103.53 368.04,105.1 362.92,104.89C362.01,109.94 359.35,114.68 355.05,118.14C345.55,125.78 331.62,124.22 323.94,114.67C320.53,110.43 318.93,105.33 319.03,100.3L319.04,100.31Z"
android:strokeLineJoin="round"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FFB900"/>
<path
android:pathData="M183.62,383.49C180.85,382.54 178.39,380.64 176.76,377.93C173.09,371.82 175.03,363.91 181.1,360.26C183.85,358.61 186.97,358.11 189.91,358.62C190.82,355.79 192.72,353.26 195.46,351.61C201.52,347.96 209.41,349.95 213.09,356.06C214.72,358.77 215.25,361.83 214.8,364.72C217.56,365.68 220.02,367.58 221.65,370.28C225.32,376.39 223.39,384.29 217.33,387.94C214.59,389.59 211.47,390.09 208.54,389.57C207.62,392.41 205.72,394.93 202.97,396.59C196.9,400.25 188.99,398.26 185.32,392.16C183.69,389.45 183.17,386.39 183.62,383.5V383.49Z"
android:strokeLineJoin="round"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#1A73E8"/>
<path
android:pathData="M136.6,94.6C135.54,95.43 135.01,95.85 134.53,96.14C130.73,98.45 125.84,97.87 122.7,94.72C122.3,94.32 121.88,93.79 121.05,92.73L93.38,57.49C92.55,56.43 92.13,55.9 91.84,55.42C89.53,51.62 90.11,46.73 93.26,43.6C93.66,43.2 94.19,42.78 95.25,41.95L112.87,28.12C127.41,16.7 148.46,19.24 159.88,33.78C171.3,48.32 168.76,69.37 154.22,80.79L136.6,94.62V94.6Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FFB900"/>
<path
android:pathData="M389.79,270.19C390.52,270.96 390.89,271.34 391.16,271.7C393.26,274.5 393.17,278.38 390.94,281.08C390.65,281.43 390.27,281.79 389.5,282.52L363.96,306.89C363.19,307.62 362.81,307.99 362.45,308.26C359.65,310.36 355.77,310.27 353.07,308.04C352.72,307.75 352.36,307.37 351.63,306.6L339.44,293.83C329.38,283.29 329.78,266.59 340.31,256.54C350.85,246.48 367.55,246.88 377.6,257.41L389.79,270.18V270.19Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FFB900"/>
</group>
</vector>

View File

@@ -0,0 +1,77 @@
<!--
~ Copyright (C) 2024 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="412dp"
android:viewportWidth="412"
android:viewportHeight="412">
<group>
<clip-path
android:pathData="M0,0h412v412h-412z"/>
<path
android:strokeWidth="1"
android:pathData="M384,0H28C12.54,0 0,12.54 0,28V384C0,399.46 12.54,412 28,412H384C399.46,412 412,399.46 412,384V28C412,12.54 399.46,0 384,0Z"
android:fillColor="#ffffff"
android:strokeColor="#FFFAF0"/>
<path
android:pathData="M300.93,258.76C304.13,254.1 311.15,254.53 313.75,259.55L316.68,265.2C318.2,268.13 321.45,269.72 324.7,269.12L330.95,267.96C336.51,266.92 341.17,272.19 339.46,277.59L337.54,283.65C336.54,286.79 337.72,290.22 340.44,292.09L345.69,295.69C350.35,298.89 349.92,305.91 344.9,308.51L339.25,311.44C336.32,312.96 334.73,316.21 335.34,319.46L336.5,325.71C337.53,331.27 332.27,335.93 326.87,334.22L320.81,332.3C317.67,331.3 314.24,332.48 312.37,335.2L308.77,340.45C305.57,345.11 298.55,344.68 295.95,339.66L293.02,334.01C291.5,331.08 288.25,329.49 285,330.1L278.75,331.26C273.19,332.29 268.53,327.03 270.24,321.63L272.16,315.57C273.16,312.43 271.98,309 269.26,307.13L264.01,303.53C259.35,300.33 259.78,293.31 264.8,290.71L270.45,287.78C273.38,286.26 274.97,283.01 274.37,279.76L273.21,273.51C272.17,267.95 277.44,263.29 282.84,265L288.9,266.92C292.04,267.92 295.47,266.74 297.34,264.02L300.94,258.77L300.93,258.76Z"
android:fillColor="#529FFD"/>
<path
android:pathData="M77.66,50.23C76.29,45.91 76.37,41.09 78.22,36.56C82.41,26.34 94.04,21.44 104.2,25.6C108.8,27.49 112.31,30.91 114.39,35.03C118.76,33.54 123.65,33.57 128.24,35.45C138.38,39.61 143.21,51.26 139.02,61.47C137.16,66 133.84,69.49 129.84,71.61C131.21,75.93 131.12,80.74 129.27,85.28C125.08,95.5 113.47,100.41 103.33,96.26C98.74,94.38 95.24,90.96 93.17,86.84C88.79,88.32 83.89,88.3 79.29,86.41C69.13,82.24 64.28,70.59 68.47,60.37C70.33,55.84 73.65,52.35 77.66,50.24V50.23Z"
android:strokeLineJoin="round"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#EF675C"
android:strokeLineCap="round"/>
<path
android:pathData="M180.11,93.23C180.11,89.75 180.11,88.01 180.28,86.55C181.64,75.13 190.64,66.13 202.05,64.78C203.51,64.61 205.25,64.61 208.73,64.61H324.57C328.05,64.61 329.79,64.61 331.25,64.78C342.67,66.14 351.67,75.14 353.02,86.55C353.19,88.01 353.19,89.75 353.19,93.23V151.15C353.19,198.95 314.44,237.7 266.64,237.7C218.84,237.7 180.09,198.95 180.09,151.15V93.23H180.11Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FCC934"/>
<path
android:pathData="M228.49,100.85C219.06,100.85 211.26,107.82 209.95,116.89C209.74,118.31 210.86,119.59 212.3,119.59H244.69C246.13,119.59 247.24,118.31 247.04,116.89C245.73,107.82 237.93,100.85 228.5,100.85H228.49Z"
android:fillColor="#FCC934"/>
<path
android:pathData="M304.85,100.85C295.42,100.85 287.62,107.82 286.31,116.89C286.1,118.31 287.22,119.59 288.66,119.59H321.05C322.49,119.59 323.6,118.31 323.4,116.89C322.09,107.82 314.29,100.85 304.86,100.85H304.85Z"
android:fillColor="#FCC934"/>
<path
android:pathData="M266.67,172.93C253.45,172.93 242.5,182.7 240.67,195.42C240.38,197.42 241.94,199.21 243.96,199.21H289.38C291.4,199.21 292.96,197.42 292.67,195.42C290.83,182.7 279.89,172.93 266.67,172.93Z"
android:fillColor="#FCC934"/>
<path
android:pathData="M55.38,166.77C55.38,163.29 55.38,161.55 55.55,160.09C56.91,148.67 65.91,139.67 77.32,138.32C78.78,138.15 80.52,138.15 84,138.15H199.84C203.32,138.15 205.06,138.15 206.52,138.32C217.94,139.68 226.94,148.68 228.29,160.09C228.46,161.55 228.46,163.29 228.46,166.77V224.69C228.46,272.49 189.71,311.24 141.91,311.24C94.11,311.24 55.36,272.49 55.36,224.69V166.77H55.38Z"
android:fillColor="#F9AB00"/>
<path
android:strokeWidth="1"
android:pathData="M103.75,179.43C94.32,179.43 86.52,186.4 85.21,195.47C85,196.89 86.12,198.17 87.56,198.17H119.95C121.39,198.17 122.5,196.89 122.3,195.47C120.99,186.4 113.19,179.43 103.76,179.43H103.75Z"
android:fillColor="#FFFAF0"
android:strokeColor="#FFFAF0"/>
<path
android:strokeWidth="1"
android:pathData="M180.11,179.43C170.68,179.43 162.88,186.4 161.57,195.47C161.36,196.89 162.48,198.17 163.92,198.17H196.31C197.75,198.17 198.86,196.89 198.66,195.47C197.35,186.4 189.55,179.43 180.12,179.43H180.11Z"
android:fillColor="#FFFAF0"
android:strokeColor="#FFFAF0"/>
<path
android:strokeWidth="1"
android:pathData="M140.16,277.78C153.38,277.78 164.33,268.01 166.16,255.29C166.45,253.29 164.89,251.5 162.87,251.5H117.45C115.43,251.5 113.87,253.29 114.16,255.29C116,268.01 126.94,277.78 140.16,277.78Z"
android:fillColor="#FFFAF0"
android:strokeColor="#FFFAF0"/>
<path
android:pathData="M205.46,328.16C220.3,318.94 239.8,323.51 249.02,338.35C258.24,353.19 253.67,372.69 238.83,381.91L226.43,389.61C211.59,398.83 192.09,394.26 182.87,379.42C173.65,364.58 178.22,345.08 193.06,335.86L205.46,328.16Z"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#26BC6D"/>
</group>
</vector>

View File

@@ -0,0 +1,65 @@
<!--
~ Copyright (C) 2024 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="412dp"
android:viewportWidth="412"
android:viewportHeight="412">
<group>
<clip-path
android:pathData="M0,0h412v412h-412z"/>
<path
android:pathData="M384,0H28C12.54,0 0,12.54 0,28V384C0,399.46 12.54,412 28,412H384C399.46,412 412,399.46 412,384V28C412,12.54 399.46,0 384,0Z"
android:fillColor="#ffffff"/>
<path
android:pathData="M147.09,65.18C149.2,72.23 150.26,75.75 149.99,78.88C149.6,83.41 147.36,87.57 143.79,90.39C141.33,92.34 137.8,93.39 130.75,95.51L126.97,96.64C119.92,98.75 116.4,99.81 113.27,99.54C108.74,99.15 104.58,96.91 101.76,93.34C99.81,90.88 98.76,87.35 96.64,80.3L95.51,76.52C93.4,69.47 92.34,65.95 92.61,62.82C93,58.29 95.24,54.13 98.81,51.31C101.27,49.36 104.8,48.31 111.85,46.19L115.63,45.06C122.68,42.95 126.2,41.89 129.33,42.16C133.86,42.55 138.02,44.79 140.84,48.36C142.79,50.82 143.84,54.35 145.96,61.4L147.09,65.18Z"
android:fillColor="#00AB47"/>
<path
android:pathData="M222.58,377.9C217.67,383.38 215.21,386.12 212.4,387.52C208.33,389.55 203.61,389.81 199.35,388.23C196.41,387.14 193.67,384.68 188.19,379.77L185.25,377.13C179.77,372.22 177.03,369.76 175.63,366.95C173.6,362.88 173.34,358.16 174.92,353.9C176.01,350.96 178.47,348.22 183.38,342.74L186.02,339.8C190.93,334.32 193.39,331.58 196.2,330.18C200.27,328.15 204.99,327.89 209.25,329.47C212.19,330.56 214.93,333.02 220.41,337.93L223.35,340.57C228.83,345.48 231.57,347.94 232.97,350.75C235,354.82 235.26,359.54 233.68,363.8C232.59,366.74 230.13,369.48 225.22,374.96L222.58,377.9Z"
android:fillColor="#FFB900"/>
<path
android:pathData="M341,204.85C338.84,202.27 337.54,198.95 337.54,195.31C337.54,187.12 344.14,180.49 352.29,180.49C355.98,180.49 359.35,181.85 361.93,184.1C364.51,181.85 367.87,180.49 371.55,180.49C379.67,180.49 386.26,187.13 386.26,195.31C386.26,198.94 384.96,202.27 382.81,204.85C384.96,207.43 386.26,210.75 386.26,214.39C386.26,222.58 379.67,229.21 371.55,229.21C367.87,229.21 364.51,227.85 361.93,225.6C359.34,227.85 355.97,229.21 352.29,229.21C344.15,229.21 337.54,222.57 337.54,214.39C337.54,210.76 338.84,207.43 341,204.85Z"
android:fillColor="#00AB47"/>
<path
android:pathData="M210.98,29.57C221.73,24.9 232.63,35.81 227.97,46.56L227.2,48.34C225.77,51.62 225.77,55.35 227.2,58.63L227.97,60.41C232.64,71.16 221.73,82.06 210.98,77.4L209.2,76.63C205.92,75.2 202.19,75.2 198.91,76.63L197.13,77.4C186.38,82.07 175.48,71.16 180.14,60.41L180.91,58.63C182.34,55.35 182.34,51.62 180.91,48.34L180.14,46.56C175.47,35.81 186.38,24.91 197.13,29.57L198.91,30.34C202.19,31.77 205.92,31.77 209.2,30.34L210.98,29.57Z"
android:fillColor="#4285F4"/>
<path
android:pathData="M112.23,310.56C117.35,305.61 125.49,305.61 130.6,310.56C132.17,312.08 134.08,313.18 136.18,313.77C143.04,315.71 147.11,322.74 145.37,329.63C144.84,331.74 144.84,333.95 145.37,336.06C147.11,342.95 143.04,349.98 136.18,351.92C134.08,352.51 132.16,353.62 130.6,355.13C125.48,360.08 117.34,360.08 112.23,355.13C110.66,353.61 108.75,352.51 106.65,351.92C99.79,349.98 95.72,342.95 97.46,336.06C97.99,333.95 97.99,331.74 97.46,329.63C95.72,322.74 99.79,315.71 106.65,313.77C108.75,313.18 110.67,312.07 112.23,310.56Z"
android:fillColor="#00AB47"/>
<path
android:pathData="M371.12,285.88C371.35,286.8 371.47,287.26 371.52,287.66C371.92,290.76 370.14,293.73 367.21,294.85C366.84,294.99 366.38,295.11 365.46,295.34L334.88,303C333.96,303.23 333.5,303.35 333.1,303.4C330,303.8 327.03,302.02 325.91,299.09C325.77,298.72 325.65,298.26 325.42,297.34L321.59,282.05C318.43,269.43 326.09,256.64 338.71,253.48C351.33,250.32 364.12,257.98 367.28,270.6L371.11,285.89L371.12,285.88Z"
android:fillColor="#4285F4"/>
<path
android:pathData="M70.59,304.57C69.85,305.15 69.47,305.45 69.13,305.66C66.46,307.29 63.02,306.87 60.81,304.66C60.53,304.38 60.23,304 59.65,303.26L40.18,278.47C39.6,277.73 39.3,277.35 39.09,277.01C37.46,274.34 37.88,270.9 40.09,268.69C40.37,268.41 40.75,268.11 41.49,267.53L53.89,257.8C64.12,249.77 78.93,251.55 86.96,261.78C94.99,272.01 93.21,286.82 82.98,294.85L70.58,304.58L70.59,304.57Z"
android:fillColor="#4285F4"/>
<path
android:pathData="M313.19,71.34C313.19,85.75 301.51,97.44 287.09,97.44C272.67,97.44 260.99,85.76 260.99,71.34C260.99,56.93 272.67,45.24 287.09,45.24C301.5,45.24 313.19,56.92 313.19,71.34Z"
android:fillColor="#EA4335"/>
<path
android:pathData="M69.28,183.38C67.16,181.26 62.32,182.31 56.49,185.67C54.74,179.16 52.06,175 49.06,175C46.06,175 43.38,179.16 41.63,185.67C35.79,182.31 30.96,181.26 28.84,183.38C26.72,185.5 27.77,190.34 31.13,196.18C24.62,197.93 20.46,200.61 20.46,203.61C20.46,206.61 24.62,209.29 31.13,211.04C27.77,216.88 26.72,221.71 28.84,223.84C30.96,225.96 35.8,224.91 41.64,221.55C43.39,228.06 46.07,232.22 49.07,232.22C52.07,232.22 54.75,228.06 56.5,221.55C62.34,224.92 67.17,225.97 69.3,223.84C71.42,221.72 70.37,216.88 67.01,211.04C73.52,209.29 77.68,206.61 77.68,203.61C77.68,200.61 73.52,197.93 67.01,196.18C70.37,190.34 71.42,185.51 69.3,183.39L69.28,183.38Z"
android:fillColor="#FFB900"
android:fillType="evenOdd"/>
<path
android:pathData="M284.91,311.14C286.75,308.06 291.22,308.06 293.06,311.14L295.13,314.6C296.21,316.4 298.33,317.28 300.36,316.77L304.28,315.79C307.76,314.92 310.92,318.07 310.04,321.55L309.06,325.47C308.55,327.5 309.43,329.62 311.23,330.7L314.69,332.77C317.77,334.61 317.77,339.08 314.69,340.92L311.23,342.99C309.43,344.07 308.55,346.19 309.06,348.22L310.04,352.14C310.91,355.62 307.76,358.78 304.28,357.9L300.36,356.92C298.33,356.41 296.21,357.29 295.13,359.09L293.06,362.55C291.22,365.63 286.75,365.63 284.91,362.55L282.84,359.09C281.76,357.29 279.64,356.41 277.61,356.92L273.69,357.9C270.21,358.77 267.05,355.62 267.93,352.14L268.91,348.22C269.42,346.19 268.54,344.07 266.74,342.99L263.28,340.92C260.2,339.08 260.2,334.61 263.28,332.77L266.74,330.7C268.54,329.62 269.42,327.5 268.91,325.47L267.93,321.55C267.06,318.07 270.21,314.91 273.69,315.79L277.61,316.77C279.64,317.28 281.76,316.4 282.84,314.6L284.91,311.14Z"
android:fillColor="#EA4335"/>
<path
android:pathData="M325.48,106.56C333.84,98.2 347.38,98.2 355.74,106.56C364.1,114.92 364.1,128.46 355.74,136.82L348.76,143.8C340.4,152.16 326.86,152.16 318.5,143.8C310.14,135.44 310.14,121.9 318.5,113.54L325.48,106.56Z"
android:fillColor="#FFB900"/>
<path
android:pathData="M62.52,107.52C73.44,103.01 85.95,108.22 90.46,119.14C94.97,130.06 89.76,142.57 78.84,147.08L69.71,150.85C58.79,155.36 46.28,150.15 41.77,139.23C37.26,128.31 42.47,115.8 53.39,111.29L62.52,107.52Z"
android:fillColor="#EA4335"/>
</group>
</vector>

View File

@@ -114,7 +114,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:adjustViewBounds="true" android:adjustViewBounds="true"
android:scaleType="centerCrop" android:scaleType="fitCenter"
android:layout_gravity="center" /> android:layout_gravity="center" />
</FrameLayout> </FrameLayout>

View File

@@ -56,7 +56,7 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:adjustViewBounds="true" android:adjustViewBounds="true"
android:clickable="false" android:clickable="false"
android:scaleType="centerCrop" android:scaleType="fitCenter"
android:layout_gravity="center" /> android:layout_gravity="center" />
</FrameLayout> </FrameLayout>
@@ -78,7 +78,7 @@
android:clickable="false" android:clickable="false"
android:text="@string/zen_mode_setup_page_summary" android:text="@string/zen_mode_setup_page_summary"
android:textSize="18sp" android:textSize="18sp"
android:paddingBottom="12dp" android:paddingBottom="18dp"
android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Body1" android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Body1"
app:layout_constraintBottom_toTopOf="@+id/enable_mode_button" /> app:layout_constraintBottom_toTopOf="@+id/enable_mode_button" />

View File

@@ -519,6 +519,4 @@
<dimen name="zen_mode_circular_icon_margin_between">4dp</dimen> <dimen name="zen_mode_circular_icon_margin_between">4dp</dimen>
<dimen name="zen_mode_circular_icon_margin_vertical">8dp</dimen> <dimen name="zen_mode_circular_icon_margin_vertical">8dp</dimen>
<dimen name="zen_mode_circular_icon_text_size">18dp</dimen> <dimen name="zen_mode_circular_icon_text_size">18dp</dimen>
<!-- For images in SetupInterstitialActivity -->
<dimen name="zen_mode_interstitial_corner_radius">30dp</dimen>
</resources> </resources>

View File

@@ -15,6 +15,8 @@
*/ */
package com.android.settings.notification.modes; package com.android.settings.notification.modes;
import static com.google.common.base.Preconditions.checkNotNull;
import android.app.Flags; import android.app.Flags;
import android.content.Context; import android.content.Context;
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;
@@ -22,8 +24,8 @@ import android.view.ViewGroup;
import android.widget.ImageView; import android.widget.ImageView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.preference.Preference; import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment; import com.android.settings.dashboard.DashboardFragment;
@@ -32,13 +34,15 @@ import com.android.settingslib.notification.modes.ZenIconLoader;
import com.android.settingslib.notification.modes.ZenMode; import com.android.settingslib.notification.modes.ZenMode;
import com.android.settingslib.widget.LayoutPreference; import com.android.settingslib.widget.LayoutPreference;
import java.util.function.Consumer; import com.google.common.base.Objects;
import java.util.function.Function; import java.util.function.Function;
abstract class AbstractZenModeHeaderController extends AbstractZenModePreferenceController { abstract class AbstractZenModeHeaderController extends AbstractZenModePreferenceController {
private final DashboardFragment mFragment; private final DashboardFragment mFragment;
private EntityHeaderController mHeaderController; private EntityHeaderController mHeaderController;
private String mCurrentIconKey;
AbstractZenModeHeaderController( AbstractZenModeHeaderController(
@NonNull Context context, @NonNull Context context,
@@ -53,40 +57,44 @@ abstract class AbstractZenModeHeaderController extends AbstractZenModePreference
return Flags.modesApi() && Flags.modesUi(); return Flags.modesApi() && Flags.modesUi();
} }
protected void updateIcon(Preference preference, @NonNull ZenMode zenMode, int iconSizePx, protected void setUpHeader(PreferenceScreen screen, int iconSizePx) {
Function<Drawable, Drawable> modeIconStylist, LayoutPreference preference = checkNotNull(screen.findPreference(getPreferenceKey()));
@Nullable Consumer<ImageView> iconViewCustomizer) {
if (mFragment == null) {
return;
}
preference.setSelectable(false); preference.setSelectable(false);
if (mHeaderController == null) { if (mHeaderController == null) {
final LayoutPreference pref = (LayoutPreference) preference;
mHeaderController = EntityHeaderController.newInstance( mHeaderController = EntityHeaderController.newInstance(
mFragment.getActivity(), mFragment.getActivity(),
mFragment, mFragment,
pref.findViewById(R.id.entity_header)); preference.findViewById(R.id.entity_header));
} }
ImageView iconView = ((LayoutPreference) preference).findViewById(R.id.entity_header_icon); ImageView iconView = checkNotNull(preference.findViewById(R.id.entity_header_icon));
if (iconView != null) { ViewGroup.LayoutParams layoutParams = iconView.getLayoutParams();
if (iconViewCustomizer != null) { if (layoutParams.width != iconSizePx || layoutParams.height != iconSizePx) {
iconViewCustomizer.accept(iconView); layoutParams.width = iconSizePx;
} layoutParams.height = iconSizePx;
ViewGroup.LayoutParams layoutParams = iconView.getLayoutParams(); iconView.setLayoutParams(layoutParams);
if (layoutParams.width != iconSizePx || layoutParams.height != iconSizePx) {
layoutParams.width = iconSizePx;
layoutParams.height = iconSizePx;
iconView.setLayoutParams(layoutParams);
}
} }
}
FutureUtil.whenDone( protected void updateIcon(Preference preference, @NonNull ZenMode zenMode,
zenMode.getIcon(mContext, ZenIconLoader.getInstance()), Function<Drawable, Drawable> iconStylist, boolean isSelected) {
icon -> mHeaderController
.setIcon(modeIconStylist.apply(icon)) ImageView iconView = checkNotNull(
.done(/* rebindActions= */ false), ((LayoutPreference) preference).findViewById(R.id.entity_header_icon));
mContext.getMainExecutor()); iconView.setSelected(isSelected);
if (!Objects.equal(mCurrentIconKey, zenMode.getIconKey())) {
mCurrentIconKey = zenMode.getIconKey();
FutureUtil.whenDone(
zenMode.getIcon(mContext, ZenIconLoader.getInstance()),
icon -> {
checkNotNull(mHeaderController)
.setIcon(iconStylist.apply(icon))
.done(/* rebindActions= */ false);
iconView.jumpDrawablesToCurrentState(); // Skip animation on first load.
},
mContext.getMainExecutor());
}
} }
} }

View File

@@ -30,7 +30,9 @@ import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;
import android.graphics.drawable.LayerDrawable; import android.graphics.drawable.LayerDrawable;
import android.graphics.drawable.ShapeDrawable; import android.graphics.drawable.ShapeDrawable;
import android.graphics.drawable.StateListDrawable;
import android.graphics.drawable.shapes.OvalShape; import android.graphics.drawable.shapes.OvalShape;
import android.util.StateSet;
import android.view.Gravity; import android.view.Gravity;
import androidx.annotation.AttrRes; import androidx.annotation.AttrRes;
@@ -65,20 +67,42 @@ class IconUtil {
/** /**
* Returns a variant of the supplied mode icon to be used as the header in the mode page. The * Returns a variant of the supplied mode icon to be used as the header in the mode page. The
* inner icon is 64x64 dp and it's contained in a 12-sided-cookie of 136dp diameter. It's * mode icon is contained in a 12-sided-cookie. The color combination is "material secondary"
* tinted with the "material secondary" color combination and the "selected" color variant * when unselected and "material primary" when selected; the switch between these two color sets
* should be used for modes currently active. * is animated with a cross-fade. The selected colors should be used when the mode is currently
* active.
*/ */
static Drawable makeModeHeader(@NonNull Context context, Drawable modeIcon) { static Drawable makeModeHeader(@NonNull Context context, Drawable modeIcon) {
return composeIcons( Resources res = context.getResources();
checkNotNull(context.getDrawable(R.drawable.ic_zen_mode_icon_cookie)), Drawable background = checkNotNull(context.getDrawable(R.drawable.ic_zen_mode_icon_cookie));
context.getColorStateList(R.color.modes_icon_selectable_background), @Px int outerSizePx = res.getDimensionPixelSize(R.dimen.zen_mode_header_size);
context.getResources().getDimensionPixelSize( @Px int innerSizePx = res.getDimensionPixelSize(R.dimen.zen_mode_header_inner_icon_size);
R.dimen.zen_mode_header_size),
Drawable base = composeIcons(
background,
Utils.getColorAttr(context,
com.android.internal.R.attr.materialColorSecondaryContainer),
outerSizePx,
modeIcon, modeIcon,
context.getColorStateList(R.color.modes_icon_selectable_icon), Utils.getColorAttr(context,
context.getResources().getDimensionPixelSize( com.android.internal.R.attr.materialColorOnSecondaryContainer),
R.dimen.zen_mode_header_inner_icon_size)); innerSizePx);
Drawable selected = composeIcons(
background,
Utils.getColorAttr(context, com.android.internal.R.attr.materialColorPrimary),
outerSizePx,
modeIcon,
Utils.getColorAttr(context, com.android.internal.R.attr.materialColorOnPrimary),
innerSizePx);
StateListDrawable result = new StateListDrawable();
result.setEnterFadeDuration(res.getInteger(android.R.integer.config_mediumAnimTime));
result.setExitFadeDuration(res.getInteger(android.R.integer.config_mediumAnimTime));
result.addState(new int[] { android.R.attr.state_selected }, selected);
result.addState(StateSet.WILD_CARD, base);
result.setBounds(0, 0, outerSizePx, outerSizePx);
return result;
} }
/** /**

View File

@@ -16,25 +16,21 @@
package com.android.settings.notification.modes; package com.android.settings.notification.modes;
import static android.graphics.drawable.GradientDrawable.LINEAR_GRADIENT; import static android.app.AutomaticZenRule.TYPE_BEDTIME;
import static android.graphics.drawable.GradientDrawable.Orientation.BL_TR; import static android.app.AutomaticZenRule.TYPE_DRIVING;
import static android.app.AutomaticZenRule.TYPE_IMMERSIVE;
import static android.app.AutomaticZenRule.TYPE_MANAGED;
import static android.app.AutomaticZenRule.TYPE_OTHER;
import static android.app.AutomaticZenRule.TYPE_THEATER;
import static android.provider.Settings.EXTRA_AUTOMATIC_ZEN_RULE_ID; import static android.provider.Settings.EXTRA_AUTOMATIC_ZEN_RULE_ID;
import android.app.ActionBar; import android.app.ActionBar;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.graphics.Color;
import android.graphics.Outline;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.GradientDrawable;
import android.os.Bundle; import android.os.Bundle;
import android.util.Log; import android.util.Log;
import android.view.View; import android.view.View;
import android.view.ViewGroup;
import android.view.ViewOutlineProvider;
import android.view.ViewTreeObserver;
import android.widget.Button; import android.widget.Button;
import android.widget.FrameLayout;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.TextView; import android.widget.TextView;
import android.widget.Toast; import android.widget.Toast;
@@ -58,17 +54,6 @@ public class SetupInterstitialActivity extends FragmentActivity {
private static final String TAG = "ModeSetupInterstitial"; private static final String TAG = "ModeSetupInterstitial";
private ZenModesBackend mBackend; private ZenModesBackend mBackend;
private final ViewOutlineProvider mOutlineProvider = new ViewOutlineProvider() {
@Override
public void getOutline(View view, Outline outline) {
// Provides a rounded rectangle outline whose width & height matches the View.
float cornerRadius = getResources().getDimensionPixelSize(
R.dimen.zen_mode_interstitial_corner_radius);
outline.setRoundRect(0, 0, view.getMeasuredWidth(), view.getMeasuredHeight(),
cornerRadius);
}
};
/** /**
* Returns an intent leading to this page for the given mode and context. * Returns an intent leading to this page for the given mode and context.
*/ */
@@ -150,79 +135,17 @@ public class SetupInterstitialActivity extends FragmentActivity {
} }
private void setImage(@NonNull ImageView img, @NonNull ZenMode mode) { private void setImage(@NonNull ImageView img, @NonNull ZenMode mode) {
img.setImageDrawable(getModeDrawable(mode)); int drawableRes = switch (mode.getType()) {
img.setClipToOutline(true); case TYPE_BEDTIME -> R.drawable.modes_interstitial_bedtime;
img.setOutlineProvider(mOutlineProvider); case TYPE_DRIVING -> R.drawable.modes_interstitial_driving;
case TYPE_IMMERSIVE -> R.drawable.modes_interstitial_immersive;
case TYPE_THEATER -> R.drawable.modes_interstitial_theater;
case TYPE_MANAGED -> R.drawable.modes_interstitial_managed;
case TYPE_OTHER -> R.drawable.modes_interstitial_other;
default -> R.drawable.modes_interstitial_unknown;
};
FrameLayout frame = findViewById(R.id.image_frame); img.setImageResource(drawableRes);
if (frame == null) {
return;
}
if (img.getMeasuredWidth() == 0) {
// set up to resize after the global layout occurs
img.getViewTreeObserver().addOnGlobalLayoutListener(
new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
img.getViewTreeObserver().removeOnGlobalLayoutListener(this);
sizeImageToFrame(img, frame);
}
});
} else {
// measured already, resize it now
sizeImageToFrame(img, frame);
}
}
private Drawable getModeDrawable(@NonNull ZenMode mode) {
// TODO: b/332730534 - set actual images depending on mode type (asynchronously?)
GradientDrawable placeholder = new GradientDrawable();
placeholder.setSize(40, 60); // 4x6 rectangle, slightly taller than wide
placeholder.setGradientType(LINEAR_GRADIENT);
placeholder.setOrientation(BL_TR);
placeholder.setColors(new int[]{Color.BLACK, Color.WHITE});
return placeholder;
}
@VisibleForTesting
protected void sizeImageToFrame(ImageView img, FrameLayout frame) {
// width of the space we have available = overall size of frame - relevant padding
int frameHeight =
frame.getMeasuredHeight() - frame.getPaddingTop() - frame.getPaddingBottom();
int frameWidth =
frame.getMeasuredWidth() - frame.getPaddingLeft() - frame.getPaddingRight();
int imgHeight = img.getDrawable().getIntrinsicHeight();
int imgWidth = img.getDrawable().getIntrinsicWidth();
// if any of these are 0, give up because we won't be able to do the relevant math (and
// we probably don't have the relevant data set up)
if (frameHeight == 0 || frameWidth == 0 || imgHeight == 0 || imgWidth == 0) {
Log.w(TAG, "image or frame has invalid size parameters");
return;
}
float frameHWRatio = ((float) frameHeight) / frameWidth;
float imgHWRatio = ((float) imgHeight) / imgWidth;
// fit horizontal dimension if the frame has a taller ratio (height/width) than the image;
// otherwise, fit the vertical direction
boolean fitHorizontal = frameHWRatio > imgHWRatio;
ViewGroup.LayoutParams layoutParams = img.getLayoutParams();
if (layoutParams == null) {
Log.w(TAG, "image has null LayoutParams");
return;
}
if (fitHorizontal) {
layoutParams.width = frameWidth;
float scaledHeight = imgHWRatio * frameWidth;
layoutParams.height = (int) scaledHeight;
} else {
layoutParams.height = frameHeight;
float scaledWidth = /* w/h ratio */ (1 / imgHWRatio) * frameHeight;
layoutParams.width = (int) scaledWidth;
}
img.setLayoutParams(layoutParams);
} }
private void setupButton(Button button, @NonNull ZenMode mode) { private void setupButton(Button button, @NonNull ZenMode mode) {

View File

@@ -19,6 +19,7 @@ import android.content.Context;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.preference.Preference; import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment; import com.android.settings.dashboard.DashboardFragment;
@@ -33,11 +34,17 @@ class ZenModeHeaderController extends AbstractZenModeHeaderController {
super(context, key, fragment); super(context, key, fragment);
} }
@Override
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
setUpHeader(screen,
mContext.getResources().getDimensionPixelSize(R.dimen.zen_mode_header_size));
}
@Override @Override
public void updateState(Preference preference, @NonNull ZenMode zenMode) { public void updateState(Preference preference, @NonNull ZenMode zenMode) {
updateIcon(preference, zenMode, updateIcon(preference, zenMode,
mContext.getResources().getDimensionPixelSize(R.dimen.zen_mode_header_size),
icon -> IconUtil.makeModeHeader(mContext, icon), icon -> IconUtil.makeModeHeader(mContext, icon),
iconView -> iconView.setSelected(zenMode.isActive())); /* isSelected= */ zenMode.isActive());
} }
} }

View File

@@ -20,6 +20,7 @@ import android.content.Context;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.preference.Preference; import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment; import com.android.settings.dashboard.DashboardFragment;
@@ -33,12 +34,17 @@ class ZenModeIconPickerIconPreferenceController extends AbstractZenModeHeaderCon
super(context, key, fragment); super(context, key, fragment);
} }
@Override
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
setUpHeader(screen, mContext.getResources().getDimensionPixelSize(
R.dimen.zen_mode_icon_list_header_circle_diameter));
}
@Override @Override
void updateState(Preference preference, @NonNull ZenMode zenMode) { void updateState(Preference preference, @NonNull ZenMode zenMode) {
updateIcon(preference, zenMode, updateIcon(preference, zenMode,
mContext.getResources().getDimensionPixelSize(
R.dimen.zen_mode_icon_list_header_circle_diameter),
icon -> IconUtil.makeIconPickerHeader(mContext, icon), icon -> IconUtil.makeIconPickerHeader(mContext, icon),
null); /* isSelected= */ false);
} }
} }

View File

@@ -473,7 +473,7 @@ public class WifiHotspotRepository {
boolean isChannelAvailable(SapBand sapBand) { boolean isChannelAvailable(SapBand sapBand) {
try { try {
List<WifiAvailableChannel> channels = List<WifiAvailableChannel> channels =
mWifiManager.getUsableChannels(sapBand.band, OP_MODE_SAP); mWifiManager.getAllowedChannels(sapBand.band, OP_MODE_SAP);
log("isChannelAvailable(), band:" + sapBand.band + ", channels:" + channels); log("isChannelAvailable(), band:" + sapBand.band + ", channels:" + channels);
sapBand.hasUsableChannels = (channels != null && channels.size() > 0); sapBand.hasUsableChannels = (channels != null && channels.size() > 0);
sapBand.isUsableChannelsUnsupported = false; sapBand.isUsableChannelsUnsupported = false;

View File

@@ -0,0 +1 @@
include /src/com/android/settings/bluetooth/OWNERS

View File

@@ -0,0 +1 @@
include /src/com/android/settings/connecteddevice/OWNERS

View File

@@ -150,134 +150,4 @@ public class SetupInterstitialActivityTest {
}); });
scenario.close(); scenario.close();
} }
@Test
public void setImageToFrame_sizeZero() {
ActivityScenario<SetupInterstitialActivity> scenario =
ActivityScenario.launch(new Intent(Intent.ACTION_MAIN)
.setClass(RuntimeEnvironment.getApplication(),
SetupInterstitialActivity.class)
.putExtra(EXTRA_AUTOMATIC_ZEN_RULE_ID, MODE_ID));
scenario.onActivity(activity -> {
// when either the image or the frame has a size 0, we do nothing
when(mDrawable.getIntrinsicWidth()).thenReturn(0);
when(mDrawable.getIntrinsicHeight()).thenReturn(25);
when(mFrame.getMeasuredWidth()).thenReturn(40);
when(mFrame.getMeasuredHeight()).thenReturn(50);
activity.sizeImageToFrame(mImage, mFrame);
verify(mImage, never()).setLayoutParams(any());
});
scenario.close();
}
@Test
public void setImageToFrame_imageLargerThanFrame() {
ActivityScenario<SetupInterstitialActivity> scenario =
ActivityScenario.launch(new Intent(Intent.ACTION_MAIN)
.setClass(RuntimeEnvironment.getApplication(),
SetupInterstitialActivity.class)
.putExtra(EXTRA_AUTOMATIC_ZEN_RULE_ID, MODE_ID));
scenario.onActivity(activity -> {
// image: 900(w)x1500(h); frame: 600(w)x500(h)
// image expected to be scaled down to match the height of the frame -> 300(w)x500(h)
when(mDrawable.getIntrinsicWidth()).thenReturn(900);
when(mDrawable.getIntrinsicHeight()).thenReturn(1500);
when(mFrame.getMeasuredWidth()).thenReturn(600);
when(mFrame.getMeasuredHeight()).thenReturn(500);
ArgumentCaptor<ViewGroup.LayoutParams> captor = ArgumentCaptor.forClass(
ViewGroup.LayoutParams.class);
activity.sizeImageToFrame(mImage, mFrame);
verify(mImage).setLayoutParams(captor.capture());
ViewGroup.LayoutParams out = captor.getValue();
assertThat(out.width).isEqualTo(300);
assertThat(out.height).isEqualTo(500);
});
scenario.close();
}
@Test
public void setImageToFrame_imageSmallerThanFrame() {
ActivityScenario<SetupInterstitialActivity> scenario =
ActivityScenario.launch(new Intent(Intent.ACTION_MAIN)
.setClass(RuntimeEnvironment.getApplication(),
SetupInterstitialActivity.class)
.putExtra(EXTRA_AUTOMATIC_ZEN_RULE_ID, MODE_ID));
scenario.onActivity(activity -> {
// image: 300(w)x200(h); frame: 900(w)x1200(h)
// image expected to be scaled up to match the width of the frame -> 900(w)x600(h)
when(mDrawable.getIntrinsicWidth()).thenReturn(300);
when(mDrawable.getIntrinsicHeight()).thenReturn(200);
when(mFrame.getMeasuredWidth()).thenReturn(900);
when(mFrame.getMeasuredHeight()).thenReturn(1200);
ArgumentCaptor<ViewGroup.LayoutParams> captor = ArgumentCaptor.forClass(
ViewGroup.LayoutParams.class);
activity.sizeImageToFrame(mImage, mFrame);
verify(mImage).setLayoutParams(captor.capture());
ViewGroup.LayoutParams out = captor.getValue();
assertThat(out.width).isEqualTo(900);
assertThat(out.height).isEqualTo(600);
});
scenario.close();
}
@Test
public void setImageToFrame_horizontalImageNarrowerThanFrame() {
ActivityScenario<SetupInterstitialActivity> scenario =
ActivityScenario.launch(new Intent(Intent.ACTION_MAIN)
.setClass(RuntimeEnvironment.getApplication(),
SetupInterstitialActivity.class)
.putExtra(EXTRA_AUTOMATIC_ZEN_RULE_ID, MODE_ID));
scenario.onActivity(activity -> {
// image: 600(w)x400(h); frame: 1000(w)x100(h)
// both image and frame are wider than tall, but frame is much narrower
// so should fit image to height of frame -> 150(w)x100(h)
when(mDrawable.getIntrinsicWidth()).thenReturn(600);
when(mDrawable.getIntrinsicHeight()).thenReturn(400);
when(mFrame.getMeasuredWidth()).thenReturn(1000);
when(mFrame.getMeasuredHeight()).thenReturn(100);
ArgumentCaptor<ViewGroup.LayoutParams> captor = ArgumentCaptor.forClass(
ViewGroup.LayoutParams.class);
activity.sizeImageToFrame(mImage, mFrame);
verify(mImage).setLayoutParams(captor.capture());
ViewGroup.LayoutParams out = captor.getValue();
assertThat(out.width).isEqualTo(150);
assertThat(out.height).isEqualTo(100);
});
scenario.close();
}
@Test
public void setImageToFrame_accountsForPadding() {
ActivityScenario<SetupInterstitialActivity> scenario =
ActivityScenario.launch(new Intent(Intent.ACTION_MAIN)
.setClass(RuntimeEnvironment.getApplication(),
SetupInterstitialActivity.class)
.putExtra(EXTRA_AUTOMATIC_ZEN_RULE_ID, MODE_ID));
scenario.onActivity(activity -> {
// image: 200(w)x300(h); frame: 1000(w)x1000(h), 50 top/bottom padding, 100 l/r padding
// effective size of frame is therefore 800(w)x900(h)
// scale image to the height of the effective frame -> 600(w)x900(h)
when(mDrawable.getIntrinsicWidth()).thenReturn(200);
when(mDrawable.getIntrinsicHeight()).thenReturn(300);
when(mFrame.getMeasuredWidth()).thenReturn(1000);
when(mFrame.getMeasuredHeight()).thenReturn(1000);
when(mFrame.getPaddingTop()).thenReturn(50);
when(mFrame.getPaddingBottom()).thenReturn(50);
when(mFrame.getPaddingLeft()).thenReturn(100);
when(mFrame.getPaddingRight()).thenReturn(100);
ArgumentCaptor<ViewGroup.LayoutParams> captor = ArgumentCaptor.forClass(
ViewGroup.LayoutParams.class);
activity.sizeImageToFrame(mImage, mFrame);
verify(mImage).setLayoutParams(captor.capture());
ViewGroup.LayoutParams out = captor.getValue();
assertThat(out.width).isEqualTo(600);
assertThat(out.height).isEqualTo(900);
});
scenario.close();
}
} }

View File

@@ -109,10 +109,10 @@ public class WifiHotspotRepositoryTest {
doReturn(SPEED_6GHZ).when(mSpeedType).getValue(); doReturn(SPEED_6GHZ).when(mSpeedType).getValue();
doReturn(true).when(mWifiManager).is5GHzBandSupported(); doReturn(true).when(mWifiManager).is5GHzBandSupported();
doReturn(Arrays.asList(new WifiAvailableChannel(FREQ_5GHZ, OP_MODE_SAP))).when(mWifiManager) doReturn(Arrays.asList(new WifiAvailableChannel(FREQ_5GHZ, OP_MODE_SAP))).when(mWifiManager)
.getUsableChannels(WifiScanner.WIFI_BAND_5_GHZ_WITH_DFS, OP_MODE_SAP); .getAllowedChannels(WifiScanner.WIFI_BAND_5_GHZ_WITH_DFS, OP_MODE_SAP);
doReturn(true).when(mWifiManager).is6GHzBandSupported(); doReturn(true).when(mWifiManager).is6GHzBandSupported();
doReturn(Arrays.asList(new WifiAvailableChannel(FREQ_6GHZ, OP_MODE_SAP))).when(mWifiManager) doReturn(Arrays.asList(new WifiAvailableChannel(FREQ_6GHZ, OP_MODE_SAP))).when(mWifiManager)
.getUsableChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP); .getAllowedChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP);
mRepository = new WifiHotspotRepository(mContext, mWifiManager, mTetheringManager); mRepository = new WifiHotspotRepository(mContext, mWifiManager, mTetheringManager);
mRepository.mSecurityType = mSecurityType; mRepository.mSecurityType = mSecurityType;
@@ -575,7 +575,7 @@ public class WifiHotspotRepositoryTest {
mRepository.mIs5gBandSupported = true; mRepository.mIs5gBandSupported = true;
// Reset m5gBand to trigger an update // Reset m5gBand to trigger an update
mRepository.mBand5g.isUsableChannelsReady = false; mRepository.mBand5g.isUsableChannelsReady = false;
when(mWifiManager.getUsableChannels(WifiScanner.WIFI_BAND_5_GHZ_WITH_DFS, OP_MODE_SAP)) when(mWifiManager.getAllowedChannels(WifiScanner.WIFI_BAND_5_GHZ_WITH_DFS, OP_MODE_SAP))
.thenReturn(null); .thenReturn(null);
assertThat(mRepository.is5gAvailable()).isFalse(); assertThat(mRepository.is5gAvailable()).isFalse();
@@ -619,7 +619,7 @@ public class WifiHotspotRepositoryTest {
mRepository.mIs6gBandSupported = true; mRepository.mIs6gBandSupported = true;
// Reset m6gBand to trigger an update // Reset m6gBand to trigger an update
mRepository.mBand6g.isUsableChannelsReady = false; mRepository.mBand6g.isUsableChannelsReady = false;
when(mWifiManager.getUsableChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP)) when(mWifiManager.getAllowedChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP))
.thenReturn(null); .thenReturn(null);
assertThat(mRepository.is6gAvailable()).isFalse(); assertThat(mRepository.is6gAvailable()).isFalse();
@@ -660,7 +660,7 @@ public class WifiHotspotRepositoryTest {
@Test @Test
public void isChannelAvailable_throwIllegalArgumentException_hasUsableChannelsFalse() { public void isChannelAvailable_throwIllegalArgumentException_hasUsableChannelsFalse() {
doThrow(IllegalArgumentException.class).when(mWifiManager) doThrow(IllegalArgumentException.class).when(mWifiManager)
.getUsableChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP); .getAllowedChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP);
mRepository.isChannelAvailable(mRepository.mBand6g); mRepository.isChannelAvailable(mRepository.mBand6g);
@@ -671,7 +671,7 @@ public class WifiHotspotRepositoryTest {
@Test @Test
public void isChannelAvailable_throwUnsupportedOperationException_hasUsableChannelsFalse() { public void isChannelAvailable_throwUnsupportedOperationException_hasUsableChannelsFalse() {
doThrow(UnsupportedOperationException.class).when(mWifiManager) doThrow(UnsupportedOperationException.class).when(mWifiManager)
.getUsableChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP); .getAllowedChannels(WifiScanner.WIFI_BAND_6_GHZ, OP_MODE_SAP);
mRepository.isChannelAvailable(mRepository.mBand6g); mRepository.isChannelAvailable(mRepository.mBand6g);