<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app2="http://schemas.android.com/apk/res-auto">

    <net.kdt.pojavlaunch.prefs.BackButtonPreference/>


    <Preference
        android:title="@string/preference_edit_controls_title"
        android:summary="@string/preference_edit_controls_summary"
        app2:icon="@drawable/ic_menu_custom_controls"
        >
        <intent android:targetPackage="@string/application_package" android:targetClass="net.kdt.pojavlaunch.CustomControlsActivity" android:action=".CustomControlsActivity"/>
    </Preference>
    <PreferenceCategory
        android:title="@string/preference_category_gestures">

        <androidx.preference.SwitchPreferenceCompat
            android:defaultValue="false"
            android:icon="@drawable/ic_setting_gesture_disable"
            android:key="disableGestures"
            android:summary="@string/mcl_disable_gestures_subtitle"
            android:title="@string/mcl_disable_gestures" />

        <androidx.preference.SwitchPreferenceCompat
            android:defaultValue="false"
            android:key="disableDoubleTap"
            android:summary="@string/mcl_disable_swap_hand_subtitle"
            android:title="@string/mcl_disable_swap_hand" />

        <net.kdt.pojavlaunch.prefs.CustomSeekBarPreference
            android:key="timeLongPressTrigger"
            android:summary="@string/mcl_setting_subtitle_longpresstrigger"
            android:title="@string/mcl_setting_title_longpresstrigger"
            app2:showSeekBarValue="true"
            app2:selectable="false"
            app2:min="@integer/gesture_delay_seekbar_min"
            android:max="@integer/gesture_delay_seekbar_max"
            app2:seekBarIncrement="@integer/gesture_delay_seekbar_increment"
            android:icon="@drawable/ic_setting_gesture_time"
            />

    </PreferenceCategory>

    <PreferenceCategory
        android:title="@string/preference_category_buttons">

        <net.kdt.pojavlaunch.prefs.CustomSeekBarPreference
            android:key="buttonscale"
            android:title="@string/mcl_setting_title_buttonscale"
            android:summary="@string/mcl_setting_subtitle_buttonscale"
            app2:showSeekBarValue="true"
            app2:selectable="false"
            app2:min="@integer/button_scale_seekbar_min"
            android:max="@integer/button_scale_seekbar_max"
            app2:seekBarIncrement="@integer/button_scale_seekbar_increment"
            android:icon="@drawable/ic_setting_control_scale"
            />
        <SwitchPreference
            android:key="buttonAllCaps"
            android:defaultValue="true"
            android:title="@string/mcl_setting_title_buttonallcaps"
            android:summary="@string/mcl_setting_subtitle_buttonallcaps"
            />
        <androidx.preference.SwitchPreferenceCompat
            android:defaultValue="true"
            android:key="keyboardPanning"
            android:summary="@string/mcl_setting_subtitle_keyboard_panning"
            android:title="@string/mcl_setting_title_keyboard_panning" />

    </PreferenceCategory>

    <PreferenceCategory
        android:title="@string/preference_category_virtual_mouse">

        <net.kdt.pojavlaunch.prefs.CustomSeekBarPreference
            android:key="mousescale"
            android:summary="@string/mcl_setting_subtitle_mousescale"
            android:title="@string/mcl_setting_title_mousescale"

            app2:selectable="false"
            app2:min="@integer/mouse_scale_seekbar_min"
            android:max="@integer/mouse_scale_seekbar_max"
            app2:seekBarIncrement="@integer/mouse_scale_seekbar_increment"
            app2:showSeekBarValue="true"
            android:icon="@drawable/ic_setting_pointer_scale"
            />

        <net.kdt.pojavlaunch.prefs.CustomSeekBarPreference
            android:key="mousespeed"
            android:summary="@string/mcl_setting_subtitle_mousespeed"
            android:title="@string/mcl_setting_title_mousespeed"
            android:icon="@drawable/ic_setting_mouse_speed"
            app2:selectable="false"
            app2:min="@integer/mouse_speed_seekbar_min"
            android:max="@integer/mouse_speed_seekbar_max"
            app2:seekBarIncrement="@integer/mouse_speed_seekbar_increment"
            app2:showSeekBarValue="true" />
        <SwitchPreference
            android:key="mouse_start"
            android:title="@string/preference_mouse_start_title"
            android:summary="@string/preference_mouse_start_description"
            />
        <SwitchPreference
            android:key="always_grab_mouse"
            android:title="@string/mcl_setting_title_grab_mouse"
            android:summary="@string/mcl_setting_subtitle_grab_mouse"
            android:defaultValue="false"/>
    </PreferenceCategory>

    <PreferenceCategory
        android:key="gyroCategory"
        android:title="@string/preference_category_gyro_controls"
        >
        <SwitchPreference
            android:key="enableGyro"
            android:title="@string/preference_enable_gyro_title"
            android:summary="@string/preference_enable_gyro_description"/>
        <net.kdt.pojavlaunch.prefs.CustomSeekBarPreference
            android:key="gyroSensitivity"
            android:title="@string/preference_gyro_sensitivity_title"
            android:summary="@string/preference_gyro_sensitivity_description"
            app2:selectable="false"
            app2:min="@integer/gyro_speed_seekbar_min"
            android:max="@integer/gyro_speed_seekbar_max"
            app2:seekBarIncrement="@integer/gyro_speed_seekbar_increment"
            app2:showSeekBarValue="true"/>
        <net.kdt.pojavlaunch.prefs.CustomSeekBarPreference
            android:key="gyroSampleRate"
            android:title="@string/preference_gyro_sample_rate_title"
            android:summary="@string/preference_gyro_sample_rate_description"
            app2:min="@integer/gyro_rate_seekbar_min"
            android:max="@integer/gyro_rate_seekbar_max"
            app2:selectable="false"
            app2:showSeekBarValue="true"/>
        <SwitchPreferenceCompat
            android:key="gyroSmoothing"
            android:title="@string/preference_gyro_smoothing_title"
            android:summary="@string/preference_gyro_smoothing_description"
            android:defaultValue="true"
            />
        <SwitchPreference
            android:key="gyroInvertX"
            android:title="@string/preference_gyro_invert_x_axis"
            android:summary="@string/preference_gyro_invert_x_axis_description"/>
        <SwitchPreference
            android:key="gyroInvertY"
            android:title="@string/preference_gyro_invert_y_axis"
            android:summary="@string/preference_gyro_invert_y_axis_description"/>

    </PreferenceCategory>

    <PreferenceCategory
        android:title="@string/preference_category_controller_settings"
        >
        <Preference
            android:title="@string/preference_remap_controller_title"
            android:summary="@string/preference_remap_controller_description"
            android:fragment="net.kdt.pojavlaunch.fragments.GamepadMapperFragment"/>
        <net.kdt.pojavlaunch.prefs.GamepadRemapPreference
            android:title="@string/preference_wipe_controller_title"
            android:summary="@string/preference_wipe_controller_description"
            />
        <net.kdt.pojavlaunch.prefs.CustomSeekBarPreference
            android:key="gamepad_deadzone_scale"
            android:title="@string/preference_deadzone_scale_title"
            android:summary="@string/preference_deadzone_scale_description"
            app2:showSeekBarValue="true"
            app2:min="@integer/gamepad_deadzone_seekbar_min"
            android:max="@integer/gamepad_deadzone_seekbar_max"
            app2:seekBarIncrement="@integer/gamepad_deadzone_seekbar_increment"
            />

    </PreferenceCategory>

    <PreferenceCategory
        android:title="@string/preference_category_touchcontroller_settings">
        <SwitchPreference
            android:key="forceEnableTouchController"
            android:title="@string/preference_force_enable_touchcontroller_title"
            android:summary="@string/preference_force_enable_touchcontroller_description"/>
        <net.kdt.pojavlaunch.prefs.CustomSeekBarPreference
            android:key="touchControllerVibrateLength"
            android:title="@string/preference_touchcontroller_vibrate_length_title"
            android:summary="@string/preference_touchcontroller_vibrate_length_description"
            app2:selectable="false"
            app2:min="@integer/touchcontrller_vibrate_length_min"
            android:max="@integer/touchcontrller_vibrate_length_max"
            app2:showSeekBarValue="true"/>
    </PreferenceCategory>


</PreferenceScreen>