<?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="pano_mosaic_surface_height">@dimen/pano_mosaic_surface_height_xlarge</dimen>
    <dimen name="pano_review_button_width">@dimen/pano_review_button_width_xlarge</dimen>
    <dimen name="pano_review_button_height">@dimen/pano_review_button_height_xlarge</dimen>
    <dimen name="setting_row_height">@dimen/setting_row_height_xlarge</dimen>
    <dimen name="setting_item_text_size">@dimen/setting_item_text_size_xlarge</dimen>
    <dimen name="setting_knob_width">@dimen/setting_knob_width_xlarge</dimen>
    <dimen name="setting_item_text_width">@dimen/setting_item_text_width_xlarge</dimen>
    <dimen name="setting_popup_window_width">@dimen/setting_popup_window_width_xlarge</dimen>
    <dimen name="setting_item_list_margin">@dimen/setting_item_list_margin_xlarge</dimen>
    <dimen name="indicator_bar_width">@dimen/indicator_bar_width_xlarge</dimen>
    <dimen name="popup_title_text_size">@dimen/popup_title_text_size_xlarge</dimen>
    <dimen name="popup_title_frame_min_height">@dimen/popup_title_frame_min_height_xlarge</dimen>
    <dimen name="big_setting_popup_window_width">@dimen/big_setting_popup_window_width_xlarge</dimen>
    <dimen name="setting_item_icon_width">@dimen/setting_item_icon_width_xlarge</dimen>
    <dimen name="effect_setting_item_icon_width">@dimen/effect_setting_item_icon_width_xlarge</dimen>
    <dimen name="effect_setting_item_text_size">@dimen/effect_setting_item_text_size_xlarge</dimen>
    <dimen name="effect_setting_type_text_size">@dimen/effect_setting_type_text_size_xlarge</dimen>
    <dimen name="effect_setting_type_text_min_height">@dimen/effect_setting_type_text_min_height_xlarge</dimen>
    <dimen name="effect_setting_clear_text_size">@dimen/effect_setting_clear_text_size_xlarge</dimen>
    <dimen name="effect_setting_clear_text_min_height">@dimen/effect_setting_clear_text_min_height_xlarge</dimen>
    <dimen name="effect_setting_type_text_left_padding">@dimen/effect_setting_type_text_left_padding_xlarge</dimen>
    <dimen name="onscreen_indicators_height">@dimen/onscreen_indicators_height_xlarge</dimen>
    <dimen name="onscreen_exposure_indicator_text_size">@dimen/onscreen_exposure_indicator_text_size_xlarge</dimen>
</resources>

