diff --git a/backends/events/webossdl/webossdl-events.cpp b/backends/events/webossdl/webossdl-events.cpp deleted file mode 100644 index ad94891c6a0..00000000000 --- a/backends/events/webossdl/webossdl-events.cpp +++ /dev/null @@ -1,434 +0,0 @@ -/* ScummVM - Graphic Adventure Engine - * - * ScummVM is the legal property of its developers, whose names - * are too numerous to list here. Please refer to the COPYRIGHT - * file distributed with this source distribution. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - */ - -#ifdef WEBOS - -#include "common/scummsys.h" -#include "common/system.h" -#include "common/str.h" -#include "common/translation.h" - -#include "backends/events/webossdl/webossdl-events.h" -#include "gui/message.h" -#include "engines/engine.h" - -// PDL.h provided by the official Palm WebOS PDK. -#include - -/** - * WebOS devices only have a Shift key and a CTRL key. There is also an Alt - * key (the orange key) but this is already processed by WebOS to change the - * mode of the keys so ScummVM must not use this key as a modifier. Instead - * pressing down the gesture area is used as Alt key. - * - * @param mod The pressed key modifier as detected by SDL. - * @param event The ScummVM event to setup. - */ -void WebOSSdlEventSource::SDLModToOSystemKeyFlags(SDL_Keymod mod, - Common::Event &event) { - event.kbd.flags = 0; - - if (mod & KMOD_SHIFT) - event.kbd.flags |= Common::KBD_SHIFT; - if (mod & KMOD_CTRL) - event.kbd.flags |= Common::KBD_CTRL; - - // Holding down the gesture area emulates the ALT key - if (_gestureDown) - event.kbd.flags |= Common::KBD_ALT; -} - -/** - * Before calling the original SDL implementation this method checks if the - * gesture area is pressed down. - * - * @param ev The SDL event - * @param event The ScummVM event. - * @return True if event was processed, false if not. - */ -bool WebOSSdlEventSource::handleKeyDown(SDL_Event &ev, Common::Event &event) { - // Handle gesture area tap. - if (ev.key.keysym.sym == SDLK_WORLD_71) { - _gestureDown = true; - return true; - } - - // Ensure that ALT key (Gesture down) is ignored when back or forward - // gesture is detected. This is needed for WebOS 1 which releases the - // gesture tap AFTER the backward gesture event and not BEFORE (Like - // WebOS 2). - if (ev.key.keysym.sym == 27 || ev.key.keysym.sym == 229) { - _gestureDown = false; - } - - // handle virtual keyboard dismiss key - if (ev.key.keysym.sym == 24) { - int gblPDKVersion = PDL_GetPDKVersion(); - // check for correct PDK Version, as this determines whether an - // OS-supplied virtual keyboard is available on this device. - if (gblPDKVersion >= 300) { - PDL_SetKeyboardState(PDL_FALSE); - return true; - } - } - - // Call original SDL key handler. - return SdlEventSource::handleKeyDown(ev, event); -} - -/** - * Before calling the original SDL implementation this method checks if the - * gesture area has been released. - * - * @param ev The SDL event - * @param event The ScummVM event. - * @return True if event was processed, false if not. - */ -bool WebOSSdlEventSource::handleKeyUp(SDL_Event &ev, Common::Event &event) { - // Handle gesture area tap. - if (ev.key.keysym.sym == SDLK_WORLD_71) { - _gestureDown = false; - return true; - } - - // handle virtual keyboard dismiss key - if (ev.key.keysym.sym == 24) { - int gblPDKVersion = PDL_GetPDKVersion(); - // check for correct PDK Version, as this determines whether an - // OS-supplied virtual keyboard is available on this device. - if (gblPDKVersion >= 300) { - PDL_SetKeyboardState(PDL_FALSE); - return true; - } - } - - // Call original SDL key handler. - return SdlEventSource::handleKeyUp(ev, event); -} - -/** - * Handles mouse button press. - * - * @param ev The SDL event - * @param event The ScummVM event. - * @return True if event was processed, false if not. - */ -bool WebOSSdlEventSource::handleMouseButtonDown(SDL_Event &ev, - Common::Event &event) { - _dragDiffX[ev.button.which] = 0; - _dragDiffY[ev.button.which] = 0; - _fingerDown[ev.button.which] = true; - _screenDownTime[ev.button.which] = g_system->getMillis(); - - if (ev.button.which == 0) { - // Do a click when the finger lifts unless we leave the range - _doClick = true; - // Queue up dragging if auto-drag mode is on - if (_autoDragMode) - _queuedDragTime = g_system->getMillis() + QUEUED_DRAG_DELAY; - // Turn drag mode on instantly for a double-tap - else if (g_system->getMillis() - _dragStartTime < DOUBLETAP_LIMIT) { - _dragging = true; - event.type = Common::EVENT_LBUTTONDOWN; - processMouseEvent(event, _curX, _curY); - } - // If we're not in trackpad mode, move the cursor to the tap - if (!_trackpadMode) { - _curX = MIN(_screenX, MAX(0, 0 + ev.motion.x)); - _curY = MIN(_screenY, MAX(0, 0 + ev.motion.y)); - // If we're already clicking, hold it until after the move. - if (event.type == Common::EVENT_LBUTTONDOWN) { - processMouseEvent(event, _curX, _curY); - g_system->getEventManager()->pushEvent(event); - } - // Move the mouse - event.type = Common::EVENT_MOUSEMOVE; - processMouseEvent(event, _curX, _curY); - } - // Watch for a double-tap-triggered drag - _dragStartTime = g_system->getMillis(); - } else if (ev.button.which == 1) { - // Kill any queued drag event if a second finger goes down - if (_queuedDragTime > 0) - _queuedDragTime = 0; - _doClick = false; - } - return true; -} - -/** - * Handles mouse button release. - * - * @param ev The SDL event - * @param event The ScummVM event. - * @return True if event was processed, false if not. - */ -bool WebOSSdlEventSource::handleMouseButtonUp(SDL_Event &ev, - Common::Event &event) { - // Only react if the finger hasn't been virtually lifted already - if (_fingerDown[ev.button.which]) { - // No matter what, if it's the first finger that's lifted when - // we're dragging, just lift the mouse button. - if (ev.button.which == 0 && _dragging) { - event.type = Common::EVENT_LBUTTONUP; - processMouseEvent(event, _curX, _curY); - _dragging = false; - } else { - // If it was the first finger and the click hasn't been - // canceled, it's a click. - if (ev.button.which == 0 && _doClick && - !_fingerDown[1] && !_fingerDown[2]) { - event.type = Common::EVENT_LBUTTONUP; - processMouseEvent(event, _curX, _curY); - g_system->getEventManager()->pushEvent(event); - event.type = Common::EVENT_LBUTTONDOWN; - if (_queuedDragTime > 0) - _queuedDragTime = 0; - } else if (ev.button.which == 1 && - _fingerDown[0] && _fingerDown[1] && !_fingerDown[2]) { - // If the first finger's down and the second taps, it's a - // right mouse click. - event.type = Common::EVENT_RBUTTONDOWN; - processMouseEvent(event, _curX, _curY); - _queuedRUpTime = g_system->getMillis() + QUEUED_RUP_DELAY; - } else if (ev.button.which == 2 && - _fingerDown[0] && _fingerDown[1]) { - // If two fingers are down and a third taps, it's a middle - // click -- but lift the second finger so it doesn't register - // as a right click. - event.type = Common::EVENT_MBUTTONUP; - processMouseEvent(event, _curX, _curY); - g_system->getEventManager()->pushEvent(event); - event.type = Common::EVENT_MBUTTONDOWN; - _fingerDown[1] = false; - } - } - // Officially lift the finger that was raised. - _fingerDown[ev.button.which] = false; - } - return true; -} - -/** - * Handles mouse motion. - * - * @param ev The SDL event - * @param event The ScummVM event. - * @return True if event was processed, false if not. - */ -bool WebOSSdlEventSource::handleMouseMotion(SDL_Event &ev, - Common::Event &event) { - if (_fingerDown[ev.motion.which]) { - _dragDiffX[ev.motion.which] += ev.motion.xrel; - _dragDiffY[ev.motion.which] += ev.motion.yrel; - - switch (ev.motion.which) { - case 0: - // If our dragDiff goes too many pixels in either direction, - // kill the future click and any queued drag event. - if (_doClick && (ABS(_dragDiffX[0]) > MOUSE_DEADZONE_PIXELS || - ABS(_dragDiffY[0]) > MOUSE_DEADZONE_PIXELS)) { - _doClick = false; - if (_queuedDragTime > 0) - _queuedDragTime = 0; - } - // If only one finger is on the screen and moving, that's - // the mouse pointer. - if (!_fingerDown[1] && !_fingerDown[2]) { - if (_trackpadMode) { - _curX = MIN(_screenX, MAX(0, _curX + ev.motion.xrel)); - _curY = MIN(_screenY, MAX(0, _curY + ev.motion.yrel)); - } else { - _curX = MIN(_screenX, MAX(0, 0 + ev.motion.x)); - _curY = MIN(_screenY, MAX(0, 0 + ev.motion.y)); - } - event.type = Common::EVENT_MOUSEMOVE; - processMouseEvent(event, _curX, _curY); - } - break; - case 1: - // Check for a two-finger swipe - if (_fingerDown[0] && !_fingerDown[2]) { - // Check for a vertical swipe - if (ABS(_dragDiffY[0]) > _swipeDistY && - ABS(_dragDiffY[1]) > _swipeDistY) { - // Virtually lift fingers to prevent repeat triggers - _fingerDown[0] = _fingerDown[1] = false; - if (_dragDiffY[0] < 0 && _dragDiffY[1] < 0) { - // A swipe up triggers the keyboard, if it exists. We - // test for existance of a virtual OS keyboard by - // checking for the version of the linked PDK libs. - int gblPDKVersion = PDL_GetPDKVersion(); - if (gblPDKVersion >= 300) - PDL_SetKeyboardState(PDL_TRUE); - } else if (_dragDiffY[0] > 0 && _dragDiffY[1] > 0) { - // A swipe down triggers the menu - if (g_engine && !g_engine->isPaused()) - g_engine->openMainMenuDialog(); - } - return true; - } - // Check for a horizontal swipe - if (ABS(_dragDiffX[0]) > _swipeDistX && - ABS(_dragDiffX[1]) > _swipeDistX) { - // Virtually lift fingers to prevent repeat triggers - _fingerDown[0] = _fingerDown[1] = false; - if (_dragDiffX[0] < 0 && _dragDiffX[1] < 0) { - // A swipe left presses escape - event.type = Common::EVENT_KEYDOWN; - event.kbd.flags = 0; - event.kbd.keycode = Common::KEYCODE_ESCAPE; - event.kbd.ascii = Common::ASCII_ESCAPE; - _queuedEscapeUpTime = g_system->getMillis() + - QUEUED_KEY_DELAY; - } else if (_dragDiffX[0] > 0 && _dragDiffX[1] > 0) { - // A swipe right toggles trackpad mode - _trackpadMode = !_trackpadMode; - g_system->showMouse(_trackpadMode); - // I18N: Trackpad mode toggle status. - Common::String dialogMsg(_("Trackpad mode is now")); - dialogMsg += " "; - // I18N: Trackpad mode on or off. - dialogMsg += (_trackpadMode ? _("ON") : _("OFF")); - dialogMsg += ".\n"; - // I18N: Instructions to toggle Trackpad mode. - dialogMsg += - _("Swipe two fingers to the right to toggle."); - GUI::TimedMessageDialog dialog(dialogMsg, 1500); - dialog.runModal(); - } - return true; - } - } - break; - case 2: - // Check for a three-finger swipe - if (_fingerDown[0] && _fingerDown[1]) { - // Swipe to the right toggles Auto-drag - if (_dragDiffX[0] > _swipeDistX && - _dragDiffX[1] > _swipeDistX && - _dragDiffX[2] > _swipeDistX) { - // Virtually lift fingers to prevent repeat triggers - _fingerDown[0] = _fingerDown[1] = _fingerDown[2] = false; - // Toggle Auto-drag mode - _autoDragMode = !_autoDragMode; - // I18N: Auto-drag toggle status. - Common::String dialogMsg(_("Auto-drag mode is now")); - dialogMsg += " "; - // I18N: Auto-drag on or off. - dialogMsg += (_autoDragMode ? _("ON") : _("OFF")); - dialogMsg += ".\n"; - // I18N: Instructions to toggle auto-drag. - dialogMsg += _( - "Swipe three fingers to the right to toggle."); - GUI::TimedMessageDialog dialog(dialogMsg, 1500); - dialog.runModal(); - return true; - } else if (_dragDiffY[0] > _swipeDistY && - _dragDiffY[1] > _swipeDistY && - _dragDiffY[2] > _swipeDistY ) { - // Swipe down to emulate spacebar (pause) - // Virtually lift fingers to prevent repeat triggers - _fingerDown[0] = _fingerDown[1] = _fingerDown[2] = false; - // Press space - event.type = Common::EVENT_KEYDOWN; - event.kbd.flags = 0; - event.kbd.keycode = Common::KEYCODE_SPACE; - event.kbd.ascii = Common::ASCII_SPACE; - _queuedSpaceUpTime = g_system->getMillis() + - QUEUED_KEY_DELAY; - } - } - } - } - return true; -} - -/** - * Before calling the original SDL implementation, this method loads in - * queued events. - * - * @param event The ScummVM event - */ -bool WebOSSdlEventSource::pollEvent(Common::Event &event) { - uint32 curTime = g_system->getMillis(); - - // Event-dependent nitializations for when SDL runs its first poll. - if (_firstPoll) { - // Set the initial dimensions - calculateDimensions(); - - // Having a mouse pointer on screen when not in Trackpad mode is poor - // interface design, because the user won't know whether to tap buttons - // or drag the pointer to them. On the first poll, set the appropriate - // pointer visibility. - g_system->showMouse(_trackpadMode); - _firstPoll = false; - } - - // Run down the priority list for queued events. The built-in - // event queue runs events on the next poll, which causes many - // WebOS devices (and a few game engines) to ignore certain inputs. - // Allowing keys and clicks to stay "down" longer is enough to register - // the press. - if (_queuedEscapeUpTime != 0 && curTime >= _queuedEscapeUpTime) { - event.type = Common::EVENT_KEYUP; - event.kbd.flags = 0; - event.kbd.keycode = Common::KEYCODE_ESCAPE; - event.kbd.ascii = Common::ASCII_ESCAPE; - _queuedEscapeUpTime = 0; - return true; - } else if (_queuedSpaceUpTime != 0 && curTime >= _queuedSpaceUpTime) { - event.type = Common::EVENT_KEYUP; - event.kbd.flags = 0; - event.kbd.keycode = Common::KEYCODE_SPACE; - event.kbd.ascii = Common::ASCII_SPACE; - _queuedSpaceUpTime = 0; - return true; - } else if (_queuedRUpTime != 0 && curTime >= _queuedRUpTime) { - event.type = Common::EVENT_RBUTTONUP; - processMouseEvent(event, _curX, _curY); - _queuedRUpTime = 0; - return true; - } else if (_queuedDragTime != 0 && curTime >= _queuedDragTime) { - event.type = Common::EVENT_LBUTTONDOWN; - _dragging = true; - processMouseEvent(event, _curX, _curY); - _queuedDragTime = 0; - return true; - } - - return SdlEventSource::pollEvent(event); -} - -/** - * Sets the _screenX and _screenY variables to the effective screen dimensions, - * and alters _swipeDistX and _swipeDistY to the correct relative values. - */ -void WebOSSdlEventSource::calculateDimensions() { - _screenX = g_system->getOverlayWidth(); - _screenY = g_system->getOverlayHeight(); - _swipeDistX = _screenX * SWIPE_PERCENT_HORIZ / 100; - _swipeDistY = _screenY * SWIPE_PERCENT_VERT / 100; -} - -#endif diff --git a/backends/events/webossdl/webossdl-events.h b/backends/events/webossdl/webossdl-events.h deleted file mode 100644 index f0f76804d2d..00000000000 --- a/backends/events/webossdl/webossdl-events.h +++ /dev/null @@ -1,115 +0,0 @@ -/* ScummVM - Graphic Adventure Engine - * - * ScummVM is the legal property of its developers, whose names - * are too numerous to list here. Please refer to the COPYRIGHT - * file distributed with this source distribution. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - */ - -#if !defined(BACKEND_EVENTS_SDL_WEBOS_H) && !defined(DISABLE_DEFAULT_EVENTMANAGER) -#define BACKEND_EVENTS_SDL_WEBOS_H - -#include "backends/events/sdl/sdl-events.h" - -/** - * SDL events manager for WebOS - */ -class WebOSSdlEventSource : public SdlEventSource { -public: - enum { - DOUBLETAP_LIMIT = 400, - MAX_FINGERS = 3, - MOUSE_DEADZONE_PIXELS = 5, - QUEUED_DRAG_DELAY = 500, - QUEUED_KEY_DELAY = 250, - QUEUED_RUP_DELAY = 50, - SWIPE_PERCENT_HORIZ = 15, - SWIPE_PERCENT_VERT = 20 - }; - WebOSSdlEventSource() : - _gestureDown(false), - _dragStartTime(0), _dragging(false), - _curX(0), _curY(0), - _screenX(0), _screenY(0), - _trackpadMode(false), _autoDragMode(true), - _doClick(true), - _queuedDragTime(0), _queuedEscapeUpTime(0), _queuedSpaceUpTime(0), - _queuedRUpTime(0), - _firstPoll(true) { - for (int i = 0; i < MAX_FINGERS; i++) { - _fingerDown[i] = false; - _screenDownTime[i] = _dragDiffX[i] = _dragDiffY[i] = 0; - } - }; -protected: - // Inidicates if gesture area is pressed down or not. - bool _gestureDown; - - // The timestamp when screen was pressed down for each finger. - uint32 _screenDownTime[MAX_FINGERS]; - - // The timestamp when a possible drag operation was triggered. - uint32 _dragStartTime; - - // The distance each finger traveled from touch to release. - int _dragDiffX[MAX_FINGERS], _dragDiffY[MAX_FINGERS]; - - // Indicates if we are in drag mode. - bool _dragging; - - // The current mouse position on the screen. - int _curX, _curY; - - // The current screen dimensions - int _screenX, _screenY; - - // The drag distance for linear gestures - int _swipeDistX, _swipeDistY; - - // Indicates if we're in trackpad mode or tap-to-move mode. - bool _trackpadMode; - - // Indicates if we're in automatic drag mode. - bool _autoDragMode; - - // Tracks which fingers are currently touching the screen. - bool _fingerDown[MAX_FINGERS]; - - // Indicates if a click should be executed when the first finger is lifted - bool _doClick; - - // Indicates whether the event poll has been run before - bool _firstPoll; - - // Event queues - uint32 _queuedDragTime, _queuedEscapeUpTime, _queuedSpaceUpTime, - _queuedRUpTime; - - // SDL overrides - virtual void SDLModToOSystemKeyFlags(SDL_Keymod mod, Common::Event &event); - virtual bool handleKeyDown(SDL_Event &ev, Common::Event &event); - virtual bool handleKeyUp(SDL_Event &ev, Common::Event &event); - virtual bool handleMouseButtonDown(SDL_Event &ev, Common::Event &event); - virtual bool handleMouseButtonUp(SDL_Event &ev, Common::Event &event); - virtual bool handleMouseMotion(SDL_Event &ev, Common::Event &event); - virtual bool pollEvent(Common::Event &event); - - // Utility functions - void calculateDimensions(); -}; - -#endif diff --git a/backends/module.mk b/backends/module.mk index 8b1e9b7410d..4918fe2353b 100644 --- a/backends/module.mk +++ b/backends/module.mk @@ -331,11 +331,6 @@ MODULE_OBJS += \ events/samsungtvsdl/samsungtvsdl-events.o endif -ifeq ($(BACKEND),webos) -MODULE_OBJS += \ - events/webossdl/webossdl-events.o -endif - ifeq ($(BACKEND),wii) MODULE_OBJS += \ fs/wii/wii-fs.o \ diff --git a/backends/platform/sdl/posix/posix-main.cpp b/backends/platform/sdl/posix/posix-main.cpp index 736af75b8ed..92e4acae153 100644 --- a/backends/platform/sdl/posix/posix-main.cpp +++ b/backends/platform/sdl/posix/posix-main.cpp @@ -22,7 +22,7 @@ #include "common/scummsys.h" -#if defined(POSIX) && !defined(MACOSX) && !defined(SAMSUNGTV) && !defined(MAEMO) && !defined(WEBOS) && !defined(GPH_DEVICE) && !defined(GP2X) && !defined(DINGUX) && !defined(OPENPANDORA) && !defined(PLAYSTATION3) && !defined(PSP2) && !defined(ANDROIDSDL) && !defined(NINTENDO_SWITCH) +#if defined(POSIX) && !defined(MACOSX) && !defined(SAMSUNGTV) && !defined(MAEMO) && !defined(GPH_DEVICE) && !defined(GP2X) && !defined(DINGUX) && !defined(OPENPANDORA) && !defined(PLAYSTATION3) && !defined(PSP2) && !defined(ANDROIDSDL) && !defined(NINTENDO_SWITCH) #include "backends/platform/sdl/posix/posix.h" #include "backends/plugins/sdl/sdl-provider.h" diff --git a/backends/platform/webos/main.cpp b/backends/platform/webos/main.cpp deleted file mode 100644 index 48a265ca9fb..00000000000 --- a/backends/platform/webos/main.cpp +++ /dev/null @@ -1,52 +0,0 @@ -/* ScummVM - Graphic Adventure Engine - * - * ScummVM is the legal property of its developers, whose names - * are too numerous to list here. Please refer to the COPYRIGHT - * file distributed with this source distribution. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - */ - -#define FORBIDDEN_SYMBOL_EXCEPTION_unistd_h - -#include "backends/platform/webos/webos.h" -#include "backends/plugins/sdl/sdl-provider.h" -#include "base/main.h" - -#if defined(WEBOS) - -#include - -int main(int argc, char* argv[]) { - g_system = new OSystem_SDL_WebOS(); - assert(g_system); - - ((OSystem_SDL_WebOS *)g_system)->init(); - -#ifdef DYNAMIC_MODULES - PluginManager::instance().addPluginProvider(new SDLPluginProvider()); -#endif - - // Invoke the actual ScummVM main entry point: - int res = scummvm_main(argc, argv); - - // Free OSystem - g_system->destroy(); - - return res; -} - -#endif diff --git a/backends/platform/webos/module.mk b/backends/platform/webos/module.mk deleted file mode 100644 index fe4ec1e0792..00000000000 --- a/backends/platform/webos/module.mk +++ /dev/null @@ -1,10 +0,0 @@ -MODULE := backends/platform/webos - -MODULE_OBJS := \ - main.o \ - webos.o - -# We don't use rules.mk but rather manually update OBJS and MODULE_DIRS. -MODULE_OBJS := $(addprefix $(MODULE)/, $(MODULE_OBJS)) -OBJS := $(MODULE_OBJS) $(OBJS) -MODULE_DIRS += $(sort $(dir $(MODULE_OBJS))) diff --git a/backends/platform/webos/webos.cpp b/backends/platform/webos/webos.cpp deleted file mode 100644 index da60b277134..00000000000 --- a/backends/platform/webos/webos.cpp +++ /dev/null @@ -1,48 +0,0 @@ -/* ScummVM - Graphic Adventure Engine - * - * ScummVM is the legal property of its developers, whose names - * are too numerous to list here. Please refer to the COPYRIGHT - * file distributed with this source distribution. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - */ - -#include "backends/platform/webos/webos.h" -#include "backends/events/webossdl/webossdl-events.h" -#include "backends/keymapper/keymapper.h" - -#if defined(WEBOS) - -using namespace Common; - -OSystem_SDL_WebOS::OSystem_SDL_WebOS() - : - OSystem_POSIX() { -} - -/** - * Initializes the backend. - */ -void OSystem_SDL_WebOS::initBackend() { - // Create the events manager - if (_eventSource == 0) - _eventSource = new WebOSSdlEventSource(); - - // Call parent implementation of this method - OSystem_SDL::initBackend(); -} - -#endif diff --git a/backends/platform/webos/webos.h b/backends/platform/webos/webos.h deleted file mode 100644 index a2535ddc08d..00000000000 --- a/backends/platform/webos/webos.h +++ /dev/null @@ -1,36 +0,0 @@ -/* ScummVM - Graphic Adventure Engine - * - * ScummVM is the legal property of its developers, whose names - * are too numerous to list here. Please refer to the COPYRIGHT - * file distributed with this source distribution. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - */ - -#ifndef PLATFORM_SDL_WEBOS_H -#define PLATFORM_SDL_WEBOS_H - -#include "common/system.h" -#include "backends/platform/sdl/posix/posix.h" - -class OSystem_SDL_WebOS : public OSystem_POSIX { -public: - OSystem_SDL_WebOS(); - - virtual void initBackend(); -}; - -#endif diff --git a/backends/platform/webos/webos.mk b/backends/platform/webos/webos.mk deleted file mode 100644 index 07d8aab9173..00000000000 --- a/backends/platform/webos/webos.mk +++ /dev/null @@ -1,105 +0,0 @@ -# WebOS specific build targets -# ============================================================================ -# -# Build instructions: -# -# 1. Install the WebOS SDK and PDK and setup the environment variables -# WEBOS_SDK and WEBOS_PDK accordingly. -# -# 2. Cross-compile zlib, flac, mad and tremor and install it into the PDK. -# -# 3. Prepare the ScummVM source for a webOS build: -# $ ./configure --host=webos --enable-plugins --default-dynamic \ -# --enable-release -# -# 4. Create the package: -# $ make package -# -# The package is now in the "portdist" folder. -# -# See https://wiki.scummvm.org/index.php/Compiling_ScummVM/WebOS for -# more detailed build instructions. -# -# -# Palm App catalog instructions: -# -# VER_PACKAGE must be set to a number which is higher than the currently -# used package version in the app catalog. So when creating an updated -# package for ScummVM 1.3.9 and the current ScummVM package in the app -# catalog is version 1.3.0902 then you must specify VER_PACKAGE=3 to create -# the ScummVM package with version 1.3.0903. Yeah, I know that's ugly but -# WebOS package version numbers are restricted to three numeric components. -# -# As long as Palm doesn't support Team-maintained apps the uploaded packages -# MUST NOT be packaged with the default "org.scummvm" base id. Instead apps -# must be uploaded with a user-specific base id. A good practice is using -# the github user as base id: com.github.. It is also necessary -# to use a user-specific app name when submitting the created package to the -# Palm app catalog. Use "ScummVM ()" instead of "ScummVM" and -# "ScummVM Beta ()" instead of "ScummVM Beta". -# -# The app id is automatically parsed from the installation prefix. So add a -# configure parameter like this to prepare a build of a package for the Palm -# App Catalog: -# -# --prefix=/media/cryptofs/apps/usr/palm/applications/com.github.kayahr.scummvm -# -# To build a package for the Palm Beta App Catalog add "-beta" to the prefix: -# -# --prefix=/media/cryptofs/apps/usr/palm/applications/com.github.kayahr.scummvm-beta -# ============================================================================ - -# Increment this number when the packaging of the app has been changed while -# ScummVM itself has the same version as before. The number can be reset to -# 0 when the ScummVM version is increased. -VER_PACKAGE = 0 - -PATH_DIST = $(srcdir)/dists/webos -PATH_MOJO = $(PATH_DIST)/mojo -APP_ID = $(shell basename $(prefix)) -APP_VERSION = $(shell printf "%d.%d.%02d%02d" $(VER_MAJOR) $(VER_MINOR) $(VER_PATCH) $(VER_PACKAGE)) -DESTDIR ?= staging -PORTDISTDIR ?= portdist -ifeq ($(HOST_COMPILER),Darwin) - SED_DASH_I = "-i \"\"" -else - SED_DASH_I = "-i" -endif - -install: all - $(QUIET)$(INSTALL) -d "$(DESTDIR)$(prefix)" -ifeq ($(HOST_COMPILER),Darwin) - $(QUIET)$(INSTALL) -m 0644 "$(PATH_MOJO)/"* "$(DESTDIR)$(prefix)/" -else - $(QUIET)$(INSTALL) -m 0644 -t "$(DESTDIR)$(prefix)/" "$(PATH_MOJO)/"* -endif - $(QUIET)$(INSTALL) -m 0755 "$(PATH_MOJO)/start" "$(DESTDIR)$(prefix)/" - $(QUIET)$(INSTALL) -d "$(DESTDIR)$(bindir)" - $(QUIET)$(INSTALL) -c -m 755 "./$(EXECUTABLE)" "$(DESTDIR)$(bindir)/$(EXECUTABLE)" - $(QUIET)$(STRIP) "$(DESTDIR)$(bindir)/$(EXECUTABLE)" - $(QUIET)$(INSTALL) -d "$(DESTDIR)$(docdir)" - $(QUIET)$(INSTALL) -c -m 644 $(DIST_FILES_DOCS) "$(DESTDIR)$(docdir)" - $(QUIET)$(INSTALL) -d "$(DESTDIR)$(datadir)" - $(QUIET)$(INSTALL) -c -m 644 $(DIST_FILES_THEMES) $(DIST_FILES_NETWORKING) $(DIST_FILES_VKEYBD) $(DIST_FILES_ENGINEDATA) "$(DESTDIR)$(datadir)/" -ifdef DYNAMIC_MODULES - $(QUIET)$(INSTALL) -d "$(DESTDIR)$(libdir)/" - $(QUIET)$(INSTALL) -c -m 644 $(PLUGINS) "$(DESTDIR)$(libdir)/" - $(QUIET)$(STRIP) "$(DESTDIR)$(libdir)/"* -endif - $(QUIET)sed $(SED_DASH_I) s/'APP_VERSION'/'$(APP_VERSION)'/ "$(DESTDIR)$(prefix)/appinfo.json" - $(QUIET)sed $(SED_DASH_I) s/'APP_ID'/'$(APP_ID)'/ "$(DESTDIR)$(prefix)/appinfo.json" -ifneq (,$(findstring -beta,$(APP_ID))) - $(QUIET)sed $(SED_DASH_I) s/'APP_TITLE'/'ScummVM Beta'/ "$(DESTDIR)$(prefix)/appinfo.json" -else - $(QUIET)sed $(SED_DASH_I) s/'APP_TITLE'/'ScummVM'/ "$(DESTDIR)$(prefix)/appinfo.json" -endif - -uninstall: - $(QUIET)$(RM_REC) "$(DESTDIR)$(prefix)" - -package: uninstall install - $(QUIET)$(RM_REC) "$(PORTDISTDIR)" - $(QUIET)$(MKDIR) "$(PORTDISTDIR)" - $(QUIET)$(WEBOS_SDK)/bin/palm-package --use-v1-format "$(DESTDIR)$(prefix)" -o "$(PORTDISTDIR)" - -.PHONY: install uninstall package diff --git a/configure b/configure index ea97aed8572..19342eb8397 100755 --- a/configure +++ b/configure @@ -946,7 +946,7 @@ Configuration: -h, --help display this help and exit --backend=BACKEND backend to build (3ds, android, dc, dingux, ds, gcw0, gph, iphone, ios7, maemo, n64, null, openpandora, - ps2, psp, psp2, samsungtv, sdl, switch, webos, wii) [sdl] + ps2, psp, psp2, samsungtv, sdl, switch, wii) [sdl] Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX @@ -999,7 +999,6 @@ Special configuration feature: psp for PlayStation Portable samsungtv for Samsung TV switch for Nintendo Switch - webos for HP Palm WebOS wii for Nintendo Wii Game engines: @@ -1788,21 +1787,6 @@ switch) # Switch SDK has C++11 constructs so we must enable it _use_cxx11=yes ;; -webos) - _host_os=webos - _host_cpu=arm - _host_alias=arm-none-linux-gnueabi - # The prefix is always the same on WebOS so we hardcode the default - # here. It is still possible to define a custom prefix which is - # needed when packaging the app with a user-specific app ID. - test "x$prefix" = xNONE && prefix=/media/cryptofs/apps/usr/palm/applications/org.scummvm.scummvm - # WebOS apps are installed into app-specific directories. The - # default directory structure of ScummVM makes no sense here so we - # hardcode WebOS specific directories here. - datarootdir='${prefix}/data' - datadir='${datarootdir}' - docdir='${prefix}/doc' - ;; wii) _host_os=wii _host_cpu=powerpc @@ -1956,16 +1940,6 @@ riscos) add_line_to_config_mk "BINDHELP := bindhelp" fi ;; -webos) - if test -z "$WEBOS_SDK"; then - echo "Please set WEBOS_SDK in your environment. export WEBOS_SDK=" - exit 1 - fi - if test -z "$WEBOS_PDK"; then - echo "Please set WEBOS_PDK in your environment. export WEBOS_PDK=" - exit 1 - fi - ;; *) ;; esac @@ -2341,7 +2315,7 @@ fi # However, some platforms use GNU extensions in system header files, so # for these we must not use -pedantic. case $_host_os in -3ds | android | androidsdl | gamecube | ps2 | psp | switch | wii | webos) +3ds | android | androidsdl | gamecube | ps2 | psp | switch | wii) ;; *) # ICC does not support pedantic, while GCC and clang do. @@ -3130,22 +3104,6 @@ EOF _optimization_level=-O3 fi ;; - webos) - append_var CXXFLAGS "--sysroot=$WEBOS_PDK/arm-gcc/sysroot" - append_var CXXFLAGS "-I$WEBOS_PDK/include" - append_var CXXFLAGS "-I$WEBOS_PDK/include/SDL" - append_var CXXFLAGS "-I$WEBOS_PDK/device/usr/include" - # These compiler options are needed to support the Palm Pixi - append_var CXXFLAGS "-mcpu=arm1136jf-s" - append_var CXXFLAGS "-mfpu=vfp " - append_var CXXFLAGS "-mfloat-abi=softfp" - append_var LDFLAGS "-L$WEBOS_PDK/device/lib" - append_var LDFLAGS "-L$WEBOS_PDK/device/usr/lib" - append_var LDFLAGS "-Wl,--allow-shlib-undefined" - append_var LDFLAGS "--sysroot=$WEBOS_PDK/arm-gcc/sysroot" - add_line_to_config_mk "WEBOS_SDK = $WEBOS_SDK" - _seq_midi=no - ;; wii) _optimization_level=-Os append_var CXXFLAGS "-mrvl" @@ -3583,17 +3541,6 @@ if test -n "$_host"; then _vkeybd=yes _port_mk="backends/platform/sdl/switch/switch.mk" ;; - webos) - _backend="webos" - _port_mk="backends/platform/webos/webos.mk" - _build_scalers=yes - _build_hq_scalers=no - _timidity=no - _mt32emu=no - _seq_midi=no - _vkeybd=no - add_line_to_config_mk "HOST_COMPILER = `uname`" - ;; wii) _backend="wii" _build_scalers=no @@ -3769,15 +3716,6 @@ case $_backend in _sdl=auto append_var MODULES "backends/platform/sdl" ;; - webos) - # There is no sdl-config in the WebOS PDK so we don't use find_sdlconfig here. - # The PDL library acts as the WebOS device toolchain, and is required to control the virtual keyboard among other OS-level events. - append_var LIBS "-lSDL -lpdl" - append_var DEFINES "-DWEBOS" - append_var MODULES "backends/platform/sdl" - _sdl=yes - _sdlversion=1.2.0 - ;; wii) append_var DEFINES "-D__WII__" append_var DEFINES "-DGEKKO" @@ -3921,7 +3859,7 @@ fi # Enable 16bit support only for backends which support it # case $_backend in - 3ds | android | androidsdl | dingux | dc | gph | iphone | ios7 | maemo | null | openpandora | psp | psp2 | samsungtv | sdl | switch | webos | wii) + 3ds | android | androidsdl | dingux | dc | gph | iphone | ios7 | maemo | null | openpandora | psp | psp2 | samsungtv | sdl | switch | wii) if test "$_16bit" = auto ; then _16bit=yes else @@ -3997,7 +3935,7 @@ case $_host_os in amigaos* | cygwin* | dreamcast | ds | gamecube | mingw* | n64 | ps2 | ps3 | psp2 | psp | riscos | wii) _posix=no ;; - 3ds | android | androidsdl | beos* | bsd* | darwin* | freebsd* | gnu* | gph-linux | haiku* | hpux* | iphone | ios7 | irix*| k*bsd*-gnu* | linux* | maemo | mint* | netbsd* | openbsd* | solaris* | sunos* | switch | uclinux* | webos) + 3ds | android | androidsdl | beos* | bsd* | darwin* | freebsd* | gnu* | gph-linux | haiku* | hpux* | iphone | ios7 | irix*| k*bsd*-gnu* | linux* | maemo | mint* | netbsd* | openbsd* | solaris* | sunos* | switch | uclinux*) _posix=yes ;; os2-emx*) @@ -4219,18 +4157,6 @@ PLUGIN_LDFLAGS += -mno-crt0 $(PS2SDK)/ee/startup/crt0.o -Wl,-T$(srcdir)/backend _mak_plugins=' LDFLAGS += -Wl,-T$(srcdir)/backends/plugins/psp/main_prog.ld PLUGIN_LDFLAGS += -Wl,-T$(srcdir)/backends/plugins/psp/plugin.ld -lstdc++ -lc -' - ;; - webos) - _plugin_prefix="lib" - _plugin_suffix=".so" - append_var CXXFLAGS "-fpic" - append_var LIBS "-ldl" -_mak_plugins=' -PLUGIN_EXTRA_DEPS = -PLUGIN_LDFLAGS += -shared $(LDFLAGS) -PRE_OBJS_FLAGS := -Wl,-export-dynamic -Wl,-whole-archive -POST_OBJS_FLAGS := -Wl,-no-whole-archive ' ;; *) @@ -5735,8 +5661,8 @@ case $_backend in # Add ../plugins as a path so plugins can be found when running from a .PND. append_var DEFINES "-DPLUGIN_DIRECTORY=\\\"../plugins\\\"" ;; - maemo | webos) - # The WebOS and Maemo apps want the plugins in the "lib" directory + maemo) + # The Maemo apps want the plugins in the "lib" directory # without a scummvm sub directory. append_var DEFINES "-DPLUGIN_DIRECTORY=\\\"$libdir\\\"" ;; diff --git a/dists/webos/README.WebOS b/dists/webos/README.WebOS deleted file mode 100644 index 5947d86f20f..00000000000 --- a/dists/webos/README.WebOS +++ /dev/null @@ -1,37 +0,0 @@ -README for the WebOS port of ScummVM ------------------------------------- - -INSTALLATION - - When starting ScummVM the first time on a WebOS device it creates the - following directory structure on the flash drive: - - ScummVM/ - Extras/ - Games/ - Plugins/ - Saves/ - Screenshots/ - Themes/ - - To install the games switch your WebOS device to USB drive mode and copy - the game folders into the ScummVM/Games directory. Then start ScummVM, - click "Add game" and select the game folder. - -CONTROLS - - Touchscreen - - The touchscreen operates like a touchpad. The mouse cursor is independent - of the touched point, it is moved relative to its current position. - - Tap + movement: Mouse movement - Tap without movement: Left mouse button click - Tap held for >0.5s without movement: Right mouse button click - Tap held for >1s without movement: Middle mouse button click - Double Tap + movement: Drag and drop - - Gesture area - - Back gesture: Escape - Forward gesture: ScummVM menu diff --git a/dists/webos/mojo/appinfo.json b/dists/webos/mojo/appinfo.json deleted file mode 100644 index b3163a4e958..00000000000 --- a/dists/webos/mojo/appinfo.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "id": "APP_ID", - "version": "APP_VERSION", - "vendor": "ScummVM Team", - "type": "pdk", - "main": "start", - "title": "APP_TITLE", - "icon": "icon.png", - "requiredMemory": 64 -} diff --git a/dists/webos/mojo/icon.png b/dists/webos/mojo/icon.png deleted file mode 100644 index 5f7e9e59602..00000000000 Binary files a/dists/webos/mojo/icon.png and /dev/null differ diff --git a/dists/webos/mojo/package.properties b/dists/webos/mojo/package.properties deleted file mode 100644 index 962e809ec6c..00000000000 --- a/dists/webos/mojo/package.properties +++ /dev/null @@ -1 +0,0 @@ -filemode.755=start,bin/scummvm diff --git a/dists/webos/mojo/scummvmrc-default b/dists/webos/mojo/scummvmrc-default deleted file mode 100644 index 907898a8fe3..00000000000 --- a/dists/webos/mojo/scummvmrc-default +++ /dev/null @@ -1,32 +0,0 @@ -[scummvm] -gui_theme=scummremastered -mute=false -speech_volume=192 -native_mt32=false -midi_gain=100 -talkspeed=60 -subtitles=true -multi_midi=false -fullscreen=true -sfx_volume=192 -music_volume=192 -autosave_period=300 -music_driver=auto -opl_driver=auto -aspect_ratio=false -speech_mute=false -enable_gs=false -browser_lastpath=/media/internal/ScummVM/Games -savepath=/media/internal/ScummVM/Saves - -[keymapper] -keymap_global_MEN=FORWARD -keymap_gui_VIR=C+k -keymap_global_SKL=PERIOD -keymap_global_SKC=ESCAPE -keymap_gui_REM=AT -keymap_global_PAU=SPACE -keymap_gui_CLO=ESCAPE -keymap_gui_CLI=RETURN -keymap_global_VIR=C+k -keymap_global_REM=AT diff --git a/dists/webos/mojo/start b/dists/webos/mojo/start deleted file mode 100755 index 446ce83f1d6..00000000000 --- a/dists/webos/mojo/start +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/sh - -# Setup directories -APPDIR=$(readlink -f $(dirname $0)) -SCUMMVMDIR=/media/internal/ScummVM - -# Create the initial ScummVM directory structure -mkdir -p $SCUMMVMDIR/Games -mkdir -p $SCUMMVMDIR/Saves -mkdir -p $SCUMMVMDIR/Screenshots - -# Install default configuration file if not already present -if [ ! -f $SCUMMVMDIR/scummvmrc ] -then - cp $APPDIR/scummvmrc-default $SCUMMVMDIR/scummvmrc -fi - -# Change into the screenshots directory so screenshots are saved there -cd $SCUMMVMDIR/Screenshots - -# Run the game -exec $APPDIR/bin/scummvm -c $SCUMMVMDIR/scummvmrc diff --git a/engines/lure/menu.cpp b/engines/lure/menu.cpp index 4983088f89e..ea4d3b4f206 100644 --- a/engines/lure/menu.cpp +++ b/engines/lure/menu.cpp @@ -31,7 +31,7 @@ #include "lure/events.h" #include "lure/lure.h" -#if defined(__SYMBIAN32__) || defined(WEBOS) || defined(__ANDROID__) || defined(__WII__) +#if defined(__SYMBIAN32__) || defined(__ANDROID__) || defined(__WII__) #define LURE_CLICKABLE_MENUS #endif diff --git a/po/POTFILES b/po/POTFILES index 58a442dc691..c7ef3158636 100644 --- a/po/POTFILES +++ b/po/POTFILES @@ -59,7 +59,6 @@ backends/events/gph/gph-events.cpp backends/events/maemosdl/maemosdl-events.cpp backends/events/openpandora/op-events.cpp backends/events/symbiansdl/symbiansdl-events.cpp -backends/events/webossdl/webossdl-events.cpp backends/graphics/opengl/opengl-graphics.cpp backends/graphics/openglsdl/openglsdl-graphics.cpp backends/graphics/surfacesdl/surfacesdl-graphics.cpp