Skip to content

Commit f774658

Browse files
bvljneobuddy89
authored andcommitted
Launcher3: Implement hidden & protected apps
Squashed with: Author: Luca Stefani <[email protected]> Date: Sat Nov 2 15:23:42 2019 +0100 Switch to BiometricPrompt Change-Id: Id6700c81aadb64434aecf1e54ae8b0f01d8143fb Author: Joey <[email protected]> Date: Fri Feb 7 22:18:51 2020 +0100 Trebuchet: fix protected apps behaviour If no secure lockscreen is set we should not show the app list Also make icons' touchable area larger Change-Id: Id398e98cb4d8fdae169aae194211b98e6441b4cf Signed-off-by: Joey <[email protected]> Author: Joey <[email protected]> Date: Sat Apr 4 10:57:37 2020 +0200 Trebuchet: only allow hidden apps when no secure keyguard is set Change-Id: I670a61ff3fee4d7c7d9623ce8810790f1b25224a Signed-off-by: Joey <[email protected]> Author: Joey <[email protected]> Date: Wed Aug 5 13:23:03 2020 +0200 Launcher3: improve protected app names style Change-Id: I09e9995f0eb34de23353166e302481d064fb3058 Signed-off-by: Joey <[email protected]> Author: programminghoch10 <[email protected]> Date: Mon Apr 18 12:39:22 2022 +0200 Trebuchet: adapt hidden and protected apps for S * Specifying the AppFilter class in the config.xml does not work anymore * Instead we just instantiate our own HiddenAppsFilter class in the LauncherModel Change-Id: I2a6791083261a580327d99dd1e93eaa019de5bc8 Change-Id: I10c35407820373a1d5f84b237ac449398e076dcd Signed-off-by: Joey <[email protected]> Signed-off-by: Luca Stefani <[email protected]> Signed-off-by: Pranav Vashi <[email protected]>
1 parent c105d5a commit f774658

29 files changed

+1535
-2
lines changed

AndroidManifest-common.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@
4545
<uses-permission android:name="android.permission.ROTATE_SURFACE_FLINGER" />
4646
<uses-permission android:name="android.permission.WAKEUP_SURFACE_FLINGER" />
4747
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
48+
<uses-permission android:name="android.permission.USE_BIOMETRIC" />
4849

4950
<!--
5051
Permissions required for read/write access to the workspace data. These permission name
@@ -229,5 +230,11 @@
229230
<property
230231
android:name="android.window.PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED"
231232
android:value="true" />
233+
234+
<activity
235+
android:name="com.android.launcher3.lineage.trust.TrustAppsActivity"
236+
android:label="@string/trust_apps_manager_name"
237+
android:theme="@android:style/Theme.DeviceDefault.Settings"
238+
android:autoRemoveFromRecents="true" />
232239
</application>
233240
</manifest>

proguard.flags

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,3 +57,7 @@
5757
-keep class com.android.quickstep.** {
5858
*;
5959
}
60+
61+
-keep class com.android.launcher3.lineage.trust.** {
62+
*;
63+
}

