diff --git a/user/src/com/google/gwt/dom/client/DOMImplMozilla.java b/user/src/com/google/gwt/dom/client/DOMImplMozilla.java
index 49519e0..1ff4cc3 100644
--- a/user/src/com/google/gwt/dom/client/DOMImplMozilla.java
+++ b/user/src/com/google/gwt/dom/client/DOMImplMozilla.java
@@ -20,6 +20,16 @@
  */
 class DOMImplMozilla extends DOMImplStandard {
 
+  public native void buttonClick(ButtonElement button) /*-{
+    var doc = button.ownerDocument;
+    if (doc != null) {
+      var evt = doc.createEvent('MouseEvents');
+      evt.initMouseEvent('click', true, true, null, 0, 0,
+        0, 0, 0, false, false, false, false, 0, null);
+      button.dispatchEvent(evt);
+    }
+  }-*/;
+
   @Override
   public native int eventGetMouseWheelVelocityY(NativeEvent evt) /*-{
     return evt.detail || 0;
diff --git a/user/src/com/google/gwt/dom/client/DOMImplMozillaOld.java b/user/src/com/google/gwt/dom/client/DOMImplMozillaOld.java
index 6b22e52..b4e375b 100644
--- a/user/src/com/google/gwt/dom/client/DOMImplMozillaOld.java
+++ b/user/src/com/google/gwt/dom/client/DOMImplMozillaOld.java
@@ -24,16 +24,6 @@
  */
  class DOMImplMozillaOld extends DOMImplMozilla {
 
-  public native void buttonClick(ButtonElement button) /*-{
-    var doc = button.ownerDocument;
-    if (doc != null) {
-      var evt = doc.createEvent('MouseEvents');
-      evt.initMouseEvent('click', true, true, null, 0, 0,
-        0, 0, 0, false, false, false, false, 0, null);
-      button.dispatchEvent(evt);
-    }
-  }-*/;
-
   @Override
   public native int getAbsoluteLeft(Element elem) /*-{
     var style = $doc.defaultView.getComputedStyle(elem, null);
