Hi All, Normally calls to NPN_InvalidateRect will trigger a matching call to the drawRect event. This is the case in FireFox 32 and 64 (minefield release candidates) and Safari 32-bit However Safari-64 bit does something quite different. Here there is only ONE recursive call into drawRect, but no further calls thereafter. Here is an example of a typical order of events. 1) a mouseDown event is sent to the plugin 2) the user starts dragging the mouse and the plugin calls NPN_InvalidateRect in a loop 3) something else is called like [NSApp nextEventMatchingmask...] that allows re-entrance 4) drawRect gets called recursively and the plugin updates the screen & continues back to step (2) above 5) the mouse is released Normally this will trigger: (1) followed by (2, 3, 4) over and over again until (5) On Safari 64 bit this will trigger: (1) with (2, 3, 4) once and then (2, 3) over and over again until (5) In other words, Safari only send ONE recursive call to drawRect no matter how many times NPN_InvalidateRect is called in the loop So it is like the message pump is not running to keep sending recursive events in response to NPN_InvalidateRect Thanks, let me know how to help Bill Appleton CTO @ DreamFactory Software
Whoops the latest version of Safari fixes this bug thanks all...