From 0640eb048a65e5d7723ceeece686ca949abab066 Mon Sep 17 00:00:00 2001 From: Matti Tahvonen Date: Mon, 23 Feb 2009 10:58:26 +0000 Subject: [PATCH] fixes #2607 (a client side validity check) svn changeset:6938/svn branch:trunk --- .../toolkit/terminal/gwt/client/ui/IScrollTable.java | 5 +++++ src/com/itmill/toolkit/ui/Table.java | 8 -------- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/IScrollTable.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/IScrollTable.java index e60e5fa67d..2cd5ce5d62 100644 --- a/src/com/itmill/toolkit/terminal/gwt/client/ui/IScrollTable.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/IScrollTable.java @@ -874,6 +874,11 @@ public class IScrollTable extends FlowPanel implements Table, ScrollListener { if (lastToBeRendered >= totalRows) { lastToBeRendered = totalRows - 1; } + // due Safari 3.1 bug (see #2607), verify reqrows, original + // problem unknown, but this should catch the issue + if (reqFirstRow + reqRows - 1 > lastToBeRendered) { + reqRows = lastToBeRendered - reqFirstRow; + } } client.updateVariable(paintableId, "firstToBeRendered", diff --git a/src/com/itmill/toolkit/ui/Table.java b/src/com/itmill/toolkit/ui/Table.java index 6588fe1fe5..2b528780ca 100644 --- a/src/com/itmill/toolkit/ui/Table.java +++ b/src/com/itmill/toolkit/ui/Table.java @@ -1935,14 +1935,6 @@ public class Table extends AbstractSelect implements Action.Container, int end = cells[0].length; if (reqRowsToPaint != -1) { end = start + reqRowsToPaint; - // Safari 3.1 sends invalid request sometimes. Cannot reproduce this - // with recent webkit. check for valid value and fallback to send - // rows to the end of buffer. - // TODO replace this with a client side workaround (this causes an - // empty screen). See #2607 - if (end > cells[0].length) { - end = cells[0].length; - } } // sanity check if (lastToBeRenderedInClient != -1 && lastToBeRenderedInClient < end) { -- 2.39.5