<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2010 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>
    <declare-styleable name="KeyButtonView">
        <!-- key code to send when pressed; if absent or 0, no key is sent -->
        <attr name="keyCode" format="integer" />
        <!-- does this button generate longpress / repeat events? -->
        <attr name="keyRepeat" format="boolean" />
        <attr name="android:contentDescription" />
    </declare-styleable>
    <declare-styleable name="ToggleSlider">
        <attr name="text" format="string" />
    </declare-styleable>
    <declare-styleable name="NotificationLinearLayout">
        <attr name="insetLeft" format="dimension" />
    </declare-styleable>
    <declare-styleable name="RecentsPanelView">
        <attr name="recentItemLayout" format="reference" />
    </declare-styleable>
    <declare-styleable name="DeadZone">
        <attr name="minSize" format="dimension" />
        <attr name="maxSize" format="dimension" />
        <attr name="holdTime" format="integer" />
        <attr name="decayTime" format="integer" />
        <attr name="orientation" />
    </declare-styleable>
    <declare-styleable name="BatteryMeterView">
        <attr name="frameColor" format="color" />
    </declare-styleable>
    <declare-styleable name="Clock">
        <attr name="amPmStyle" format="enum">
            <enum name="normal" value="0" />
            <enum name="small" value="1" />
            <enum name="gone" value="2" />
        </attr>
    </declare-styleable>
    <attr name="orientation">
        <enum name="horizontal" value="0" />
        <enum name="vertical" value="1" />
    </attr>
    <declare-styleable name="UserAvatarView">
        <attr name="frameWidth" format="dimension" />
        <attr name="framePadding" format="dimension" />
        <attr name="activeFrameColor" format="color" />
        <attr name="frameColor" />
    </declare-styleable>
    <declare-styleable name="UserDetailItemView">
        <attr name="regularFontFamily" format="string" />
        <attr name="activatedFontFamily" format="string" />
    </declare-styleable>
    <declare-styleable name="DateView">
        <attr name="datePattern" format="string" />
    </declare-styleable>
    <declare-styleable name="PseudoGridView">
        <attr name="numColumns" format="integer" />
        <attr name="verticalSpacing" format="dimension" />
        <attr name="horizontalSpacing" format="dimension" />
    </declare-styleable>

    <!-- Theme for icons in the status bar (light/dark). background/fillColor is used for dual tone
         icons like wifi and signal, and singleToneColor is used for icons with only one tone.
         Contract: Pixel with fillColor blended over backgroundColor blended over translucent should
         equal to singleToneColor blended over translucent. -->
    <declare-styleable name="TonedIcon">
        <attr name="backgroundColor" format="integer" />
        <attr name="fillColor" format="integer" />
        <attr name="singleToneColor" format="integer" />
    </declare-styleable>

    <declare-styleable name="StatusBarWindowView_Layout">
        <attr name="ignoreRightInset" format="boolean" />
    </declare-styleable>

    <declare-styleable name="AlphaOptimizedImageView">
        <attr name="hasOverlappingRendering" format="boolean" />
    </declare-styleable>

    <declare-styleable name="TunerSwitch">
        <attr name="defValue" format="boolean" />
        <attr name="metricsAction" format="integer" />
    </declare-styleable>
</resources>

