<?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" />
    </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="NotificationRowLayout">
        <attr name="rowHeight" 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>
</resources>

