Commit Graph
437 Commits
Author SHA1 Message Date
Cameron Cawley 138a983d80 COMMON: Refactor VSync handling to match the other options 2023-01-16 18:09:53 +01:00
Le Philousophe 87bad2cc7d COMMON: Allow games to use overlay for something else than GUI
This can be used for subtitles without changing the mouse coordinates.
2022-11-12 19:12:05 +01:00
Eugene Sandulenko 475d2e119a COMMON: Added OSystem::kTransactionShaderChangeFailed enum value 2022-10-08 23:39:18 +02:00
Cameron Cawley 79fff69231 COMMON: Use Common::String for OSystem::setShader 2022-10-08 23:39:18 +02:00
Cameron Cawley 64c359b5cb GUI: Replace the options for selecting shaders 2022-10-08 23:39:18 +02:00
Le Philousophe 4ab044a254 OPENGL: Merge both OpenGL contexts 2022-06-26 18:32:10 +02: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
Cameron Cawley a8579176d4 GUI: Remove kFeatureOnScreenControl and kFeatureSwapMenuAndBackButtons 2022-02-07 00:53:34 +02:00
Thunderforge fd129ebc0c JANITORIAL: "Mac OS X" and "OS X" to "macOS" in comments
Apple's desktop operating system was formerly called "Mac OS X" and "OS X", but since 2016 it has been called "macOS" (starting with version 10.12).

Changing across all comments and documentation to use this current terminology, except in cases where the historical versions are explicitly referenced. No code changes are made; we should consider changing those in future PRs.
2022-01-29 14:15:05 +01:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Paweł Kołodziejski 2a7aa00c85 BACKENDS: Remove PixelBuffer leftovers 2021-11-27 21:22:09 +01:00
Cameron Cawley a21961516a GRAPHICS: Split ScalerPluginObject into two classes 2021-11-23 23:32:58 +01:00
Cameron Cawley 5022489277 BACKENDS: Refactor the API for creating Mutexes 2021-11-12 20:19:45 +01:00
Thierry Crozat abf782c670 COMMON: Remove kFeatureHiDPI from OSystem and use getHiDPIScreenFactor instead 2021-08-13 21:41:33 +01:00
Thierry Crozat 6d8462674f COMMON: Add getHiDPIScreenFactor to OSystem 2021-08-13 21:41:33 +01:00
Thierry Crozat 1af6ae593a COMMON: Change OSystem::getSystemLanguage to always return a language code 2021-08-04 19:28:47 +01:00
antoniou 84323fc78e ANDROID: Remove checkbox for Android SAF from global options
Themes rebuilt, and version bumped to SCUMMVM_STX0.8.50
2021-08-02 22:57:37 +03:00
antoniou 250206bd00 ANDROID: Add a checkbox for a revoke SAF permissions button
Themes were updated to version SCUMMVM_THEME_VERSION_STR "SCUMMVM_STX0.8.48"
2021-08-01 16:10:54 +03:00
Cameron Cawley 74e7d777a9 BACKENDS: Add OSystem::messageBox() and use it for error handling 2021-07-27 20:50:51 +02:00
athrxx 44bfd2a220 COMMON: remove Encoding leftovers
(class does not exist any more)
2021-07-10 01:10:04 +02:00
Martin Gerhardy a0c237f7b9 EVENTRECORDER: added new event for OSystem::getTimeAndDate 2021-07-09 19:23:21 +02:00
Torbjörn Andersson a54269a594 COMMON: Fix documentation for grabOverlay().
It takes a surface now, not a buffer.
2021-06-30 18:59:34 +02:00
Orgad Shaneh 780c4568c1 GUI: Fix compiler warning
../scummvm/gui/options.cpp: In member function 'virtual void GUI::OptionsDialog::apply()':
../scummvm/gui/options.cpp:647:82: warning: comparison of integer expressions of different signedness: 'uint' {aka 'unsigned int'} and 'int' [-Wsign-compare]
  647 |     else if (scalerPlugins[defaultScaler]->get<ScalerPluginObject>().getFactor() != g_system->getDefaultScaleFactor())
      |              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2021-06-24 11:34:45 +03:00
