<?xml version="1.0" encoding="utf-8"?>
<!--
  Copyright 2016 The Cobalt Authors. All Rights Reserved.

  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="CobaltTheme" parent="Theme.AppCompat.NoActionBar">
    <!-- Color of the transition animation when launching the app. -->
    <item name="android:colorPrimary">@color/primary</item>

    <!-- Color shown after the transition before the window is attached.
         Avoids a black flash between the transition and splash screen. -->
    <item name="android:windowBackground">?android:colorPrimary</item>

    <item name="android:dialogTheme">@style/FullscreenDialogTheme</item>
  </style>

  <style name="FullscreenDialogTheme" parent="Theme.Leanback">
    <item name="android:layout_width">fill_parent</item>
    <item name="android:layout_height">fill_parent</item>
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowBackground">@color/lb_error_background_color_translucent</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsFloating">false</item>
    <item name="android:windowOverscan">true</item>
    <item name="android:backgroundDimEnabled">false</item>
    <item name="errorMessageStyle">@style/ErrorMessageStyle</item>
    <!-- Make the buttons darker so that you can see the focus highlight on the dark background. -->
    <item name="android:colorButtonNormal">#282828</item>
  </style>

  <style name="ErrorMessageStyle" parent="Widget.Leanback.ErrorMessageStyle">
    <item name="android:layout_margin">16dp</item>
  </style>
</resources>
