Update Oriole screen decorations

- Tweaked rounded corners to have different top and bottom assets
- Adjusted the holepunch based on the pixel mapping
- Adjusted status bar height and top padding
- Configured the estimated display cutout area for a 118px box
- Adjust landscape status bar padding

Test: visual, manual
Bug: 179171394
Change-Id: If37587f60245d71c795a55bb8adead5029d1d41a
This commit is contained in:
Bill Lin 2021-03-29 14:05:38 +08:00
parent 038dc0267a
commit d84ad0d2a3
6 changed files with 126 additions and 23 deletions

View file

@ -66,17 +66,17 @@
<!-- Display cutout configuration -->
<string translatable="false" name="config_mainBuiltInDisplayCutout">
M 504,66
a 36,36 0 1 0 72,0 36,36 0 1 0 -72,0
M 507,64
a 33,33 0 1 0 66,0 33,33 0 1 0 -66,0
Z
@left
</string>
<string translatable="false" name="config_mainBuiltInDisplayCutoutRectApproximation">
M 480,0
h 120
v 120
h -120
h 118
v 118
h -118
Z
@left
</string>
@ -84,6 +84,13 @@
<!-- Radius of the software rounded corners. -->
<dimen name="rounded_corner_radius">25px</dimen>
<!-- Height of the status bar in portrait. The height should be
Max((status bar content height + waterfall top size), top cutout size) -->
<dimen name="status_bar_height_portrait">118px</dimen>
<dimen name="status_bar_height_landscape">74px</dimen>
<!-- Height of area above QQS where battery/time go (equal to status bar) -->
<dimen name="quick_qs_offset_height">118px</dimen>
<!-- Adjustment for software rounded corners since corners aren't perfectly round. -->
<dimen name="rounded_corner_radius_adjustment">5px</dimen>

View file

@ -0,0 +1,25 @@
<!--
Copyright (C) 2021 The Android Open Source Project
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="70px"
android:height="70px"
android:viewportWidth="70"
android:viewportHeight="70">
<path
android:pathData="M 70,0.0734509 c -6.111219,0 -12.263573,0 -17.925265,0.03253453 -1.031267,0.009859 -2.044905,0.0118307 -3.040919,0.0207038 -3.037981,0.0266192 -5.934933,0.0670408 -8.702611,0.1439406 -0.669883,0.0177461 -1.330952,0.0384499 -1.989084,0.0621114 -0.637563,0.0236615 -1.266314,0.0502806 -1.892128,0.0798575 -1.483733,0.073942 -2.949837,0.16158809 -4.398314,0.29083886 -1.40151,0.12925069 -2.78535,0.29083877 -4.160374,0.50536931 C 23.874896,1.8345542 19.929048,2.948122 16.376902,4.8812639 16.256441,4.9463324 16.135979,5.0134723 16.015518,5.0811047 13.77082,6.3444298 11.658337,7.9398043 9.8014648,9.7936803 7.9475325,11.650514 6.3521517,13.76299 5.0887749,16.007575 4.4570861,17.129918 3.9928687,18.10832 3.5492176,19.183635 3.1055665,20.261908 2.7236159,21.363645 2.3974879,22.483029 1.0900398,26.95761 0.65520269,31.611426 0.42309452,36.447435 c -0.0176281,0.337867 -0.0323183,0.678691 -0.0470084,1.022472 v 0.04436 C 0.18511029,42.03588 0.14691494,46.824863 0.11753368,52.072187 0.08227733,57.733686 0.08521537,63.888921 0.08521537,70 L 0.07346325,0.11909782 Z"
android:fillColor="#000000" />
</vector>

View file

@ -0,0 +1,25 @@
<!--
Copyright (C) 2021 The Android Open Source Project
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="71px"
android:height="71px"
android:viewportWidth="71"
android:viewportHeight="71">
<path
android:pathData="M 71,0.07456234 c -6.198523,0 -12.438766,-0.0029801 -18.18134,0.03278063 -1.045999,0.00596 -2.074118,0.0119202 -3.084361,0.0208603 -3.08138,0.0268205 -6.019718,0.0685414 -8.826934,0.14602293 C 40.227866,0.2921065 39.557354,0.3129671 38.88982,0.3368075 38.243149,0.3606479 37.605415,0.3874685 36.970661,0.417269 35.465732,0.4917704 33.978684,0.58117227 32.509514,0.7122949 31.087983,0.84341772 29.684374,1.007321 28.289706,1.2248653 24.215968,1.859618 20.213752,2.9890606 16.61086,4.9499398 16.488678,5.0155009 16.366495,5.0840426 16.244314,5.1525839 13.967549,6.4340096 11.824888,8.0521819 9.9414891,9.9326005 8.0610715,11.815997 6.4429002,13.958662 5.1614749,16.235425 4.5207622,17.373809 4.049913,18.366168 3.5999241,19.456869 3.1499353,20.550552 2.7625275,21.668074 2.4317409,22.803477 1.1056149,27.342108 0.66456617,32.06252 0.42914154,36.967699 c -0.0178804,0.342708 -0.0327807,0.688394 -0.047681,1.037061 v 0.0447 C 0.18775679,42.635775 0.14901602,47.493269 0.11921542,52.815656 0.08345472,58.55823 0.08643479,64.801455 0.08643479,71 L 0.07451454,0.11926323 Z"
android:fillColor="#000000" />
</vector>

View file

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
* Copyright (c) 2021, The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<resources>
<!-- Landscape, just use the regular values -->
<dimen name="status_bar_padding_start">8dp</dimen>
<dimen name="status_bar_padding_end">8dp</dimen>
<!-- the padding on the top of the statusbar (usually 0) -->
<dimen name="status_bar_padding_top">0dp</dimen>
</resources>

View file

@ -59,5 +59,30 @@
<item>0</item> <!-- 3: HIGH -->
<item>0</item> <!-- 4: SUN -->
</integer-array>
<!-- Default rounded corner curve (a Bezier). Must match (the curved path in) rounded.xml.
Note that while rounded.xml includes the entire path (including the horizontal and vertical
corner edges), this pulls out just the curve.
-->
<string name="config_rounded_mask" translatable="false">M 71,0 C 33,0 22,-1 10,10 -1,22 0,33 0,71</string>
<bool name="config_roundedCornerMultipleRadius">true</bool>
<!-- Configure 13px of extra protection around the front-facing camera -->
<string translatable="false" name="config_frontBuiltInDisplayCutoutProtection">
M 494,65
a 46,46 0 1 0 92,0
a 46,46 0 1 0 -92,0
Z
</string>
<!-- Camera 1 is the front camera on barbet -->
<string translatable="false" name="config_protectedCameraId">1</string>
<!-- Comma-separated list of packages to exclude from camera protection. In our case,
ignore the gaze detection package -->
<string translatable="false" name="config_cameraProtectionExcludedPackages">com.google.android.as</string>
<bool name="config_enableDisplayCutoutProtection">true</bool>
</resources>

View file

@ -16,32 +16,28 @@
*/
-->
<resources>
<!-- Don't need the left side padding due to being inset from the cutout -->
<dimen name="status_bar_padding_start">0dp</dimen>
<!-- for 20dp of padding at 3.5px/dp at default density -->
<dimen name="rounded_corner_content_padding">5px</dimen>
<dimen name="rounded_corner_content_padding">50px</dimen>
<!-- the padding on the top of the statusbar (usually 0) -->
<dimen name="status_bar_padding_top">1px</dimen>
<!-- Padding for the system icons on the keyguard (when no multi user switch is showing).
The icons always have a 4dp padding in the container so we only need 56 extra px of padding
for the corners -->
<dimen name="system_icons_super_container_avatarless_margin_end">11px</dimen>
<!-- A path similar to frameworks/base/core/res/res/values/config.xml
config_mainBuiltInDisplayCutout that describes a path larger than the exact path of a display
cutout. If present as well as config_enableDisplayCutoutProtection is set to true, then
SystemUI will draw this "protection path" instead of the display cutout path that is normally
used for anti-aliasing.
<!-- Multi user switch has some intrinsic padding to it -->
<dimen name="multi_user_switch_keyguard_margin">40px</dimen>
This path will only be drawn when the front-facing camera turns on, otherwise the main
DisplayCutout path will be rendered
-->
<string translatable="false" name="config_frontBuiltInDisplayCutoutProtection">
M 494,66
a 46,46 0 1 0 92,0 46,46 0 1 0 -92,0
Z
</string>
<dimen name="keyguard_carrier_text_margin">0px</dimen>
<!-- Camera 1 is the front camera -->
<string translatable="false" name="config_protectedCameraId">1</string>
<dimen name="config_rounded_mask_size">71px</dimen>
<dimen name="config_rounded_mask_size_top">71px</dimen>
<dimen name="config_rounded_mask_size_bottom">70px</dimen>
<bool name="config_enableDisplayCutoutProtection">true</bool>
</resources>