<?xml version="1.0" encoding="utf-8"?>
<!--
/*
**
** Copyright 2008, 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>
    <!-- Preferable keyboard height in absolute scale: 1.100in -->
    <!-- This keyboardHeight value should match with keyboard-heights.xml -->
    <dimen name="keyboardHeight">176.0dp</dimen>
    <fraction name="minKeyboardHeight">45%p</fraction>
    <!-- key_height + key_bottom_gap = popup_key_height -->
    <dimen name="popup_key_height">44.8dp</dimen>

    <fraction name="keyboard_top_padding">1.818%p</fraction>
    <fraction name="keyboard_bottom_padding">0.0%p</fraction>
    <fraction name="key_bottom_gap">4.330%p</fraction>
    <fraction name="key_horizontal_gap">0.405%p</fraction>

    <fraction name="key_bottom_gap_stone">5.010%p</fraction>
    <fraction name="key_horizontal_gap_stone">1.159%p</fraction>

    <fraction name="key_bottom_gap_gb">5.941%p</fraction>
    <fraction name="key_horizontal_gap_gb">0.997%p</fraction>

    <fraction name="keyboard_top_padding_ics">2.727%p</fraction>
    <fraction name="keyboard_bottom_padding_ics">0.0%p</fraction>
    <fraction name="key_bottom_gap_ics">5.368%p</fraction>
    <fraction name="key_horizontal_gap_ics">1.020%p</fraction>

    <!-- left or right padding of label alignment -->
    <dimen name="key_label_horizontal_padding">8dp</dimen>

    <fraction name="key_letter_ratio">65%</fraction>
    <fraction name="key_large_letter_ratio">74%</fraction>
    <fraction name="key_label_ratio">40%</fraction>
    <fraction name="key_hint_letter_ratio">30%</fraction>
    <fraction name="key_hint_label_ratio">52%</fraction>
    <fraction name="key_uppercase_letter_ratio">40%</fraction>
    <fraction name="key_preview_text_ratio">90%</fraction>
    <fraction name="spacebar_text_ratio">40.000%</fraction>
    <dimen name="key_preview_offset">0.0dp</dimen>

    <!-- For 5-row keyboard -->
    <fraction name="key_bottom_gap_5row">3.20%p</fraction>
    <fraction name="key_letter_ratio_5row">78%</fraction>
    <fraction name="key_uppercase_letter_ratio_5row">48%</fraction>

    <dimen name="key_preview_offset_ics">1.6dp</dimen>
    <!-- popup_key_height x -0.5 -->
    <dimen name="more_keys_keyboard_vertical_correction_ics">-22.4dp</dimen>

    <dimen name="suggestions_strip_height">36dp</dimen>
    <dimen name="more_suggestions_row_height">36dp</dimen>
    <integer name="max_more_suggestions_row">2</integer>
    <fraction name="min_more_suggestions_width">60%</fraction>
    <!-- Amount of allowance for selecting keys in a mini popup keyboard by sliding finger. -->
    <!-- popup_key_height x 1.2 -->
    <dimen name="more_keys_keyboard_slide_allowance">53.76dp</dimen>
    <!-- popup_key_height x -1.0 -->
    <dimen name="more_keys_keyboard_vertical_correction">-44.8dp</dimen>

    <!-- Gesture floating preview text parameters -->
    <dimen name="gesture_floating_preview_text_size">23dp</dimen>
    <dimen name="gesture_floating_preview_text_offset">54dp</dimen>
    <dimen name="gesture_floating_preview_horizontal_padding">23dp</dimen>
    <dimen name="gesture_floating_preview_vertical_padding">15dp</dimen>
</resources>
