Adding the 2.1.1 tag.
git-svn-id: https://google-web-toolkit.googlecode.com/svn/tags/2.1.1@9458 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/dom/client/DOMImplIE8.java b/user/src/com/google/gwt/dom/client/DOMImplIE8.java
index 2b65cd8..0c29ccc 100644
--- a/user/src/com/google/gwt/dom/client/DOMImplIE8.java
+++ b/user/src/com/google/gwt/dom/client/DOMImplIE8.java
@@ -17,6 +17,41 @@
class DOMImplIE8 extends DOMImplTrident {
+ private static boolean isIE8;
+ private static boolean isIE8Detected;
+
+ /**
+ * Check if the browser is IE8 or IE9.
+ *
+ * @return <code>true</code> if the browser is IE8, <code>false</code> if IE9
+ * or any other browser
+ */
+ static boolean isIE8() {
+ if (!isIE8Detected) {
+ isIE8 = isIE8Impl();
+ isIE8Detected = true;
+ }
+ return isIE8;
+ }
+
+ // Stolen and modified from UserAgent.gwt.xml.
+ private static native boolean isIE8Impl() /*-{
+ var ua = navigator.userAgent.toLowerCase();
+ if (ua.indexOf("msie") != -1 && $doc.documentMode == 8) {
+ return true;
+ }
+ return false;
+ }-*/;
+
+ @Override
+ public void cssSetOpacity(Style style, double value) {
+ if (isIE8()) {
+ cssSetOpacityImpl(style, value);
+ } else {
+ super.cssSetOpacity(style, value);
+ }
+ }
+
@Override
public int getAbsoluteLeft(Element elem) {
Document doc = elem.getOwnerDocument();
@@ -46,4 +81,8 @@
}
super.setScrollLeft(elem, left);
}
+
+ private native void cssSetOpacityImpl(Style style, double value) /*-{
+ style.filter = 'alpha(opacity=' + (value * 100) + ')';
+ }-*/;
}
diff --git a/user/src/com/google/gwt/i18n/client/constants/DateTimeConstantsImpl_pt_PT.properties b/user/src/com/google/gwt/i18n/client/constants/DateTimeConstantsImpl_pt_PT.properties
index 8da543a..611875c 100644
--- a/user/src/com/google/gwt/i18n/client/constants/DateTimeConstantsImpl_pt_PT.properties
+++ b/user/src/com/google/gwt/i18n/client/constants/DateTimeConstantsImpl_pt_PT.properties
@@ -8,7 +8,7 @@
# CLDR version 1.7.1 is used in this generation.
eras = a.C., d.C.
-eraNames = Antes de Cristo, Ano do Senhor
+eraNames = Antes de Cristo, Depois de Cristo
narrowMonths = J, F, M, A, M, J, J, A, S, O, N, D
months = Janeiro, Fevereiro, Março, Abril, Maio, Junho, Julho, Agosto, Setembro, Outubro, Novembro, Dezembro
shortMonths = Jan, Fev, Mar, Abr, Mai, Jun, Jul, Ago, Set, Out, Nov, Dez
diff --git a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pt_PT.java b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pt_PT.java
index f4d4c62..7c30159 100644
--- a/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pt_PT.java
+++ b/user/src/com/google/gwt/i18n/client/impl/cldr/DateTimeFormatInfoImpl_pt_PT.java
@@ -36,14 +36,6 @@
}
@Override
- public String[] erasFull() {
- return new String[] {
- "Antes de Cristo",
- "Ano do Senhor"
- };
- }
-
- @Override
public int firstDayOfTheWeek() {
return 1;
}
diff --git a/user/src/com/google/gwt/user/cellview/client/CellList.java b/user/src/com/google/gwt/user/cellview/client/CellList.java
index 2c557d5..c7100d1 100644
--- a/user/src/com/google/gwt/user/cellview/client/CellList.java
+++ b/user/src/com/google/gwt/user/cellview/client/CellList.java
@@ -340,7 +340,7 @@
protected Element getKeyboardSelectedElement() {
// Do not use getRowElement() because that will flush the presenter.
int rowIndex = getKeyboardSelectedRow();
- if (childContainer.getChildCount() > rowIndex) {
+ if (rowIndex >= 0 && childContainer.getChildCount() > rowIndex) {
return childContainer.getChild(rowIndex).cast();
}
return null;
diff --git a/user/src/com/google/gwt/user/cellview/client/CellTable.java b/user/src/com/google/gwt/user/cellview/client/CellTable.java
index 0c5e6a6..7511d58 100644
--- a/user/src/com/google/gwt/user/cellview/client/CellTable.java
+++ b/user/src/com/google/gwt/user/cellview/client/CellTable.java
@@ -869,7 +869,7 @@
// Do not use getRowElement() because that will flush the presenter.
int rowIndex = getKeyboardSelectedRow();
NodeList<TableRowElement> rows = tbody.getRows();
- if (rowIndex < rows.getLength() && columns.size() > 0) {
+ if (rowIndex >= 0 && rowIndex < rows.getLength() && columns.size() > 0) {
TableRowElement tr = rows.getItem(rowIndex);
TableCellElement td = tr.getCells().getItem(keyboardSelectedColumn);
return getCellParent(td);
diff --git a/user/test/com/google/gwt/user/cellview/client/AbstractHasDataTestBase.java b/user/test/com/google/gwt/user/cellview/client/AbstractHasDataTestBase.java
index d56a3f5..5f4bc4f 100644
--- a/user/test/com/google/gwt/user/cellview/client/AbstractHasDataTestBase.java
+++ b/user/test/com/google/gwt/user/cellview/client/AbstractHasDataTestBase.java
@@ -25,6 +25,7 @@
import com.google.gwt.regexp.shared.MatchResult;
import com.google.gwt.regexp.shared.RegExp;
import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
+import com.google.gwt.user.cellview.client.HasKeyboardSelectionPolicy.KeyboardSelectionPolicy;
import com.google.gwt.user.client.Window;
import com.google.gwt.view.client.ListDataProvider;
import com.google.gwt.view.client.Range;
@@ -145,6 +146,21 @@
assertEquals("test 12", items.get(2));
}
+ /**
+ * Test that we don't get any errors when keyboard selection is disabled.
+ */
+ public void testKeyboardSelectionPolicyDisabled() {
+ AbstractHasData<String> display = createAbstractHasData(new TextCell());
+ display.setRowData(createData(0, 10));
+ display.getPresenter().flush();
+ display.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.DISABLED);
+
+ assertNull(display.getKeyboardSelectedElement());
+ display.resetFocusOnCell();
+ display.setAccessKey('a');
+ display.setTabIndex(1);
+ }
+
public void testResetFocus() {
IndexCell<String> cell = new IndexCell<String>();
AbstractHasData<String> display = createAbstractHasData(cell);