Community
Participate
Working Groups
To reproduce: In controlsdemo go to "Dialogs", "ProgressDialog". Click "cancel" before progressbar is full. The dialog wont close. Not clear if its a bug in the demo or RWT.
I think that this bug is the same with bug 315418. My investigation shows the same symptoms - see bug 315418 comment #16.
Just for the record - in v14_Maintenance everything works fine.
Looks like we broke it during the UICallBack refactoring.
Created attachment 203819 [details] Draft patch
Created attachment 203996 [details] Fix It took changes in two places to fix this bug. Display#wake() was broken in that it did only work if there was already a callback-request standing when waske() was invoked. This patch changes the implementation of wake() in that now it works as if an empty runnable was passed to asyncExec(). In addition, Javascript code to deactivate the ui-callback is now only sent from the callback-request. Previously, ordinary ui-requests as well as callback-requests notified the client when the ui-calback was deactivated. This led to situations where the client stopped sending callback requests too early.
Applied patch from comment #5 to CVS HEAD.