Sorry for the title, but the conditions to cause this bug are complex.
And superficially it seems to be an ordinary flattening bug related to some incorrectly ported line of our code.
But the dependency of wmode is strange.
What’s it about: A displayobject in starling is not redrawn only if the wmode is ‘gpu’ instead of ‘direct’ wheres the focus is on another swf or another application.
- the displayobject is a sprite that contains other displayobjects which are tweened
- browser-embedded swf (tested with and seen in firefox, maxthon, IE)
- swf is embedded in html with swf-object and wmode “gpu”.
- embedded swf is not focused, focus is on another swf (on same page) or on another application (outside browser)
- flattening and unflattening occured in the meantime while focus was elsewhere
- then a click on a flash-display-list-button is pressed which triggers an animation within the starling displayobject
- its animation starts but is freezed than shortly after (like it happens sometimes when using flattening the wrong way)
- the mouse cursor acts as if the sub objects are at the correct place (after anmiation has theoretically ended)
- it stays freezed until another click onto the starling stage or a second click onto another flash display object.
Unfortunately, I was not able to reproduce it with a simple test application.
We are currently moving from as3 to haxe, starting with our browser applications. Soon we will work on export to html5.
So I actually don’t really have time to investigate this further.
But at least you have some report.
However, if you had some hint, I would still be glad to hear it.