Cameron Cawley da5d773924 BACKENDS: Add getDefaultScaler and getDefaultScaleFactor to OSystem 2021-06-23 21:29:53 +02:00
Cameron Cawley 0e6b9c2bb6 SDL: Begin refactoring the API for selecting scalers 2021-06-23 21:29:53 +02:00
Martin Gerhardy 5af1192580 BACKENDS: fixed segfault in EventRecorder with buffer out of bounds writes
==3124361== Invalid write of size 8
==3124361==    at 0x483F803: memmove (vg_replace_strmem.c:1270)
==3124361==    by 0x4DBF61: SurfaceSdlGraphicsManager::grabOverlay(void*, int) const (surfacesdl-graphics.cpp:1753)
==3124361==    by 0x482051: ModularGraphicsBackend::grabOverlay(void*, int) (modular-backend.cpp:215)
==3124361==    by 0x434EE1: GUI::ThemeEngine::clearAll() (ThemeEngine.cpp:376)
==3124361==    by 0x40128E: GUI::EventRecorder::preDrawOverlayGui() (EventRecorder.cpp:558)
==3124361==    by 0x481DB2: ModularGraphicsBackend::updateScreen() (modular-backend.cpp:173)
==3124361==    by 0x559967: Graphics::Screen::updateScreen() (screen.cpp:62)
==3124361==    by 0x55991C: Graphics::Screen::update() (screen.cpp:56)
==3124361==    by 0x38AFC7: TwinE::TwineScreen::update() (twine.cpp:126)
==3124361==    by 0x3B8759: TwinE::Screens::adjustPalette(unsigned char, unsigned char, unsigned char, unsigned int const*, int) (screens.cpp:150)
==3124361==    by 0x3B8A89: TwinE::Screens::fadeToPal(unsigned int const*) (screens.cpp:207)
==3124361==    by 0x3B8403: TwinE::Screens::loadImage(int, int, bool) (screens.cpp:80)
==3124361==  Address 0x31453050 is 16 bytes after a block of size 512,000 alloc'd
==3124361==    at 0x483AB65: calloc (vg_replace_malloc.c:760)
==3124361==    by 0x55B38C: Graphics::Surface::create(unsigned short, unsigned short, Graphics::PixelFormat const&) (surface.cpp:75)
==3124361==    by 0x551111: Graphics::ManagedSurface::create(unsigned short, unsigned short, Graphics::PixelFormat const&) (managed_surface.cpp:153)
==3124361==    by 0x4352D5: GUI::ThemeEngine::setGraphicsMode(GUI::ThemeEngine::GraphicsMode) (ThemeEngine.cpp:453)
==3124361==    by 0x434A52: GUI::ThemeEngine::init() (ThemeEngine.cpp:324)
==3124361==    by 0x43501B: GUI::ThemeEngine::refresh() (ThemeEngine.cpp:394)
==3124361==    by 0x405780: GUI::GuiManager::screenChange() (gui-manager.cpp:603)
==3124361==    by 0x405C6B: GUI::GuiManager::processEvent(Common::Event const&, GUI::Dialog*) (gui-manager.cpp:677)
==3124361==    by 0x404EBA: GUI::GuiManager::runLoop() (gui-manager.cpp:429)
==3124361==    by 0x3FD847: GUI::Dialog::runModal() (dialog.cpp:77)
==3124361==    by 0x36D747: launcherDialog() (main.cpp:106)
==3124361==    by 0x36FF92: scummvm_main (main.cpp:552)

It looks like the _videoMode.overlayHeight in SurfaceSdlGraphicsManager::grabOverlay and ThemeEngine::_backBuffer::h are somehow out of sync after
starting the game in a different resolution as the gui was started with. So the overlayHeight is updated - but the backbuffer (Surface) is not resized.

