Revision: 9230
Author: jlaba...@google.com
Date: Mon Nov 15 02:27:58 2010
Log: Cherry picking r9216 and r9220 into release branch.

http://code.google.com/p/google-web-toolkit/source/detail?r=9230

Added:
 /releases/2.1/tools/api-checker/config/gwt21_22userApi.conf
Deleted:
 /releases/2.1/user/src/com/google/gwt/dom/client/DOMImplMozillaOld.java
/releases/2.1/user/src/com/google/gwt/user/client/impl/DOMImplMozillaOld.java /releases/2.1/user/src/com/google/gwt/user/client/ui/impl/RichTextAreaImplOldMozilla.java /releases/2.1/user/src/com/google/gwt/xml/client/impl/XMLParserImplMozillaOld.java
Modified:
 /releases/2.1/user/src/com/google/gwt/core/CoreWithUserAgent.gwt.xml
 /releases/2.1/user/src/com/google/gwt/dom/DOM.gwt.xml
 /releases/2.1/user/src/com/google/gwt/junit/JUnitMessageQueue.java
 /releases/2.1/user/src/com/google/gwt/junit/JUnitShell.java
 /releases/2.1/user/src/com/google/gwt/resources/Resources.gwt.xml
 /releases/2.1/user/src/com/google/gwt/user/CaptionPanel.gwt.xml
 /releases/2.1/user/src/com/google/gwt/user/DOM.gwt.xml
 /releases/2.1/user/src/com/google/gwt/user/Focus.gwt.xml
 /releases/2.1/user/src/com/google/gwt/user/History.gwt.xml
 /releases/2.1/user/src/com/google/gwt/user/Popup.gwt.xml
 /releases/2.1/user/src/com/google/gwt/user/RichText.gwt.xml
 /releases/2.1/user/src/com/google/gwt/user/UserAgent.gwt.xml
 /releases/2.1/user/src/com/google/gwt/user/cellview/CellView.gwt.xml
/releases/2.1/user/src/com/google/gwt/user/cellview/client/AbstractHasData.java
 /releases/2.1/user/src/com/google/gwt/user/cellview/client/CellList.java
 /releases/2.1/user/src/com/google/gwt/user/cellview/client/CellTable.java
 /releases/2.1/user/src/com/google/gwt/xml/XML.gwt.xml
 /releases/2.1/user/test/com/google/gwt/dom/client/ElementTest.java
 /releases/2.1/user/test/com/google/gwt/junit/JUnitMessageQueueTest.java
 /releases/2.1/user/test/com/google/gwt/user/client/Profile.java

