Change-Id: I22b0e56549c19432626dea8c2dd43509c07c0de4tags/7.6.0.alpha4
@@ -3628,6 +3628,12 @@ public class VScrollTable extends FlowPanel implements HasWidgets, | |||
} | |||
} else { | |||
c.setText(caption); | |||
if (BrowserInfo.get().isIE10()) { | |||
// IE10 can some times define min-height to include | |||
// padding when setting the text... | |||
// See https://dev.vaadin.com/ticket/15169 | |||
WidgetUtil.forceIERedraw(c.getElement()); | |||
} | |||
} | |||
c.setSorted(false); |
@@ -0,0 +1,50 @@ | |||
/* | |||
* Copyright 2000-2014 Vaadin Ltd. | |||
* | |||
* 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.vaadin.tests.components.table; | |||
import com.vaadin.annotations.Theme; | |||
import com.vaadin.server.VaadinRequest; | |||
import com.vaadin.tests.components.AbstractTestUIWithLog; | |||
import com.vaadin.tests.fieldgroup.ComplexPerson; | |||
import com.vaadin.ui.Button; | |||
import com.vaadin.ui.Button.ClickEvent; | |||
import com.vaadin.ui.Button.ClickListener; | |||
import com.vaadin.ui.Table; | |||
@Theme("valo") | |||
public class TableColumnWidthsAndSorting extends AbstractTestUIWithLog { | |||
@Override | |||
protected void setup(VaadinRequest request) { | |||
final Table t = new Table(); | |||
t.setContainerDataSource(ComplexPerson.createContainer(100)); | |||
t.setVisibleColumns("firstName", "lastName", "age", "gender", "salary"); | |||
t.setColumnWidth("firstName", 200); | |||
t.setColumnWidth("lastName", 200); | |||
t.setSelectable(true); | |||
addComponent(t); | |||
Button b = new Button("Sort according to gender", new ClickListener() { | |||
@Override | |||
public void buttonClick(ClickEvent event) { | |||
t.sort(new Object[] { "gender" }, new boolean[] { true }); | |||
} | |||
}); | |||
addComponent(b); | |||
} | |||
} |
@@ -0,0 +1,52 @@ | |||
/* | |||
* Copyright 2000-2014 Vaadin Ltd. | |||
* | |||
* 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.vaadin.tests.components.table; | |||
import org.junit.Assert; | |||
import org.junit.Test; | |||
import com.vaadin.testbench.elements.TableElement; | |||
import com.vaadin.tests.tb3.MultiBrowserTest; | |||
public class TableColumnWidthsAndSortingTest extends MultiBrowserTest { | |||
@Test | |||
public void testHeaderHeight() { | |||
openTestURL(); | |||
TableElement t = $(TableElement.class).first(); | |||
assertHeaderCellHeight(t); | |||
// Sort according to age | |||
t.getHeaderCell(2).click(); | |||
assertHeaderCellHeight(t); | |||
// Sort again according to age | |||
t.getHeaderCell(2).click(); | |||
assertHeaderCellHeight(t); | |||
} | |||
private void assertHeaderCellHeight(TableElement t) { | |||
// Assert all headers are correct height (37px according to default | |||
// Valo) | |||
for (int i = 0; i < 5; i++) { | |||
Assert.assertEquals("Height of header cell " + i + " is wrong", 37, | |||
t.getHeaderCell(0).getSize().getHeight()); | |||
} | |||
} | |||
} |