This is with event recorder being active - right after starting the game and switching the resolution.
2021-06-19 14:34:52 +02:00
Martin Gerhardy 9d82fa51df COMMON: removed USE_TTS check from engines
OSystem now just returns a nullptr if there is no text to speech manager instance
(because none is compiled into the binary, or the system doesn't provide support
for it). This removed the need for the engine authors to add scummvm osystem compile
time options checks into their engine code
2021-05-03 14:13:41 +03:00
Eugene Sandulenko 5e7fe2dc57 JANITORIAL: Replace spaces in indentation with tabs 2021-04-15 21:20:36 +02:00
Eugene Sandulenko c06d47e397 COMMON: Added kFeatureHiDPI and return it from the backend 2021-04-11 21:21:44 +02:00
Martin Gerhardy 1d184f845c COMMON: removed trailing whitespaces 2021-01-03 13:06:23 +01:00
Martin Gerhardy d69e6f2e1e COMMON: removed wild living semicolons 2021-01-03 13:06:23 +01:00
Cameron Cawley 01b4432825 BACKENDS: Use Common::U32String for OSystem::setWindowCaption 2020-11-22 17:20:19 +00:00
Cameron Cawley 11724f9df1 GUI: Add a tab for backend-specific options 2020-11-22 16:35:03 +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
Bartosz Gentkowski 487b6af090 DOXYGEN: Changes to stream.h and system.h
Review and improve doxygen comments in stream.h and system.h.
2020-11-12 21:23:29 +00:00
Thierry Crozat a509afdf4d COMMON: Remove resetGraphicsScale from OSystem
This function used to be called from the Engine class, but was
not longer used since commit 432fd522. The single remaining use
was an internal use in the SurfaceSdlGraphicsManager, and I kept
the behaviour there while removing the function.
2020-11-12 21:05:36 +00:00
Eugene Sandulenko 390cbc6ba0 COMMON: Fix compilation 2020-10-14 14:18:34 +02:00
Paweł Kołodziejski 723ffa111b BACKENDS: Remove accel3d flag completely. 2020-10-13 23:00:19 +02:00
Paweł Kołodziejski 070d274bf7 BACKENDS: Drop getScreenPixelBuffer() as no longer needed. (#2521) 2020-10-13 22:30:39 +02:00
Paweł Kołodziejski 59ba9cb715 SDL: Do not allow toggle fullscreen for backends which can lose opengl context used for 3d games. (#2514) 2020-10-13 20:27:58 +02:00
Eugene Sandulenko 752f97f072 COMMON: Remove default implementation for OSystem::getScreenPixelBuffer()
Otherwise it brings circular dependency, and we anyway have it already
in modular-backend.cpp
2020-10-09 23:31:43 +02:00
Paweł Kołodziejski 35b9cccbde ALL: Merge ResidualVM 2020-10-09 19:44:13 +02:00
Pawel Kolodziejski c4b9f966b6 GRIM: Drop side textures feature from backend. 2020-10-05 19:09:58 +02:00
Pawel Kolodziejski 4631c0e2ed ALL: Sync with ScummVM rev: a4002bdeee 2020-10-04 23:59:26 +02:00
Bartosz Gentkowski ec24687ce4 DOXYGEN: Add doxygen groups to header files in the common folder
Adding @defgroup and @ingroup doxygen tags into all headers
in the common folder that contain doxygen blocks.

This improves the structure, readability, and findability
of information in the resulting output.

This commit targets purely structure and does not deal with
the content of the currently existing doxygen documentation.
2020-10-04 18:25:50 +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 89a0638f4b COMMON: Cleanup code comments 2020-09-27 19:35:07 +02:00
Pawel Kolodziejski e9b528549e COMMON: Make system methods optionally 2020-09-25 11:16:31 +02:00
Pawel Kolodziejski bfe58d3c77 ALL: Synced with ScummVM - rev: d4db631f9b 2020-09-23 21:52:10 +02:00