Page 1 of 1

MoveDisplay() and the OS4 Version of Hollywood

Posted: Sun Sep 28, 2014 12:37 am
by PEB
Hi Andreas,

There seems to be something wrong with MoveDisplay() on OS4. This code works as expected:

Code: Select all

WaitLeftMouse()
For x=1 To 15
	Wait(10)
	MoveDisplay(#CENTER+x, #CENTER)
Next
For x=14 To 0 Step -1
	Wait(10)
	MoveDisplay(#CENTER+x, #CENTER)
Next
However, if I remove the Wait() in each loop, the display does not return to the center of the screen (it just keeps going to the right). This problem shows up on my OS4 machine; but I tried compiling it for Windows, and it worked correctly---with or without the Wait().

Re: MoveDisplay() and the OS4 Version of Hollywood

Posted: Mon Sep 29, 2014 12:35 am
by airsoftsoftwair
That's not a bug in Hollywood but just the way Intuition works on all AmigaOS implementations. It's an asynchronous window manager design so position change requests are not done immediately but deferred until the next input event. I'd guess that the old request is just deleted then if there's already a newer one or it is executed but you don't notice it because refresh is not done before all requests have been handled.