=======================================
--- /dev/null
+++ /releases/2.1/tools/api-checker/config/gwt21_22userApi.conf Mon Nov 15 02:27:58 2010
@@ -0,0 +1,139 @@
+#existing API
+
+# dirRoot_old is missing because refJars are being supplied
+name_old gwt21userApi
+#sourceFiles is specified as colon-separated list of files
+sourceFiles_old com/google/gwt
+
+#excludedFiles is specified as colon-separated ant patterns
+excludedFiles_old com/google/gwt/benchmarks/BenchmarkReport.java\
+:com/google/gwt/benchmarks/BenchmarkShell.java\
+:com/google/gwt/benchmarks/client/Benchmark.java\
+:**/linker/**\
+:**/rebind/**\
+:**/server/**\
+:**/tools/**\
+:com/google/gwt/regexp/shared/**\
+:com/google/gwt/autobean/shared/impl/StringQuoter.java\
+:com/google/gwt/core/client/impl/WeakMapping.java\
+:com/google/gwt/core/ext/**\
+:com/google/gwt/dev/*.java\
+:com/google/gwt/dev/asm/**\
+:com/google/gwt/dev/cfg/**\
+:com/google/gwt/dev/generator/**\
+:com/google/gwt/dev/javac/**\
+:com/google/gwt/dev/jdt/**\
+:com/google/gwt/dev/jjs/*.java\
+:com/google/gwt/dev/jjs/ast/**\
+:com/google/gwt/dev/jjs/impl/**\
+:com/google/gwt/dev/js/**\
+:com/google/gwt/dev/json/**\
+:com/google/gwt/dev/resource/**\
+:com/google/gwt/dev/shell/**\
+:com/google/gwt/dev/ui/**\
+:com/google/gwt/dev/util/**\
+:com/google/gwt/junit/*.java\
+:com/google/gwt/junit/client/GWTTestCase.java\
+:com/google/gwt/junit/client/impl/GWTRunner.java\
+:com/google/gwt/junit/remote/**\
+:com/google/gwt/resources/css/**\
+:com/google/gwt/resources/ext/**\
+:com/google/gwt/resources/rg/**\
+:com/google/gwt/requestfactory/shared/impl/MessageFactoryHolder.java\
+:com/google/gwt/rpc/client/impl/ClientWriterFactory.java\
+:com/google/gwt/rpc/client/impl/EscapeUtil.java\
+:com/google/gwt/soyc/**\
+:com/google/gwt/safehtml/shared/SafeHtmlHostedModeUtils.java\
+:com/google/gwt/user/client/rpc/core/java/util/LinkedHashMap_CustomFieldSerializer.java\
+:com/google/gwt/uibinder/attributeparsers/**\
+:com/google/gwt/uibinder/elementparsers/**\
+:com/google/gwt/uibinder/testing/**\
+:com/google/gwt/util/**\
+:com/google/gwt/validation/**\
+
+##############################################
+#new Api
+
+dirRoot_new ./
+name_new gwt22userApi
+#sourceFiles is specified as colon-separated list of files
+sourceFiles_new dev/core/super\
+:user/src\
+:user/super\
+
+#excludedFiles is specified as colon-separated ant patterns
+# The last 3 entries exclude the validation stuff.
+# Bug: http://code.google.com/p/google-web-toolkit/issues/detail?id=5566
+excludedFiles_new user/src/com/google/gwt/benchmarks/BenchmarkReport.java\
+:user/src/com/google/gwt/benchmarks/BenchmarkShell.java\
+:user/src/com/google/gwt/benchmarks/client/Benchmark.java\
+:**/linker/**\
+:**/rebind/**\
+:**/server/**\
+:**/tools/**\
+:user/src/com/google/gwt/regexp/shared/**\
+:user/src/com/google/gwt/autobean/shared/impl/StringQuoter.java\
+:user/src/com/google/gwt/core/client/impl/WeakMapping.java\
+:user/src/com/google/gwt/junit/*.java\
+:user/src/com/google/gwt/junit/client/GWTTestCase.java\
+:user/src/com/google/gwt/junit/client/impl/GWTRunner.java\
+:user/src/com/google/gwt/junit/remote/**\
+:user/src/com/google/gwt/resources/css/**\
+:user/src/com/google/gwt/resources/ext/**\
+:user/src/com/google/gwt/resources/rg/**\
+:user/src/com/google/gwt/requestfactory/shared/impl/MessageFactoryHolder.java\
+:user/src/com/google/gwt/rpc/client/impl/ClientWriterFactory.java\
+:user/src/com/google/gwt/rpc/client/impl/EscapeUtil.java\
+:user/src/com/google/gwt/safehtml/shared/SafeHtmlHostedModeUtils.java\
+:user/src/com/google/gwt/user/client/rpc/core/java/util/LinkedHashMap_CustomFieldSerializer.java\
+:user/src/com/google/gwt/uibinder/attributeparsers/**\
+:user/src/com/google/gwt/uibinder/elementparsers/**\
+:user/src/com/google/gwt/uibinder/testing/**\
+:user/src/com/google/gwt/util/**\
+:user/src/javax/**\
+:user/src/org/**\
+:user/src/com/google/gwt/validation/**\
+
+##############################################
+#excluded packages colon separated list
+excludedPackages com.google.gwt.editor.client.impl\
+:com.google.gwt.requestfactory.client.impl.messages\
+:com.google.gwt.requestfactory.client.impl\
+:com.google.gwt.requestfactory.shared.impl\
+
+##############################################
+#Api  whitelist
+# when adding to the white-list, include comments as to why the addition is
+# being made.
+
+# AutoBean packages have been moved since 2.1
+com.google.gwt.editor.client.AutoBean MISSING
+com.google.gwt.editor.client.AutoBeanFactory MISSING
+com.google.gwt.editor.client.AutoBeanFactory.Category MISSING
+com.google.gwt.editor.client.AutoBeanFactory.NoWrap MISSING
+com.google.gwt.editor.client.AutoBeanUtils MISSING
+com.google.gwt.editor.client.AutoBeanVisitor MISSING
+com.google.gwt.editor.client.AutoBeanVisitor.Context MISSING
+com.google.gwt.editor.client.AutoBeanVisitor.PropertyContext MISSING
+
+# Id, Version have been removed because they were not being used.
+com.google.gwt.requestfactory.shared.Id MISSING
+com.google.gwt.requestfactory.shared.Version MISSING
+
+# ValueCodex has moved to autobean.shared
+com.google.gwt.requestfactory.shared.ValueCodex MISSING
+
+# The constructor InlineLabel (String, DirectionEstimator) was added.
+com.google.gwt.user.client.ui.InlineLabel::InlineLabel(Ljava/lang/String;Lcom/google/gwt/i18n/client/HasDirection$Direction;) OVERLOADED_METHOD_CALL
+
+# Label's public api has been cleaned since 2.1, for 2.1.1
+com.google.gwt.user.client.ui.Label::getTextOrHtml(Z) MISSING
+com.google.gwt.user.client.ui.Label::setHTML(Lcom/google/gwt/safehtml/shared/SafeHtml;) MISSING +com.google.gwt.user.client.ui.Label::setHTML(Lcom/google/gwt/safehtml/shared/SafeHtml;Lcom/google/gwt/i18n/client/HasDirection$Direction;) MISSING +com.google.gwt.user.client.ui.Label::setTextOrHtml(Ljava/lang/String;Lcom/google/gwt/i18n/client/HasDirection$Direction;Z) MISSING +com.google.gwt.user.client.ui.Label::setTextOrHtml(Ljava/lang/String;Z) MISSING
+
+# Removing the gecko user agent and associated deferred bindings for 2.1.1.
+com.google.gwt.user.client.impl.DOMImplMozillaOld MISSING
+com.google.gwt.user.client.ui.impl.RichTextAreaImplOldMozilla MISSING
+com.google.gwt.xml.client.impl.XMLParserImplMozillaOld MISSING
=======================================
--- /releases/2.1/user/src/com/google/gwt/dom/client/DOMImplMozillaOld.java Tue Apr 14 08:40:48 2009
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright 2008 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not - * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.dom.client;
-
-/**
- * DOM implementation differences for older version of Mozilla (mostly the
- * hosted mode browser on linux). The main difference is due to changes in
- * getBoxObjectFor in later versions of mozilla. The relevant bugzilla issues:
- * https://bugzilla.mozilla.org/show_bug.cgi?id=328881
- * https://bugzilla.mozilla.org/show_bug.cgi?id=330619
- */
- class DOMImplMozillaOld extends DOMImplMozilla {
-
-  // Used by JSNI to avoid JSO restrictions from JSNI
-  @SuppressWarnings("unused")
-  private static int getDocumentScrollLeft() {
-    return Document.get().getScrollLeft();
-  }
-
-  // Used by JSNI to avoid JSO restrictions from JSNI
-  @SuppressWarnings("unused")
-  private static int getDocumentScrollTop() {
-    return Document.get().getScrollTop();
-  }
-
-  @Override
-  public int getAbsoluteLeft(Element elem) {
- return getAbsoluteLeftImpl(elem.getOwnerDocument().getViewportElement(),
-        elem);
-  }
-
-  @Override
-  public int getAbsoluteTop(Element elem) {
-    return getAbsoluteTopImpl(elem.getOwnerDocument().getViewportElement(),
-        elem);
-  }
-
-  @Override
-  public native String getInnerText(Element node) /*-{
- // To mimic IE's 'innerText' property in the W3C DOM, we need to recursively
-    // concatenate all child text nodes (depth first).
-    var text = '', child = node.firstChild;
-    while (child) {
-      // 1 == Element node
-      if (child.nodeType == 1) {
- text += th...@com.google.gwt.dom.client.domimpl::getInnerText(Lcom/google/gwt/dom/client/Element;)(child);
-      } else if (child.nodeValue) {
-        text += child.nodeValue;
-      }
-      child = child.nextSibling;
-    }
-    return text;
-  }-*/;
-
-  @Override
-  public native void setInnerText(Element elem, String text) /*-{
-    // Remove all children first.
-    while (elem.firstChild) {
-      elem.removeChild(elem.firstChild);
-    }
-    // Add a new text node.
-    if (text != null) {
-      elem.appendChild(elem.ownerDocument.createTextNode(text));
-    }
-  }-*/;
-
- private native int getAbsoluteLeftImpl(Element viewport, Element elem) /*-{
-    var doc = elem.ownerDocument;
-    var style = doc.defaultView.getComputedStyle(elem, null);
-    var left = doc.getBoxObjectFor(elem).x - Math.round(
-        style.getPropertyCSSValue('border-left-width').getFloatValue(
-        CSSPrimitiveValue.CSS_PX));
-
-    var parent = elem.parentNode;
-    while (parent) {
-      // Sometimes get NAN.
-      if (parent.scrollLeft > 0) {
-        left -= parent.scrollLeft;
-      }
-      parent = parent.parentNode;
-    }
-
-    return left + viewport.scrollLeft;
-  }-*/;
-
- private native int getAbsoluteTopImpl(Element viewport, Element elem) /*-{
-    var doc = elem.ownerDocument;
-    var style = doc.defaultView.getComputedStyle(elem, null);
-    var top = doc.getBoxObjectFor(elem).y - Math.round(
-        style.getPropertyCSSValue('border-top-width').getFloatValue(
-        CSSPrimitiveValue.CSS_PX));
-
-    var parent = elem.parentNode;
-    while (parent) {
-      // Sometimes get NAN.
-      if (parent.scrollTop > 0) {
-        top -= parent.scrollTop;
-      }
-      parent = parent.parentNode;
-    }
-
-    return top + viewport.scrollTop;
-  }-*/;
-}
=======================================
--- /releases/2.1/user/src/com/google/gwt/user/client/impl/DOMImplMozillaOld.java Thu Apr 3 09:07:28 2008
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Copyright 2008 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not - * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.user.client.impl;
-
-/**
- * DOM implementation differences for older version of Mozilla (mostly the
- * hosted mode browser on linux). The main difference is due to changes in
- * getBoxObjectFor in later versions of mozilla. The relevant bugzilla issues:
- * https://bugzilla.mozilla.org/show_bug.cgi?id=328881
- * https://bugzilla.mozilla.org/show_bug.cgi?id=330619
- */
-public class DOMImplMozillaOld extends DOMImplMozilla {
-}
=======================================
--- /releases/2.1/user/src/com/google/gwt/user/client/ui/impl/RichTextAreaImplOldMozilla.java Tue Aug 10 10:18:55 2010
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright 2010 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not - * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.user.client.ui.impl;
-
-import com.google.gwt.user.client.Command;
-import com.google.gwt.user.client.DeferredCommand;
-
-/**
- * Old Mozilla-specific implementation of rich-text editing.
- */
-public class RichTextAreaImplOldMozilla extends RichTextAreaImplMozilla {
-  /**
- * The content window cannot be focused immediately after the content window - * has been loaded, so we need to wait for an additional deferred command.
-   */
-  @Override
-  protected void onElementInitialized() {
-    DeferredCommand.addCommand(new Command() {
-      public void execute() {
-        RichTextAreaImplOldMozilla.super.onElementInitialized();
-      }
-    });
-  }
-
-  @Override
-  protected void setFirstFocusImpl() {
-    setFocusImpl(true);
-  }
-
-  @Override
-  protected void setFocusImpl(boolean focused) {
- // Old Mozilla does not support blur on the content window of an iframe.
-    if (focused) {
-      super.setFocusImpl(focused);
-    }
-  }
-}
=======================================
--- /releases/2.1/user/src/com/google/gwt/xml/client/impl/XMLParserImplMozillaOld.java Wed Oct 28 09:10:53 2009
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright 2008 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not - * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package com.google.gwt.xml.client.impl;
-
-/**
- *
- */
-public class XMLParserImplMozillaOld extends XMLParserImplStandard {
-  /* (non-Javadoc)
- * @see com.google.gwt.xml.client.impl.XMLParserImplStandard#toStringImpl(com.google.gwt.xml.client.impl.ProcessingInstructionImpl) - * Works around a Mozilla bug where serializing an individual processing instruction node deadlocks.
-   */
-...@override
-  protected String toStringImpl(ProcessingInstructionImpl node) {
-    final StringBuffer b = new StringBuffer("<?");
-    b.append(node.getNodeName());
-    b.append(" ");
-    b.append(node.getData());
-    b.append("?>");
-    return b.toString();
-  }
-}
=======================================
--- /releases/2.1/user/src/com/google/gwt/core/CoreWithUserAgent.gwt.xml Tue Feb 16 07:17:47 2010 +++ /releases/2.1/user/src/com/google/gwt/core/CoreWithUserAgent.gwt.xml Mon Nov 15 02:27:58 2010
@@ -29,10 +29,7 @@
<replace-with class="com.google.gwt.core.client.impl.StackTraceCreator.CollectorMoz"> <when-type-is class="com.google.gwt.core.client.impl.StackTraceCreator.Collector" />
     <when-property-is name="compiler.emulatedStack" value="false" />
