From 4fca220ff1776eff7829102b4fe8f09fa3157f50 Mon Sep 17 00:00:00 2001 From: niv-openerp Date: Fri, 27 Jul 2012 11:55:17 +0200 Subject: [PATCH 1/3] Fixed focus problems bzr revid: nicolas.vanhoren@openerp.com-20120727095517-xxpinz8iw5zisvaj --- addons/web/static/src/js/view_form.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js index 7f802be2100..2aa265efbe8 100644 --- a/addons/web/static/src/js/view_form.js +++ b/addons/web/static/src/js/view_form.js @@ -267,7 +267,6 @@ instance.web.FormView = instance.web.View.extend(instance.web.form.FieldManagerM if (this.$pager) { this.$pager.show(); } - this.$element.show().css('visibility', 'hidden'); this.$element.add(this.$buttons).removeClass('oe_form_dirty'); var shown = this.has_been_loaded; @@ -286,7 +285,6 @@ instance.web.FormView = instance.web.View.extend(instance.web.form.FieldManagerM if (options.editable) { self.to_edit_mode(); } - self.$element.css('visibility', 'visible'); }); }, do_hide: function () { @@ -2062,7 +2060,7 @@ instance.web.form.FieldChar = instance.web.form.AbstractField.extend(instance.we return this.get('value') === '' || this._super(); }, focus: function() { - this.delay_focus(this.$element.find('input:first')); + this.$element.find('input:first')[0].focus(); } }); From 094ecdc453562dd092725c1b23602df74902debe Mon Sep 17 00:00:00 2001 From: niv-openerp Date: Fri, 27 Jul 2012 15:26:53 +0200 Subject: [PATCH 2/3] [FIX] problem with drop downs bzr revid: nicolas.vanhoren@openerp.com-20120727132653-47y0alrcwtwkwmyv --- addons/web/static/src/js/chrome.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/addons/web/static/src/js/chrome.js b/addons/web/static/src/js/chrome.js index a1759397e21..7c4cdf969f1 100644 --- a/addons/web/static/src/js/chrome.js +++ b/addons/web/static/src/js/chrome.js @@ -896,7 +896,8 @@ instance.web.Client = instance.web.Widget.extend({ this.$element.on('click', '.oe_dropdown_toggle', function(ev) { ev.preventDefault(); var $toggle = $(this); - var $menu = $toggle.parent().find('.oe_dropdown_menu'); + var $menu = $toggle.siblings('.oe_dropdown_menu'); + $menu = $menu.size() >= 1 ? $menu : $toggle.find('.oe_dropdown_menu'); var state = $menu.is('.oe_opened'); setTimeout(function() { // Do not alter propagation From 93cb71c2260cb3b4de1f8b6f0dbe0181db445151 Mon Sep 17 00:00:00 2001 From: niv-openerp Date: Fri, 27 Jul 2012 17:09:55 +0200 Subject: [PATCH 3/3] [IMP] once more small improvement to cache-control bzr revid: nicolas.vanhoren@openerp.com-20120727150955-5xx79v2lc8qsk77a --- addons/web/common/http.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/addons/web/common/http.py b/addons/web/common/http.py index a70ef53a91c..f1426d76d27 100644 --- a/addons/web/common/http.py +++ b/addons/web/common/http.py @@ -426,10 +426,13 @@ class DisableCacheMiddleware(object): referer = environ.get('HTTP_REFERER', '') parsed = urlparse.urlparse(referer) debug = parsed.query.count('debug') >= 1 - filtered_headers = [(k,v) for k,v in headers if not (k=='Last-Modified' or (debug and (k=='Cache-Control' or k=='Expires')))] + nh = dict(headers) + if 'Last-Modified' in nh: del nh['Last-Modified'] if debug: - filtered_headers.append(('Cache-Control', 'no-cache')) - start_response(status, filtered_headers) + if 'Expires' in nh: del nh['Expires'] + if 'Etag' in nh: del nh['Etag'] + nh['Cache-Control'] = 'no-cache' + start_response(status, nh.items()) return self.app(environ, start_wrapped) class Root(object):