<?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.
-->
<androidx.constraintlayout.widget.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:theme="@style/Theme.Network"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:maxHeight="@dimen/vpn_dialog_max_height"
    android:orientation="vertical"
    android:paddingTop="0dp"
    android:paddingLeft="24dp"
    android:paddingRight="24dp" >
    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textAppearance="@android:style/TextAppearance.DeviceDefault.Small"
        android:id="@+id/dialog_alert_subtitle"
        android:text="@string/vpn_insecure_dialog_subtitle"
        android:textColor="?android:attr/colorError"
        android:visibility="gone"
        android:includeFontPadding="false"
        android:padding="0dp" />

    <ScrollView
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
        <LinearLayout android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:paddingTop="24dp">

            <LinearLayout android:id="@+id/editor"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical"
                    android:visibility="gone">

                <com.google.android.material.textfield.TextInputLayout
                    style="@style/vpn_input_label"
                    android:id="@+id/name_layout"
                    android:hint="@string/vpn_name"
                    app:endIconMode="clear_text"
                    app:helperTextEnabled="true"
                    app:helperText="@string/vpn_field_required">
                    <com.google.android.material.textfield.TextInputEditText
                        style="@style/vpn_value"
                        android:id="@+id/name"
                        android:inputType="textCapWords"/>
                </com.google.android.material.textfield.TextInputLayout>

                <TextView style="@style/vpn_label"
                        android:text="@string/vpn_type"
                        android:labelFor="@+id/type"/>
                <Spinner
                    android:id="@+id/type"
                    style="@style/vpn_spinner"
                    android:prompt="@string/vpn_type"
                    android:entries="@array/vpn_types"/>

                <com.google.android.material.textfield.TextInputLayout
                    style="@style/vpn_input_label"
                    android:id="@+id/server_layout"
                    android:hint="@string/vpn_server"
                    app:endIconMode="clear_text"
                    app:helperTextEnabled="true"
                    app:helperText="@string/vpn_field_required">
                    <com.google.android.material.textfield.TextInputEditText
                        style="@style/vpn_value"
                        android:id="@+id/server"/>
                </com.google.android.material.textfield.TextInputLayout>

                <LinearLayout android:id="@+id/options_ipsec_identity"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:orientation="vertical"
                        android:visibility="gone">
                    <com.google.android.material.textfield.TextInputLayout
                        style="@style/vpn_input_label"
                        android:id="@+id/ipsec_identifier_layout"
                        android:hint="@string/vpn_ipsec_identifier"
                        app:endIconMode="clear_text"
                        app:helperTextEnabled="true"
                        app:helperText="@string/vpn_field_required">
                        <com.google.android.material.textfield.TextInputEditText
                            style="@style/vpn_value"
                            android:id="@+id/ipsec_identifier"/>
                    </com.google.android.material.textfield.TextInputLayout>
                </LinearLayout>

                <LinearLayout android:id="@+id/ipsec_psk"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:orientation="vertical"
                        android:visibility="gone">
                    <com.google.android.material.textfield.TextInputLayout
                        style="@style/vpn_input_label"
                        android:id="@+id/ipsec_secret_layout"
                        android:hint="@string/vpn_ipsec_secret"
                        app:endIconMode="password_toggle"
                        app:helperTextEnabled="true"
                        app:helperText="@string/vpn_field_required">
                        <com.google.android.material.textfield.TextInputEditText
                            style="@style/vpn_value"
                            android:id="@+id/ipsec_secret"
                            android:inputType="textPassword"/>
                    </com.google.android.material.textfield.TextInputLayout>
                </LinearLayout>

                <LinearLayout android:id="@+id/ipsec_user"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:orientation="vertical"
                        android:visibility="gone">
                    <TextView style="@style/vpn_label"
                            android:text="@string/vpn_ipsec_user_cert"
                            android:labelFor="@+id/ipsec_user_cert"/>
                    <Spinner
                        android:id="@+id/ipsec_user_cert"
                        style="@style/vpn_spinner"
                        android:prompt="@string/vpn_ipsec_user_cert"/>
                </LinearLayout>

                <LinearLayout android:id="@+id/ipsec_peer"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:orientation="vertical"
                        android:visibility="gone">
                    <TextView style="@style/vpn_label"
                            android:text="@string/vpn_ipsec_ca_cert"
                            android:labelFor="@+id/ipsec_ca_cert"/>
                    <Spinner
                        android:id="@+id/ipsec_ca_cert"
                        style="@style/vpn_spinner"
                        android:prompt="@string/vpn_ipsec_ca_cert"/>

                    <TextView style="@style/vpn_label"
                            android:text="@string/vpn_ipsec_server_cert"
                            android:labelFor="@+id/ipsec_server_cert"/>
                    <Spinner
                        android:id="@+id/ipsec_server_cert"
                        style="@style/vpn_spinner"
                        android:prompt="@string/vpn_ipsec_server_cert"/>
                </LinearLayout>

                <CheckBox style="@style/vpn_value"
                        android:id="@+id/show_options"
                        android:text="@string/vpn_show_options"/>
            </LinearLayout>

            <LinearLayout android:id="@+id/options"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical"
                    android:visibility="gone">

                <TextView android:id="@+id/vpn_proxy_settings_title"
                          style="@style/vpn_label"
                          android:text="@string/proxy_settings_title"
                          android:labelFor="@+id/vpn_proxy_settings" />

                <Spinner
                    android:id="@+id/vpn_proxy_settings"
                    style="@style/vpn_spinner"
                    android:prompt="@string/proxy_settings_title"
                    android:entries="@array/vpn_proxy_settings"/>

                <LinearLayout
                    android:id="@+id/vpn_proxy_fields"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical"
                    android:visibility="gone" >

                    <com.google.android.material.textfield.TextInputLayout
                        style="@style/vpn_input_label"
                        android:id="@+id/vpn_proxy_host_layout"
                        android:hint="@string/proxy_hostname_label"
                        app:endIconMode="clear_text">
                        <com.google.android.material.textfield.TextInputEditText
                            style="@style/vpn_value"
                            android:id="@+id/vpn_proxy_host"
                            android:inputType="textNoSuggestions"/>
                    </com.google.android.material.textfield.TextInputLayout>

                    <com.google.android.material.textfield.TextInputLayout
                        style="@style/vpn_input_label"
                        android:id="@+id/vpn_proxy_port_layout"
                        android:hint="@string/proxy_port_label"
                        app:endIconMode="clear_text">
                        <com.google.android.material.textfield.TextInputEditText
                            style="@style/vpn_value"
                            android:id="@+id/vpn_proxy_port"
                            android:inputType="number"/>
                    </com.google.android.material.textfield.TextInputLayout>
                </LinearLayout>
            </LinearLayout>

            <LinearLayout android:id="@+id/userpass"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical">

                <com.google.android.material.textfield.TextInputLayout
                    style="@style/vpn_input_label"
                    android:id="@+id/username_layout"
                    android:hint="@string/vpn_username_optional"
                    app:endIconMode="clear_text">
                    <com.google.android.material.textfield.TextInputEditText
                        style="@style/vpn_value"
                        android:id="@+id/username"/>
                </com.google.android.material.textfield.TextInputLayout>

                <com.google.android.material.textfield.TextInputLayout
                    style="@style/vpn_input_label"
                    android:id="@+id/password_layout"
                    android:hint="@string/vpn_password_optional"
                    app:endIconMode="password_toggle">
                    <com.google.android.material.textfield.TextInputEditText
                        style="@style/vpn_value"
                        android:id="@+id/password"
                        android:inputType="textPassword"/>
                </com.google.android.material.textfield.TextInputLayout>

                <CheckBox style="@style/vpn_value"
                        android:id="@+id/save_login"
                        android:text="@string/vpn_save_login"/>
            </LinearLayout>

            <LinearLayout
                android:id="@+id/connect"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="@dimen/vpn_dialog_margin_bottom"
                android:orientation="vertical"
                android:animateLayoutChanges="true">
                <CheckBox
                    android:id="@+id/always_on_vpn"
                    style="@style/vpn_value"
                    android:text="@string/vpn_menu_lockdown"/>
                <TextView
                    android:id="@+id/always_on_invalid_reason"
                    style="@style/vpn_warning"/>
            </LinearLayout>
        </LinearLayout>
    </ScrollView>
</androidx.constraintlayout.widget.ConstraintLayout>
