Second attempt at fixing #6956
"ScummVM returned with unfreed signals (AmigaOS4)"
This only runs the cleanup code if the OSystem_AmigaOS
instance has not been destroyed already.
When a 3D game does not support arbitrary resolutions a framebuffer
has to be created. The initSize method can be called multiple times
with different resolutions. Make sure to delete any existing
framebuffer before creating a new.
Left mouse clicks are generated by tap gestures. To protect against
false mouse clicks the tap gesture is cancelled if the finger is
moved. Normally a tap gesture is generating a touchesBegan event
but doesn't generate any touchesMoved events. But for some devices,
not sure if it's the device or if the screen is broken, a false
touchesMoved event can be triggered even though the coordinates
aren't changed at all.
Add a check to see if the coordinate has changed from when the touch
began to see if the tap gesture should be cancelled or not.
The backend options widget is now in a scrollcontainer widget.
Change the options widget to not be scrollable since the parent
widget is and remove unnecessary padding.
Make .rh files dependent on their contents (maybe they should be deps of the .rc file?)
Make .rh files dependent on the .mk file that their item lists come from
Fix .rh files not creating destination directory
Fix .rh dependencies of .rc file being source-relative instead of build-relative
Fix .rh clean paths being source-relative instead of build-relative
Fix .rh generation appending to the old .rh instead of overwriting
It's not always set correctly by engines (AGS) and a fill call to clear
the screen will set it to 0 along with the other components.
Setting the framebuffer to some transparent value is not something we
intend to do as this let the content underneath the drawing texture
visible like it's the case on ChromeOS.
This has been reported here: https://forums.scummvm.org/viewtopic.php?p=99293
Now double-click works also on really slow hardware. And Hatari.
Also, partially revert commit 01a2d2ed because events can't be passed
to the (multitasking) OS. So basically let's hope that it works fine now
even without handling IKBD overruns. I'm not able to replicate the issue
with Hatari + FF + slow UI + mouse movement anymore.
This helps to solve the issue when one pushes 'Return' immediately after
Hatari's start. This issue appeared after introducing the
interrupt-driven audio mixer.
Not sure whether this was a real bug but it's much cleaner
implementation now anyway.
- every malloc is now aligned on 16 bytes
- no need for the hidden pointers
- ct60_vmalloc() is called only once, the rest is handled
by dlmalloc (SV XBIOS' vmalloc is pretty fragile)
This not only decreases the amount of XBIOS calls but also avoids
repeating the sample buffer in case of a heavier CPU load.
Also clean up the mixer code.
Use the helper function to create an array of UIKeyCommands for the
END, HOME, PAGE UP, PAGE DOWN and the ESC keys. Add a generic handler
function that decides which action for which key.
This allows the application to register key presses of these keys,
however some of them requires iOS 13.4 or later.
Use the helper function to create an array of UIKeyCommands for the
Fn keys. Add a generic handler function that decides which action
for which key.
This allows the application to register key presses of the Fn keys,
however only supoorted in iOS 13.4 and later.