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

    <!-- Like in themes_base.xml, the namespace "*.AppCompat.Base" is used to
     define base styles for the platform version. The "*.AppCompat"
     variants are for direct use or use as parent styles by the app. -->
    <eat-comment/>

    <style name="Widget.AppCompat.Base.ActionBar"
           parent="android:Widget.Holo.ActionBar">
    </style>

    <style name="Widget.AppCompat.Light.Base.ActionBar"
           parent="android:Widget.Holo.Light.ActionBar">
    </style>

    <style name="Widget.AppCompat.Base.ActionBar.Solid"
           parent="android:Widget.Holo.ActionBar.Solid">
    </style>

    <style name="Widget.AppCompat.Light.Base.ActionBar.Solid"
           parent="android:Widget.Holo.Light.ActionBar.Solid">
    </style>

    <style name="Widget.AppCompat.Light.Base.ActionBar.Solid.Inverse"
           parent="android:Widget.Holo.Light.ActionBar.Solid.Inverse">
    </style>

    <style name="Widget.AppCompat.Base.ActionBar.TabBar"
           parent="android:Widget.Holo.ActionBar.TabBar">
    </style>

    <style name="Widget.AppCompat.Light.Base.ActionBar.TabBar"
           parent="android:Widget.Holo.Light.ActionBar.TabBar">
    </style>

    <style name="Widget.AppCompat.Light.Base.ActionBar.TabBar.Inverse"
           parent="android:Widget.Holo.Light.ActionBar.TabBar.Inverse">
    </style>

    <style name="Widget.AppCompat.Base.ActionBar.TabView"
           parent="android:Widget.Holo.ActionBar.TabView">
    </style>

    <style name="Widget.AppCompat.Light.Base.ActionBar.TabView"
           parent="android:Widget.Holo.Light.ActionBar.TabView">
    </style>

    <style name="Widget.AppCompat.Light.Base.ActionBar.TabView.Inverse"
           parent="android:Widget.Holo.Light.ActionBar.TabView.Inverse">
    </style>

    <style name="Widget.AppCompat.Base.ActionBar.TabText"
           parent="android:Widget.Holo.ActionBar.TabText">
    </style>

    <style name="Widget.AppCompat.Light.Base.ActionBar.TabText"
           parent="android:Widget.Holo.Light.ActionBar.TabText">
    </style>

    <style name="Widget.AppCompat.Light.Base.ActionBar.TabText.Inverse"
           parent="android:Widget.Holo.Light.ActionBar.TabText.Inverse">
    </style>

    <style name="Widget.AppCompat.Light.Base.ActionMode.Inverse"
           parent="android:Widget.Holo.Light.ActionMode.Inverse">
    </style>

    <style name="TextAppearance.AppCompat.Widget.Base.ActionBar.Menu"
           parent="android:TextAppearance.Holo.Widget.ActionBar.Menu">
    </style>

    <style name="TextAppearance.AppCompat.Widget.Base.ActionBar.Title"
           parent="android:TextAppearance.Holo.Widget.ActionBar.Title">
    </style>

    <style name="TextAppearance.AppCompat.Widget.Base.ActionBar.Subtitle"
           parent="android:TextAppearance.Holo.Widget.ActionBar.Subtitle">
    </style>

    <style name="TextAppearance.AppCompat.Widget.Base.ActionBar.Title.Inverse"
           parent="android:TextAppearance.Holo.Widget.ActionBar.Title.Inverse">
    </style>

    <style name="TextAppearance.AppCompat.Widget.Base.ActionBar.Subtitle.Inverse"
           parent="android:TextAppearance.Holo.Widget.ActionBar.Subtitle.Inverse">
    </style>

    <style name="TextAppearance.AppCompat.Widget.Base.ActionMode.Title"
           parent="android:TextAppearance.Holo.Widget.ActionMode.Title">
    </style>

    <style name="TextAppearance.AppCompat.Widget.Base.ActionMode.Subtitle"
           parent="android:TextAppearance.Holo.Widget.ActionMode.Subtitle">
    </style>

    <style name="TextAppearance.AppCompat.Widget.Base.ActionMode.Title.Inverse"
           parent="android:TextAppearance.Holo.Widget.ActionMode.Title.Inverse">
    </style>

    <style name="TextAppearance.AppCompat.Widget.Base.ActionMode.Subtitle.Inverse"
           parent="android:TextAppearance.Holo.Widget.ActionMode.Subtitle.Inverse">
    </style>

    <!-- Action Button Styles -->

    <style name="Widget.AppCompat.Base.ActionButton" parent="android:Widget.Holo.ActionButton">
    </style>

    <style name="Widget.AppCompat.Light.Base.ActionButton"
           parent="android:Widget.Holo.Light.ActionButton">
    </style>

    <style name="Widget.AppCompat.Base.ActionButton.CloseMode"
           parent="android:Widget.Holo.ActionButton.CloseMode">
    </style>

    <style name="Widget.AppCompat.Light.Base.ActionButton.CloseMode"
           parent="android:Widget.Holo.Light.ActionButton.CloseMode">
    </style>

    <style name="Widget.AppCompat.Base.ActionButton.Overflow"
           parent="android:Widget.Holo.ActionButton.Overflow">
    </style>

    <style name="Widget.AppCompat.Light.Base.ActionButton.Overflow"
           parent="android:Widget.Holo.Light.ActionButton.Overflow">
    </style>

    <!-- Spinner Widgets -->

    <style name="Widget.AppCompat.Base.ListView.DropDown"
           parent="android:Widget.Holo.ListView.DropDown"/>

    <style name="Widget.AppCompat.Light.Base.ListView.DropDown"
           parent="android:Widget.Holo.ListView.DropDown"/>

    <style name="Widget.AppCompat.Base.DropDownItem.Spinner"
           parent="android:Widget.Holo.DropDownItem.Spinner"/>

    <style name="Widget.AppCompat.Light.Base.DropDownItem.Spinner"
           parent="android:Widget.Holo.Light.DropDownItem.Spinner"/>

    <style name="Widget.AppCompat.Base.Spinner" parent="android:Widget.Holo.Spinner" />

    <style name="Widget.AppCompat.Light.Base.Spinner" parent="android:Widget.Holo.Light.Spinner"/>

    <style name="Widget.AppCompat.Base.ListView.Menu" parent="android:Widget.ListView.Menu" />

    <!-- Popup Menu -->

    <style name="Widget.AppCompat.Base.PopupMenu" parent="android:Widget.Holo.PopupMenu">
    </style>

    <style name="Widget.AppCompat.Light.Base.PopupMenu"
        parent="android:Widget.Holo.Light.PopupMenu">
    </style>

    <style name="TextAppearance.AppCompat.Base.Widget.PopupMenu.Large"
        parent="android:TextAppearance.Holo.Widget.PopupMenu.Large">
    </style>

    <style name="TextAppearance.AppCompat.Base.Widget.PopupMenu.Small"
        parent="android:TextAppearance.Holo.Widget.PopupMenu.Small">
    </style>

    <style name="TextAppearance.AppCompat.Light.Base.Widget.PopupMenu.Large"
        parent="android:TextAppearance.Holo.Widget.PopupMenu.Large">
    </style>

    <style name="TextAppearance.AppCompat.Light.Base.Widget.PopupMenu.Small"
        parent="android:TextAppearance.Holo.Widget.PopupMenu.Small">
    </style>

    <!-- Search View result styles -->

    <style name="TextAppearance.AppCompat.Base.SearchResult.Title"
           parent="@android:TextAppearance.Holo.SearchResult.Title">
    </style>

    <style name="TextAppearance.AppCompat.Base.SearchResult.Subtitle"
            parent="@android:TextAppearance.Holo.SearchResult.Subtitle">
    </style>

    <!--
        TextAppearance.Holo.Light.SearchResult.* are private so we extend from the default
        versions instead (which are exactly the same).
    -->
    <style name="TextAppearance.AppCompat.Light.Base.SearchResult.Title"
           parent="@android:TextAppearance.Holo.SearchResult.Title">
    </style>

    <style name="TextAppearance.AppCompat.Light.Base.SearchResult.Subtitle"
           parent="@android:TextAppearance.Holo.SearchResult.Subtitle">
    </style>

</resources>
