diff --git a/org.adempiere.ui.zk/WEB-INF/src/metainfo/zk/lang-addon.xml b/org.adempiere.ui.zk/WEB-INF/src/metainfo/zk/lang-addon.xml
index 1f90a000cb..3ac23523f0 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/metainfo/zk/lang-addon.xml
+++ b/org.adempiere.ui.zk/WEB-INF/src/metainfo/zk/lang-addon.xml
@@ -48,7 +48,7 @@ Copyright (C) 2007 Ashley G Ramdass (ADempiere WebUI).
-
+
@@ -56,6 +56,6 @@ Copyright (C) 2007 Ashley G Ramdass (ADempiere WebUI).
-
+
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 7b6132ab81..a84dd432f0 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
@@ -548,7 +548,7 @@ public class GridView extends Vlayout implements EventListener, IdSpace,
//frozen not working well on tablet devices yet
//unlikely to be fixed since the working 'smooth scrolling frozen' is a zk ee only feature
- if (!ClientInfo.isMobile() && !ClientInfo.isFirefox("100."))
+ if (!ClientInfo.isMobile())
{
Frozen frozen = new Frozen();
//freeze selection and indicator column
diff --git a/org.adempiere.ui.zk/WEB-INF/src/web/js/org/idempiere/commons/mesh.js b/org.adempiere.ui.zk/WEB-INF/src/web/js/org/idempiere/commons/mesh.js
index 46b09f83ca..9e26314779 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/web/js/org/idempiere/commons/mesh.js
+++ b/org.adempiere.ui.zk/WEB-INF/src/web/js/org/idempiere/commons/mesh.js
@@ -45,7 +45,43 @@ zk.afterLoad('zul.mesh', function() {
}
}
return result;
- }
+ },
+ //workarond from https://tracker.zkoss.org/browse/ZK-5159
+ bind_: function () {
+ this.$supers(zul.mesh.Frozen, 'bind_', arguments);
+ var p = this.parent,
+ body = p.$n('body'),
+ foot = p.$n('foot');
+
+ if (p._nativebar) {
+ //B70-ZK-2130: No need to reset when beforeSize, ZK-343 with native bar works fine too.
+ zWatch.listen({onSize: this});
+ var scroll = this.$n('scrollX'),
+ scrollbarWidth = jq.scrollbarWidth();
+ if(scrollbarWidth == 0){
+ scrollbarWidth = 12;
+ }
+ // ZK-2583: native IE bug, add 1px in scroll div's height for workaround
+ this.$n().style.height = this.$n('cave').style.height = this.$n('right').style.height = scroll.style.height
+ = scroll.firstChild.style.height = jq.px0(zk.ie ? scrollbarWidth + 1 : scrollbarWidth);
+ p._currentLeft = 0;
+ this.domListen_(scroll, 'onScroll');
+
+ var head = p.$n('head');
+ if (head)
+ this.domListen_(head, 'onScroll', '_doHeadScroll');
+
+ } else {
+ // Bug ZK-2264
+ this._shallSyncScale = true;
+ }
+ // refix-ZK-3100455 : grid/listbox with frozen trigger "invalidate" should _syncFrozenNow
+ zWatch.listen({onResponse: this});
+ if (body)
+ jq(body).addClass('z-word-nowrap');
+ if (foot)
+ jq(foot).addClass('z-word-nowrap');
+ }
});
zk.override(zul.mesh.MeshWidget.prototype, "clearCache", function() {
diff --git a/org.adempiere.ui.zk/WEB-INF/src/web/theme/default/css/thememoz.css.dsp b/org.adempiere.ui.zk/WEB-INF/src/web/theme/default/css/thememoz.css.dsp
index 288e23651b..05d4f0eb01 100644
--- a/org.adempiere.ui.zk/WEB-INF/src/web/theme/default/css/thememoz.css.dsp
+++ b/org.adempiere.ui.zk/WEB-INF/src/web/theme/default/css/thememoz.css.dsp
@@ -1,2 +1,7 @@
<%@ page contentType="text/css;charset=UTF-8" %>
-<%@ taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" %>
\ No newline at end of file
+<%@ taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" %>
+
+<%-- workaround for ZK-5159 --%>
+.z-frozen-body, .z-frozen-inner {
+ background-color: white;
+}
\ No newline at end of file