A simple fix is to replace the $wnd.__dispatchEvent() call with
$wnd.__dispatchEvent.call(this);
Here's a test class:
public class Test implements EntryPoint {
private HTML debug;
public void onModuleLoad() {
debug = new HTML();
FlowPanel panel = new FlowPanel() {
public void onBrowserEvent(Event event) {
debug.setHTML(debug.getHTML() + "<br/>" +
DOM.eventGetTypeString(event));
}
};
panel.sinkEvents(Event.ONCLICK | Event.ONDBLCLICK);
DOM.setStyleAttribute(panel.getElement(), "border", "1px solid
blue");
panel.setSize("100px", "100px");
RootPanel.get().add(panel);
RootPanel.get().add(debug);
}
}