<?xml version="1.0" encoding="utf-8"?>
<!--
/*
** Copyright 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 xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <!-- Flag indicating whether the we should enable the automatic brightness in Settings.
         Software implementation will be used if config_hardware_auto_brightness_available is not set -->
    <bool name="config_automatic_brightness_available">true</bool>

    <!-- Minimum screen brightness allowed by the power manager. -->
    <integer name="config_screenBrightnessDim">6</integer>

    <!-- Minimum screen brightness setting allowed by power manager.
         The user is forbidden from setting the brightness below this level.  -->
    <item name="config_screenBrightnessSettingMinimumFloat" format="float" type="dimen">0.0</item>

    <!-- Maximum screen brightness allowed by the power manager.
         The user is forbidden from setting the brightness above this level. -->
    <item name="config_screenBrightnessSettingMaximumFloat" format="float" type="dimen">1.0</item>

    <!-- Default screen brightness setting
         Must be in the range specified by minimum and maximum. -->
    <item name="config_screenBrightnessSettingDefaultFloat" format="float" type="dimen">0.17429718</item>

    <!-- The default refresh rate. Pixel 6 manages this using the peak refresh rate setting, so set
         this value to 0 so it has no effect. -->
    <integer name="config_defaultRefreshRate">0</integer>

    <!-- The default peak refresh rate. -->
    <integer name="config_defaultPeakRefreshRate">90</integer>

    <!-- Nonlinear coefficients for maximum panel brightness of 500 nits -->
    <string-array name="config_reduceBrightColorsCoefficientsNonlinear">
        <!-- a-coefficient --> <item>-0.4553233597</item>
        <!-- b-coefficient --> <item>-0.2380196976</item>
        <!-- y-intercept --> <item>0.9801096801</item>
    </string-array>

    <!-- Linear coefficients for maximum panel brightness of 500 nits -->
    <string-array name="config_reduceBrightColorsCoefficients">
        <!-- a-coefficient --> <item>0.0</item>
        <!-- b-coefficient --> <item>-0.96</item>
        <!-- y-intercept --> <item>1.0</item>
    </string-array>

    <!-- Whether the display cutout region of the main built-in display should be forced to
        black in software (to avoid aliasing or emulate a cutout that is not physically existent).
    -->
    <bool name="config_fillMainBuiltInDisplayCutout">true</bool>

    <!-- Display cutout configuration -->
    <string translatable="false" name="config_mainBuiltInDisplayCutout">
        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 118
        v 118
        h -118
        Z
        @left
    </string>

    <!-- 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>

    <!-- Array of light sensor LUX values to define our levels for auto backlight brightness support.
      The N entries of this array define N  1 zones as follows:
         Zone 0:        0 <= LUX < array[0]
         Zone 1:        array[0] <= LUX < array[1]
         ...
         Zone N:        array[N - 1] <= LUX < array[N]
         Zone N + 1     array[N] <= LUX < infinity
         Must be overridden in platform specific overlays -->
    <integer-array name="config_autoBrightnessLevels">
        <item>1</item>
        <item>2</item>
        <item>3</item>
        <item>4</item>
        <item>8</item>
        <item>12</item>
        <item>20</item>
        <item>33</item>
        <item>55</item>
        <item>90</item>
        <item>148</item>
        <item>245</item>
        <item>403</item>
        <item>665</item>
        <item>1097</item>
        <item>1808</item>
        <item>2981</item>
        <item>5000</item>
        <item>10000</item>
        <item>20000</item>
    </integer-array>

    <!-- Array of desired screen brightness in nits corresponding to the lux values
      in the config_autoBrightnessLevels array. As with config_screenBrightnessMinimumNits and
      config_screenBrightnessMaximumNits, the display brightness is defined as the measured
      brightness of an all-white image.

      If this is defined then:
      - config_autoBrightnessLcdBacklightValues should not be defined
      - config_screenBrightnessNits must be defined
      - config_screenBrightnessBacklight must be defined

      This array should have size one greater than the size of the config_autoBrightnessLevels
      array. The brightness values must be non-negative and non-decreasing. This must be
      overridden in platform specific overlays -->
    <array name="config_autoBrightnessDisplayValuesNits">
      <item>5.139055</item>       <!--  0 - 1 -->
      <item>9.962018965</item>    <!--  1 - 2 -->
      <item>18.34822964</item>    <!--  2 - 3 -->
      <item>21.55068128</item>    <!--  3 - 4 -->
      <item>24.0167788</item>     <!--  4 - 8 -->
      <item>30.62162162</item>    <!--  8 - 12 -->
      <item>35.09486396</item>    <!--  12 - 20 -->
      <item>41.2249643</item>     <!--  20 - 33 -->
      <item>47.6760716</item>     <!--  33 - 55 -->
      <item>55.73002427</item>    <!--  55 - 90 -->
      <item>66.24126116</item>    <!--  90 - 148 -->
      <item>79.67614115</item>    <!--  148 - 245 -->
      <item>98.04727274</item>    <!--  245 - 403 -->
      <item>125.1221991</item>    <!--  403 - 665 -->
      <item>161.6875093</item>    <!--  665 - 1097 -->
      <item>208.4885553</item>    <!--  1097 - 1808 -->
      <item>264.8221315</item>    <!--  1808 - 2981 -->
      <item>327.8974352</item>    <!--  2981 - 5000 -->
      <item>401.1676739</item>    <!--  5000 - 10000 -->
      <item>750.0</item>          <!--  10000 -20000 -->
      <item>900.0</item>          <!--  20000+ -->
    </array>

    <!-- Stability requirements in milliseconds for accepting a new brightness level.  This is used
         for debouncing the light sensor.  Different constants are used to debounce the light sensor
         when adapting to brighter or darker environments.  This parameter controls how quickly
         brightness changes occur in response to an observed change in light level that exceeds the
         hysteresis threshold. -->
    <integer name="config_autoBrightnessBrighteningLightDebounce">2000</integer>
    <integer name="config_autoBrightnessDarkeningLightDebounce">4000</integer>

    <!-- Type of the udfps long press sensor. Empty if long press is not supported. -->
    <string name="config_dozeUdfpsLongPressSensorType" translatable="false">com.google.sensor.long_press</string>

    <!-- MMS user agent string -->
    <string name="config_mms_user_agent" translatable="false">gb7n6</string>
    <!-- MMS user agent profile url -->
    <string name="config_mms_user_agent_profile_url" translatable="false">http://www.gstatic.com/android/sms/GB7N6.xml</string>

    <!-- Type of the quick pickup sensor. Empty if quick pickup is not supported. -->
    <string name="config_quickPickupSensorType" translatable="false">com.google.sensor.quick_pickup</string>

    <!-- Not allow to switch to higher refresh rate when display brightness setting is
         equal or less than this value -->
    <integer-array name="config_brightnessThresholdsOfPeakRefreshRate">
        <item>7</item> <!-- 33% UI brightness -->
        <item>11</item> <!-- 45% UI brightness -->
    </integer-array>
    <integer-array name="config_ambientThresholdsOfPeakRefreshRate">
        <item>-1</item>
        <item>30</item>
    </integer-array>

    <!-- default refresh rate in the zone defined by birghtness and ambient thresholds -->
    <integer name="config_defaultRefreshRateInZone">90</integer>

    <!-- Switch to fixed refresh rate when display brightness setting is
         equal or more than this value -->
    <integer-array name="config_highDisplayBrightnessThresholdsOfFixedRefreshRate">
        <item>158</item> <!--100% UI normal brightness -->
    </integer-array>

    <integer-array name="config_highAmbientBrightnessThresholdsOfFixedRefreshRate">
        <item>50000</item>
    </integer-array>

    <!-- default refresh rate in the high zone defined by birghtness and ambient thresholds -->
    <integer name="config_fixedRefreshRateInHighZone">60</integer>

    <!-- How long it takes for the HW to start illuminating after the illumination is requested.
      It takes 3 frames to enable the Local High-Brightness Mode (LHBM), which at 90 Hz screen
      refresh rate equates to a 34 ms delay. -->
    <integer name="config_udfps_illumination_transition_ms">34</integer>

    <!-- The max vibration strength allowed in audio haptic channels. -->
    <item name="config_hapticChannelMaxVibrationAmplitude" format="float" type="dimen">0.3</item>
</resources>
