<?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.
-->

<!-- TODO(yukl): Bump this file to v28 once we can properly test that -->
<!-- These styles are only included in the platform build, to make sure that they do not
     override the corresponding styles in the compatibility build. -->
<resources xmlns:tools="http://schemas.android.com/tools">

    <!-- General styles -->

    <!-- These themes should only be used in platform builds because support libraries'
         FragmentActivity and AppCompatActivity expects the activity theme to inherit from
         Theme.AppCompat. -->
    <style name="SuwThemeMaterial" parent="android:Theme.Material.NoActionBar">
        <item name="android:colorAccent">@color/suw_color_accent_dark</item>
        <item name="android:colorBackground">@color/suw_color_background_dark</item>
        <item name="android:indeterminateTint">@color/suw_progress_bar_color_dark</item>
        <!-- Specify the indeterminateTintMode to work around a bug in Lollipop -->
        <item name="android:indeterminateTintMode">src_in</item>
        <item name="android:listPreferredItemHeight">@dimen/suw_items_preferred_height</item>
        <item name="android:listPreferredItemPaddingEnd">?attr/suwMarginSides</item>
        <item name="android:listPreferredItemPaddingStart">?attr/suwMarginSides</item>
        <item name="android:navigationBarColor">@android:color/black</item>
        <item name="android:statusBarColor">@android:color/black</item>
        <item name="android:textAppearanceListItemSmall">@style/TextAppearance.SuwItemSummary</item>
        <item name="android:textColorLink">@color/suw_link_color_dark</item>
        <item name="android:windowAnimationStyle">@style/Animation.SuwWindowAnimation</item>
        <item name="android:windowDisablePreview">true</item>
        <item name="android:windowSoftInputMode">adjustResize</item>

        <item name="suwButtonAllCaps">true</item>
        <item name="suwButtonFontFamily">sans-serif</item>
        <item name="suwCardBackground">@drawable/suw_card_bg</item>
        <item name="suwFillContentLayoutStyle">@style/SuwFillContentLayout</item>
        <item name="suwDividerInsetEnd">0dp</item>
        <item name="suwDividerInsetStart">@dimen/suw_items_icon_divider_inset</item>
        <item name="suwDividerInsetStartNoIcon">@dimen/suw_items_text_divider_inset</item>
        <item name="suwItemDescriptionStyle">@style/SuwItemContainer.Description</item>
        <item name="suwItemDescriptionTitleStyle">@style/SuwItemTitle</item>
        <item name="suwListItemIconColor">@color/suw_list_item_icon_color_dark</item>
        <item name="suwMarginSides">@dimen/suw_layout_margin_sides</item>
        <item name="suwNavBarTheme">@style/SuwNavBarThemeDark</item>
    </style>

    <style name="SuwThemeMaterial.Light" parent="android:Theme.Material.Light.NoActionBar">
        <item name="android:colorAccent">@color/suw_color_accent_light</item>
        <item name="android:colorBackground">@color/suw_color_background_light</item>
        <item name="android:indeterminateTint">@color/suw_progress_bar_color_light</item>
        <!-- Specify the indeterminateTintMode to work around a bug in Lollipop -->
        <item name="android:indeterminateTintMode">src_in</item>
        <item name="android:listPreferredItemHeight">@dimen/suw_items_preferred_height</item>
        <item name="android:listPreferredItemPaddingEnd">?attr/suwMarginSides</item>
        <item name="android:listPreferredItemPaddingStart">?attr/suwMarginSides</item>
        <item name="android:navigationBarColor">@android:color/black</item>
        <item name="android:statusBarColor">@android:color/black</item>
        <item name="android:textAppearanceListItemSmall">@style/TextAppearance.SuwItemSummary</item>
        <item name="android:textColorLink">@color/suw_link_color_light</item>
        <item name="android:windowAnimationStyle">@style/Animation.SuwWindowAnimation</item>
        <item name="android:windowDisablePreview">true</item>
        <item name="android:windowSoftInputMode">adjustResize</item>

        <item name="suwButtonAllCaps">true</item>
        <item name="suwButtonFontFamily">sans-serif</item>
        <item name="suwCardBackground">@drawable/suw_card_bg</item>
        <item name="suwFillContentLayoutStyle">@style/SuwFillContentLayout</item>
        <item name="suwDividerInsetEnd">0dp</item>
        <item name="suwDividerInsetStart">@dimen/suw_items_icon_divider_inset</item>
        <item name="suwDividerInsetStartNoIcon">@dimen/suw_items_text_divider_inset</item>
        <item name="suwItemDescriptionStyle">@style/SuwItemContainer.Description</item>
        <item name="suwItemDescriptionTitleStyle">@style/SuwItemTitle</item>
        <item name="suwListItemIconColor">@color/suw_list_item_icon_color_light</item>
        <item name="suwMarginSides">@dimen/suw_layout_margin_sides</item>
        <item name="suwNavBarTheme">@style/SuwNavBarThemeLight</item>
    </style>

    <!-- Placeholder for GLIF dark theme, colors are not updated yet -->
    <style name="SuwThemeGlif" parent="android:Theme.Material.NoActionBar">
        <item name="android:colorAccent">@color/suw_color_accent_glif_dark</item>
        <item name="android:colorBackground">@color/suw_glif_background_color_dark</item>
        <item name="android:colorPrimary">?android:attr/colorAccent</item>
        <item name="android:indeterminateTint">?android:attr/colorPrimary</item>
        <!-- Specify the indeterminateTintMode to work around a bug in Lollipop -->
        <item name="android:indeterminateTintMode">src_in</item>
        <item name="android:listPreferredItemHeight">@dimen/suw_items_preferred_height</item>
        <item name="android:listPreferredItemPaddingEnd">?attr/suwMarginSides</item>
        <item name="android:listPreferredItemPaddingStart">?attr/suwMarginSides</item>
        <item name="android:navigationBarColor">@android:color/black</item>
        <item name="android:statusBarColor">@android:color/transparent</item>
        <item name="android:textAppearanceListItem">@style/TextAppearance.SuwGlifItemTitle</item>
        <item name="android:textAppearanceListItemSmall">@style/TextAppearance.SuwGlifItemSummary</item>
        <item name="android:textColorLink">@color/suw_color_accent_glif_dark</item>
        <item name="android:windowAnimationStyle">@style/Animation.SuwWindowAnimation</item>
        <item name="android:windowDisablePreview">true</item>
        <item name="android:windowSoftInputMode">adjustResize</item>

        <item name="suwButtonAllCaps">true</item>
        <item name="suwButtonCornerRadius">@dimen/suw_glif_button_corner_radius</item>
        <item name="suwButtonFontFamily">sans-serif</item>
        <item name="suwColorPrimary">?android:attr/colorPrimary</item>
        <item name="suwFillContentLayoutStyle">@style/SuwFillContentLayout</item>
        <item name="suwDividerInsetEnd">0dp</item>
        <item name="suwDividerInsetStart">@dimen/suw_items_glif_icon_divider_inset</item>
        <item name="suwDividerInsetStartNoIcon">@dimen/suw_items_glif_text_divider_inset</item>
        <item name="suwGlifHeaderGravity">start</item>
        <item name="suwGlifIconStyle">@style/SuwGlifIcon</item>
        <item name="suwItemDescriptionStyle">@style/SuwItemContainer.Description.Glif</item>
        <item name="suwItemDescriptionTitleStyle">@style/SuwItemTitle.GlifDescription</item>
        <item name="suwListItemIconColor">@color/suw_list_item_icon_color_dark</item>
        <item name="suwMarginSides">@dimen/suw_glif_margin_sides</item>
        <item name="suwScrollIndicators">bottom</item>
    </style>

    <style name="SuwThemeGlif.Light" parent="android:Theme.Material.Light.NoActionBar">
        <item name="android:colorAccent">@color/suw_color_accent_glif_light</item>
        <item name="android:colorBackground">@color/suw_glif_background_color_light</item>
        <item name="android:colorPrimary">?android:attr/colorAccent</item>
        <item name="android:indeterminateTint">?android:attr/colorPrimary</item>
        <!-- Specify the indeterminateTintMode to work around a bug in Lollipop -->
        <item name="android:indeterminateTintMode">src_in</item>
        <item name="android:listPreferredItemHeight">@dimen/suw_items_preferred_height</item>
        <item name="android:listPreferredItemPaddingEnd">?attr/suwMarginSides</item>
        <item name="android:listPreferredItemPaddingStart">?attr/suwMarginSides</item>
        <item name="android:navigationBarColor">@android:color/black</item>
        <item name="android:statusBarColor">@android:color/transparent</item>
        <item name="android:textAppearanceListItem">@style/TextAppearance.SuwGlifItemTitle</item>
        <item name="android:textAppearanceListItemSmall">@style/TextAppearance.SuwGlifItemSummary</item>
        <item name="android:textColorLink">@color/suw_color_accent_glif_light</item>
        <item name="android:windowAnimationStyle">@style/Animation.SuwWindowAnimation</item>
        <item name="android:windowDisablePreview">true</item>
        <item name="android:windowSoftInputMode">adjustResize</item>

        <item name="suwButtonAllCaps">true</item>
        <item name="suwButtonCornerRadius">@dimen/suw_glif_button_corner_radius</item>
        <item name="suwButtonFontFamily">sans-serif</item>
        <item name="suwColorPrimary">?android:attr/colorPrimary</item>
        <item name="suwFillContentLayoutStyle">@style/SuwFillContentLayout</item>
        <item name="suwDividerInsetEnd">0dp</item>
        <item name="suwDividerInsetStart">@dimen/suw_items_glif_icon_divider_inset</item>
        <item name="suwDividerInsetStartNoIcon">@dimen/suw_items_glif_text_divider_inset</item>
        <item name="suwGlifHeaderGravity">start</item>
        <item name="suwGlifIconStyle">@style/SuwGlifIcon</item>
        <item name="suwItemDescriptionStyle">@style/SuwItemContainer.Description.Glif</item>
        <item name="suwItemDescriptionTitleStyle">@style/SuwItemTitle.GlifDescription</item>
        <item name="suwListItemIconColor">@color/suw_list_item_icon_color_light</item>
        <item name="suwMarginSides">@dimen/suw_glif_margin_sides</item>
        <item name="suwScrollIndicators">bottom</item>
    </style>

    <style name="SuwThemeGlifV3" parent="SuwThemeGlifV2">
        <item name="android:colorAccent">@color/suw_color_accent_glif_v3</item>

        <item name="suwButtonAllCaps">false</item>
        <item name="suwButtonCornerRadius">@dimen/suw_glif_v3_button_corner_radius</item>
        <item name="suwButtonFontFamily">@string/suwFontSecondaryMedium</item>
    </style>

    <style name="SuwThemeGlifV3.Light" parent="SuwThemeGlifV2.Light">
        <item name="android:colorAccent">@color/suw_color_accent_glif_v3</item>
        <item name="android:navigationBarColor">@color/suw_glif_v3_nav_bar_color_light</item>
        <!-- Ignore NewApi: For some reason lint seems to think this API is new in v28 (b/73514594) -->
        <item name="android:navigationBarDividerColor" tools:ignore="NewApi">@color/suw_glif_v3_nav_bar_divider_color_light</item>
        <!-- Ignore NewApi: For some reason lint seems to think this API is new in v28 (b/73514594) -->
        <item name="android:windowLightNavigationBar" tools:ignore="NewApi">true</item>

        <item name="suwButtonAllCaps">false</item>
        <item name="suwButtonCornerRadius">@dimen/suw_glif_v3_button_corner_radius</item>
        <item name="suwButtonFontFamily">@string/suwFontSecondaryMedium</item>
    </style>

    <!-- Button styles -->

    <style name="SuwGlifButton.Primary" parent="android:Widget.Material.Button.Colored">
        <!-- This style can be applied to a button either as a "style" in XML, or as a theme in
             ContextThemeWrapper. These self-referencing attributes make sure this is applied as
             both to the button. -->
        <item name="android:buttonStyle">@style/SuwGlifButton.Primary</item>

        <!-- Values used in styles -->
        <item name="android:fontFamily">?attr/suwButtonFontFamily</item>
        <item name="android:paddingLeft">@dimen/suw_glif_button_padding</item>
        <item name="android:paddingRight">@dimen/suw_glif_button_padding</item>
        <item name="android:textAllCaps">?attr/suwButtonAllCaps</item>

        <!-- Values used in themes -->
        <item name="android:buttonCornerRadius" tools:ignore="NewApi">?attr/suwButtonCornerRadius</item>
    </style>

    <style name="SuwGlifButton.Secondary" parent="android:Widget.Material.Button.Borderless.Colored">
        <!-- This style can be applied to a button either as a "style" in XML, or as a theme in
             ContextThemeWrapper. These self-referencing attributes make sure this is applied as
             both to the button. -->
        <item name="android:buttonStyle">@style/SuwGlifButton.Secondary</item>
        <item name="android:theme">@style/SuwGlifButton.Secondary</item>

        <!-- Values used in styles -->
        <item name="android:fontFamily">?attr/suwButtonFontFamily</item>
        <item name="android:minWidth">0dp</item>
        <item name="android:paddingLeft">@dimen/suw_glif_button_padding</item>
        <item name="android:paddingRight">@dimen/suw_glif_button_padding</item>
        <item name="android:textAllCaps">?attr/suwButtonAllCaps</item>

        <!-- Values used in themes -->
        <item name="android:buttonCornerRadius" tools:ignore="NewApi">?attr/suwButtonCornerRadius</item>
        <item name="android:colorControlHighlight">@color/suw_flat_button_highlight</item>
    </style>

</resources>
