android: Add DPad slide toggle
This commit is contained in:
parent
bebc822334
commit
fcbf08ca98
|
@ -223,6 +223,7 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback {
|
||||||
popup.menuInflater.inflate(R.menu.menu_overlay_options, popup.menu)
|
popup.menuInflater.inflate(R.menu.menu_overlay_options, popup.menu)
|
||||||
|
|
||||||
popup.menu.findItem(R.id.menu_rel_stick_center).isChecked = EmulationMenuSettings.joystickRelCenter
|
popup.menu.findItem(R.id.menu_rel_stick_center).isChecked = EmulationMenuSettings.joystickRelCenter
|
||||||
|
popup.menu.findItem(R.id.menu_dpad_slide).isChecked = EmulationMenuSettings.dpadSlide
|
||||||
|
|
||||||
popup.setOnMenuItemClickListener {
|
popup.setOnMenuItemClickListener {
|
||||||
when (it.itemId) {
|
when (it.itemId) {
|
||||||
|
@ -266,6 +267,11 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback {
|
||||||
EmulationMenuSettings.joystickRelCenter = it.isChecked
|
EmulationMenuSettings.joystickRelCenter = it.isChecked
|
||||||
true
|
true
|
||||||
}
|
}
|
||||||
|
R.id.menu_dpad_slide -> {
|
||||||
|
it.isChecked = !it.isChecked
|
||||||
|
EmulationMenuSettings.dpadSlide = it.isChecked
|
||||||
|
true
|
||||||
|
}
|
||||||
R.id.menu_reset_overlay -> {
|
R.id.menu_reset_overlay -> {
|
||||||
binding.drawerLayout.close()
|
binding.drawerLayout.close()
|
||||||
resetInputOverlay()
|
resetInputOverlay()
|
||||||
|
|
|
@ -127,7 +127,7 @@ class InputOverlay(context: Context, attrs: AttributeSet?) : SurfaceView(context
|
||||||
}
|
}
|
||||||
|
|
||||||
for (dpad in overlayDpads) {
|
for (dpad in overlayDpads) {
|
||||||
if (!dpad.updateStatus(event, EmulationMenuSettings.dpadSlideEnable)) {
|
if (!dpad.updateStatus(event, EmulationMenuSettings.dpadSlide)) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
NativeLibrary.onGamePadButtonEvent(
|
NativeLibrary.onGamePadButtonEvent(
|
||||||
|
|
|
@ -26,7 +26,7 @@ object EmulationMenuSettings {
|
||||||
.putBoolean(Settings.PREF_MENU_SETTINGS_JOYSTICK_REL_CENTER, value)
|
.putBoolean(Settings.PREF_MENU_SETTINGS_JOYSTICK_REL_CENTER, value)
|
||||||
.apply()
|
.apply()
|
||||||
}
|
}
|
||||||
var dpadSlideEnable: Boolean
|
var dpadSlide: Boolean
|
||||||
get() = preferences.getBoolean(Settings.PREF_MENU_SETTINGS_DPAD_SLIDE, true)
|
get() = preferences.getBoolean(Settings.PREF_MENU_SETTINGS_DPAD_SLIDE, true)
|
||||||
set(value) {
|
set(value) {
|
||||||
preferences.edit()
|
preferences.edit()
|
||||||
|
|
|
@ -14,6 +14,11 @@
|
||||||
android:title="@string/emulation_rel_stick_center"
|
android:title="@string/emulation_rel_stick_center"
|
||||||
android:checkable="true" />
|
android:checkable="true" />
|
||||||
|
|
||||||
|
<item
|
||||||
|
android:id="@+id/menu_dpad_slide"
|
||||||
|
android:title="@string/emulation_dpad_slide"
|
||||||
|
android:checkable="true" />
|
||||||
|
|
||||||
<item
|
<item
|
||||||
android:id="@+id/menu_reset_overlay"
|
android:id="@+id/menu_reset_overlay"
|
||||||
android:title="@string/emulation_touch_overlay_reset" />
|
android:title="@string/emulation_touch_overlay_reset" />
|
||||||
|
|
|
@ -88,6 +88,7 @@
|
||||||
<string name="emulation_done">Done</string>
|
<string name="emulation_done">Done</string>
|
||||||
<string name="emulation_toggle_controls">Toggle Controls</string>
|
<string name="emulation_toggle_controls">Toggle Controls</string>
|
||||||
<string name="emulation_rel_stick_center">Relative Stick Center</string>
|
<string name="emulation_rel_stick_center">Relative Stick Center</string>
|
||||||
|
<string name="emulation_dpad_slide">DPad Slide</string>
|
||||||
<string name="emulation_toggle_all">Toggle All</string>
|
<string name="emulation_toggle_all">Toggle All</string>
|
||||||
<string name="emulation_control_scale">Adjust Scale</string>
|
<string name="emulation_control_scale">Adjust Scale</string>
|
||||||
<string name="emulation_touch_overlay_reset">Reset Overlay</string>
|
<string name="emulation_touch_overlay_reset">Reset Overlay</string>
|
||||||
|
|
Reference in New Issue