res/drawable/avd_hidden_lock.xml

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
<!--
2+
Copyright (C) 2019 The LineageOS Project
3+
4+
Licensed under the Apache License, Version 2.0 (the "License");
5+
you may not use this file except in compliance with the License.
6+
You may obtain a copy of the License at
7+
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
-->
16+
<animated-vector
17+
xmlns:android="http://schemas.android.com/apk/res/android"
18+
xmlns:aapt="http://schemas.android.com/aapt">
19+
<aapt:attr name="android:drawable">
20+
<vector
21+
android:name="visibilitystrike"
22+
android:width="24dp"
23+
android:height="24dp"
24+
android:viewportWidth="24"
25+
android:viewportHeight="24">
26+
<path
27+
android:name="strike_thru_path"
28+
android:pathData="M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z"
29+
android:fillColor="?android:attr/textColorSecondary"
30+
android:strokeWidth="1"/>
31+
<clip-path
32+
android:name="strike_thru_mask"
33+
android:pathData="M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z"/>
34+
<path
35+
android:name="eye_path"
36+
android:pathData="M 12 4.5 C 7 4.5 2.73 7.61 1 12 C 2.73 16.39 7 19.5 12 19.5 C 17 19.5 21.27 16.39 23 12 C 21.27 7.61 17 4.5 12 4.5 L 12 4.5 Z M 12 17 C 9.24 17 7 14.76 7 12 C 7 9.24 9.24 7 12 7 C 14.76 7 17 9.24 17 12 C 17 14.76 14.76 17 12 17 L 12 17 Z M 12 9 C 10.34 9 9 10.34 9 12 C 9 13.66 10.34 15 12 15 C 13.66 15 15 13.66 15 12 C 15 10.34 13.66 9 12 9 L 12 9 Z"
37+
android:fillColor="?android:attr/textColorSecondary"
38+
android:strokeWidth="1"/>
39+
</vector>
40+
</aapt:attr>
41+
<target android:name="strike_thru_path">
42+
<aapt:attr name="android:animation">
43+
<objectAnimator
44+
android:propertyName="pathData"
45+
android:startOffset="268"
46+
android:duration="1271"
47+
android:valueFrom="M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z"
48+
android:valueTo="M 19.73 22 L 21 20.73 L 3.27 3 L 2 4.27 Z"
49+
android:valueType="pathType"
50+
android:interpolator="@android:interpolator/fast_out_slow_in"/>
51+
</aapt:attr>
52+
</target>
53+
<target android:name="strike_thru_mask">
54+
<aapt:attr name="android:animation">
55+
<objectAnimator
56+
android:propertyName="pathData"
57+
android:startOffset="268"
58+
android:duration="1271"
59+
android:valueFrom="M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z"
60+
android:valueTo="M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 21 20.73 L 22.27 19.46 Z"
61+
android:valueType="pathType"
62+
android:interpolator="@android:interpolator/fast_out_slow_in"/>
63+
</aapt:attr>
64+
</target>
65+
</animated-vector>

res/drawable/avd_hidden_unlock.xml

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
<!--
2+
Copyright (C) 2019 The LineageOS Project
3+
4+
Licensed under the Apache License, Version 2.0 (the "License");
5+
you may not use this file except in compliance with the License.
6+
You may obtain a copy of the License at
7+
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
-->
16+
<animated-vector
17+
xmlns:android="http://schemas.android.com/apk/res/android"
18+
xmlns:aapt="http://schemas.android.com/aapt">
19+
<aapt:attr name="android:drawable">
20+
<vector
21+
android:name="visibilitystrike"
22+
android:width="24dp"
23+
android:height="24dp"
24+
android:viewportWidth="24"
25+
android:viewportHeight="24">
26+
<path
27+
android:name="strike_thru_path"
28+
android:pathData="M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z"
29+
android:fillColor="?android:attr/textColorSecondary"
30+
android:strokeWidth="1"/>
31+
<clip-path
32+
android:name="strike_thru_mask"
33+
android:pathData="M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z"/>
34+
<path
35+
android:name="eye_path"
36+
android:pathData="M 12 4.5 C 7 4.5 2.73 7.61 1 12 C 2.73 16.39 7 19.5 12 19.5 C 17 19.5 21.27 16.39 23 12 C 21.27 7.61 17 4.5 12 4.5 L 12 4.5 Z M 12 17 C 9.24 17 7 14.76 7 12 C 7 9.24 9.24 7 12 7 C 14.76 7 17 9.24 17 12 C 17 14.76 14.76 17 12 17 L 12 17 Z M 12 9 C 10.34 9 9 10.34 9 12 C 9 13.66 10.34 15 12 15 C 13.66 15 15 13.66 15 12 C 15 10.34 13.66 9 12 9 L 12 9 Z"
37+
android:fillColor="?android:attr/textColorSecondary"
38+
android:strokeWidth="1"/>
39+
</vector>
40+
</aapt:attr>
41+
<target android:name="strike_thru_path">
42+
<aapt:attr name="android:animation">
43+
<objectAnimator
44+
android:propertyName="pathData"
45+
android:duration="1271"
46+
android:valueFrom="M 19.73 22 L 21 20.73 L 3.27 3 L 2 4.27 Z"
47+
android:valueTo="M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z"
48+
android:valueType="pathType"
49+
android:interpolator="@android:interpolator/fast_out_slow_in"/>
50+
</aapt:attr>
51+
</target>
52+
<target android:name="strike_thru_mask">
53+
<aapt:attr name="android:animation">
54+
<objectAnimator
55+
android:propertyName="pathData"
56+
android:duration="1271"
57+
android:valueFrom="M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 21 20.73 L 22.27 19.46 Z"
58+
android:valueTo="M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z"
59+
android:valueType="pathType"
60+
android:interpolator="@android:interpolator/fast_out_slow_in"/>
61+
</aapt:attr>
62+
</target>
63+
</animated-vector>

