From 612b569daeb5d2a76a9a84d2483f2a803dcc87e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexandre=20D=C3=ADaz?= Date: Thu, 8 Aug 2019 16:49:53 +0200 Subject: [PATCH] [IMP] web_responsive: Small refactor 'isWaiting' --- web_responsive/__manifest__.py | 2 +- .../static/src/js/web_responsive.js | 22 +++++++++++++------ 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/web_responsive/__manifest__.py b/web_responsive/__manifest__.py index 737226596..8e845fdcf 100644 --- a/web_responsive/__manifest__.py +++ b/web_responsive/__manifest__.py @@ -5,7 +5,7 @@ { "name": "Web Responsive", "summary": "Responsive web client, community-supported", - "version": "12.0.1.1.2", + "version": "12.0.1.1.3", "category": "Website", "website": "https://github.com/OCA/web", "author": "LasLabs, Tecnativa, Alexandre Díaz, " diff --git a/web_responsive/static/src/js/web_responsive.js b/web_responsive/static/src/js/web_responsive.js index b356c0b8c..2b8656da0 100644 --- a/web_responsive/static/src/js/web_responsive.js +++ b/web_responsive/static/src/js/web_responsive.js @@ -15,6 +15,14 @@ odoo.define('web_responsive', function (require) { var RelationalFields = require('web.relational_fields'); var Chatter = require('mail.Chatter'); + /* + * Helper function to know if are waiting + * + */ + function isWaiting () { + return $('.oe_wait').length !== 0; + } + /** * Reduce menu data to a searchable format understandable by fuzzy.js * @@ -115,7 +123,7 @@ odoo.define('web_responsive', function (require) { /** * Prevent the menu from being opened twice - * + * * @override */ _onAppsMenuItemClicked: function (ev) { @@ -283,15 +291,15 @@ odoo.define('web_responsive', function (require) { * Control if AppDrawer can be closed */ _hideAppsMenu: function () { - return $('.oe_wait').length === 0 && !this.$('input').is(':focus'); + return !isWaiting() && !this.$('input').is(':focus'); }, }); BasicController.include({ - + /** * Close the AppDrawer if the data set is dirty and a discard dialog is opened - * + * * @override */ canBeDiscarded: function (recordID) { @@ -326,7 +334,7 @@ odoo.define('web_responsive', function (require) { if ( this.$menu_toggle.is(":visible") && this.$section_placeholder.is(":visible") && - $('.oe_wait').length === 0 + !isWaiting() ) { this.$section_placeholder.collapse("hide"); } @@ -338,7 +346,7 @@ odoo.define('web_responsive', function (require) { * @returns {Boolean} */ _hideMenuSection: function () { - return $('.oe_wait').length === 0; + return !isWaiting(); }, /** @@ -358,7 +366,7 @@ odoo.define('web_responsive', function (require) { * @override */ _onMouseOverMenu: function () { - if ($('.oe_wait').length === 0) { + if (!isWaiting()) { this._super.apply(this, arguments); } },