mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-08-13 11:39:09 +00:00
Android: Expand bottom sheets on devices with touch too
In a few places in Dolphin, we're using BottomSheetDialogFragments. These unhelpfully tend to start out in a "collapsed" state when in landscape mode (presumably depending on factors like screen size). The user then has to manually expand them before they can meaningfully interact with them. We've been automatically setting BottomSheetDialogFragments to the expanded state if the device Dolphin is running on doesn't support touch, since with d-pad navigation it's impossible to expand these sheets. But I think we should set them to expanded on devices that support touch too. I haven't encountered a single case where you can do anything useful with any of Dolphin's BottomSheetDialogFragments while they're collapsed, so the user always has to expand sheets manually if they start out collapsed. And just because a device supports touch doesn't necessarily mean you're interacting with it through the touch screen right now - you could be using a gamepad, for instance.
This commit is contained in:
parent
63572f15fc
commit
8ef46ec39b
3 changed files with 7 additions and 13 deletions
|
@ -46,10 +46,8 @@ class ProfileDialog : BottomSheetDialogFragment() {
|
|||
binding.profileList.addItemDecoration(divider)
|
||||
|
||||
// You can't expand a bottom sheet with a controller/remote/other non-touch devices
|
||||
val behavior: BottomSheetBehavior<View> = BottomSheetBehavior.from(view.parent as View)
|
||||
if (!resources.getBoolean(R.bool.hasTouch)) {
|
||||
behavior.state = BottomSheetBehavior.STATE_EXPANDED
|
||||
}
|
||||
BottomSheetBehavior.from<View>(view.parent as View).state =
|
||||
BottomSheetBehavior.STATE_EXPANDED
|
||||
}
|
||||
|
||||
override fun onDestroyView() {
|
||||
|
|
|
@ -38,10 +38,8 @@ class AboutDialogFragment : BottomSheetDialogFragment() {
|
|||
}
|
||||
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
if (!resources.getBoolean(R.bool.hasTouch)) {
|
||||
BottomSheetBehavior.from<View>(view.parent as View).state =
|
||||
BottomSheetBehavior.STATE_EXPANDED
|
||||
}
|
||||
BottomSheetBehavior.from<View>(view.parent as View).state =
|
||||
BottomSheetBehavior.STATE_EXPANDED
|
||||
|
||||
val wark = resources.getString(R.string.wark)
|
||||
val branch = String.format(
|
||||
|
|
|
@ -44,11 +44,9 @@ class GridOptionDialogFragment : BottomSheetDialogFragment() {
|
|||
}
|
||||
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
// Pins fragment to the top of the dialog ensures the dialog is expanded in landscape by default
|
||||
if (!resources.getBoolean(R.bool.hasTouch)) {
|
||||
BottomSheetBehavior.from<View>(view.parent as View).state =
|
||||
BottomSheetBehavior.STATE_EXPANDED
|
||||
}
|
||||
// Ensure the dialog is expanded in landscape by default
|
||||
BottomSheetBehavior.from<View>(view.parent as View).state =
|
||||
BottomSheetBehavior.STATE_EXPANDED
|
||||
|
||||
if (activity is AppCompatActivity) {
|
||||
setUpCoverButtons()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue