aboutsummaryrefslogtreecommitdiff
path: root/backends/graphics/surfacesdl
AgeCommit message (Collapse)Author
2015-05-20SDL: Fix compilation with SDL2.Johannes Schickel
2015-05-16SDL: Restore the original video mode when unloading the Surface graphics managerLittleboy
We set a custom video mode that might have a different BPP from the default. To ensure that other graphics managers will get the proper results when listing available video modes, we need to restore the initial BPP when unloading. This fixes an issue when switching to OpenGL on Windows 8 and later. On those OSes, fullscreen OpenGL only has a 32bpp mode. It is correctly listed in the options but we call SLD_SetVideoMode later in the surface graphics manager. When we list the mode again after a switch, the internally selected BPP is still 16 and we fail to find any available fullscreen modes.
2015-02-16SDL: Add basic abstraction class for the SDL window.Johannes Schickel
2015-01-25SDL: Add experimental support for SDL2.Johannes Schickel
This is based upon skristiansson's change set to make ScummVM work with SDL2.
2015-01-25SDL: Refactor WM specific functionality into SdlGraphicsManager.Johannes Schickel
2014-02-18SDL: Make GPL headers consistent in themselves.Johannes Schickel
2014-01-23Merge pull request #409 from lordhoto/rttiJohannes Schickel
Enable RTTI and clean up the code by exploiting the availability of dynamic_cast.
2014-01-11SDL: Avoid having SDL_SRCALPHA set even if we have alpha in the pixelformat.Einar Johan Trøan Sømåen
2014-01-07SDL: Silence unused variable warning when scalers are disabled.Johannes Schickel
2014-01-07SDL: Fix return value of getDefaultGraphicsMode when scalers are disabled.Johannes Schickel
2013-10-24SDL: Further small cleanup related to manager switching.Johannes Schickel
2013-10-24SDL: Make activateManager/deactivateManager SdlGraphicsManager specific.Johannes Schickel
We can do this now that we can use virtual inheritance and dynamic_cast because we enabled RTTI.
2013-10-24SDL: Let SdlGraphicsManager inherit from GraphicsManager.Johannes Schickel
2013-10-23SDL: Do not require a static graphics mode list in OpenGL and SurfaceSDL.Johannes Schickel
2013-10-23SDL: Always initialize video subsystem in initSDL.Johannes Schickel
2013-10-23SDL: Clean up graphics manager switching slighty.Johannes Schickel
Sadly this also requires us to extend GraphicsManager for this SDL specific feature. However, since that's only used in the SDL backend and Tizen it should be fine for now...
2013-08-03SDL: Do not set Surface::pixels directly anymore.Johannes Schickel
2013-08-03SDL: Take advantage of Surface::getPixels.Johannes Schickel
2013-08-03SDL: Prefer getBasePtr over direct Surface::pixels access.Johannes Schickel
2013-07-14JANITORIAL: Remove trailing whitespaceSven Hesse
2013-07-04GUI: Cleanup EventRecorder::getSurface.Johannes Schickel
Formerly the function created a SDL_Surface by hand. Instead now it uses SDL_CreateRGBSurface (which is used in the SDL backend anyway and yields the same results). This should fix PS3 port compilation.
2013-07-04RECORDER: Fix guard ifdefEugene Sandulenko
2013-05-17RECORDER: Implement Events RecorderEugene Sandulenko
2013-01-09SDL: Silence C++ narrowing warnings.Johannes Schickel
2012-06-16ALL: Let overlay related methods in OSystem take a void * and use a proper ↵Johannes Schickel
pitch values. This is a first step to get rid of OverlayColor, which is a requirement for proper 4Bpp overlay support.
2012-06-16BACKENDS: Make OSystem::setMouseCursor take a "const void *" buffer.Johannes Schickel
This is mainly for consistency with OSystem::copyRectToScreen.
2012-06-16BACKENDS: Let copyRectToScreen take a "const void *" instead of "const byte ↵Johannes Schickel
*" as buffer. This removes the need to convert the parameter to copyRectToScreen to "const byte *", which is commonly used in games, which use Graphics::Surface to store their graphics data.
2012-06-03ALL: Replace cursorTargetScale in OSystem API with a simple "do not scale" ↵Johannes Schickel
logic. All uses of the old target scale API actually wanted to disallow scaling of the mouse cursor. This commit adapts our API to this and thus simplifies backend implementations. Some backends, most notable the Wii and Android, did some implementation of the cursor target scale, which I didn't adapt yet. I added a TODO for the porters there.
2012-05-31ALL: Correct spelling of "Mac OS X" in various placesMax Horn
2012-03-17ALL: Make use of defined() for the preprocessor consistent.Johannes Schickel
This does not change the use of defined for some NDS source files, since they seem to be (based on?) third party code.
2011-10-03SURFACESDL: Stop forceful resetting of _videoMode.hardware* when calling ↵David-John Willis
SurfaceSdlGraphicsManager::loadGFXMode() for the GPH backend. * Note: This really should be cleaned up and all backends that have a custom loadGFXMode() really should setup their own _videoMode.hardware* settings. Assuming the overlay will always match the hardware is flawed logic on devices with fixed hardware screens. * Just done for the GPH backend for now to cut down on the regresion risk to other backends near the 1.4.0 release cycle.
2011-08-11SDL: Implement a hellish workaround to fix bug #3368143.Johannes Schickel
The bug in question is "SDL/OpenGL: Crash when switching renderer backend". To fix it I added a stupid graphics state copying to the SDL backend, in case the graphics manager is switched. The implementation of this is considered a pure workaround, no one should ever do it like this in reality... I just want to die when looking at this... Not sure why I actually committed it. Anyway it at least makes the OpenGL backend testable for those who do not want to fiddle with the config file directly.
2011-08-09SDL: Slight clean up in the surface based graphics manager.Johannes Schickel
2011-08-09SDL: Take advantage of SdlGraphicsManager.Johannes Schickel
This gets rid of the hacks, where SdlEventSource added events with custom type numbers to pass SDL_VIDEOEXPOSE and SDL_VIDEORESIZE to the graphics manager. Furthermore it get rids of the uninituitive and hard to trace way of assigning the proper mouse coordinates to mouse related events. Formerly it passed the real screen coordinates through the even dispatching api to the graphics manager (at least hopefully ;-) and let that handle creating a new event with the proper coordinates. Now instead SdlEventSource handles the proper coordinate setup itself. Since this is a behavior change and I can not test all the SDL based small devices ports this commit might break compilation for them and more serve it might also break mouse position behavior. If any of that occurs I am sorry about it.
2011-08-09SDL: Let SDL based graphics managers inherit from SdlGraphicsManager.Johannes Schickel
This also adapts port I can not test (not even the compilation). So if this breaks anything I am sorry about it.
2011-07-02SDL: Remove an unnecessary memsetBastien Bouclet
2011-07-02SDL: Set a black palette by default.Bastien Bouclet
This fixes white flashing screens when using SDL 1.3. SDL 1.3 palettes are all white by default, whereas SDL 1.2 palettes are all black ...
2011-06-20ALL: Remove trailing whitespacesMax Horn
This tries to make our code a bit more compliant with our code formatting conventions. For future use, this is the command I used: git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-06-19SDL: Rename SdlGraphicsManager to SurfaceSdlGraphicsManager to reflect its ↵Johannes Schickel
purpose. Hopefully I catched all uses of the old name in our ports...