This new mode is functionally identical to playback mode, however
a new recording file is used to track the actual output of ScummVM.
This feature can be used to update a suite of existing recordings after
a renderer or a timing change.
Screen update boundaries are now used as sync points.
Screenshots are now processed on a screen update boundary.
This change increments the version of the Event Recorder
file format to 2; version 1 files will still play back as
before, without synchronising to screen updates.
The assignment back to _saveList is required, because the initial read does
not assign playtime.
In case the slot is empty, querySaveMetaInfos returns an empty description
with saveSlot -1 on most engines, so _saveList[selItem] loses its slot.
Cover this by adding a check.
Reverts 0425dff8245fd07329753a1f9c9cf91b4e79c534.
This revert part of a17816f1 (GUI: Warn when saving a "young" game
over an "older" one).
The issue was that when trying to save in a new slot with the list
save dialog, this was not creating the save.
This finishes to fix bug #12850
In my case I had a section where only the gameid was defined and no path.
Obviously this is not valid and I cannot start that game. But this is not
a reason to crash with an unknown "path" key error when starting ScummVM.
This was a regression introduced in fea19c69a. The code forgot to
add the margin on either side of the text when computing the width
of the dialog.
I also introduced a variable with the mergin value to clarify the
code (and also make it easy to change that margin in the future if
we want to).
Now that we can get an accurate HiDPI screen scaling from OSystem,
defaulting to using that seems to make sense. But we may still want
to use a slightly different scaling. The GUI scale option allows
that by providing a scaling (in percentage) with which to multiply
the HiDPI scaling.
I think it works better than a base resolution as it avoids having
the GUI getting bigger or smaller when we resize the window.
This commit keeps a popup widget, but this could be changed with
a slider if we want more fine grain control.
This properly fix bug encountered in 5af11925809267eee1abd5ddf251530f6f5f5572
Now the UI is notified size has changed and properly reiszes overlay
surface.