[Audiosharing] Migrate feature from overlay to Settings
Bug: 340379827 Test: atest Change-Id: I3a88ac1d2f575f3be1f26f617479bbfd25cf6a8e
This commit is contained in:
101
res/xml/bluetooth_audio_streams_dialog.xml
Normal file
101
res/xml/bluetooth_audio_streams_dialog.xml
Normal file
@@ -0,0 +1,101 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
~ Copyright (C) 2024 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.
|
||||
-->
|
||||
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/dialog_bg"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:paddingStart="25dp"
|
||||
android:paddingEnd="25dp"
|
||||
android:orientation="vertical">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="25dp"
|
||||
android:orientation="vertical">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/dialog_icon"
|
||||
android:layout_width="30dp"
|
||||
android:layout_height="30dp"
|
||||
android:layout_marginTop="24dp"
|
||||
android:layout_gravity="center"
|
||||
android:src="@drawable/ic_bt_le_audio_sharing"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/dialog_title"
|
||||
android:textAppearance="@android:style/TextAppearance.DeviceDefault.Headline"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="15dp"
|
||||
android:gravity="center"
|
||||
android:layout_gravity="center"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/dialog_subtitle"
|
||||
android:textAppearance="@android:style/TextAppearance.DeviceDefault.Small"
|
||||
android:textStyle="bold"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="15dp"
|
||||
android:gravity="center"
|
||||
android:layout_gravity="center"
|
||||
android:visibility="gone"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/dialog_subtitle_2"
|
||||
android:textAppearance="@android:style/TextAppearance.DeviceDefault.Small"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="15dp"
|
||||
android:gravity="center"
|
||||
android:layout_gravity="center"
|
||||
android:visibility="gone"/>
|
||||
</LinearLayout>
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="@dimen/broadcast_dialog_margin">
|
||||
<Button
|
||||
android:id="@+id/left_button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
style="@style/BroadcastActionButton"/>
|
||||
<Button
|
||||
android:id="@+id/right_button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:visibility="gone"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
style="@style/BroadcastActionButton"/>
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
</LinearLayout>
|
||||
</FrameLayout>
|
||||
63
res/xml/bluetooth_audio_streams_qr_code.xml
Normal file
63
res/xml/bluetooth_audio_streams_qr_code.xml
Normal file
@@ -0,0 +1,63 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
~ Copyright (C) 2023 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.
|
||||
-->
|
||||
|
||||
<LinearLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:clipToPadding="false"
|
||||
android:paddingLeft="25dp"
|
||||
android:paddingRight="25dp"
|
||||
android:gravity="center_horizontal"
|
||||
android:orientation="vertical">
|
||||
|
||||
<TextView
|
||||
android:id="@android:id/summary"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="start"
|
||||
android:textSize="15sp"
|
||||
android:textColor="?android:attr/textColorPrimary"/>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical"
|
||||
android:paddingTop="70dp">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/qrcode_view"
|
||||
android:layout_width="@dimen/qrcode_size"
|
||||
android:layout_height="@dimen/qrcode_size"
|
||||
android:src="@android:color/transparent"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/password"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textSize="15sp"
|
||||
android:textColor="?android:attr/textColorPrimary"/>
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
81
res/xml/bluetooth_le_audio_sharing.xml
Normal file
81
res/xml/bluetooth_le_audio_sharing.xml
Normal file
@@ -0,0 +1,81 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
~ Copyright (C) 2023 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/audio_sharing_title">
|
||||
|
||||
<com.android.settingslib.widget.TopIntroPreference
|
||||
android:key="audio_sharing_top_intro"
|
||||
android:title="@string/audio_sharing_description"
|
||||
settings:searchable="false" />
|
||||
|
||||
<PreferenceCategory
|
||||
android:key="audio_sharing_device_volume_group"
|
||||
android:title="@string/audio_sharing_device_group_title"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.AudioSharingDeviceVolumeGroupController" />
|
||||
|
||||
<Preference
|
||||
android:icon="@drawable/ic_audio_calls_and_alarms"
|
||||
android:key="calls_and_alarms"
|
||||
android:summary=""
|
||||
android:title="@string/audio_sharing_call_audio_title"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.CallsAndAlarmsPreferenceController" />
|
||||
|
||||
<Preference
|
||||
android:icon="@drawable/ic_audio_play_sample"
|
||||
android:key="audio_sharing_play_sound"
|
||||
android:summary="@string/audio_sharing_test_sound_description"
|
||||
android:title="@string/audio_sharing_test_sound_title"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.AudioSharingPlaySoundPreferenceController" />
|
||||
|
||||
<PreferenceCategory
|
||||
android:key="audio_sharing_stream_settings_category"
|
||||
android:title="@string/audio_sharing_stream_settings_title"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.StreamSettingsCategoryController">
|
||||
|
||||
<com.android.settings.connecteddevice.audiosharing.AudioSharingNamePreference
|
||||
android:key="audio_sharing_stream_name"
|
||||
android:title="@string/audio_sharing_stream_name_title"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.AudioSharingNamePreferenceController" />
|
||||
|
||||
<com.android.settings.connecteddevice.audiosharing.AudioSharingPasswordPreference
|
||||
android:dialogLayout="@layout/audio_sharing_password_dialog"
|
||||
android:key="audio_sharing_stream_password"
|
||||
android:summary="********"
|
||||
android:title="@string/audio_sharing_stream_password_title"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.AudioSharingPasswordPreferenceController" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
android:key="audio_sharing_stream_compatibility"
|
||||
android:title="@string/audio_sharing_stream_compatibility_title"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.AudioSharingCompatibilityPreferenceController" />
|
||||
</PreferenceCategory>
|
||||
|
||||
<PreferenceCategory
|
||||
android:key="audio_streams_settings_category"
|
||||
android:title="@string/audio_streams_category_title"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsCategoryController">
|
||||
|
||||
<Preference
|
||||
android:fragment="com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsDashboardFragment"
|
||||
android:icon="@drawable/ic_chevron_right_24dp"
|
||||
android:key="audio_streams_settings"
|
||||
android:title="@string/audio_streams_pref_title" />
|
||||
|
||||
</PreferenceCategory>
|
||||
</PreferenceScreen>
|
||||
36
res/xml/bluetooth_le_audio_stream_details_fragment.xml
Normal file
36
res/xml/bluetooth_le_audio_stream_details_fragment.xml
Normal file
@@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
~ Copyright (C) 2023 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/audio_streams_detail_page_title">
|
||||
|
||||
<com.android.settingslib.widget.LayoutPreference
|
||||
android:key="audio_stream_header"
|
||||
android:layout="@layout/settings_entity_header"
|
||||
android:selectable="false"
|
||||
settings:allowDividerBelow="true"
|
||||
settings:searchable="false"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamHeaderController" />
|
||||
|
||||
<com.android.settingslib.widget.ActionButtonsPreference
|
||||
android:key="audio_stream_button"
|
||||
settings:allowDividerBelow="true"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamButtonController" />
|
||||
|
||||
</PreferenceScreen>
|
||||
46
res/xml/bluetooth_le_audio_streams.xml
Normal file
46
res/xml/bluetooth_le_audio_streams.xml
Normal file
@@ -0,0 +1,46 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
~ Copyright (C) 2023 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/audio_streams_main_page_title">
|
||||
|
||||
<com.android.settingslib.widget.TopIntroPreference
|
||||
android:key="audio_streams_top_intro"
|
||||
android:title="@string/audio_streams_main_page_subtitle"
|
||||
settings:searchable="false" />
|
||||
|
||||
<Preference
|
||||
android:key="audio_streams_active_device"
|
||||
android:title="@string/audio_streams_main_page_device_title"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsActiveDeviceController" />
|
||||
|
||||
<com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsProgressCategoryPreference
|
||||
android:key="audio_streams_nearby_category"
|
||||
android:title="@string/audio_streams_main_page_scan_section_title"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsProgressCategoryController">
|
||||
<Preference
|
||||
android:icon="@drawable/ic_add_24dp"
|
||||
android:key="audio_streams_scan_qr_code"
|
||||
android:order="0"
|
||||
android:summary="@string/audio_streams_main_page_scan_qr_code_summary"
|
||||
android:title="@string/audio_streams_main_page_scan_qr_code_title"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsScanQrCodeController" />
|
||||
</com.android.settings.connecteddevice.audiosharing.audiostreams.AudioStreamsProgressCategoryPreference>
|
||||
|
||||
</PreferenceScreen>
|
||||
@@ -26,9 +26,23 @@
|
||||
settings:allowDividerBelow="true"
|
||||
settings:controller="com.android.settings.slices.SlicePreferenceController" />
|
||||
|
||||
<PreferenceCategory
|
||||
android:key="audio_sharing_device_list"
|
||||
android:title="@string/audio_sharing_device_group_title"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.AudioSharingDevicePreferenceController">
|
||||
<Preference
|
||||
android:fragment="com.android.settings.connecteddevice.audiosharing.AudioSharingDashboardFragment"
|
||||
android:icon="@drawable/ic_bt_le_audio_sharing"
|
||||
android:key="connected_device_audio_sharing_settings"
|
||||
android:order="100"
|
||||
android:title="@string/audio_sharing_title"
|
||||
settings:searchable="false" />
|
||||
</PreferenceCategory>
|
||||
|
||||
<PreferenceCategory
|
||||
android:key="available_device_list"
|
||||
android:title="@string/connected_device_media_device_title"/>
|
||||
android:title="@string/connected_device_media_device_title"
|
||||
settings:controller="com.android.settings.connecteddevice.AvailableMediaDeviceGroupController" />
|
||||
|
||||
<PreferenceCategory
|
||||
android:key="connected_device_list"
|
||||
|
||||
@@ -26,6 +26,15 @@
|
||||
android:order="-10"
|
||||
android:title="@string/bluetooth_settings_title" />
|
||||
|
||||
<Preference
|
||||
android:fragment="com.android.settings.connecteddevice.audiosharing.AudioSharingDashboardFragment"
|
||||
android:icon="@drawable/ic_bt_le_audio_sharing"
|
||||
android:key="audio_sharing_settings"
|
||||
android:order="-9"
|
||||
android:title="@string/audio_sharing_title"
|
||||
settings:controller="com.android.settings.connecteddevice.audiosharing.AudioSharingPreferenceController"
|
||||
settings:searchable="true" />
|
||||
|
||||
<com.android.settingslib.RestrictedPreference
|
||||
android:fragment="com.android.settings.connecteddevice.NfcAndPaymentFragment"
|
||||
android:icon="@drawable/ic_nfc"
|
||||
|
||||
Reference in New Issue
Block a user