-    <any>
-      <when-property-is name="user.agent" value="gecko" />
-      <when-property-is name="user.agent" value="gecko1_8" />
-    </any>
+    <when-property-is name="user.agent" value="gecko1_8" />
   </replace-with>

<replace-with class="com.google.gwt.core.client.impl.StackTraceCreator.CollectorOpera">
=======================================
--- /releases/2.1/user/src/com/google/gwt/dom/DOM.gwt.xml Tue Apr 28 09:11:39 2009 +++ /releases/2.1/user/src/com/google/gwt/dom/DOM.gwt.xml Mon Nov 15 02:27:58 2010
@@ -45,11 +45,6 @@
     <when-property-is name="user.agent" value="gecko1_8"/>
   </replace-with>

-  <replace-with class="com.google.gwt.dom.client.DOMImplMozillaOld">
-    <when-type-is class="com.google.gwt.dom.client.DOMImpl"/>
-    <when-property-is name="user.agent" value="gecko"/>
-  </replace-with>
-
<replace-with class="com.google.gwt.dom.client.StyleInjector.StyleInjectorImplIE"> <when-type-is class="com.google.gwt.dom.client.StyleInjector.StyleInjectorImpl"/>
     <any>
=======================================
--- /releases/2.1/user/src/com/google/gwt/junit/JUnitMessageQueue.java Tue Nov 24 12:23:12 2009 +++ /releases/2.1/user/src/com/google/gwt/junit/JUnitMessageQueue.java Mon Nov 15 02:27:58 2010
@@ -138,7 +138,7 @@
private final Map<TestInfo, Map<ClientStatus, JUnitResult>> testResults = new HashMap<TestInfo, Map<ClientStatus, JUnitResult>>();

   /**
-   * A set of the GWT user agents (eg. ie6, gecko) that have connected.
+   * A set of the GWT user agents (eg. ie6, gecko1_8) that have connected.
    */
   private final Set<String> userAgents = new HashSet<String>();

=======================================
--- /releases/2.1/user/src/com/google/gwt/junit/JUnitShell.java Mon Sep 27 09:59:03 2010 +++ /releases/2.1/user/src/com/google/gwt/junit/JUnitShell.java Mon Nov 15 02:27:58 2010
@@ -479,7 +479,7 @@
         @Override
         public String getPurpose() {
return "Specify the user agents to reduce the number of permutations for remote browser tests;"
-              + " e.g. ie6,ie8,safari,gecko,gecko1_8,opera";
+              + " e.g. ie6,ie8,safari,gecko1_8,opera";
         }

         @Override
=======================================
--- /releases/2.1/user/src/com/google/gwt/resources/Resources.gwt.xml Thu Sep 2 06:12:48 2010 +++ /releases/2.1/user/src/com/google/gwt/resources/Resources.gwt.xml Mon Nov 15 02:27:58 2010
@@ -51,7 +51,6 @@
       <any>
         <when-property-is name="user.agent" value="safari" />
         <when-property-is name="user.agent" value="opera" />
-        <when-property-is name="user.agent" value="gecko" />
         <when-property-is name="user.agent" value="gecko1_8" />
         <when-property-is name="user.agent" value="ie8" />
       </any>
=======================================
--- /releases/2.1/user/src/com/google/gwt/user/CaptionPanel.gwt.xml Wed Apr 16 15:34:58 2008 +++ /releases/2.1/user/src/com/google/gwt/user/CaptionPanel.gwt.xml Mon Nov 15 02:27:58 2010
@@ -23,10 +23,7 @@
<!-- Mozilla has a different implementation to handle rendering issues --> <replace-with class="com.google.gwt.user.client.ui.CaptionPanel.CaptionPanelImplMozilla"> <when-type-is class="com.google.gwt.user.client.ui.CaptionPanel.CaptionPanelImpl"/>
-    <any>
-      <when-property-is name="user.agent" value="gecko"/>
-      <when-property-is name="user.agent" value="gecko1_8"/>
-    </any>
+    <when-property-is name="user.agent" value="gecko1_8"/>
   </replace-with>

   <!-- Safari has a different implementation to handle rendering issues -->