res/drawable/avd_protected_lock.xml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
<!--
2+
Copyright (C) 2017 The LineageOS Project
3+
4+
Licensed under the Apache License, Version 2.0 (the "License");
5+
you may not use this file except in compliance with the License.
6+
You may obtain a copy of the License at
7+
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
-->
16+
<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
17+
xmlns:aapt="http://schemas.android.com/aapt">
18+
<aapt:attr name="android:drawable">
19+
<vector
20+
android:width="24dp"
21+
android:height="24dp"
22+
android:alpha="1"
23+
android:viewportHeight="24"
24+
android:viewportWidth="24">
25+
<path
26+
android:name="lock"
27+
android:fillColor="?android:attr/textColorSecondary"
28+
android:pathData="M18,20V10H6V20H18M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6C4.89,22 4,21.1 4,20V10A2,2 0 0,1 6,8H15V6A3,3 0 0,0 12,3A3,3 0 0,0 9,6H7A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,17A2,2 0 0,1 10,15A2,2 0 0,1 12,13A2,2 0 0,1 14,15A2,2 0 0,1 12,17Z" />
29+
<group
30+
android:name="group"
31+
android:pivotX="8"
32+
android:pivotY="6">
33+
<path
34+
android:name="line"
35+
android:fillColor="?android:attr/textColorSecondary"
36+
android:pathData="M 7, 6 L 9, 6 L 9, 8 L 7, 8 L 7, 6" />
37+
</group>
38+
</vector>
39+
</aapt:attr>
40+
<target android:name="group">
41+
<aapt:attr name="android:animation">
42+
<objectAnimator
43+
android:name="group"
44+
android:duration="350"
45+
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
46+
android:propertyName="scaleY"
47+
android:valueFrom="0"
48+
android:valueTo="1"
49+
android:valueType="floatType" />
50+
</aapt:attr>
51+
</target>
52+
</animated-vector>

