<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2017 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:title="@string/sound_settings"
    android:key="sound_settings"
    settings:keywords="@string/keywords_sounds">

    <!-- Remote volume group -->
    <PreferenceCategory
        android:key="remote_media_group"
        android:title=""
        android:order="-185"
        settings:allowDividerBelow="true"
        settings:controller="com.android.settings.notification.RemoteVolumeGroupController">
    </PreferenceCategory>

    <!-- Media volume -->
    <com.android.settings.notification.VolumeSeekBarPreference
        android:key="media_volume"
        android:icon="@drawable/ic_media_stream"
        android:title="@string/media_volume_option_title"
        android:order="-180"
        settings:userRestriction="no_adjust_volume"
        settings:controller="com.android.settings.notification.MediaVolumePreferenceController"/>

    <!-- Media output switcher -->
    <Preference
        android:key="media_output"
        android:title="@string/media_output_title"
        android:dialogTitle="@string/media_output_title"
        android:order="-175"
        settings:searchable="false"
        settings:controller="com.android.settings.sound.MediaOutputPreferenceController"/>

    <!-- Call volume -->
    <com.android.settings.notification.VolumeSeekBarPreference
        android:key="call_volume"
        android:icon="@drawable/ic_local_phone_24_lib"
        android:title="@string/call_volume_option_title"
        android:order="-170"
        settings:userRestriction="no_adjust_volume"
        settings:controller="com.android.settings.notification.CallVolumePreferenceController"/>

    <!-- Hands free profile output switcher -->
    <ListPreference
        android:key="take_call_on_output"
        android:title="@string/take_call_on_title"
        android:dialogTitle="@string/take_call_on_title"
        android:order="-165"
        settings:searchable="false"
        settings:controller="com.android.settings.sound.HandsFreeProfileOutputPreferenceController"/>

    <!-- Separate Ring volume -->
    <com.android.settings.notification.VolumeSeekBarPreference
        android:key="separate_ring_volume"
        android:icon="@drawable/ic_ring_volume"
        android:title="@string/separate_ring_volume_option_title"
        android:order="-155"
        settings:userRestriction="no_adjust_volume"
        settings:controller="com.android.settings.notification.SeparateRingVolumePreferenceController"/>

    <!-- Notification volume -->
    <com.android.settings.notification.VolumeSeekBarPreference
        android:key="notification_volume"
        android:icon="@drawable/ic_notifications"
        android:title="@string/notification_volume_option_title"
        android:order="-150"
        settings:userRestriction="no_adjust_volume"
        settings:controller="com.android.settings.notification.NotificationVolumePreferenceController"
        settings:unavailableSliceSubtitle="@string/notification_volume_disabled_summary"/>

    <!-- Alarm volume -->
    <com.android.settings.notification.VolumeSeekBarPreference
        android:key="alarm_volume"
        android:icon="@*android:drawable/ic_audio_alarm"
        android:title="@string/alarm_volume_option_title"
        android:order="-140"
        settings:userRestriction="no_adjust_volume"
        settings:controller="com.android.settings.notification.AlarmVolumePreferenceController"/>

    <!-- TODO(b/174964721): make this a PrimarySwitchPreference -->
    <!-- Interruptions -->
    <com.android.settingslib.RestrictedPreference
        android:key="zen_mode"
        android:title="@string/zen_mode_settings_title"
        android:fragment="com.android.settings.notification.zen.ZenModeSettings"
        android:order="-130"
        settings:useAdminDisabledSummary="true"
        settings:keywords="@string/keywords_sounds_and_notifications_interruptions"
        settings:controller="com.android.settings.notification.zen.ZenModePreferenceController"/>

    <!-- Phone ringtone -->
    <com.android.settings.DefaultRingtonePreference
        android:key="phone_ringtone"
        android:title="@string/ringtone_title"
        android:dialogTitle="@string/ringtone_title"
        android:summary="@string/summary_placeholder"
        android:ringtoneType="ringtone"
        android:order="-120"
        settings:keywords="@string/sound_settings"/>

    <!-- Live Caption -110 and Now Playing -105-->

    <!-- Spatial audio -->
    <Preference
        android:key="spatial_audio_summary"
        android:title="@string/spatial_audio_title"
        android:fragment="com.android.settings.notification.SpatialAudioSettings"
        android:order="-107"
        settings:controller="com.android.settings.notification.SpatialAudioParentPreferenceController"/>

    <Preference
        android:key="media_controls_summary"
        android:title="@string/media_controls_title"
        android:fragment="com.android.settings.sound.MediaControlsSettings"
        android:order="-100"
        settings:controller="com.android.settings.sound.MediaControlsParentPreferenceController"
        settings:keywords="@string/keywords_media_controls"/>

    <!-- Also vibration -->
    <Preference
        android:fragment="com.android.settings.accessibility.VibrationSettings"
        android:key="vibration_and_haptics"
        android:title="@string/accessibility_vibration_settings_title"
        android:order="-90"
        settings:controller="com.android.settings.accessibility.VibrationPreferenceController"
        settings:keywords="@string/keywords_vibration"/>

    <com.android.settingslib.PrimarySwitchPreference
        android:key="gesture_prevent_ringing_sound"
        android:title="@string/gesture_prevent_ringing_sound_title"
        android:order="-80"
        android:fragment="com.android.settings.gestures.PreventRingingGestureSettings"
        settings:controller="com.android.settings.gestures.PreventRingingParentPreferenceController"/>

    <!-- Default notification ringtone -->
    <com.android.settings.DefaultRingtonePreference
        android:key="notification_ringtone"
        android:title="@string/notification_ringtone_title"
        android:dialogTitle="@string/notification_ringtone_title"
        android:summary="@string/summary_placeholder"
        android:ringtoneType="notification"
        android:order="-70"/>

    <!-- Default alarm ringtone -->
    <com.android.settings.DefaultRingtonePreference
        android:key="alarm_ringtone"
        android:title="@string/alarm_ringtone_title"
        android:dialogTitle="@string/alarm_ringtone_title"
        android:summary="@string/summary_placeholder"
        android:persistent="false"
        android:ringtoneType="alarm"
        android:order="-60"/>

    <!-- Dial pad tones -->
    <SwitchPreferenceCompat
        android:key="dial_pad_tones"
        android:title="@string/dial_pad_tones_title"
        android:order="-50"/>

    <!-- Screen locking sounds -->
    <SwitchPreferenceCompat
        android:key="screen_locking_sounds"
        android:title="@string/screen_locking_sounds_title"
        android:order="-45"/>

    <!-- Charging sounds -->
    <SwitchPreferenceCompat
        android:key="charging_sounds"
        android:title="@string/charging_sounds_title"
        android:order="-40"/>

    <!-- Docking sounds -->
    <SwitchPreferenceCompat
        android:key="docking_sounds"
        android:title="@string/docking_sounds_title"
        android:order="-35"/>

    <!-- Touch sounds -->
    <SwitchPreferenceCompat
        android:key="touch_sounds"
        android:title="@string/touch_sounds_title"
        android:order="-30"/>

    <!-- Show vibrate icon in status bar -->
    <SwitchPreferenceCompat
        android:key="vibrate_icon"
        android:title="@string/vibrate_icon_title"
        android:order="-27"/>

    <!-- Dock speaker plays -->
    <DropDownPreference
        android:key="dock_audio_media"
        android:title="@string/dock_audio_media_title"
        android:summary="%s"
        android:order="-20"/>

    <!-- Boot sounds -->
    <SwitchPreferenceCompat
        android:key="boot_sounds"
        android:title="@string/boot_sounds_title"
        android:order="-15"/>

    <!-- Emergency tone -->
    <DropDownPreference
        android:key="emergency_tone"
        android:title="@string/emergency_tone_title"
        android:summary="%s"
        android:order="-10"/>

    <Preference
        android:key="sound_work_settings"
        android:title="@string/sound_work_settings"
        android:fragment="com.android.settings.notification.SoundWorkSettings"
        android:order="100"
        settings:controller="com.android.settings.notification.WorkSoundsPreferenceController"/>
</PreferenceScreen>
