Loading packages/SystemUI/res/layout/bluetooth_device_item.xml +2 −1 Original line number Diff line number Diff line Loading @@ -21,7 +21,7 @@ style="@style/BluetoothTileDialog.Device" android:layout_width="match_parent" android:layout_height="@dimen/bluetooth_dialog_device_height" android:paddingEnd="24dp" android:paddingEnd="0dp" android:paddingStart="20dp" android:layout_marginBottom="4dp"> Loading Loading @@ -86,6 +86,7 @@ android:id="@+id/gear_icon_image" android:layout_width="0dp" android:layout_height="24dp" android:paddingEnd="24dp" android:src="@drawable/ic_settings_24dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" Loading packages/SystemUI/res/layout/bluetooth_tile_dialog.xml +24 −0 Original line number Diff line number Diff line Loading @@ -120,6 +120,16 @@ android:visibility="gone" app:constraint_referenced_ids="ic_arrow,see_all_text" /> <View android:id="@+id/see_all_clickable_row" android:layout_width="0dp" android:layout_height="0dp" android:contentDescription="@string/accessibility_bluetooth_device_settings_see_all" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@+id/device_list" app:layout_constraintBottom_toTopOf="@+id/pair_new_device_text" /> <ImageView android:id="@+id/ic_arrow" android:layout_marginStart="36dp" Loading @@ -141,6 +151,8 @@ android:maxLines="1" android:ellipsize="end" android:gravity="center_vertical" android:importantForAccessibility="no" android:clickable="false" android:layout_marginStart="0dp" android:paddingStart="20dp" android:text="@string/see_all_bluetooth_devices" Loading @@ -158,6 +170,16 @@ android:visibility="gone" app:constraint_referenced_ids="ic_add,pair_new_device_text" /> <View android:id="@+id/pair_new_device_clickable_row" android:layout_width="0dp" android:layout_height="0dp" android:contentDescription="@string/accessibility_bluetooth_device_settings_pair_new_device" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@+id/see_all_text" app:layout_constraintBottom_toTopOf="@+id/done_button" /> <ImageView android:id="@+id/ic_add" android:layout_width="24dp" Loading @@ -180,6 +202,8 @@ android:maxLines="1" android:ellipsize="end" android:gravity="center_vertical" android:importantForAccessibility="no" android:clickable="false" android:layout_marginStart="0dp" android:paddingStart="20dp" android:text="@string/pair_new_bluetooth_devices" Loading packages/SystemUI/res/values/strings.xml +8 −0 Original line number Diff line number Diff line Loading @@ -467,6 +467,10 @@ <!-- Content description of the bluetooth device settings gear icon. [CHAR LIMIT=NONE] --> <string name="accessibility_bluetooth_device_settings_gear">Click to configure device detail</string> <!-- Content description of the bluetooth device settings see all. [CHAR LIMIT=NONE] --> <string name="accessibility_bluetooth_device_settings_see_all">Click to see all devices</string> <!-- Content description of the bluetooth device settings pair new device. [CHAR LIMIT=NONE] --> <string name="accessibility_bluetooth_device_settings_pair_new_device">Click to pair new device</string> <!-- Content description of the battery when battery state is unknown for accessibility (not shown on the screen). [CHAR LIMIT=NONE] --> <string name="accessibility_battery_unknown">Battery percentage unknown.</string> Loading Loading @@ -640,6 +644,10 @@ <string name="quick_settings_bluetooth_device_connected">Connected</string> <!-- QuickSettings: Bluetooth dialog device saved default summary [CHAR LIMIT=NONE]--> <string name="quick_settings_bluetooth_device_saved">Saved</string> <!-- QuickSettings: Accessibility label to disconnect a device [CHAR LIMIT=NONE]--> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect">disconnect</string> <!-- QuickSettings: Accessibility label to activate a device [CHAR LIMIT=NONE]--> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate">activate</string> <!-- QuickSettings: Bluetooth secondary label for the battery level of a connected device [CHAR LIMIT=20]--> <string name="quick_settings_bluetooth_secondary_label_battery_level"><xliff:g id="battery_level_as_percentage">%s</xliff:g> battery</string> Loading packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/bluetooth/BluetoothTileDialog.kt +26 −7 Original line number Diff line number Diff line Loading @@ -20,9 +20,12 @@ import android.content.Context import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.View.AccessibilityDelegate import android.view.View.GONE import android.view.View.VISIBLE import android.view.ViewGroup import android.view.accessibility.AccessibilityNodeInfo import android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction import android.widget.ImageView import android.widget.Switch import android.widget.TextView Loading Loading @@ -80,8 +83,8 @@ constructor( private lateinit var doneButton: View private lateinit var seeAllViewGroup: View private lateinit var pairNewDeviceViewGroup: View private lateinit var seeAllText: View private lateinit var pairNewDeviceText: View private lateinit var seeAllRow: View private lateinit var pairNewDeviceRow: View private lateinit var deviceListView: RecyclerView override fun onCreate(savedInstanceState: Bundle?) { Loading @@ -98,8 +101,8 @@ constructor( doneButton = requireViewById(R.id.done_button) seeAllViewGroup = requireViewById(R.id.see_all_layout_group) pairNewDeviceViewGroup = requireViewById(R.id.pair_new_device_layout_group) seeAllText = requireViewById(R.id.see_all_text) pairNewDeviceText = requireViewById(R.id.pair_new_device_text) seeAllRow = requireViewById(R.id.see_all_clickable_row) pairNewDeviceRow = requireViewById(R.id.pair_new_device_clickable_row) deviceListView = requireViewById<RecyclerView>(R.id.device_list) setupToggle() Loading @@ -107,8 +110,8 @@ constructor( subtitleTextView.text = context.getString(subtitleResIdInitialValue) doneButton.setOnClickListener { dismiss() } seeAllText.setOnClickListener { bluetoothTileDialogCallback.onSeeAllClicked(it) } pairNewDeviceText.setOnClickListener { seeAllRow.setOnClickListener { bluetoothTileDialogCallback.onSeeAllClicked(it) } pairNewDeviceRow.setOnClickListener { bluetoothTileDialogCallback.onPairNewDeviceClicked(it) } } Loading Loading @@ -194,7 +197,8 @@ constructor( deviceItem1.iconWithDescription?.second == deviceItem2.iconWithDescription?.second && deviceItem1.background == deviceItem2.background && deviceItem1.isEnabled == deviceItem2.isEnabled deviceItem1.isEnabled == deviceItem2.isEnabled && deviceItem1.actionAccessibilityLabel == deviceItem2.actionAccessibilityLabel } } Loading Loading @@ -238,6 +242,21 @@ constructor( mutableDeviceItemClick.tryEmit(item) uiEventLogger.log(BluetoothTileDialogUiEvent.DEVICE_CLICKED) } accessibilityDelegate = object : AccessibilityDelegate() { override fun onInitializeAccessibilityNodeInfo( host: View, info: AccessibilityNodeInfo ) { super.onInitializeAccessibilityNodeInfo(host, info) info.addAction( AccessibilityAction( AccessibilityAction.ACTION_CLICK.id, item.actionAccessibilityLabel ) ) } } } nameView.text = item.deviceName summaryView.text = item.connectionSummary Loading packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/bluetooth/DeviceItem.kt +2 −1 Original line number Diff line number Diff line Loading @@ -49,5 +49,6 @@ data class DeviceItem( val connectionSummary: String = "", val iconWithDescription: Pair<Drawable, String>? = null, val background: Int? = null, var isEnabled: Boolean = true var isEnabled: Boolean = true, var actionAccessibilityLabel: String = "", ) Loading
packages/SystemUI/res/layout/bluetooth_device_item.xml +2 −1 Original line number Diff line number Diff line Loading @@ -21,7 +21,7 @@ style="@style/BluetoothTileDialog.Device" android:layout_width="match_parent" android:layout_height="@dimen/bluetooth_dialog_device_height" android:paddingEnd="24dp" android:paddingEnd="0dp" android:paddingStart="20dp" android:layout_marginBottom="4dp"> Loading Loading @@ -86,6 +86,7 @@ android:id="@+id/gear_icon_image" android:layout_width="0dp" android:layout_height="24dp" android:paddingEnd="24dp" android:src="@drawable/ic_settings_24dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" Loading
packages/SystemUI/res/layout/bluetooth_tile_dialog.xml +24 −0 Original line number Diff line number Diff line Loading @@ -120,6 +120,16 @@ android:visibility="gone" app:constraint_referenced_ids="ic_arrow,see_all_text" /> <View android:id="@+id/see_all_clickable_row" android:layout_width="0dp" android:layout_height="0dp" android:contentDescription="@string/accessibility_bluetooth_device_settings_see_all" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@+id/device_list" app:layout_constraintBottom_toTopOf="@+id/pair_new_device_text" /> <ImageView android:id="@+id/ic_arrow" android:layout_marginStart="36dp" Loading @@ -141,6 +151,8 @@ android:maxLines="1" android:ellipsize="end" android:gravity="center_vertical" android:importantForAccessibility="no" android:clickable="false" android:layout_marginStart="0dp" android:paddingStart="20dp" android:text="@string/see_all_bluetooth_devices" Loading @@ -158,6 +170,16 @@ android:visibility="gone" app:constraint_referenced_ids="ic_add,pair_new_device_text" /> <View android:id="@+id/pair_new_device_clickable_row" android:layout_width="0dp" android:layout_height="0dp" android:contentDescription="@string/accessibility_bluetooth_device_settings_pair_new_device" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@+id/see_all_text" app:layout_constraintBottom_toTopOf="@+id/done_button" /> <ImageView android:id="@+id/ic_add" android:layout_width="24dp" Loading @@ -180,6 +202,8 @@ android:maxLines="1" android:ellipsize="end" android:gravity="center_vertical" android:importantForAccessibility="no" android:clickable="false" android:layout_marginStart="0dp" android:paddingStart="20dp" android:text="@string/pair_new_bluetooth_devices" Loading
packages/SystemUI/res/values/strings.xml +8 −0 Original line number Diff line number Diff line Loading @@ -467,6 +467,10 @@ <!-- Content description of the bluetooth device settings gear icon. [CHAR LIMIT=NONE] --> <string name="accessibility_bluetooth_device_settings_gear">Click to configure device detail</string> <!-- Content description of the bluetooth device settings see all. [CHAR LIMIT=NONE] --> <string name="accessibility_bluetooth_device_settings_see_all">Click to see all devices</string> <!-- Content description of the bluetooth device settings pair new device. [CHAR LIMIT=NONE] --> <string name="accessibility_bluetooth_device_settings_pair_new_device">Click to pair new device</string> <!-- Content description of the battery when battery state is unknown for accessibility (not shown on the screen). [CHAR LIMIT=NONE] --> <string name="accessibility_battery_unknown">Battery percentage unknown.</string> Loading Loading @@ -640,6 +644,10 @@ <string name="quick_settings_bluetooth_device_connected">Connected</string> <!-- QuickSettings: Bluetooth dialog device saved default summary [CHAR LIMIT=NONE]--> <string name="quick_settings_bluetooth_device_saved">Saved</string> <!-- QuickSettings: Accessibility label to disconnect a device [CHAR LIMIT=NONE]--> <string name="accessibility_quick_settings_bluetooth_device_tap_to_disconnect">disconnect</string> <!-- QuickSettings: Accessibility label to activate a device [CHAR LIMIT=NONE]--> <string name="accessibility_quick_settings_bluetooth_device_tap_to_activate">activate</string> <!-- QuickSettings: Bluetooth secondary label for the battery level of a connected device [CHAR LIMIT=20]--> <string name="quick_settings_bluetooth_secondary_label_battery_level"><xliff:g id="battery_level_as_percentage">%s</xliff:g> battery</string> Loading
packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/bluetooth/BluetoothTileDialog.kt +26 −7 Original line number Diff line number Diff line Loading @@ -20,9 +20,12 @@ import android.content.Context import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.View.AccessibilityDelegate import android.view.View.GONE import android.view.View.VISIBLE import android.view.ViewGroup import android.view.accessibility.AccessibilityNodeInfo import android.view.accessibility.AccessibilityNodeInfo.AccessibilityAction import android.widget.ImageView import android.widget.Switch import android.widget.TextView Loading Loading @@ -80,8 +83,8 @@ constructor( private lateinit var doneButton: View private lateinit var seeAllViewGroup: View private lateinit var pairNewDeviceViewGroup: View private lateinit var seeAllText: View private lateinit var pairNewDeviceText: View private lateinit var seeAllRow: View private lateinit var pairNewDeviceRow: View private lateinit var deviceListView: RecyclerView override fun onCreate(savedInstanceState: Bundle?) { Loading @@ -98,8 +101,8 @@ constructor( doneButton = requireViewById(R.id.done_button) seeAllViewGroup = requireViewById(R.id.see_all_layout_group) pairNewDeviceViewGroup = requireViewById(R.id.pair_new_device_layout_group) seeAllText = requireViewById(R.id.see_all_text) pairNewDeviceText = requireViewById(R.id.pair_new_device_text) seeAllRow = requireViewById(R.id.see_all_clickable_row) pairNewDeviceRow = requireViewById(R.id.pair_new_device_clickable_row) deviceListView = requireViewById<RecyclerView>(R.id.device_list) setupToggle() Loading @@ -107,8 +110,8 @@ constructor( subtitleTextView.text = context.getString(subtitleResIdInitialValue) doneButton.setOnClickListener { dismiss() } seeAllText.setOnClickListener { bluetoothTileDialogCallback.onSeeAllClicked(it) } pairNewDeviceText.setOnClickListener { seeAllRow.setOnClickListener { bluetoothTileDialogCallback.onSeeAllClicked(it) } pairNewDeviceRow.setOnClickListener { bluetoothTileDialogCallback.onPairNewDeviceClicked(it) } } Loading Loading @@ -194,7 +197,8 @@ constructor( deviceItem1.iconWithDescription?.second == deviceItem2.iconWithDescription?.second && deviceItem1.background == deviceItem2.background && deviceItem1.isEnabled == deviceItem2.isEnabled deviceItem1.isEnabled == deviceItem2.isEnabled && deviceItem1.actionAccessibilityLabel == deviceItem2.actionAccessibilityLabel } } Loading Loading @@ -238,6 +242,21 @@ constructor( mutableDeviceItemClick.tryEmit(item) uiEventLogger.log(BluetoothTileDialogUiEvent.DEVICE_CLICKED) } accessibilityDelegate = object : AccessibilityDelegate() { override fun onInitializeAccessibilityNodeInfo( host: View, info: AccessibilityNodeInfo ) { super.onInitializeAccessibilityNodeInfo(host, info) info.addAction( AccessibilityAction( AccessibilityAction.ACTION_CLICK.id, item.actionAccessibilityLabel ) ) } } } nameView.text = item.deviceName summaryView.text = item.connectionSummary Loading
packages/SystemUI/src/com/android/systemui/qs/tiles/dialog/bluetooth/DeviceItem.kt +2 −1 Original line number Diff line number Diff line Loading @@ -49,5 +49,6 @@ data class DeviceItem( val connectionSummary: String = "", val iconWithDescription: Pair<Drawable, String>? = null, val background: Int? = null, var isEnabled: Boolean = true var isEnabled: Boolean = true, var actionAccessibilityLabel: String = "", )