They do not support it and it fails on invalidateIntrinsicContentSize
As the touch bar was introduced in 10.12.2, check the SDK version
against this define instead on 10.12.
It builds a fat AAB for Google Play submission and several slim APKs for
the website.
It also uses the proper flags for configure and handles games bundling.
libpng never returns the palette size when the palette pointer argument
is nullptr.
If it worked before, it's because paletteSize was uninitialized and luck.
The default savepath on macOS used to be in the user Document folder.
However ScummVM requires special permission to access that folder,
and if the user denied it, this caused various issues.
This implement ticket #11428.
This commit also contains migration code that that old configs that
used the default path are set explicitly to use the old default path.
So the change of savepath will only be for new users.
When the engine doesn't sepcify any cursor, an empty cursor is on the
stack.
When restoring it after displaying the virtual keyboard, if the game is
not CLUT8, the game and the cursor palette are nullptr.
In this case, clear the palette.
The New 3DS requires more linear memory to launch the app than the Old 3DS does; this was causing the 3DS port to instantly crash on New 3DS models.
This commit fixes that while allowing for future functionality coming soon(TM).
The "scale_factor" setting can be -1, which means the default. But
instead it was hardcoded to 1, which is wrong for the SurfaceSDL
graphics mode where the default is 2.
- seamless resolution/palette switching (at least in theory, it still
isn't artifact-free, no clue why)
- bugfixes (shake offset, some s_screenSurf corner cases)
- simplification the triple-buffering code
This shaves off a good 800 KB from all the engines. However, do keep
local atari debug messages for diagnostic purposes.
Also, use natfeats for debug output when possible else the classic
stdout/stderr (not both as before).
Normally when using the OpenGL mode the window is not resized when
starting a game, unless the game requires a window bigger than the
current window size. However this was not the case if the engine
called initSizeHint() with sizes smaller than the current window
size, as in this case the window was forcibly resized to the bigger
of those provided sizes.
The initSizeHint() function was added for engines that use multiple
resolutions to indicate when starting the engine that it may use
multiple resolutions and thus may need a bigger window later than
when the game starts. This allows getting the bigger size from the
start and prevent window resize during gameplay. But this function
was not meant to make the window smaller if the graphics backend
request an even bigger size, which may be the case of the OpenGLSDL
graphics backend as it tries to preserve the current window size.
imgui_draw.cpp:3730: warning: cast from type 'const ImFontGlyph*' to type 'void*' casts away qualifiers [-Wcast-qual]
imgui_draw.cpp: In member function 'void ImFont::SetGlyphVisible(ImWchar, bool)':
imgui_draw.cpp:3730:44: warning: cast from type 'const ImFontGlyph*' to type 'void*' casts away qualifiers [-Wcast-qual]
3730 | if (ImFontGlyph* glyph = (ImFontGlyph*)(void*)FindGlyph((ImWchar)c))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
This is a fairly trivial change to use the newer API in DIRECTOR,
QDENGINE and TWP engines, so not likely to cause any regressions.
This has the side effect of removing some GCC compiler warnings.