<?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.138</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">120</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>

    <!-- Type of the ambient tap sensor per device posture (defined by WM Jetpack posture).
         Unspecified values use config_dozeTapSensor -->
    <string-array name="config_dozeTapSensorPostureMapping" translatable="false">
        <item></item> <!-- UNKNOWN, don't register for touch if we don't know -->
        <item>com.google.sensor.single_touch</item> <!-- CLOSED -->
        <item>com.google.sensor.touch_gesture</item> <!-- HALF_OPENED -->
        <item>com.google.sensor.touch_gesture</item> <!-- OPENED -->
      </string-array>

    <!-- Whether the display cutout region of the secondary 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_fillSecondaryBuiltInDisplayCutout">true</bool>

    <!-- Display cutout configuration -->
    <string translatable="false" name="config_secondaryBuiltInDisplayCutout">
      m 576.2,66.53 a 36.5,36.5 0 0 1 -36.5,36.5 36.5,36.5 0 0 1 -36.5,-36.5 36.5,36.5 0 0 1 36.5,-36.5 36.5,36.5 0 0 1 36.5,36.5 z
      @left
    </string>

    <string translatable="false" name="config_secondaryBuiltInDisplayCutoutRectApproximation">
        M 503.2,0
        h 73
        v 133
        h 73
        Z
        @left
    </string>

    <!-- Radius of the software rounded corners. -->
    <dimen name="rounded_corner_radius">25px</dimen>

    <!-- Height of the status bar.
         Do not read this dimen directly. Use {@link SystemBarUtils#getStatusBarHeight} instead.
         -->
    <dimen name="status_bar_height_default">110px</dimen>
    <dimen name="status_bar_height_portrait">133px</dimen>
    <dimen name="status_bar_height_landscape">110px</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>15</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>3000</item>
        <item>6000</item>
        <item>9000</item>
        <item>10000</item>
        <item>14000</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>32.5</item>           <!--  8 - 12 -->
        <item>46</item>             <!--  12 - 15 -->
        <item>53.26923077</item>    <!--  15 - 20 -->
        <item>54.61538462</item>    <!--  20 - 33 -->
        <item>58.11538462</item>    <!--  33 - 55 -->
        <item>62.1394</item>        <!--  55 - 90 -->
        <item>67.13133333</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 - 3000 -->
        <item>328.5869521</item>    <!--  3000 - 6000 -->
        <item>627.4315413</item>    <!--  6000 - 9000 -->
        <item>826.8584866</item>    <!--  9000 - 10000 -->
        <item>867.0494638</item>    <!--  10000 -14000 -->
        <item>901.4496943</item>    <!--  14000 -20000 -->
        <item>1100.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">1000</integer>
    <integer name="config_autoBrightnessDarkeningLightDebounce">4000</integer>

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

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

    <!-- 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>9</item> <!-- 40% UI brightness -->
    </integer-array>
    <integer-array name="config_ambientThresholdsOfPeakRefreshRate">
        <item>-1</item>
        <item>20</item>
    </integer-array>

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

    <!-- Default refresh rate while the device has high brightness mode enabled for HDR. -->
    <integer name="config_defaultRefreshRateInHbmHdr">60</integer>

    <!-- The device states (supplied by DeviceStateManager) that should be treated as folded by the
         display fold controller. -->
    <integer-array name="config_foldedDeviceStates" translatable="false">
      <item>0</item> <!-- CLOSED -->
    </integer-array>

    <!-- Indicates whether to enable an animation when unfolding a device or not -->
    <bool name="config_unfoldTransitionEnabled">true</bool>

    <!-- Indicates whether to enable hinge angle sensor when using unfold animation -->
    <bool name="config_unfoldTransitionHingeAngle">true</bool>

    <bool name="config_supportsConcurrentInternalDisplays">false</bool>

    <!-- Radius of the software rounded corners at the top of primary display in its natural
        orientation. If zero, the value of rounded_corner_radius is used. -->
    <dimen name="rounded_corner_radius_top">52px</dimen>
    <!-- For secondary display -->
    <dimen name="secondary_rounded_corner_radius_top">91px</dimen>

    <!-- Radius of the software rounded corners at the bottom of primary display in its natural
        orientation. If zero, the value of rounded_corner_radius is used. -->
    <dimen name="rounded_corner_radius_bottom">48px</dimen>
    <!-- For secondary display -->
    <dimen name="secondary_rounded_corner_radius_bottom">91px</dimen>

    <!-- Top adjustment for the software rounded corners since corners are not perfectly
        round.  This value is used when retrieving the "radius" of the top rounded corner in cases
        where the exact bezier curve cannot be retrieved.  This value will be subtracted from
        rounded_corner_radius_top to more accurately provide a "radius" for the top rounded corners.
         -->
    <dimen name="rounded_corner_radius_top_adjustment">5px</dimen>

    <!-- Bottom adjustment for the software rounded corners since corners are not perfectly
        round.  This value is used when retrieving the "radius" of the bottom rounded corner in
        cases where the exact bezier curve cannot be retrieved.  This value will be subtracted from
        rounded_corner_radius_bottom to more accurately provide a "radius" for the bottom rounded
        corners. -->
    <dimen name="rounded_corner_radius_bottom_adjustment">4px</dimen>

    <!-- the number of the max cached processes in the system. -->
    <integer name="config_customizedMaxCachedProcesses">64</integer>

    <string-array name="config_displayUniqueIdArray" translatable="false">
        <item>"local:4619827677550801152"</item>
        <item>"local:4619827677550801153"</item>
    </string-array>

    <!-- Boolean indicating if restoring network selection should be skipped -->
    <!-- The restoring is handled by modem if it is true -->
    <bool translatable="false" name="skip_restoring_network_selection">true</bool>

    <integer-array name="config_ambientThresholdLevels">
        <item>2</item>
        <item>3</item>
        <item>4</item>
        <item>5</item>
        <item>6</item>
        <item>7</item>
        <item>8</item>
        <item>9</item>
        <item>10</item>
        <item>20</item>
        <item>30</item>
        <item>40</item>
        <item>50</item>
        <item>60</item>
        <item>70</item>
        <item>80</item>
        <item>90</item>
        <item>100</item>
        <item>200</item>
        <item>300</item>
        <item>400</item>
        <item>500</item>
        <item>1000</item>
        <item>2000</item>
        <item>3000</item>
        <item>4000</item>
    </integer-array>

    <integer-array name="config_ambientBrighteningThresholds">
        <item>5186</item>
        <item>4333</item>
        <item>3666</item>
        <item>2999</item>
        <item>2759</item>
        <item>2519</item>
        <item>2279</item>
        <item>2039</item>
        <item>1799</item>
        <item>799</item>
        <item>527</item>
        <item>499</item>
        <item>470</item>
        <item>517</item>
        <item>565</item>
        <item>612</item>
        <item>660</item>
        <item>708</item>
        <item>742</item>
        <item>636</item>
        <item>582</item>
        <item>549</item>
        <item>369</item>
        <item>294</item>
        <item>269</item>
        <item>220</item>
        <item>220</item>
    </integer-array>

    <integer-array name="config_ambientDarkeningThresholds">
        <item>525</item>
        <item>683</item>
        <item>666</item>
        <item>650</item>
        <item>640</item>
        <item>630</item>
        <item>620</item>
        <item>610</item>
        <item>600</item>
        <item>500</item>
        <item>500</item>
        <item>440</item>
        <item>385</item>
        <item>382</item>
        <item>379</item>
        <item>376</item>
        <item>373</item>
        <item>371</item>
        <item>367</item>
        <item>387</item>
        <item>397</item>
        <item>403</item>
        <item>380</item>
        <item>345</item>
        <item>333</item>
        <item>283</item>
        <item>283</item>
    </integer-array>
</resources>
