correction

Public (by [email protected]):
        Description:
        http://code.google.com/p/google-web-toolkit/issues/detail?id=4916
<http://www.google.com/url?sa=D&q=http%3A//code.google.com/p/google-web-toolkit/issues/detail%3Fid%3D4916>

        Remove old workaround code from DOMImplSafari for something that's been
        fixed in Safari for a while makes it hard to work with optgroups in
        select elements.

        Reviewed by [email protected]
        http://gwt-code-reviews.appspot.com/1313801/show
<http://www.google.com/url?sa=D&q=http%3A//gwt-code-reviews.appspot.com/1313801/show>

is the right description

The GIN friendliness change is r9603.

On Thu, Jan 27, 2011 at 6:56 PM, Chris Conroy <[email protected]> wrote:

> The real log message (now correct in svn) for this change is:
>
>
> Public ([email protected]):
>
> Addresses http://code.google.com/p/google-web-toolkit/issues/detail?id=5563
>
> For GIN friendliness, make the PlaceHistoryMapperGenerator return null
> when it encounters a concrete implementation. (Returning null from
> a code generator results in a new Foo() call.)
>
>
> On Thu, Jan 27, 2011 at 6:25 PM, <[email protected]> wrote:
>
>> Revision: 9640
>> Author: [email protected]
>> Date: Thu Jan 27 09:39:02 2011
>> Log: Public: (by [email protected]):
>> http://code.google.com/p/google-web-toolkit/source/detail?r=9640
>>
>> Modified:
>>  /trunk/user/src/com/google/gwt/dom/client/DOMImplSafari.java
>>  /trunk/user/test/com/google/gwt/dom/client/SelectTests.java
>>
>> =======================================
>> --- /trunk/user/src/com/google/gwt/dom/client/DOMImplSafari.java
>>  Wed Dec  1 10:08:22 2010
>> +++ /trunk/user/src/com/google/gwt/dom/client/DOMImplSafari.java
>>  Thu Jan 27 09:39:02 2011
>> @@ -276,36 +276,6 @@
>>     return false;
>>   }-*/;
>>
>> -  /*
>> -   * The 'options' array cannot be used due to a bug in the version of
>> WebKit
>> -   * that ships with GWT (http://bugs.webkit.org/show_bug.cgi?id=10472).
>> The
>> -   * 'children' array, which is common for all DOM elements in Safari,
>> does not
>> -   * suffer from the same problem. Ideally, the 'children' array should
>> be used
>> -   * in all of the traversal methods in the DOM classes. Unfortunately,
>> due to a
>> -   * bug in Safari 2 (http://bugs.webkit.org/show_bug.cgi?id=3330), this
>> will
>> -   * not work. However, this bug does not cause problems in the case of
>> <SELECT>
>> -   * elements, because their descendent elements are only one level deep.
>> -   */
>> -  @Override
>> -  public void selectClear(SelectElement select) {
>> -    select.setInnerText("");
>> -  }
>> -
>> -  @Override
>> -  public native int selectGetLength(SelectElement select) /*-{
>> -    return select.children.length;
>> -  }-*/;
>> -
>> -  @Override
>> -  public native NodeList<OptionElement> selectGetOptions(SelectElement
>> select) /*-{
>> -    return select.children;
>> -  }-*/;
>> -
>> -  @Override
>> -  public native void selectRemoveOption(SelectElement select, int index)
>> /*-{
>> -    select.removeChild(select.children[index]);
>> -  }-*/;
>> -
>>   @Override
>>   public void setScrollLeft(Document doc, int left) {
>>     // Safari always applies document scrolling to the body element, even
>> in
>> =======================================
>> --- /trunk/user/test/com/google/gwt/dom/client/SelectTests.java Sun Jul 19
>> 11:17:55 2009
>> +++ /trunk/user/test/com/google/gwt/dom/client/SelectTests.java Thu Jan 27
>> 09:39:02 2011
>> @@ -15,6 +15,8 @@
>>  */
>>  package com.google.gwt.dom.client;
>>
>> +import com.google.gwt.junit.DoNotRunWith;
>> +import com.google.gwt.junit.Platform;
>>  import com.google.gwt.junit.client.GWTTestCase;
>>
>>  /**
>> @@ -127,4 +129,45 @@
>>     assertTrue(opt1.isSelected());
>>     assertTrue(opt2.isSelected());
>>   }
>> -}
>> +
>> +  /**
>> +   * optgroups
>> +   *
>> +   * @see <a href="
>> http://code.google.com/p/google-web-toolkit/issues/detail?id=4916";>Issue
>> 4916</a>
>> +   */
>> +  @DoNotRunWith(Platform.HtmlUnitBug)
>> +  public void testOptGroups() {
>> +    Document doc = Document.get();
>> +    SelectElement select = doc.createSelectElement();
>> +    doc.getBody().appendChild(select);
>> +
>> +    OptionElement opt0 = doc.createOptionElement();
>> +    OptionElement opt1 = doc.createOptionElement();
>> +    OptionElement opt2 = doc.createOptionElement();
>> +    OptGroupElement group1 = doc.createOptGroupElement();
>> +    opt0.setText("foo");
>> +    opt1.setText("bar");
>> +    opt2.setText("baz");
>> +    opt0.setValue("0");
>> +    opt1.setValue("1");
>> +    opt2.setValue("2");
>> +    group1.setLabel("group1");
>> +
>> +    select.appendChild(opt0);
>> +    select.appendChild(group1);
>> +    group1.appendChild(opt1);
>> +    select.appendChild(opt2);
>> +
>> +    assertEquals("3 options expected", 3,
>> select.getOptions().getLength());
>> +    assertEquals("[0] == opt0", opt0, select.getOptions().getItem(0));
>> +    assertEquals("[1] == opt1", opt1, select.getOptions().getItem(1));
>> +    assertEquals("[2] == opt2", opt2, select.getOptions().getItem(2));
>> +
>> +    select.remove(1);
>> +    assertNull("null parent expected when removed",
>> opt1.getParentElement());
>> +
>> +    select.add(opt1, opt0);
>> +    assertEquals("[0] == opt1", opt1, select.getOptions().getItem(0));
>> +    assertEquals("[1] == opt0", opt0, select.getOptions().getItem(1));
>> +    }
>> +}
>>
>> --
>> http://groups.google.com/group/Google-Web-Toolkit-Contributors
>>
>
>

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

Reply via email to