|Re: [hatari-devel] Mouse pointer not reset when loading save state from menu|
[ Thread Index |
| More lists.tuxfamily.org/hatari-devel Archives
On 18/06/2012 22:19, Eero Tamminen wrote:
On torstai 14 kesäkuu 2012, Charlie Nolan wrote:
When loading a save state from the F12 menu, Hatari does not reset the
mouse pointer as it does when leaving the F12 menu normally.
What means "does not reset the mouse pointer"?
As Charlie described, it means you see 2 cursors in Hatari's screen :
the TOS' one and the host's (linux in my case) one.
Both cursor are moving "in sync", but with a certain amount of pixels
between each of them.
The problem is that host's pointer should not be visible when over
Hatari's screen, but in that case it's visible.
This causes the host mouse cursor to become visible
Does this happen on Linux? With which SDL version?
linux, sdl 1.2.15
As far as I can see from code, the cursor should be hidden
whenever one exits from a dialog, except if one:
* invoked file selector with keyboard shortcut
(not from one of the options dialog), AND
I press F12, click on mememory, click on restore, click on the save
file, press enter several time until I'm back in emulation.
* there was some kind of an error.
(If there was an error, you should see some message in console.)
No message in the console when this happens.
Attached patch should fix that corner case.
Does that help?
Unfortunately not ; I tried restoring a savestate, and I get 2 cursors
when I restore the same savestate twice in a row (that is : start hatari
with --memstate option, cursor is OK, press F12 to reload again the same
savestate, 2 cursors are visible).
In my case, I reproduce this easily :
- start hatari with STF mode, 4 MB, TOS 1.04 and HD emulation (no disk
in A:) (I don't know if all of this matters, but that's my config)
- tos appears, ST's cursor is in the middle of the screen
- press F12, save memory state
- go back to emulation, cursor is OK.
- press F12, reload same memory state (several times if needed)
- host's cursor is now visible again and doesn't disappear as it should..