res/drawable/avd_protected_unlock.xml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
<!--
2+
Copyright (C) 2017 The LineageOS Project
3+
4+
Licensed under the Apache License, Version 2.0 (the "License");
5+
you may not use this file except in compliance with the License.
6+
You may obtain a copy of the License at
7+
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
-->
16+
<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
17+
xmlns:aapt="http://schemas.android.com/aapt">
18+
<aapt:attr name="android:drawable">
19+
<vector
20+
android:width="24dp"
21+
android:height="24dp"
22+
android:alpha="1"
23+
android:viewportHeight="24"
24+
android:viewportWidth="24">
25+
<path
26+
android:name="lock"
27+
android:fillColor="?android:attr/textColorSecondary"
28+
android:pathData="M18,20V10H6V20H18M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6C4.89,22 4,21.1 4,20V10A2,2 0 0,1 6,8H15V6A3,3 0 0,0 12,3A3,3 0 0,0 9,6H7A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,17A2,2 0 0,1 10,15A2,2 0 0,1 12,13A2,2 0 0,1 14,15A2,2 0 0,1 12,17Z" />
29+
<group
30+
android:name="group"
31+
android:pivotX="8"
32+
android:pivotY="6">
33+
<path
34+
android:name="line"
35+
android:fillColor="?android:attr/textColorSecondary"
36+
android:pathData="M 7, 6 L 9, 6 L 9, 8 L 7, 8 L 7, 6" />
37+
</group>
38+
</vector>
39+
</aapt:attr>
40+
<target android:name="group">
41+
<aapt:attr name="android:animation">
42+
<objectAnimator
43+
android:name="group"
44+
android:duration="350"
45+
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
46+
android:propertyName="scaleY"
47+
android:valueFrom="1"
48+
android:valueTo="0"
49+
android:valueType="floatType" />
50+
</aapt:attr>
51+
</target>
52+
</animated-vector>

res/drawable/ic_help.xml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<!--
2+
Copyright (C) 2019 The LineageOS Project
3+
4+
Licensed under the Apache License, Version 2.0 (the "License");
5+
you may not use this file except in compliance with the License.
6+
You may obtain a copy of the License at
7+
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
-->
16+
<vector xmlns:android="http://schemas.android.com/apk/res/android"
17+
android:width="24dp"
18+
android:height="24dp"
19+
android:viewportWidth="24.0"
20+
android:viewportHeight="24.0">
21+
<path
22+
android:fillColor="?android:attr/colorAccent"
23+
android:pathData="M11,18h2v-2h-2v2zM12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.41,0 -8,-3.59 -8,-8s3.59,-8 8,-8 8,3.59 8,8 -3.59,8 -8,8zM12,6c-2.21,0 -4,1.79 -4,4h2c0,-1.1 0.9,-2 2,-2s2,0.9 2,2c0,2 -3,1.75 -3,5h2c0,-2.25 3,-2.5 3,-5 0,-2.21 -1.79,-4 -4,-4z"/>
24+
</vector>

res/drawable/ic_hidden_locked.xml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<!--
2+
Copyright (C) 2019 The LineageOS Project
3+
4+
Licensed under the Apache License, Version 2.0 (the "License");
5+
you may not use this file except in compliance with the License.
6+
You may obtain a copy of the License at
7+
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
-->
16+
<vector xmlns:android="http://schemas.android.com/apk/res/android"
17+
android:width="24dp"
18+
android:height="24dp"
19+
android:viewportWidth="24"
20+
android:viewportHeight="24">
21+
<path
22+
android:fillColor="?android:attr/textColorSecondary"
23+
android:pathData="M11.83,9L15,12.16C15,12.11 15,12.05 15,12A3,3 0 0,0 12,9C11.94,9 11.89,9 11.83,9M7.53,9.8L9.08,11.35C9.03,11.56 9,11.77 9,12A3,3 0 0,0 12,15C12.22,15 12.44,14.97 12.65,14.92L14.2,16.47C13.53,16.8 12.79,17 12,17A5,5 0 0,1 7,12C7,11.21 7.2,10.47 7.53,9.8M2,4.27L4.28,6.55L4.73,7C3.08,8.3 1.78,10 1,12C2.73,16.39 7,19.5 12,19.5C13.55,19.5 15.03,19.2 16.38,18.66L16.81,19.08L19.73,22L21,20.73L3.27,3M12,7A5,5 0 0,1 17,12C17,12.64 16.87,13.26 16.64,13.82L19.57,16.75C21.07,15.5 22.27,13.86 23,12C21.27,7.61 17,4.5 12,4.5C10.6,4.5 9.26,4.75 8,5.2L10.17,7.35C10.74,7.13 11.35,7 12,7Z" />
24+
</vector>

