<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2015 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>
    <string name="activity_sample_code">Support Design Demos</string>

    <string name="design_fab">Floating Action Button/Basic</string>
    <string name="design_navigation">NavigationView/Usage</string>
    <string name="design_tabs_basic">TabLayout/Usage</string>
    <string name="design_text_input">Text Input</string>

    <string name="fab_size_normal">Normal size</string>
    <string name="fab_size_mini">Mini size</string>

    <string name="navigation_open">Open</string>
    <string name="navigation_close">Close</string>
    <string name="navigation_item_with_icon">Item with icon</string>
    <string name="navigation_item_without_icon">Item without icon</string>
    <string name="navigation_message">Clicked: \"%s\"</string>
    <string name="navigation_header">Header</string>
    <string name="navigation_item_1">Item 1</string>
    <string name="navigation_item_2">Item 2</string>
    <string name="navigation_item_3">Item 3</string>
    <string name="navigation_item_4">Item 4 (disabled)</string>
    <string name="navigation_1">1</string>
    <string name="navigation_invisible">Invisible</string>
    <string name="navigation_subheader">Subheader</string>
    <string name="navigation_sub_item_1">Subitem 1</string>
    <string name="navigation_sub_item_2">Subitem 2</string>

    <string name="tabs_fixed">Fixed</string>
    <string name="tabs_scrollable">Scrollable</string>
    <string name="tabs_gravity_center">Center</string>
    <string name="tabs_gravity_fill">Fill</string>

    <string name="add_tab">Add tab</string>
    <string name="remove_tab">Remove tab</string>

    <string name="form_username">Username</string>
    <string name="form_email">Email address</string>
    <string name="show_error">Show error</string>
    <string name="clear_error">Clear error</string>

    <string name="design_snackbar_basic">Snackbar/Usage</string>
    <string name="design_snackbar_fab">Snackbar/Coordinated with FAB</string>
    <string name="design_snackbar_without_col">Snackbar/Usage without CoordinatorLayout</string>
    <string name="snackbar_show_short">Snackbar (short message)</string>
    <string name="snackbar_show_long">Snackbar (long message)</string>
    <string name="snackbar_show_short_action">Show (short message + action)</string>
    <string name="snackbar_show_long_action">Show (long message + action)</string>
    <string name="snackbar_show_long_long_action">Show (long message + long action)</string>

    <string name="design_appbar_toolbar_scroll_tabs_scroll">AppBar/Toolbar Scroll + Tabs Scroll</string>
    <string name="design_appbar_toolbar_scroll_tabs_pin">AppBar/Toolbar Scroll + Tabs Pin</string>
    <string name="design_appbar_collapsing_toolbar_pin">AppBar/Collapsing Toolbar (pinned)</string>
    <string name="design_appbar_collapsing_toolbar_pin_fab">AppBar/Collapsing Toolbar (pinned with FAB)</string>
    <string name="design_appbar_collapsing_toolbar_scroll">AppBar/Collapsing Toolbar (scroll off)</string>
    <string name="design_appbar_collapsing_toolbar_with_image">AppBar/Collapsing Toolbar + Parallax Image</string>
    <string name="design_appbar_parallax_overlap">AppBar/Parallax Overlapping content</string>
    <string name="scroll_top">Top</string>
    <string name="scroll_bottom">Bottom</string>
    <string name="menu_search">Search</string>
    <string name="menu_settings">Settings</string>


</resources>
