aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backends/events/psp2sdl/psp2sdl-events.cpp10
-rw-r--r--backends/platform/sdl/psp2/psp2.cpp5
2 files changed, 10 insertions, 5 deletions
diff --git a/backends/events/psp2sdl/psp2sdl-events.cpp b/backends/events/psp2sdl/psp2sdl-events.cpp
index 773096f92c..0b7f741615 100644
--- a/backends/events/psp2sdl/psp2sdl-events.cpp
+++ b/backends/events/psp2sdl/psp2sdl-events.cpp
@@ -89,7 +89,7 @@ void PSP2EventSource::preprocessFingerDown(SDL_Event *event) {
int x = _km.x / MULTIPLIER;
int y = _km.y / MULTIPLIER;
- if (port == 0) {
+ if (port == 0 && !ConfMan.getBool("frontpanel_touchpad_mode")) {
convertTouchXYToGameXY(event->tfinger.x, event->tfinger.y, &x, &y);
}
@@ -136,7 +136,7 @@ void PSP2EventSource::preprocessFingerUp(SDL_Event *event) {
simulatedButton = SDL_BUTTON_RIGHT;
} else if (numFingersDown == 1) {
simulatedButton = SDL_BUTTON_LEFT;
- if (port == 0) {
+ if (port == 0 && !ConfMan.getBool("frontpanel_touchpad_mode")) {
convertTouchXYToGameXY(event->tfinger.x, event->tfinger.y, &x, &y);
}
}
@@ -156,7 +156,7 @@ void PSP2EventSource::preprocessFingerUp(SDL_Event *event) {
}
} else if (numFingersDown == 1) {
// when dragging, and the last finger is lifted, the drag is over
- if (port == 0) {
+ if (port == 0 && !ConfMan.getBool("frontpanel_touchpad_mode")) {
convertTouchXYToGameXY(event->tfinger.x, event->tfinger.y, &x, &y);
}
event->type = SDL_MOUSEBUTTONUP;
@@ -187,7 +187,7 @@ void PSP2EventSource::preprocessFingerMotion(SDL_Event *event) {
int x = _km.x / MULTIPLIER;
int y = _km.y / MULTIPLIER;
- if (port == 0) {
+ if (port == 0 && !ConfMan.getBool("frontpanel_touchpad_mode")) {
convertTouchXYToGameXY(event->tfinger.x, event->tfinger.y, &x, &y);
} else {
// for relative mode, use the pointer speed setting
@@ -274,7 +274,7 @@ void PSP2EventSource::preprocessFingerMotion(SDL_Event *event) {
// or location of "oldest" finger (front)
int mouseDownX = x;
int mouseDownY = y;
- if (port == 0) {
+ if (port == 0 && !ConfMan.getBool("frontpanel_touchpad_mode")) {
for (int i = 0; i < MAX_NUM_FINGERS; i++) {
if (_finger[port][i].id == id) {
for (int j = 0; j < MAX_NUM_FINGERS; j++) {
diff --git a/backends/platform/sdl/psp2/psp2.cpp b/backends/platform/sdl/psp2/psp2.cpp
index 29be31f267..3034b6d886 100644
--- a/backends/platform/sdl/psp2/psp2.cpp
+++ b/backends/platform/sdl/psp2/psp2.cpp
@@ -81,6 +81,7 @@ void OSystem_PSP2::initBackend() {
ConfMan.registerDefault("joystick_deadzone", 2);
ConfMan.registerDefault("shader", 0);
ConfMan.registerDefault("touchpad_mouse_mode", false);
+ ConfMan.registerDefault("frontpanel_touchpad_mode", false);
if (!ConfMan.hasKey("fullscreen")) {
ConfMan.setBool("fullscreen", true);
@@ -100,6 +101,10 @@ void OSystem_PSP2::initBackend() {
if (!ConfMan.hasKey("touchpad_mouse_mode")) {
ConfMan.setBool("touchpad_mouse_mode", false);
}
+ if (!ConfMan.hasKey("frontpanel_touchpad_mode")) {
+ ConfMan.setBool("frontpanel_touchpad_mode", false);
+ }
+
// Create the savefile manager
if (_savefileManager == 0)