=======================================
--- /releases/2.1/user/src/com/google/gwt/user/DOM.gwt.xml Tue Apr 28 09:11:39 2009 +++ /releases/2.1/user/src/com/google/gwt/user/DOM.gwt.xml Mon Nov 15 02:27:58 2010
@@ -45,9 +45,4 @@
                <when-type-is class="com.google.gwt.user.client.impl.DOMImpl"/>
                <when-property-is name="user.agent" value="gecko1_8"/>
        </replace-with>
-
-       <replace-with class="com.google.gwt.user.client.impl.DOMImplMozillaOld">
-               <when-type-is class="com.google.gwt.user.client.impl.DOMImpl"/>
-               <when-property-is name="user.agent" value="gecko"/>
-       </replace-with>
 </module>
=======================================
--- /releases/2.1/user/src/com/google/gwt/user/Focus.gwt.xml Wed Jan 13 12:24:42 2010 +++ /releases/2.1/user/src/com/google/gwt/user/Focus.gwt.xml Mon Nov 15 02:27:58 2010
@@ -23,10 +23,7 @@
   <!-- Firefox uses a hidden input to set accesskeys -->
<replace-with class="com.google.gwt.user.client.ui.impl.FocusImplStandard">
     <when-type-is class="com.google.gwt.user.client.ui.impl.FocusImpl"/>
-    <any>
-      <when-property-is name="user.agent" value="gecko"/>
-      <when-property-is name="user.agent" value="gecko1_8"/>
-    </any>
+    <when-property-is name="user.agent" value="gecko1_8"/>
   </replace-with>

   <!-- Safari uses a hidden input to set accesskeys and -->
=======================================
--- /releases/2.1/user/src/com/google/gwt/user/History.gwt.xml Wed Feb 10 08:57:18 2010 +++ /releases/2.1/user/src/com/google/gwt/user/History.gwt.xml Mon Nov 15 02:27:58 2010
@@ -24,10 +24,7 @@
<!-- standard case. -->
   <replace-with class="com.google.gwt.user.client.impl.HistoryImplMozilla">
     <when-type-is class="com.google.gwt.user.client.impl.HistoryImpl"/>
-    <any>
-                       <when-property-is name="user.agent" value="gecko1_8"/>
-                       <when-property-is name="user.agent" value="gecko"/>
-               </any>
+    <when-property-is name="user.agent" value="gecko1_8"/>
   </replace-with>

        <!-- Opera has yet another slightly different implementation. -->
