<?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>
    <dimen name="pager_tabs_padding">0dp</dimen>

    <!-- Weight of the left pane in a multi-pane preference layout. -->
    <integer name="preferences_left_pane_weight">1</integer>
    <!-- Weight of the right pane in a multi-pane preference layout. So the split is 1:2 -->
    <integer name="preferences_right_pane_weight">2</integer>

    <!-- ActionBar height -->
    <dimen name="actionbar_size">64dip</dimen>

    <!-- ActionBar contentInsetStart -->
    <dimen name="actionbar_contentInsetStart">80dp</dimen>
    <dimen name="actionbar_subsettings_contentInsetStart">80dp</dimen>

    <!-- SwitchBar sub settings margin start / end -->
    <dimen name="switchbar_subsettings_margin_start">80dp</dimen>
    <dimen name="switchbar_subsettings_margin_end">80dp</dimen>

    <!-- Dimensions for Wifi Assistant Card -->
    <dimen name="wifi_assistant_padding_top_bottom">24dp</dimen>
    <dimen name="wifi_assistant_padding_start_end">24dp</dimen>
    <dimen name="wifi_assistant_padding">25dp</dimen>
    <dimen name="wifi_assistant_text_padding">24dp</dimen>
</resources>
