From 77dae4c9c54ac8341867f7b382a9be564f23d716 Mon Sep 17 00:00:00 2001 From: Joren Van Onder Date: Tue, 19 Apr 2016 09:01:32 +0200 Subject: [PATCH] [FIX] point_of_sale: adapt to Chrome 50's new handling of cell heights Forward-port of v8 9fa53b7ee7fc8faca2ee8bc1d5205dca62f3e565. Chrome 50 treats percent-height divs inside of auto-height cells as auto [1]. So from now on it's important that an explicit 'height: 100%' CSS property is set on parent tds, otherwise you'll end up with elements with a height of 0. An extra difficulty is that this new height property on subwindow-container will result in the element being as high as his parent table. So the collapsed trick doesn't work anymore in the customer list. This has to be done conditionally. The proposed workaround of adding 100% height to parents of affected elements causes issues in IE/Edge because the effect of adding a height in percent to a table-{cell,row} element is not defined by CSS [2]. DO NOT FORWARD-PORT! [1] https://chromium.googlesource.com/chromium/src/+/8876584335b48c99cf8df552ef4d8efebb131041 [2] http://stackoverflow.com/a/27384730 --- addons/point_of_sale/static/src/css/chrome50.css | 6 ++++++ addons/point_of_sale/static/src/css/pos.css | 3 +++ addons/point_of_sale/static/src/js/chrome.js | 7 +++++++ addons/point_of_sale/static/src/xml/pos.xml | 2 +- 4 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 addons/point_of_sale/static/src/css/chrome50.css diff --git a/addons/point_of_sale/static/src/css/chrome50.css b/addons/point_of_sale/static/src/css/chrome50.css new file mode 100644 index 00000000000..67ecddccfde --- /dev/null +++ b/addons/point_of_sale/static/src/css/chrome50.css @@ -0,0 +1,6 @@ +.pos .screen .content-cell{ + height: 100%; +} +.pos .subwindow .subwindow-container{ + height: 100%; +} \ No newline at end of file diff --git a/addons/point_of_sale/static/src/css/pos.css b/addons/point_of_sale/static/src/css/pos.css index 8f87ddb04dd..6d4556b66cf 100644 --- a/addons/point_of_sale/static/src/css/pos.css +++ b/addons/point_of_sale/static/src/css/pos.css @@ -198,6 +198,9 @@ td { .pos .window .subwindow.collapsed{ height: 0px; } +.pos .window .subwindow-container .collapsed{ + height: 0px; +} .pos .subwindow .subwindow-container{ display: table-cell; position: relative; diff --git a/addons/point_of_sale/static/src/js/chrome.js b/addons/point_of_sale/static/src/js/chrome.js index 63c5f018bef..5bc69e5ff13 100644 --- a/addons/point_of_sale/static/src/js/chrome.js +++ b/addons/point_of_sale/static/src/js/chrome.js @@ -451,6 +451,13 @@ openerp.point_of_sale.load_chrome = function load_chrome(instance, module){ //mo var self = this; FastClick.attach(document.body); + if ($.browser.chrome) { + var chrome_version = $.browser.version.split('.')[0]; + if (parseInt(chrome_version, 10) >= 50) { + openerp.loadCSS('/point_of_sale/static/src/css/chrome50.css'); + } + } + this.renderElement(); this.$('.pos-logo').click(function(){ diff --git a/addons/point_of_sale/static/src/xml/pos.xml b/addons/point_of_sale/static/src/xml/pos.xml index 15335c575d2..3f1805cc8ba 100644 --- a/addons/point_of_sale/static/src/xml/pos.xml +++ b/addons/point_of_sale/static/src/xml/pos.xml @@ -420,7 +420,7 @@