=======================================
--- /releases/2.1/user/src/com/google/gwt/user/Popup.gwt.xml Tue Apr 28 09:11:39 2009 +++ /releases/2.1/user/src/com/google/gwt/user/Popup.gwt.xml Mon Nov 15 02:27:58 2010
@@ -23,10 +23,7 @@
   <!-- Mozilla needs a different implementation due to issue #410 -->
<replace-with class="com.google.gwt.user.client.ui.impl.PopupImplMozilla">
     <when-type-is class="com.google.gwt.user.client.ui.impl.PopupImpl"/>
-    <any>
-      <when-property-is name="user.agent" value="gecko"/>
-      <when-property-is name="user.agent" value="gecko1_8"/>
-    </any>
+    <when-property-is name="user.agent" value="gecko1_8"/>
   </replace-with>

<!-- IE6 has a completely different popup implementation. It is no longer -->
=======================================
--- /releases/2.1/user/src/com/google/gwt/user/RichText.gwt.xml Mon Jun 7 12:20:31 2010 +++ /releases/2.1/user/src/com/google/gwt/user/RichText.gwt.xml Mon Nov 15 02:27:58 2010
@@ -37,14 +37,6 @@
     <when-property-is name="user.agent" value="gecko1_8" />
   </replace-with>

-  <!-- Old Mozilla-specific implementation -->
-  <replace-with
-    class="com.google.gwt.user.client.ui.impl.RichTextAreaImplOldMozilla">
-    <when-type-is
-      class="com.google.gwt.user.client.ui.impl.RichTextAreaImpl" />
-    <when-property-is name="user.agent" value="gecko" />
-  </replace-with>
-
   <!-- Safari-specific implementation -->
   <replace-with
     class="com.google.gwt.user.client.ui.impl.RichTextAreaImplSafari">
=======================================
--- /releases/2.1/user/src/com/google/gwt/user/UserAgent.gwt.xml Tue Apr 28 09:11:39 2009 +++ /releases/2.1/user/src/com/google/gwt/user/UserAgent.gwt.xml Mon Nov 15 02:27:58 2010
@@ -19,7 +19,7 @@
 <module>

   <!-- Browser-sensitive code should use the 'user.agent' property -->
- <define-property name="user.agent" values="ie6,ie8,gecko,gecko1_8,safari,opera"/> + <define-property name="user.agent" values="ie6,ie8,gecko1_8,safari,opera"/>

   <property-provider name="user.agent"><![CDATA[
       var ua = navigator.userAgent.toLowerCase();
@@ -44,12 +44,7 @@
           }
         }
       } else if (ua.indexOf("gecko") != -1) {
-        var result = /rv:([0-9]+)\.([0-9]+)/.exec(ua);
-        if (result && result.length == 3) {
-          if (makeVersion(result) >= 1008)
-            return "gecko1_8";
-          }
-        return "gecko";
+        return "gecko1_8";
       }
       return "unknown";
   ]]></property-provider>
=======================================
--- /releases/2.1/user/src/com/google/gwt/user/cellview/CellView.gwt.xml Thu Oct 14 11:27:30 2010 +++ /releases/2.1/user/src/com/google/gwt/user/cellview/CellView.gwt.xml Mon Nov 15 02:27:58 2010
@@ -25,7 +25,6 @@
<when-type-is class="com.google.gwt.user.cellview.client.CellBasedWidgetImpl"/>
     <any>
       <when-property-is name="user.agent" value="opera"/>
-      <when-property-is name="user.agent" value="gecko"/>
       <when-property-is name="user.agent" value="gecko1_8"/>
     </any>
   </replace-with>
=======================================
--- /releases/2.1/user/src/com/google/gwt/user/cellview/client/AbstractHasData.java Wed Nov 10 04:31:36 2010 +++ /releases/2.1/user/src/com/google/gwt/user/cellview/client/AbstractHasData.java Mon Nov 15 02:27:58 2010
@@ -270,8 +270,9 @@
     Set<String> eventTypes = new HashSet<String>();
     eventTypes.add("focus");
     eventTypes.add("blur");
-    eventTypes.add("keydown");
-    eventTypes.add("mousedown"); // Used by subclasses to steal focus.
+    eventTypes.add("keydown"); // Used for keyboard navigation.
+    eventTypes.add("click"); // Used by subclasses for selection.
+ eventTypes.add("mousedown"); // No longer used, but here for legacy support.
     CellBasedWidgetImpl.get().sinkEvents(this, eventTypes);
   }

=======================================
--- /releases/2.1/user/src/com/google/gwt/user/cellview/client/CellList.java Wed Nov 10 04:31:36 2010 +++ /releases/2.1/user/src/com/google/gwt/user/cellview/client/CellList.java Mon Nov 15 02:27:58 2010
@@ -379,7 +379,7 @@
// before firing the event to the cell in case the cell operates on the
       // currently selected item.
       String eventType = event.getType();
