Comment 136 for bug 193141

Revision history for this message
In , Jmathies (jmathies) wrote :

> I wonder if Windows delivers window messages anywhere where we can grab them
> and run our event loop normally.

It does, we have for example a hidden event window that can receive events during the operation. All other win32 window event procedures also continue to receive events. One experiment I tried was to set a timer in the event window during drag operations to keep event processing occurring which worked. Setting and clearing this from nsDragService was a pain and js timers were still inaccurate though due to the resolution of the timer.

Overall this patch still seems like the simplest solution. The only drawback is that event processing will stop if the mouse leaves all moz created windows and remains stationary. Events will get processed if the mouse sits over one of our windows and is stationary as windows continues to send event callbacks in this case.

Any other suggestions on alternative approaches are welcome. :) I'd be happy to test them out. My experience with our event system / windowing is pretty new so I'd welcome any feedback / ideas.

> just don't add that extraneous space into nsDragService.cpp.

Sorry, should have caught that. Will clean it up and repost.