Commit graph

247 commits

Author SHA1 Message Date
Cameron Cawley
3a757731a2 SDL: Support building with more than two renderers 2024-10-01 21:22:07 +03:00
Vladimir Serbinenko
b2c4468aae SDL: Enable touchpad mode option on generic SDL
Touchscreen is present on Linux phones and can be present on generic Linux.
Allow to configure it in touchpad mode. Think of Raspberry pi connected to
a touchscreen
2024-09-27 03:26:47 +03:00
Le Philousophe
e513a5f5d2 SDL: Fix comment
This is now a Path and not a String anymore
2023-12-31 18:08:53 +01:00
Le Philousophe
dc7fadef28 COMMON: Make iconspath a Path object 2023-12-24 13:19:25 +01:00
Le Philousophe
e689166a2c BACKENDS: Make screenshots use the Path class 2023-12-24 13:19:25 +01:00
Le Philousophe
d9a8131ba2 COMMON: Make getDefaultLogFileName return a Path instead of a String 2023-12-24 13:19:25 +01:00
Eugene Sandulenko
2bea791278 OSYSTEM: Improed const'ness of the buildHelpDialogData() call 2023-09-17 00:56:28 +02:00
Eugene Sandulenko
6ae8089c61 GUI: Move Keyboards shortcut help to SDL backend 2023-09-17 00:56:28 +02:00
Ankush Dutt
708432c163 BACKENDS: Change return type of getDefaultDLCsPath() to Common::Path 2023-09-14 08:22:56 +02:00
Ankush Dutt
b4438f744a BACKENDS: Create dlcspath for storing DLCs 2023-09-14 08:22:56 +02:00
elasota
6c8ceeae25 BACKENDS: Refactor some things to make getDoubleClickTime behavior with event recorder simpler. 2023-05-14 22:42:59 +02:00
elasota
74ddbe5eaa BACKENDS: Add double-click time feature to support OS-configurable double-click intervals, implement it for Windows. 2023-05-14 22:42:59 +02:00
Eugene Sandulenko
8e2f765223
OSYSTEM: Expose getDefaultLogFileName() via OSystem 2023-03-25 14:48:56 +01:00
Thunderforge
33389f062e COMMON: Adding comment for default path methods 2022-07-02 22:34:36 +02:00
Thunderforge
9afd41b195 COMMON: Renaming getDefaultIconPath() -> getDefaultIconsPath() 2022-07-02 22:34:36 +02:00
Thunderforge
fe001b35b5 COMMON: Adding default iconspath functionality
It's for macOS only right now.
2022-07-02 22:34:36 +02:00
Le Philousophe
4ab044a254 OPENGL: Merge both OpenGL contexts 2022-06-26 18:32:10 +02:00
Thierry Crozat
bde10f0dda BASE: Store screenshotpath command line in Session domain
The SDL backend was getting that path at the start and storing
it in a class member so that it would persist for the session.
But now that we have a kSessionDomain in ConfMan, it is cleaner
to use that (and this will also work for non-SDL backends).
2022-06-05 15:39:36 +01:00
Le Philousophe
b978cd1caa OPENGL: Allow engines to detect OpenGL info without switching
For now only OpenGL type and shaders support are available
2022-04-03 22:17:19 +02:00
Thierry Crozat
f3dc1df7d8 SDL: Get a user-specified screenshotpath from ConfMan at the start
There are two ways the user can specify a screenshot path: by
editing the config file manually, or by passing it on the command
line. In the later case it is added to the transient domain that
is cleared when opening the launcher, so it only worked when also
specifying a game to start on the command line. With this change
a screenshot path specified on the command line will be used until
quitting ScummVM.

This could be confusing if the user had the ability to specify the
path in the ScummVM Options, as then we would probably want to use
the new specified path immediately. But since the path does not
appear in the options, this change should work fine.
2022-02-16 22:24:07 +00:00
Le Philousophe
d9b4e457e8 ALL: Remove USE_GLES2 define
Replace it with USE_FORCED_GLES2
2022-01-18 16:49:03 +01:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Orgad Shaneh
b11c5ace90 BACKENDS: JANITORIAL: Remove 'virtual' when override is specified 2021-11-14 14:31:41 +02:00
Cameron Cawley
5022489277 BACKENDS: Refactor the API for creating Mutexes 2021-11-12 20:19:45 +01:00
Thierry Crozat
7c9761b2da SDL: Fix switching to the <default> graphics mode
The OSystem_SDL::getDefaultGraphicsMode  was returning the
default for the current graphics manager and not the default
for the OSystem_SDL instance. So for example if the default
is SDL Surface when starting ScummVM with the gfx_mode not
set in the config file, and then the user selects the OpenGL
graphics mode, getDefaultGraphicsMode() would now return the
OpenGL mode (the default the OpenGLGraphicsManager). As a
result changing the graphics mode back to <default> and
applying the change would not switch back to Surface SDL
until you restart ScummVM or start a game.