res/drawable/ic_hidden_unlocked.xml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
<!--
2+
Copyright (C) 2019 The LineageOS Project
3+
4+
Licensed under the Apache License, Version 2.0 (the "License");
5+
you may not use this file except in compliance with the License.
6+
You may obtain a copy of the License at
7+
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
-->
16+
<vector xmlns:android="http://schemas.android.com/apk/res/android"
17+
android:name="visibilitystrike"
18+
android:width="24dp"
19+
android:height="24dp"
20+
android:viewportWidth="24"
21+
android:viewportHeight="24">
22+
<path
23+
android:pathData="M 12 4.5 C 7 4.5 2.73 7.61 1 12 C 2.73 16.39 7 19.5 12 19.5 C 17 19.5 21.27 16.39 23 12 C 21.27 7.61 17 4.5 12 4.5 L 12 4.5 Z M 12 17 C 9.24 17 7 14.76 7 12 C 7 9.24 9.24 7 12 7 C 14.76 7 17 9.24 17 12 C 17 14.76 14.76 17 12 17 L 12 17 Z M 12 9 C 10.34 9 9 10.34 9 12 C 9 13.66 10.34 15 12 15 C 13.66 15 15 13.66 15 12 C 15 10.34 13.66 9 12 9 L 12 9 Z"
24+
android:fillColor="?android:attr/textColorSecondary"
25+
android:strokeWidth="1"/>
26+
</vector>

res/drawable/ic_protected_locked.xml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<!--
2+
Copyright (C) 2019 The LineageOS Project
3+
4+
Licensed under the Apache License, Version 2.0 (the "License");
5+
you may not use this file except in compliance with the License.
6+
You may obtain a copy of the License at
7+
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
-->
16+
<vector xmlns:android="http://schemas.android.com/apk/res/android"
17+
android:width="24dp"
18+
android:height="24dp"
19+
android:viewportWidth="24.0"
20+
android:viewportHeight="24.0">
21+
22+
<path
23+
android:fillColor="?android:attr/textColorSecondary"
24+
android:pathData="M12,17c1.1,0 2,-0.9 2,-2s-0.9,-2 -2,-2 -2,0.9 -2,2 0.9,2 2,2zM18,8h-1L17,6c0,-2.76 -2.24,-5 -5,-5S7,3.24 7,6v2L6,8c-1.1,0 -2,0.9 -2,2v10c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2L20,10c0,-1.1 -0.9,-2 -2,-2zM8.9,6c0,-1.71 1.39,-3.1 3.1,-3.1s3.1,1.39 3.1,3.1v2L8.9,8L8.9,6zM18,20L6,20L6,10h12v10z"/>
25+
</vector>
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<!--
2+
Copyright (C) 2019 The LineageOS Project
3+
4+
Licensed under the Apache License, Version 2.0 (the "License");
5+
you may not use this file except in compliance with the License.
6+
You may obtain a copy of the License at
7+
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
-->
16+
<vector xmlns:android="http://schemas.android.com/apk/res/android"
17+
android:width="24dp"
18+
android:height="24dp"
19+
android:viewportWidth="24.0"
20+
android:viewportHeight="24.0">
21+
22+
<path
23+
android:fillColor="?android:attr/textColorSecondary"
24+
android:pathData="M12,17c1.1,0 2,-0.9 2,-2s-0.9,-2 -2,-2 -2,0.9 -2,2 0.9,2 2,2zM18,8h-1L17,6c0,-2.76 -2.24,-5 -5,-5S7,3.24 7,6h1.9c0,-1.71 1.39,-3.1 3.1,-3.1 1.71,0 3.1,1.39 3.1,3.1v2L6,8c-1.1,0 -2,0.9 -2,2v10c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2L20,10c0,-1.1 -0.9,-2 -2,-2zM18,20L6,20L6,10h12v10z"/>
25+
</vector>

0 commit comments

Comments
 (0)