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

    <!-- Theme attributes -->
    <attr name="sucLayoutTheme" format="reference" />

    <declare-styleable name="SucTemplateLayout">
        <attr name="android:layout" />
        <attr name="sucContainer" format="reference" />
    </declare-styleable>

    <declare-styleable name="SucPartnerCustomizationLayout">
        <attr name="sucLayoutFullscreen" format="boolean" />
        <!-- When set to false, prevents the layout applying partner resource. This attribute is
             particularly useful when the layout would like to apply their customized attributes.
             This attribute will be ignored and use partner resource when inside setup wizard flow.
             The default value is true. -->
        <attr name="sucUsePartnerResource" format="boolean" />
    </declare-styleable>

    <!-- Status bar attributes; only takes effect on M or above -->
    <declare-styleable name="SucStatusBarMixin">
        <!-- The color for the status bar. For this to take effect,
             "android:windowDrawsSystemBarBackgrounds" should be set to true and
             "android:windowTranslucentStatus" should be set to false. Also,
             View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN should be set to true and
             android:statusBarColor should be transparent. -->
        <attr name="sucStatusBarBackground" format="color|reference" />
        <attr name="sucLightStatusBar" format="boolean" />
    </declare-styleable>

    <!-- System navigation bar attributes; only takes effect on O_MR1 or above -->
    <declare-styleable name="SucSystemNavBarMixin">
        <!-- The color for the system navigation bar. For this to take effect,
             "android:windowDrawsSystemBarBackgrounds" should be set to true and
             "android:windowTranslucentNavigation" should be set to false. -->
        <attr name="sucSystemNavBarBackgroundColor" format="color" />
        <attr name="sucLightSystemNavBar" format="boolean" />
        <!-- The color for the system navigation bar divider. For this to take effect,
             "android:windowDrawsSystemBarBackgrounds" should be set to true and
             "android:windowTranslucentNavigation" should be set to false. -->
        <attr name="sucSystemNavBarDividerColor" format="color" />
    </declare-styleable>

    <!-- FooterButton attributes -->
    <declare-styleable name="SucFooterButton">
        <attr name="android:text" />
        <attr name="android:theme" />
        <!-- Next value: 9 -->
        <attr name="sucButtonType">
            <enum name="other" value="0" />
            <enum name="add_another" value="1" />
            <enum name="cancel" value="2" />
            <enum name="clear" value="3" />
            <enum name="done" value="4" />
            <enum name="next" value="5" />
            <enum name="opt_in" value="6" />
            <enum name="skip" value="7" />
            <enum name="stop" value="8" />
        </attr>
        <attr name="sucFooterButtonPaddingStart" format="dimension" />
        <attr name="sucFooterButtonPaddingEnd" format="dimension" />
    </declare-styleable>

    <!-- Button of footer attributes -->
    <declare-styleable name="SucFooterBarMixin">
        <attr name="sucFooterBarButtonAllCaps" format="boolean" />
        <attr name="sucFooterBarButtonCornerRadius" format="dimension" />
        <attr name="sucFooterBarButtonFontFamily" format="string|reference" />
        <attr name="sucFooterBarPaddingTop" format="dimension" />
        <attr name="sucFooterBarPaddingBottom" format="dimension" />
        <attr name="sucFooterBarPrimaryFooterBackground" format="color" />
        <attr name="sucFooterBarPrimaryFooterButton" format="reference" />
        <attr name="sucFooterBarSecondaryFooterBackground" format="color" />
        <attr name="sucFooterBarSecondaryFooterButton" format="reference" />
        <attr name="sucFooterBarButtonHighlightAlpha" format="float" />
        <attr name="sucFooterBarButtonColorControlHighlight" format="color" />
        <attr name="sucFooterBarButtonColorControlHighlightRipple" format="color" />
        <attr name="sucFooterBarPaddingVertical" format="dimension" />
        <attr name="sucFooterBarPaddingStart" format="dimension" />
        <attr name="sucFooterBarPaddingEnd" format="dimension" />
        <attr name="sucFooterBarMinHeight" format="dimension" />
    </declare-styleable>

    <declare-styleable name="SucHeaderMixin">
        <attr name="sucHeaderText" format="string" localization="suggested" />
        <attr name="sucHeaderTextColor" format="reference|color" />
        <attr name="sucGlifHeaderMarginTop" format="dimension" />
        <attr name="sucGlifHeaderMarginBottom" format="dimension" />
        <attr name="sucGlifIconMarginTop" format="dimension" />
        <attr name="sucHeaderContainerMarginBottom" format="dimension" />
    </declare-styleable>

</resources>