This commit also change how the SDL backends can specify which
graphics mode to use by default. They no longer have to assume
they know the names of the graphics modes in the graphics manager.
2021-08-15 17:43:43 +01:00
Cameron Cawley
74e7d777a9 BACKENDS: Add OSystem::messageBox() and use it for error handling 2021-07-27 20:50:51 +02:00
Martin Gerhardy
a0c237f7b9 EVENTRECORDER: added new event for OSystem::getTimeAndDate 2021-07-09 19:23:21 +02:00
Mathias Parnaudeau
800c673b62 BACKENDS: SDL: Fix memory leak in supported graphics modes
Supported graphics modes are grouped in an merged array in which
the first part contains modes from the non-OpenGL SDL manager,
obtained by a copy dynamically allocated.

When the array was rebuilt or aimed to be destroyed, it was only
cleared (removing elements) but not freeing duplicated fields
name and description.

An additional leak came from the temporary array (srcModes)
not freed.
2021-05-08 21:58:30 +01:00
Cameron Cawley
dfe79052d2 SDL: Add implementation of OSystem::openUrl for SDL 2.0.14 2021-03-03 03:27:09 +02:00
Cameron Cawley
f00b6fc195 SDL: Remove the Capabilities structure 2021-01-02 08:05:27 +01:00
Cameron Cawley
01b4432825 BACKENDS: Use Common::U32String for OSystem::setWindowCaption 2020-11-22 17:20:19 +00:00
Vladimir Serbinenko
68a9136e4d
COMMON: Rewrite Encoder and drop dependency on iconv (#2586)
Different platforms have different levels of support of encodings and
often have slight variations. We already have tables for most encoding
with only CJK missing. Full transcoding inclusion allows us to get reliable
encoding results independently of platform. The biggest con is the need for
external tables encoding.dat.

It removes a duplicate table for korean in graphics/korfont.cpp
2020-11-15 16:20:35 +01:00
Paweł Kołodziejski
a37173807f CONFIGURE: More work on opengl flags 2020-10-14 18:37:17 +02:00
Paweł Kołodziejski
264f6f037b ALL: Separate USE_OPENGL and USE_OPENG_GAME. Exclude WME3D for GLES2 for now. 2020-10-10 14:12:07 +02:00
Paweł Kołodziejski
35b9cccbde ALL: Merge ResidualVM 2020-10-09 19:44:13 +02:00
Pawel Kolodziejski
d8f2040dba ALL: Drop setupScreen API, use new initGraphics3d from engine API.
Enabled system API for begin/end gfx transactions, initSize, setGraphicsMode.
Function setGraphicsMode will use optional params to trigger 3d rendering
and switch to proper SDL Gfx manager.
2020-10-02 19:14:19 +02:00
Pawel Kolodziejski
6f69981904 BACKENDS: Drop launcherInitSize() and use 2d backend gfx manager for launcher. 2020-09-30 16:52:44 +02:00
Pawel Kolodziejski
6aa7cf6025 BACKENDS: Made code less different in SDL platform backend 2020-09-29 15:08:16 +02:00
Pawel Kolodziejski
2b248a85bf ALL: Minimise differences with ScummVM 2020-09-29 07:57:40 +02:00
Pawel Kolodziejski
01120c9203 BACKENDS: A little more change in layout for 3D GFX manager 2020-09-27 16:41:23 +02:00
Pawel Kolodziejski
490bedb584 ALL: Fixed some compiler warnings while using c++11 2020-09-25 18:51:18 +02:00
Pawel Kolodziejski
11b9f5d81c BACKENDS: More renames in GFX backends 2020-09-25 10:35:26 +02:00
Pawel Kolodziejski
677c072c3c BACKEND: Rename SDL gfx backends to be unique for ResidualVM 2020-09-24 20:22:49 +02:00
Pawel Kolodziejski
d5304e2568 ALL: Synced with ScummVM - rev: 33a47d23b8 2020-09-03 02:21:14 +02:00
aryanrawlani28
49c36c2b45 GUI: U32: Begin converting texts in clipboards to u32strings
With this commit the base class variables and the parts where getClipboard and setClipboard are used is changed accordingly.
2020-08-30 14:43:41 +02:00
SupSuper
bcb7d1f30c BACKENDS: Discord rich presence support
Adds support for showing the currently running game
in a Discord user's game activity.
2020-08-25 10:47:41 +02:00
Cameron Cawley
b9d2b87085 BACKENDS: Move MixerManager code into ModularMixerBackend 2020-08-24 14:22:35 +02:00
Cameron Cawley
697d1a8672 BACKENDS: Added an abstract MixerManager class 2020-08-24 14:22:35 +02:00
Cameron Cawley
7745ffdac1 BACKENDS: Simplify EventsBaseBackend 2020-08-24 14:22:35 +02:00
Cameron Cawley
75852a786a BACKENDS: Split ModularBackend into two separate classes 2020-08-24 14:22:35 +02:00