diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/ADTabpanel.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/ADTabpanel.java index 8dcb6a2162..8e73c2a0ae 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/ADTabpanel.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/ADTabpanel.java @@ -1721,7 +1721,7 @@ DataStatusListener, IADTabpanel, IdSpace, IFieldEditorContainer if (listPanel.isVisible()) { listPanel.refresh(gridTab); listPanel.scrollToCurrentRow(); - listPanel.getListbox().invalidate(); + listPanel.invalidate(); } else { listPanel.deactivate(); } diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/CompositeADTabbox.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/CompositeADTabbox.java index d0f54e3b4a..bbfa070578 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/CompositeADTabbox.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/CompositeADTabbox.java @@ -46,6 +46,7 @@ import org.zkoss.zk.ui.event.Event; import org.zkoss.zk.ui.event.EventListener; import org.zkoss.zk.ui.event.Events; import org.zkoss.zk.ui.util.Clients; +import org.zkoss.zul.Center; import org.zkoss.zul.Menuitem; import org.zkoss.zul.Row; import org.zkoss.zul.RowRenderer; @@ -916,6 +917,11 @@ public class CompositeADTabbox extends AbstractADTabbox && currentRow < tabPanel.getGridTab().getRowCount()) { tabPanel.getGridTab().setCurrentRow(currentRow, false); } + Center center = findCenter(tabPanel.getGridView()); + if (center != null) + center.invalidate(); + else + tabPanel.invalidate(); } if (!tabPanel.isVisible()) { tabPanel.setVisible(true); @@ -941,6 +947,18 @@ public class CompositeADTabbox extends AbstractADTabbox tabPanel.switchRowPresentation(); } + private Center findCenter(GridView gridView) { + if (gridView == null) + return null; + Component p = gridView.getParent(); + while (p != null) { + if (p instanceof Center) + return (Center)p; + p = p.getParent(); + } + return null; + } + private void showLastError() { String msg = CLogger.retrieveErrorString(null); if (msg != null) diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridView.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridView.java index 6fdfba7c25..acf10f5b77 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridView.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/adwindow/GridView.java @@ -58,6 +58,7 @@ import org.zkoss.zk.ui.event.EventListener; import org.zkoss.zk.ui.event.Events; import org.zkoss.zk.ui.util.Clients; import org.zkoss.zul.Cell; +import org.zkoss.zul.Center; import org.zkoss.zul.Column; import org.zkoss.zul.Div; import org.zkoss.zul.Paging; @@ -798,7 +799,11 @@ public class GridView extends Vlayout implements EventListener, IdSpace, listModel.setPage(pgNo); onSelectedRowChange(0); gridTab.clearSelection(); - listbox.invalidate(); + Center center = findCenter(this); + if (center != null) + center.invalidate(); + else + this.invalidate(); } } else if (event.getTarget() == selectAll) @@ -830,6 +835,18 @@ public class GridView extends Vlayout implements EventListener, IdSpace, } } + private Center findCenter(GridView gridView) { + if (gridView == null) + return null; + Component p = gridView.getParent(); + while (p != null) { + if (p instanceof Center) + return (Center)p; + p = p.getParent(); + } + return null; + } + private boolean isAllSelected() { org.zkoss.zul.Rows rows = listbox.getRows(); List childs = rows.getChildren(); @@ -1203,7 +1220,11 @@ public class GridView extends Vlayout implements EventListener, IdSpace, refresh(gridTab); scrollToCurrentRow(); - listbox.invalidate(); + Center center = findCenter(this); + if (center != null) + center.invalidate(); + else + this.invalidate(); } /** diff --git a/org.adempiere.ui.zk/theme/default/css/fragment/adwindow.css.dsp b/org.adempiere.ui.zk/theme/default/css/fragment/adwindow.css.dsp index be02ed4c26..8abab7b2b4 100644 --- a/org.adempiere.ui.zk/theme/default/css/fragment/adwindow.css.dsp +++ b/org.adempiere.ui.zk/theme/default/css/fragment/adwindow.css.dsp @@ -139,6 +139,8 @@ .adwindow-detailpane-toolbar { border: none; + height: 2em; + background: none; } .adwindow-detailpane-toolbar .z-toolbar-body { @@ -189,6 +191,8 @@ .adwindow-detailpane-adtab-grid-south .z-paging { padding: 0px !important; + height: 2em; + border: none; } .adwindow-detailpane-adtab-grid-south .z-paging .z-paging-inp {