aboutsummaryrefslogtreecommitdiffstats
path: root/src/com
diff options
context:
space:
mode:
authorJohannes Dahlström <johannes.dahlstrom@vaadin.com>2012-06-25 11:47:49 +0000
committerArtur Signell <artur@vaadin.com>2012-06-28 22:25:26 +0300
commit0419835823ab554694cb3cf98e22cb7843c7aab1 (patch)
tree5adc87cabd470f4521ab612555c80be50489e8f3 /src/com
parent48568efd17766c26d55e8c20d73abdd9c6b30dac (diff)
downloadvaadin-framework-0419835823ab554694cb3cf98e22cb7843c7aab1.tar.gz
vaadin-framework-0419835823ab554694cb3cf98e22cb7843c7aab1.zip
#8957 Ensure non-negative width
svn changeset:23973/svn branch:6.8
Diffstat (limited to 'src/com')
-rw-r--r--src/com/vaadin/terminal/gwt/client/ui/table/VScrollTable.java20
1 files changed, 5 insertions, 15 deletions
diff --git a/src/com/vaadin/terminal/gwt/client/ui/table/VScrollTable.java b/src/com/vaadin/terminal/gwt/client/ui/table/VScrollTable.java
index b5f10e68ec..4021fc1230 100644
--- a/src/com/vaadin/terminal/gwt/client/ui/table/VScrollTable.java
+++ b/src/com/vaadin/terminal/gwt/client/ui/table/VScrollTable.java
@@ -3288,20 +3288,15 @@ public class VScrollTable extends FlowPanel implements HasWidgets,
DOM.setStyleAttribute(captionContainer, "width", "");
setWidth("");
} else {
-
/*
* Reduce width with one pixel for the right border since the
* footers does not have any spacers between them.
*/
- int borderWidths = 1;
+ final int borderWidths = 1;
// Set the container width (check for negative value)
- if (w - borderWidths >= 0) {
- captionContainer.getStyle().setPropertyPx("width",
- w - borderWidths);
- } else {
- captionContainer.getStyle().setPropertyPx("width", 0);
- }
+ captionContainer.getStyle().setPropertyPx("width",
+ Math.max(w - borderWidths, 0));
/*
* if we already have tBody, set the header width properly, if
@@ -3309,22 +3304,17 @@ public class VScrollTable extends FlowPanel implements HasWidgets,
* unless TD width is not explicitly set.
*/
if (scrollBody != null) {
- /*
- * Reduce with one since footer does not have any spacers,
- * instead a 1 pixel border.
- */
int tdWidth = width + scrollBody.getCellExtraWidth()
- borderWidths;
- setWidth(tdWidth + "px");
+ setWidth(Math.max(tdWidth, 0) + "px");
} else {
Scheduler.get().scheduleDeferred(new Command() {
public void execute() {
- int borderWidths = 1;
int tdWidth = width
+ scrollBody.getCellExtraWidth()
- borderWidths;
- setWidth(tdWidth + "px");
+ setWidth(Math.max(tdWidth, 0) + "px");
}
});
}