<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 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.
-->

<com.android.internal.widget.LinearLayoutWithDefaultTouchRecepient
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/topLayout"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_horizontal">

    <!-- header message -->
    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:layout_marginTop="14dip">

        <TextView android:id="@+id/headerText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:textAppearance="?android:attr/textAppearanceMedium"/>

    </ScrollView>

    <View
        android:layout_width="match_parent"
        android:layout_height="0dip"
        android:layout_weight="0.6"/>

    <!-- lock pattern widget -->
    <com.android.internal.widget.LockPatternView android:id="@+id/lockPattern"
        android:layout_width="354dip"
        android:layout_height="354dip"
        aspect="square"/>

    <View
        android:layout_width="match_parent"
        android:layout_height="0dip"
        android:layout_weight="1"/>

    <!-- footer message -->
    <TextView android:id="@+id/footerText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/headerText"
        android:layout_marginTop="16dip"
        android:layout_toEndOf="@id/lockPattern"
        android:layout_marginStart="100dip"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:visibility="gone"/>

    <!-- confirm / restart buttons -->
    <LinearLayout android:id="@+id/buttonContainer"
        style="@style/SecurityPreferenceButtonContainer"
        android:layout_alignParentEnd="true"
        android:layout_alignParentBottom="true"
        android:orientation="horizontal">

        <!-- left / top button: skip, or re-try -->
        <Button android:id="@+id/footerLeftButton"
            style="@style/SecurityPreferenceButton"
            android:text="@string/lockpattern_restart_button_text"/>

        <!-- right / bottom button: confirm or ok -->
        <Button android:id="@+id/footerRightButton"
            style="@style/SecurityPreferenceButton"
            android:text="@string/lockpattern_confirm_button_text"/>

    </LinearLayout>

</com.android.internal.widget.LinearLayoutWithDefaultTouchRecepient>

