<?xml version="1.0" encoding="utf-8"?>

<!--
  ~ Copyright (C) 2019 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
  -->

<PreferenceScreen
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:settings="http://schemas.android.com/apk/res-auto"
    android:key="gesture_navigation_settings_page"
    android:title="@string/gesture_settings_activity_title"
    settings:keywords="@string/keywords_gesture_navigation_settings">

    <PreferenceCategory
        android:key="assistant_gesture_category"
        android:persistent="false"
        android:title="@string/assistant_gesture_category_title">

        <SwitchPreference
            android:key="assistant_gesture_corner_swipe"
            android:title="@string/assistant_corner_gesture_title"
            android:summary="@string/assistant_corner_gesture_summary"
            settings:controller="com.android.settings.gestures.GestureNavigationSettingsAssistController"
        />

    </PreferenceCategory>

    <PreferenceCategory
        android:key="back_sensitivity_category"
        android:persistent="false"
        android:title="@string/back_sensitivity_dialog_title">

        <com.android.settings.widget.LabeledSeekBarPreference
            android:key="gesture_left_back_sensitivity"
            android:title="@string/left_edge"
            android:max="2"
            android:selectable="true"
            settings:textStart="@string/low_label"
            settings:textEnd="@string/high_label"/>

        <com.android.settings.widget.LabeledSeekBarPreference
            android:key="gesture_right_back_sensitivity"
            android:title="@string/right_edge"
            android:max="2"
            android:selectable="true"
            settings:textStart="@string/low_label"
            settings:textEnd="@string/high_label"/>
    </PreferenceCategory>

    <com.android.settingslib.widget.FooterPreference
        android:key="gesture_navigation_settings_footer"
        android:title="@string/back_sensitivity_dialog_message"
        android:selectable="false"
        settings:searchable="false"/>
</PreferenceScreen>

