non fatal js exception escapes in IE9 devmode.
http://code.google.com/p/google-web-toolkit/issues/detail?id=6135
Review at http://gwt-code-reviews.appspot.com/1387802
Review by: jlabanca@google.com
git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@9861 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/core/client/impl/Impl.java b/user/src/com/google/gwt/core/client/impl/Impl.java
index 2aa0fb5..70fc457 100644
--- a/user/src/com/google/gwt/core/client/impl/Impl.java
+++ b/user/src/com/google/gwt/core/client/impl/Impl.java
@@ -167,7 +167,7 @@
if (@com.google.gwt.core.client.GWT::isScript()()) {
return jsFunction.apply(thisObj, arguments);
} else {
- _ = jsFunction.apply(thisObj, arguments);
+ var _ = jsFunction.apply(thisObj, arguments);
if (_ != null) {
// Wrap for Development Mode
_ = Object(_);
diff --git a/user/src/com/google/gwt/user/client/impl/DOMImplStandard.java b/user/src/com/google/gwt/user/client/impl/DOMImplStandard.java
index f40b951..087e8a9 100644
--- a/user/src/com/google/gwt/user/client/impl/DOMImplStandard.java
+++ b/user/src/com/google/gwt/user/client/impl/DOMImplStandard.java
@@ -145,8 +145,38 @@
@Override
protected native void initEventSystem() /*-{
+ @com.google.gwt.user.client.impl.DOMImplStandard::dispatchCapturedEvent = $entry(function(evt) {
+ if (!@com.google.gwt.user.client.DOM::previewEvent(Lcom/google/gwt/user/client/Event;)(evt)) {
+ evt.stopPropagation();
+ evt.preventDefault();
+ return false;
+ }
+ return true;
+ });
+
+ @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent = $entry(function(evt) {
+ var listener, curElem = this;
+ while (curElem && !(listener = curElem.__listener)) {
+ curElem = curElem.parentNode;
+ }
+ if (curElem && curElem.nodeType != 1) {
+ curElem = null;
+ }
+ if (listener) {
+ if (@com.google.gwt.user.client.impl.DOMImpl::isMyListener(Ljava/lang/Object;)(listener)) {
+ @com.google.gwt.user.client.DOM::dispatchEvent(Lcom/google/gwt/user/client/Event;Lcom/google/gwt/user/client/Element;Lcom/google/gwt/user/client/EventListener;)(evt, curElem, listener);
+ }
+ }
+ });
+
+ @com.google.gwt.user.client.impl.DOMImplStandard::dispatchUnhandledEvent = $entry(function(evt) {
+ this.__gwtLastUnhandledEvent = evt.type;
+ @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent.call(this, evt);
+ });
+
@com.google.gwt.user.client.impl.DOMImplStandard::dispatchCapturedMouseEvent = $entry(function(evt) {
- if ((@com.google.gwt.user.client.impl.DOMImplStandard::dispatchCapturedEvent)(evt)) {
+ var dispatchCapturedEventFn = @com.google.gwt.user.client.impl.DOMImplStandard::dispatchCapturedEvent;
+ if (dispatchCapturedEventFn(evt)) {
var cap = @com.google.gwt.user.client.impl.DOMImplStandard::captureElem;
if (cap && cap.__listener) {
if (@com.google.gwt.user.client.impl.DOMImpl::isMyListener(Ljava/lang/Object;)(cap.__listener)) {
@@ -157,38 +187,6 @@
}
});
- @com.google.gwt.user.client.impl.DOMImplStandard::dispatchCapturedEvent = $entry(function(evt) {
- if (!@com.google.gwt.user.client.DOM::previewEvent(Lcom/google/gwt/user/client/Event;)(evt)) {
- evt.stopPropagation();
- evt.preventDefault();
- return false;
- }
-
- return true;
- });
-
- @com.google.gwt.user.client.impl.DOMImplStandard::dispatchUnhandledEvent = $entry(function(evt) {
- this.__gwtLastUnhandledEvent = evt.type;
- @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent.call(this, evt);
- });
-
- @com.google.gwt.user.client.impl.DOMImplStandard::dispatchEvent = $entry(function(evt) {
- var listener, curElem = this;
- while (curElem && !(listener = curElem.__listener)) {
- curElem = curElem.parentNode;
- }
-
- if (curElem && curElem.nodeType != 1) {
- curElem = null;
- }
-
- if (listener) {
- if (@com.google.gwt.user.client.impl.DOMImpl::isMyListener(Ljava/lang/Object;)(listener)) {
- @com.google.gwt.user.client.DOM::dispatchEvent(Lcom/google/gwt/user/client/Event;Lcom/google/gwt/user/client/Element;Lcom/google/gwt/user/client/EventListener;)(evt, curElem, listener);
- }
- }
- });
-
$wnd.addEventListener('click', @com.google.gwt.user.client.impl.DOMImplStandard::dispatchCapturedMouseEvent, true);
$wnd.addEventListener('dblclick', @com.google.gwt.user.client.impl.DOMImplStandard::dispatchCapturedMouseEvent, true);
$wnd.addEventListener('mousedown', @com.google.gwt.user.client.impl.DOMImplStandard::dispatchCapturedMouseEvent, true);
diff --git a/user/src/com/google/gwt/user/client/impl/DOMImplStandardBase.java b/user/src/com/google/gwt/user/client/impl/DOMImplStandardBase.java
index 3cfb006..a36b69c 100644
--- a/user/src/com/google/gwt/user/client/impl/DOMImplStandardBase.java
+++ b/user/src/com/google/gwt/user/client/impl/DOMImplStandardBase.java
@@ -16,7 +16,7 @@
package com.google.gwt.user.client.impl;
/**
- * Safari implementation of {@link com.google.gwt.user.client.impl.DOMImpl}.
+ * StandardBase implementation of {@link com.google.gwt.user.client.impl.DOMImpl}.
*/
class DOMImplStandardBase extends DOMImplStandard {
}