Hi
We currently have an issue where ListGrids are constantly resizing causing scrollbars to constantly pop in and out of existence. This happens in Chrome and IE 10. Issue does not appear on the online showcase however.
See http://i138.photobucket.com/albums/q...013-gGMDsa.gif
1) SmartClient Version: v8.3p_2013-04-02/PowerEdition Deployment (built 2013-04-02)
GWT Version: 2.4.0
OS Version: Windows 7 x64 Service Pack 1
2) Chrome Version 29.0.1547.66 m and IE 10 (IE 10 Compat mode does not have this issue)
3) SmartGWT theme config (.gwt.xml)
<inherits name="com.smartgwtpower.SmartGwtPowerNoTheme"/>
(With custom stylesheet)
4) Code sample for one of the widgets(List Grids):
We currently have an issue where ListGrids are constantly resizing causing scrollbars to constantly pop in and out of existence. This happens in Chrome and IE 10. Issue does not appear on the online showcase however.
See http://i138.photobucket.com/albums/q...013-gGMDsa.gif
1) SmartClient Version: v8.3p_2013-04-02/PowerEdition Deployment (built 2013-04-02)
GWT Version: 2.4.0
OS Version: Windows 7 x64 Service Pack 1
2) Chrome Version 29.0.1547.66 m and IE 10 (IE 10 Compat mode does not have this issue)
3) SmartGWT theme config (.gwt.xml)
<inherits name="com.smartgwtpower.SmartGwtPowerNoTheme"/>
(With custom stylesheet)
4) Code sample for one of the widgets(List Grids):
Code:
public class DashboardView extends PortalLayout {
protected DSGridCounterPortlet resToday;
protected ClientFactory clientFactory;
protected EresConstants constants;
public DashboardView(ClientFactory clientFactory) {
super(2);
this.clientFactory = clientFactory;
this.constants = clientFactory.getConstants();
}
@Override
public void onInit() {
super.onInit();
setShowColumnMenus(false);
setPadding(15);
createResDateToday();
addPortlet(resToday, 0, 0);
}
protected void createResDateToday() {
resToday = new DSGridCounterPortlet(DataSource.get("Dashboard_ResDate_Channel"), constants.newReservationsReceivedToday());
resToday.setMargin(10);
}
}Code:
public class DSGridCounterPortlet extends Portlet {
private HLayout headerPanel = new HLayout();
private HTMLFlow countHTML = new HTMLFlow();
private HTMLFlow headerHTML = new HTMLFlow();
private String title;
private DataSource dataSource;
public DSGridCounterPortlet(DataSource dataSource, String title) {
this.dataSource = dataSource;
this.title = title;
setShowHeader(false);
setHeaderControls();
}
@Override
protected void onInit() {
super.onInit();
setTitle(" ");
setWidth("*");
setPadding(15);
setStyleName("dashboard-box");
OneWidgetStack contentContainer = createContentContainer();
headerPanel.setHeight(30);
contentContainer.setHeight("*");
addItem(headerPanel);
addItem(contentContainer);
countHTML.setPadding(5);
countHTML.setHeight(35);
countHTML.setWidth(40);
countHTML.setStyleName("dashboard-box-counter");
headerHTML.setContents(title);
headerHTML.setWidth100();
headerHTML.setHeight(30);
headerHTML.setStyleName("dashboard-box-header");
headerPanel.addMember(countHTML);
headerPanel.addMember(headerHTML);
contentContainer.setWidget(createListGrid());
}
private OneWidgetStack createContentContainer() {
OneWidgetStack contentContainer = new OneWidgetStack();
contentContainer.setStyleName("dashboard-box-content");
contentContainer.setWidth100();
return contentContainer;
}
private ListGrid createListGrid() {
final ListGrid listGrid = new ListGrid();
listGrid.setWidth100();
listGrid.setHeight100();
listGrid.setAutoFetchData(true);
listGrid.setDataSource(dataSource);
listGrid.setShowHeaderMenuButton(false);
listGrid.addDataArrivedHandler(new DataArrivedHandler() {
@Override
public void onDataArrived(DataArrivedEvent event) {
int count = 0;
for (int i=0; i<listGrid.getTotalRows(); i++) {
ListGridRecord record = listGrid.getRecord(i);
count += record.getAttributeAsInt("Count");
}
countHTML.setContents(Integer.toString(count));
if (countHTML.getContents().length() > 5) {
countHTML.setWidth(120);
}
else if (countHTML.getContents().length() > 4) {
countHTML.setWidth(100);
}
else if (countHTML.getContents().length() > 3) {
countHTML.setWidth(80);
}
else if (countHTML.getContents().length() > 2) {
countHTML.setWidth(60);
}
}
});
return listGrid;
}
}Code:
public class OneWidgetStack extends VStack implements AcceptsOneWidget {
@Override
protected void onInit() {
super.onInit();
}
@Override
public void setWidget(IsWidget w) {
Canvas[] membersToRemove = getMembers();
for(Canvas member : membersToRemove) {
removeMember(member);
}
if (w != null) {
addMember((Widget)w);
}
}
}