<?xml version="1.0" encoding="utf-8"?>
<!--
  ~ Copyright (C) 2015 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.TV" parent="@android:style/Theme.Material.NoActionBar.Fullscreen">
        <item name="android:colorAccent">@color/accent_color</item>
        <item name="android:colorControlActivated">@color/control_activated_color</item>
        <item name="android:colorPrimary">@color/primary_color</item>
        <item name="android:windowBackground">@color/common_tv_background</item>

        <!-- From Theme.Leanback to use Leanback library without applying Theme. -->
        <!-- For SearchFragment -->
        <item name="browsePaddingStart">@dimen/lb_browse_padding_start</item>
        <item name="browsePaddingEnd">@dimen/lb_browse_padding_end</item>
        <item name="browsePaddingBottom">@dimen/lb_browse_padding_bottom</item>
        <item name="rowHorizontalGridStyle">@style/Widget.Leanback.Row.HorizontalGridView</item>
        <item name="rowsVerticalGridStyle">@style/Widget.Leanback.Rows.VerticalGridView</item>

        <!-- For ImageCardView -->
        <item name="imageCardViewStyle">@style/Widget.Leanback.ImageCardViewStyle</item>
    </style>

    <style name="Theme.TV.MainActivity" parent="@style/Theme.TV">
        <item name="setupCommonGuidanceBackground">@color/setup_background</item>
        <item name="doneButtonContainerStyle">@style/TV.DoneButtonContainerStyle</item>
        <item name="guidedStepTheme">@style/Theme.TV.GuidedStep</item>
    </style>

    <style name="Theme.TV.dialog.Fullscreen" parent="@style/Theme.TV">
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:colorBackgroundCacheHint">@null</item>
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:windowAnimationStyle">@null</item>
    </style>

    <style name="Theme.TV.dialog.HalfSizedDialog" parent="@style/Theme.TV">
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:backgroundDimEnabled">true</item>
        <item name="android:colorBackgroundCacheHint">@null</item>
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:windowAnimationStyle">@style/TV.HalfSizedDialogAnim</item>
    </style>

    <style name="Theme.SelectInputActivity" parent="@android:style/Theme.Material.NoActionBar">
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:windowAnimationStyle">@style/Animation.SelectInputActivity</item>
        <item name="android:backgroundDimEnabled">true</item>
    </style>

    <style name="Theme.TV.GuidedStep" parent="Theme.Setup.GuidedStep">
        <item name="guidedActionsBackground">@color/setup_actions_background</item>
    </style>

    <style name="Theme.TV.Dvr.GuidedStep" parent="Theme.Setup.GuidedStep">
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="guidedStepBackground">@color/common_tv_background</item>
        <item name="guidedActionsBackground">@color/common_tv_background</item>
        <item name="guidedActionsSelectorDrawable">@drawable/dvr_selector_background</item>
        <item name="guidanceTitleStyle">@style/TV.Dvr.GuidanceTitleStyle</item>
        <item name="guidanceBreadcrumbStyle">@style/TV.Dvr.GuidanceBreadcrumbStyle</item>
        <item name="guidanceDescriptionStyle">@style/TV.Dvr.GuidanceDescriptionStyle</item>
        <item name="guidanceIconStyle">@style/TV.Dvr.GuidanceIconStyle</item>
        <item name="guidedActionsListStyle">@style/TV.Dvr.GuidedActionsListStyle</item>
        <item name="guidedActionItemContainerStyle">@style/TV.Dvr.GuidedActionItemContainerStyle</item>
        <item name="guidedActionContentWidthWeight">@string/lb_guidedactions_width_weight</item>
    </style>

    <style name="Theme.TV.Dvr.GuidedStep.Twoline.Action" parent = "Theme.TV.Dvr.GuidedStep">
        <item name="guidedActionItemContainerStyle">@style/TV.Dvr.GuidedActionItemContainerStyle.Twoline.Action</item>
    </style>

    <style name="Theme.TV.Dvr.Conflict.GuidedStep" parent="Theme.TV.Dvr.GuidedStep">
        <item name="guidanceTitleStyle">@style/TV.Dvr.Conflict.GuidanceTitleStyle</item>
        <item name="guidedActionsListStyle">@style/TV.Dvr.Conflict.GuidedActionsListStyle</item>
        <item name="guidedStepKeyline">@string/dvr_conflict_guidedstep_keyline</item>
    </style>

    <style name="Theme.TV.Dvr.Settings.GuidedStep" parent="Theme.TV.GuidedStep">
        <!-- button actions width and button action item height is programatically implemented
             in GuidedButtonActionsStylist.java -->
        <item name="guidedSubActionsListStyle">@style/TV.Dvr.Settings.GuidedSubActionsListStyle</item>
        <item name="guidedActionsBackgroundDark">@color/setup_sub_actions_background</item>
        <item name="guidedButtonActionsListStyle">@style/TV.Dvr.Settings.GuidedButtonActionsListStyle</item>
        <item name="guidedActionContentWidthWeightTwoPanels">@string/dvr_settings_guidedactions_width_weight</item>
    </style>

    <style name="Theme.TV.Dvr.Settings.Priority.GuidedStep" parent="Theme.TV.Dvr.Settings.GuidedStep">
        <item name="guidedActionItemContainerStyle">@style/TV.Dvr.Settings.Priority.GuidedActionItemContainerStyle</item>
    </style>

    <style name="Theme.TV.Dvr.Series.Deletion.GuidedStep" parent="Theme.TV.Dvr.Settings.GuidedStep">
        <item name="guidedActionItemCheckmarkStyle">@style/TV.Dvr.Series.Deletion.guidedActionItemCheckmarkStyle</item>
    </style>

    <style name="Theme.TV.Dvr.Series.Settings.GuidedStep" parent="Theme.TV.Dvr.Settings.GuidedStep">
        <item name="android:windowBackground">@color/setup_background</item>
        <item name="android:windowIsTranslucent">true</item>
    </style>

    <style name="Theme.TV.Dvr.Browse.Details" parent="Theme.Leanback.Details">
        <item name="detailsDescriptionTitleStyle">@style/TV.Dvr.Browse.DetailsDescriptionTitleStyle</item>
        <item name="android:windowSharedElementEnterTransition">@transition/dvr_details_shared_element_enter_transition</item>
        <item name="android:windowSharedElementReturnTransition">@transition/dvr_details_shared_element_return_transition</item>
        <!-- Disallows transition overlapping to prevent jankiness caused by ripple effects of
             clicking DVR cards overlapping with fragment transition. -->
        <item name="android:windowAllowEnterTransitionOverlap">false</item>
    </style>
</resources>