mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-14 23:32:20 +00:00
Let Retry finish a frame event a throwing listener cut short
Cesium's Event.raiseEvent leaves an event mid-raise when a listener throws, so listeners added or removed afterwards stay queued. Retry now applies that queue for the frame and clock events: the notice's frame watchers see the next frame, and a listener removed since, such as a layer turned off, is not called again.
This commit is contained in:
1 parent
628de8386d
commit
02a8442e6e
4 files changed
+175
No files matched your search
@@ -1599,6 +1599,11 @@ render error before Cesium's loop handles it as before.
|
||||
- **Retry** after a render error restarts the render loop. The notice stays
|
||||
until a frame starts and ends without a render error (Cesium raises
|
||||
`postRender` after a failed frame too), and a loop that fails again keeps it.
|
||||
A listener that throws leaves its Cesium event mid-raise, with listeners
|
||||
added or removed since only queued, so Retry first applies the queue of the
|
||||
frame and clock events (`finishRaise()`): the notice's frame watchers start
|
||||
with the next frame, and a listener removed since, for a layer turned off,
|
||||
is not called again.
|
||||
- **Reload** after a lost context reloads the page: Cesium cannot draw into a
|
||||
context it has lost, and the address keeps the view.
|
||||
- **Reset view** opens the app's root address (`appRootUrl()`), without the
|
||||
|
||||
Reference in new issue
Block a user