-      boolean isMouseDown = "mousedown".equals(eventType);
+      boolean isClick = "click".equals(eventType);
       int idx = Integer.parseInt(idxString);
       int indexOnPage = idx - getPageStart();
       if (!isRowWithinBounds(indexOnPage)) {
@@ -390,12 +390,12 @@
// Get the cell parent before doing selection in case the list is redrawn.
       Element cellParent = getCellParent(cellTarget);
       T value = getDisplayedItem(indexOnPage);
-      if (isMouseDown && !cell.handlesSelection()) {
+      if (isClick && !cell.handlesSelection()) {
         doSelection(event, value, indexOnPage);
       }

       // Focus on the cell.
-      if (isMouseDown
+      if (isClick
&& getPresenter().getKeyboardSelectedRowInView() != indexOnPage) {
         /*
* If the selected element is natively focusable, then we do not want to
=======================================
--- /releases/2.1/user/src/com/google/gwt/user/cellview/client/CellTable.java Wed Nov 10 04:31:36 2010 +++ /releases/2.1/user/src/com/google/gwt/user/cellview/client/CellTable.java Mon Nov 15 02:27:58 2010
@@ -563,7 +563,6 @@

     // Sink events.
     Set<String> eventTypes = new HashSet<String>();
-    eventTypes.add("click");
     eventTypes.add("mouseover");
     eventTypes.add("mouseout");
     CellBasedWidgetImpl.get().sinkEvents(this, eventTypes);
@@ -926,7 +925,7 @@
       }
     } else if (section == tbody) {
       // Update the hover state.
-      boolean isMouseDown = "mousedown".equals(eventType);
+      boolean isClick = "click".equals(eventType);
       int row = tr.getSectionRowIndex();
       if ("mouseover".equals(eventType)) {
         // Unstyle the old row if it is still part of the table.
@@ -941,7 +940,7 @@
         setRowStyleName(hoveringRow, style.cellTableHoveredRow(),
             style.cellTableHoveredRowCell(), false);
         hoveringRow = null;
-      } else if (isMouseDown
+      } else if (isClick
           && ((getPresenter().getKeyboardSelectedRowInView() != row)
           || (keyboardSelectedColumn != col))) {
// Move keyboard focus. Since the user clicked, allow focus to go to a
@@ -960,7 +959,7 @@
         return;
       }
       T value = getDisplayedItem(row);
-      if ("click".equals(eventType) && !handlesSelection) {
+      if (isClick && !handlesSelection) {
         doSelection(event, value, row, col);
       }

=======================================
--- /releases/2.1/user/src/com/google/gwt/xml/XML.gwt.xml Tue Apr 28 09:11:39 2009 +++ /releases/2.1/user/src/com/google/gwt/xml/XML.gwt.xml Mon Nov 15 02:27:58 2010
@@ -23,11 +23,6 @@
     <when-type-is class="com.google.gwt.xml.client.impl.XMLParserImpl"/>
   </replace-with>

- <replace-with class="com.google.gwt.xml.client.impl.XMLParserImplMozillaOld">
-    <when-type-is class="com.google.gwt.xml.client.impl.XMLParserImpl"/>
-    <when-property-is name="user.agent" value="gecko"/>
-  </replace-with>
-
   <replace-with class="com.google.gwt.xml.client.impl.XMLParserImplOpera">
     <when-type-is class="com.google.gwt.xml.client.impl.XMLParserImpl"/>
     <when-property-is name="user.agent" value="opera"/>
=======================================
--- /releases/2.1/user/test/com/google/gwt/dom/client/ElementTest.java Tue Aug 10 10:18:55 2010 +++ /releases/2.1/user/test/com/google/gwt/dom/client/ElementTest.java Mon Nov 15 02:27:58 2010
@@ -267,8 +267,8 @@
// Ensure that the 'position:fixed' div's absolute position includes the
     // body's scroll position.
     //
- // Don't do this on IE6/7 or old Gecko, which don't support position:fixed.
-    if (!isIE6or7() && !isOldGecko()) {
+    // Don't do this on IE6/7, which doesn't support position:fixed.
+    if (!isIE6or7()) {
       assertTrue(fixedDiv.getAbsoluteLeft() >= body.getScrollLeft());
       assertTrue(fixedDiv.getAbsoluteTop() >= body.getScrollTop());
     }
@@ -619,25 +619,6 @@
       if (document.documentMode >= 8) {
         return false;
       }
-      return true;
-    }
-    return false;
-  }-*/;
-
-  // Stolen from UserAgent.gwt.xml.
-  private native boolean isOldGecko() /*-{
-    var makeVersion = function(result) {
-      return (parseInt(result[1]) * 1000) + parseInt(result[2]);
-    };
-
-    var ua = navigator.userAgent.toLowerCase();
-    if (ua.indexOf("gecko") != -1) {
-      var result = /rv:([0-9]+)\.([0-9]+)/.exec(ua);
-      if (result && result.length == 3) {
-        if (makeVersion(result) >= 1008) {
-          return false;
-        }
-      }
       return true;
     }
     return false;
=======================================
--- /releases/2.1/user/test/com/google/gwt/junit/JUnitMessageQueueTest.java Tue Nov 24 12:23:12 2009 +++ /releases/2.1/user/test/com/google/gwt/junit/JUnitMessageQueueTest.java Mon Nov 15 02:27:58 2010
@@ -95,7 +95,7 @@
     // Add some clients in a few ways.
     {
       queue.getTestBlock(createClientInfo(0, "ie6"), 0, timeout);
-      queue.reportFatalLaunch(createClientInfo(1, "gecko"), null);
+      queue.reportFatalLaunch(createClientInfo(1, "gecko1_8"), null);
queue.reportResults(createClientInfo(2, "safari"), createTestResults(0));
       assertEquals(3, queue.getNumConnectedClients());
     }
@@ -111,7 +111,7 @@
     // Add existing clients.
     {
       queue.getTestBlock(createClientInfo(0, "ie6"), 0, timeout);
-      queue.reportFatalLaunch(createClientInfo(1, "gecko"), null);
+      queue.reportFatalLaunch(createClientInfo(1, "gecko1_8"), null);
queue.reportResults(createClientInfo(2, "safari"), createTestResults(0));
       assertEquals(5, queue.getNumConnectedClients());
     }
@@ -273,9 +273,9 @@
     // Add some clients in a few ways.
     {
       queue.getTestBlock(createClientInfo(0, "ie6"), 0, timeout);
-      queue.reportFatalLaunch(createClientInfo(1, "gecko"), null);
+      queue.reportFatalLaunch(createClientInfo(1, "gecko1_8"), null);
queue.reportResults(createClientInfo(2, "safari"), createTestResults(0));
-      assertSimilar(new String[] {"ie6", "gecko", "safari"},
+      assertSimilar(new String[] {"ie6", "gecko1_8", "safari"},
           queue.getUserAgents());
     }

@@ -285,16 +285,16 @@
       queue.reportFatalLaunch(createClientInfo(3, "ie7"), null);
queue.reportResults(createClientInfo(4, "gecko1_8"), createTestResults(0));
       queue.getTestBlock(createClientInfo(3, "ie7"), 0, timeout);
- assertSimilar(new String[] {"ie6", "ie7", "gecko", "gecko1_8", "safari"},
+      assertSimilar(new String[] {"ie6", "ie7", "gecko1_8", "safari"},
           queue.getUserAgents());
     }

     // Add existing clients.
     {
       queue.getTestBlock(createClientInfo(0, "ie6"), 0, timeout);
-      queue.reportFatalLaunch(createClientInfo(1, "gecko"), null);
+      queue.reportFatalLaunch(createClientInfo(1, "gecko1_8"), null);
queue.reportResults(createClientInfo(2, "safari"), createTestResults(0)); - assertSimilar(new String[] {"ie6", "ie7", "gecko", "gecko1_8", "safari"},
+      assertSimilar(new String[] {"ie6", "ie7", "gecko1_8", "safari"},
           queue.getUserAgents());
     }
   }
@@ -422,7 +422,7 @@
     // Add some clients in a few ways.
     {
       queue.getTestBlock(createClientInfo(0, "ie6"), 0, timeout);
-      queue.reportFatalLaunch(createClientInfo(1, "gecko"), null);
+      queue.reportFatalLaunch(createClientInfo(1, "gecko1_8"), null);
queue.reportResults(createClientInfo(2, "safari"), createTestResults(0));
       assertSimilar(new String[] {"desc0", "desc1", "desc2"},
           queue.getNewClients());
@@ -442,7 +442,7 @@
     // Add existing clients.
     {
       queue.getTestBlock(createClientInfo(0, "ie6"), 0, timeout);
-      queue.reportFatalLaunch(createClientInfo(1, "gecko"), null);
+      queue.reportFatalLaunch(createClientInfo(1, "gecko1_8"), null);
queue.reportResults(createClientInfo(2, "safari"), createTestResults(0));
       assertEquals(0, queue.getNewClients().length);
     }
=======================================
--- /releases/2.1/user/test/com/google/gwt/user/client/Profile.java Mon May 18 11:47:32 2009 +++ /releases/2.1/user/test/com/google/gwt/user/client/Profile.java Mon Nov 15 02:27:58 2010
@@ -85,14 +85,8 @@
     return "ie6";
     }
     else if (ua.indexOf("gecko") != -1) {
-      var result = /rv:([0-9]+)\.([0-9]+)/.exec(ua);
-      if (result && result.length == 3) {
-        var version = (parseInt(result[1]) * 10) + parseInt(result[2]);
-        if (version >= 18)
-          return "gecko1_8";
-        }
-        return "gecko";
-      }
+      return "gecko1_8";
+    }
     return "unknown";
-}-*/;
-}
+  }-*/;
+}

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors

Reply via email to