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

    <!-- Main themes -->
    <style name="WallpaperTheme" parent="@android:style/Theme.DeviceDefault.Settings">
        <item name="colorPrimary">?android:colorPrimary</item>
        <item name="colorControlActivated">?attr/colorPrimary</item>
        <item name="android:statusBarColor">?attr/colorPrimary</item>
        <item name="android:navigationBarColor">@color/translucent_black</item>
        <item name="android:navigationBarDividerColor">@android:color/transparent</item>
        <item name="android:windowLightStatusBar">false</item>

        <item name="actionBarSize">?android:attr/actionBarSize</item>
        <item name="homeAsUpIndicator">@drawable/material_ic_arrow_back_black_24</item>

        <item name="selectableItemBackground">?android:attr/selectableItemBackground</item>
        <item name="dialogPreferredPadding">24dp</item>
        <item name="colorControlHighlight">@color/ripple_material_dark</item>
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
        <item name="toolbarNavigationButtonStyle">@style/Widget.AppCompat.Toolbar.Button.Navigation</item>

        <item name="android:windowActionBar">false</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:fitsSystemWindows">false</item>
        <item name="android:windowDrawsSystemBarBackgrounds">true</item>
    </style>

    <style name="WallpaperTheme.NoBackground">
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:windowContentOverlay">@null</item>
        <item name="android:windowDisablePreview">true</item>
    </style>

    <style name="WallpaperTheme.Preview" parent="@android:style/Theme.DeviceDefault.Settings">
        <item name="android:colorPrimary">@color/material_white_100</item>
        <item name="colorPrimary">@color/material_white_100</item>
        <item name="colorControlActivated">?attr/colorPrimary</item>
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:windowContentOverlay">@null</item>
        <item name="android:windowDisablePreview">true</item>

        <!-- Set no title and no action bar because we use a toolbar instead. -->
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
        <item name="android:windowActionBar">false</item>
        <item name="android:windowNoTitle">true</item>

        <item name="actionBarSize">?android:attr/actionBarSize</item>
        <item name="homeAsUpIndicator">@drawable/material_ic_arrow_back_black_24</item>

        <item name="selectableItemBackground">?android:attr/selectableItemBackground</item>
        <item name="dialogPreferredPadding">24dp</item>
        <item name="colorControlHighlight">@color/ripple_material_dark</item>
        <item name="toolbarNavigationButtonStyle">@style/Widget.AppCompat.Toolbar.Button.Navigation</item>

        <!-- Set status bar and navigation buttons to be translucent. -->
        <item name="android:colorPrimaryDark">@color/translucent_black</item>
        <item name="android:statusBarColor">@android:color/transparent</item>
        <item name="android:navigationBarColor">@android:color/transparent</item>

        <!-- Apply borderless button style for the right ripple effect. -->
        <item name="borderlessButtonStyle">@style/Widget.AppCompat.Button.Borderless</item>

        <item name="android:actionBarItemBackground">
            ?android:attr/selectableItemBackgroundBorderless
        </item>
    </style>

    <style name="WallpaperTheme.DarkActionBar" parent="@style/WallpaperTheme.Preview">
        <item name="colorControlNormal">?attr/colorPrimary</item>
        <item name="colorButtonNormal">?attr/colorPrimary</item>
        <item name="android:colorControlActivated">?attr/colorPrimary</item>
        <item name="android:colorControlHighlight">?attr/colorPrimary</item>
        <item name="actionMenuTextColor">?attr/colorPrimary</item>
        <item name="android:actionMenuTextColor">?attr/colorPrimary</item>
        <item name="android:actionMenuTextAppearance">@style/WallpaperPicker.Preview.TextAppearance.ActionBar</item>
    </style>

    <!-- Toolbar -->
    <style name="TranslucentToolbarStyle" parent="@style/Widget.AppCompat.Toolbar">
        <item name="android:background">@android:color/transparent</item>
        <item name="android:theme">@style/WallpaperTheme.DarkActionBar</item>
    </style>

    <style name="RegularToolbarStyle" parent="@style/Widget.AppCompat.Toolbar">
        <item name="android:background">@color/toolbar_color</item>
        <item name="android:elevation">0dp</item>
        <item name="android:theme">@style/WallpaperTheme</item>
    </style>

    <!-- Dialog themes -->
    <style name="LightDialogTheme" parent="@android:style/Theme.DeviceDefault.Dialog.NoActionBar">
        <item name="android:layout">@layout/abc_alert_dialog_material</item>
        <item name="windowActionBar">false</item>
    </style>

    <style name="ProgressDialogThemePreL" parent="@style/Theme.AppCompat.Light.Dialog.Alert">
        <item name="android:windowBackground">@android:color/transparent</item>
    </style>

    <!-- Individual components / Widgets -->
    <style name="TitleTextAppearance" parent="@android:style/TextAppearance.DeviceDefault.Widget.ActionBar.Title"/>

    <style name="SubtitleTextAppearance" parent="@android:style/TextAppearance.DeviceDefault.Widget.ActionBar.Subtitle"/>

    <style name="ButtonStyle" parent="@android:style/Widget.DeviceDefault.Button.Colored">
        <item name="android:padding">16dp</item>
        <item name="android:minHeight">48dp</item>
    </style>

    <style name="OutlinedButtonStyle"  parent="@android:style/Widget.DeviceDefault.Button">
        <item name="android:background">@drawable/btn_transparent</item>
        <item name="android:textColor">?android:attr/colorAccent</item>
    </style>

    <style name="ActionBarCheckboxStyle" parent="@android:style/Widget.DeviceDefault.CompoundButton.CheckBox">
        <item name="android:textColor">?android:attr/colorPrimary</item>
    </style>

    <style name="PreviewCheckboxDeviceTheme" parent="@android:style/Theme.DeviceDefault">
        <item name="android:colorControlNormal">?android:attr/colorPrimary</item>
    </style>

    <style name="select_wallpaper_header">
        <item name="android:textColor">@color/translucent_black_60_alpha</item>
        <item name="android:textStyle">bold</item>
        <item name="android:textSize">@dimen/abc_text_size_body_2_material</item>
    </style>

    <!-- Preview attribution pane styles -->
    <style name="WallpaperPicker.BottomPaneStyle" parent="@android:style/Theme.DeviceDefault.Settings">
        <item name="android:textColorPrimary">@color/material_white_100</item>
        <item name="android:textColorSecondary">@color/white_70_alpha</item>
        <item name="tabTextAppearance">@style/WallpaperPicker.Preview.TextAppearance.NoAllCaps</item>
        <item name="tabIndicatorColor">?android:attr/textColorPrimary</item>
        <item name="tabGravity">fill</item>
        <item name="tabMaxWidth">0dp</item>
    </style>

    <!-- Preview customization pane styles -->
    <style name="WallpaperPicker.CustomizationPaneStyle" parent="@android:style/Theme.DeviceDefault.Settings">
        <item name="tabTextAppearance">@style/WallpaperPicker.Preview.TextAppearance.NoAllCaps</item>
        <item name="tabIndicatorColor">?android:attr/textColorPrimary</item>
        <item name="tabGravity">fill</item>
        <item name="tabMaxWidth">0dp</item>
    </style>

    <style name="preview_attribution_pane_title">
        <item name="android:textColor">@color/material_white_text</item>
        <item name="android:textSize">@dimen/abc_text_size_subhead_material</item>
    </style>

    <style name="preview_attribution_pane_subtitle">
        <item name="android:textColor">@color/material_white_text</item>
        <item name="android:textSize">@dimen/abc_text_size_body_2_material</item>
    </style>

    <style name="WallpaperPicker.Preview.TextAppearance.NoAllCaps"
        parent="@android:style/TextAppearance.DeviceDefault.Widget.TabWidget">
        <item name="android:textAllCaps">false</item>
    </style>

    <style name="WallpaperPicker.Preview.TextAppearance.ActionBar"
        parent="@android:style/TextAppearance.DeviceDefault.Widget.ActionBar.Menu">
        <item name="android:textAllCaps">false</item>
        <item name="android:textColor">@color/material_white_100</item>
    </style>

    <!-- Set wallpaper destination item -->
    <style name="set_wallpaper_destination_item">
        <item name="android:minHeight">@dimen/set_wallpaper_dialog_item_min_height</item>
        <item name="android:textAlignment">viewStart</item>
        <item name="android:textAppearance">?attr/textAppearanceListItemSmall</item>
        <item name="android:textColor">?android:attr/textColorPrimary</item>
        <item name="android:textSize">@dimen/abc_text_size_subhead_material</item>
        <item name="android:gravity">center_vertical</item>
        <item name="android:alpha">.87</item>
        <item name="android:paddingStart">?attr/dialogPreferredPadding</item>
        <item name="android:paddingEnd">?attr/dialogPreferredPadding</item>
        <item name="android:background">?attr/selectableItemBackground</item>
        <item name="android:drawablePadding">@dimen/set_wallpaper_dialog_item_drawable_padding
        </item>
        <item name="android:drawableTint">?android:colorAccent</item>
        <item name="android:drawableTintMode">src_atop</item>
    </style>

    <!-- Desktop UI - category tabs layout -->
    <style name="CategoryTabLayout" parent="Widget.Design.TabLayout">
        <item name="tabIndicatorColor">@color/material_white_100</item>
        <item name="tabIndicatorHeight">2dp</item>
        <item name="tabTextAppearance">@style/CategoryTabTextAppearance</item>
    </style>

    <style name="CategoryTabTextAppearance" parent="TextAppearance.Design.Tab">
        <item name="android:textColor">@color/white_67_alpha</item>
        <item name="android:textSize">@dimen/category_tab_text_size</item>
        <item name="textAllCaps">false</item>
    </style>

    <!-- Preview cards -->
    <style name="PreviewCard" parent="CardView">
        <item name="cardCornerRadius">?android:dialogCornerRadius</item>
        <item name="android:clipChildren">true</item>
        <item name="contentPadding">@dimen/preview_card_padding</item>
        <item name="cardBackgroundColor">?android:colorPrimary</item>
    </style>

    <style name="FullContentPreviewCard" parent="PreviewCard">
        <item name="android:clipChildren">true</item>
        <item name="contentPadding">0dp</item>
        <item name="cardBackgroundColor">?android:colorPrimary</item>
    </style>

    <!-- Bottom action item -->
    <style name="BottomActionItemStyle">
        <item name="android:tint">@color/material_grey500</item>
    </style>

    <!-- Option tiles -->
    <style name="OptionTitleTextAppearance" parent="TitleTextAppearance">
        <item name="android:textColor">@color/option_title_color</item>
        <item name="android:textAlignment">center</item>
        <item name="android:textSize">@dimen/option_title_font_text_size</item>
        <item name="android:lineHeight">@dimen/option_title_line_height</item>
    </style>

</resources>
