<?xml version="1.0" encoding="utf-8"?>
<!--
     Copyright (C) 2018 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>

    <style name="Theme.Settings.Home" parent="Theme.Settings.HomeBase">
        <item name="colorPrimary">@*android:color/primary_device_default_settings</item>
        <item name="colorPrimaryDark">@*android:color/primary_dark_device_default_settings</item>
        <item name="android:colorBackground">?android:attr/colorPrimaryDark</item>
        <!-- Homepage should follow device default design, the values is same as device default theme.-->
        <item name="android:navigationBarColor">@android:color/black</item>
        <item name="android:statusBarColor">?attr/colorPrimaryDark</item>
    </style>

    <style name="Theme.SubSettings" parent="Theme.SubSettings.Base"/>

    <style name="Theme.AlertDialog.Base" parent="@style/Theme.AppCompat.DayNight.Dialog.Alert">
        <item name="colorAccent">@*android:color/accent_device_default_dark</item>
        <item name="android:colorError">@color/settings_dialog_colorError</item>
        <item name="android:colorBackground">@*android:color/surface_dark</item>
    </style>

    <!-- Material theme for the pages containing TabLayout and ViewPager -->
    <style name="Theme.TabTheme" parent="@style/Theme.MaterialComponents.DayNight">
        <item name="colorPrimary">@*android:color/edge_effect_device_default_dark</item>
    </style>

    <style name="Theme.CollapsingToolbar.Settings" parent="@style/Theme.MaterialComponents.DayNight">
        <item name="elevationOverlayEnabled">true</item>
        <item name="elevationOverlayColor">?attr/colorPrimary</item>
        <item name="colorPrimary">@*android:color/primary_dark_device_default_settings</item>
        <item name="colorAccent">@*android:color/accent_device_default_dark</item>
    </style>
</resources>
