<?xml version="1.0" encoding="utf-8"?>
<!--
    Copyright (C) 2011 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
    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <!-- turn on/off the mini-calendar and calendar picker -->
    <!-- supported only for x-large devices  -->
    <bool name="show_calendar_controls">true</bool>
    <!-- turn on/off month with agenda view -->
    <!-- not supported for X-large devices -->
    <bool name="show_agenda_with_month">false</bool>
    <!-- when on, shows details of event in month view, when off, shows busy bits -->
    <!-- the "show details" mode is recommended for devices with large screens -->
    <bool name="show_details_in_month">true</bool>
    <!-- when on, shows the event next to the agenda list,
         when off, shows the event on top of the agenda list after it was clicked. -->
    <bool name="show_event_details_with_agenda">true</bool>
    <!-- when on, event info launched from agenda view is shown in full screen, -->
    <!-- when off, shown as a popup. -->
    <bool name="agenda_show_event_info_full_screen">false</bool>
    <!-- when on, event info launched from day/week/month view is shown in full screen, -->
    <!-- when off, shown as a popup. -->
    <bool name="show_event_info_full_screen">false</bool>
    <!--  A global var used to tablet vs phone settings -->
    <bool name="tablet_config">true</bool>
    <!--  A global var used to set the main layout theme (one pane vs multiple panes) -->
    <bool name="multiple_pane_config">true</bool>
</resources>
