From 8c3688a6c156dc755538bc2b5f6d92217eaa16ec Mon Sep 17 00:00:00 2001 From: Anthony Muschang Date: Fri, 27 Feb 2015 00:29:22 +0100 Subject: [PATCH 01/20] [ADD] module web_dialog_size New module that let the user expand a dialog box to the full screen width. --- web_dialog_size/README.rst | 38 ++++++++++++++ web_dialog_size/__init__.py | 0 web_dialog_size/__openerp__.py | 47 ++++++++++++++++++ web_dialog_size/static/description/icon.png | Bin 0 -> 9455 bytes .../static/src/css/web_dialog_size.css | 17 +++++++ .../static/src/js/web_dialog_size.js | 37 ++++++++++++++ .../static/src/xml/web_dialog_size.xml | 9 ++++ web_dialog_size/view/qweb.xml | 10 ++++ 8 files changed, 158 insertions(+) create mode 100644 web_dialog_size/README.rst create mode 100644 web_dialog_size/__init__.py create mode 100644 web_dialog_size/__openerp__.py create mode 100644 web_dialog_size/static/description/icon.png create mode 100644 web_dialog_size/static/src/css/web_dialog_size.css create mode 100644 web_dialog_size/static/src/js/web_dialog_size.js create mode 100644 web_dialog_size/static/src/xml/web_dialog_size.xml create mode 100644 web_dialog_size/view/qweb.xml diff --git a/web_dialog_size/README.rst b/web_dialog_size/README.rst new file mode 100644 index 000000000..f508aa0a6 --- /dev/null +++ b/web_dialog_size/README.rst @@ -0,0 +1,38 @@ +Expand Dialog +============= + +A module that lets the user expand a dialog box to the full screen width. + +It is named web_dialog_size as it could be extended to propose other dialog size management feature. + + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues `_. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us smashing it by providing a detailed and welcomed feedback +`here `_. + + +Credits +======= + +Contributors +------------ + +* Anthony Muschang +* Stéphane Bidoul + +Maintainer +---------- + +.. image:: http://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: http://odoo-community.org + +This module is maintained by the OCA. + +OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use. + +To contribute to this module, please visit http://odoo-community.org. \ No newline at end of file diff --git a/web_dialog_size/__init__.py b/web_dialog_size/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/web_dialog_size/__openerp__.py b/web_dialog_size/__openerp__.py new file mode 100644 index 000000000..f0429370a --- /dev/null +++ b/web_dialog_size/__openerp__.py @@ -0,0 +1,47 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# This file is part of web_dialog_sizes, an Odoo module. +# +# Copyright (c) 2015 ACSONE SA/NV () +# +# web_expand_dialog is free software: you can redistribute it and/or +# modify it under the terms of the GNU Affero General Public License +# as published by the Free Software Foundation, either version 3 of +# the License, or (at your option) any later version. +# +# web_expand_dialog is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the +# GNU Affero General Public License +# along with web_expand_dialog. +# If not, see . +# +############################################################################## +{ + 'name': "Web Dialog Size", + + 'summary': """ + A module that lets the user expand a + dialog box to the full screen width.""", + + 'author': "ACSONE SA/NV,Odoo Community Association (OCA)", + 'website': "http://acsone.eu", + + 'category': 'web', + 'version': '8.0.0.1.0', + 'license': 'AGPL-3', + + 'depends': [ + 'web', + ], + 'qweb': [ + 'static/src/xml/web_dialog_size.xml', + ], + 'data': [ + 'view/qweb.xml', + ], +} diff --git a/web_dialog_size/static/description/icon.png b/web_dialog_size/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d GIT binary patch literal 9455 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 z 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 Xviia!U7SGha1wx#SCgwmn*{w2TRX*I literal 0 HcmV?d00001 diff --git a/web_dialog_size/static/src/css/web_dialog_size.css b/web_dialog_size/static/src/css/web_dialog_size.css new file mode 100644 index 000000000..10fba0f01 --- /dev/null +++ b/web_dialog_size/static/src/css/web_dialog_size.css @@ -0,0 +1,17 @@ +.modal .modal-header button.dialog_button_extend { + padding-top: 0px; + padding-right: 3px; +} + +.modal .modal-header button.dialog_button_restore { + padding-top: 1px; + padding-right: 5px; +} + +.modal .modal-header .dialog_button_hide { + display: none; +} + +.dialog_full_screen { + width: calc(100% - 50px); +} \ No newline at end of file diff --git a/web_dialog_size/static/src/js/web_dialog_size.js b/web_dialog_size/static/src/js/web_dialog_size.js new file mode 100644 index 000000000..d1d0299c8 --- /dev/null +++ b/web_dialog_size/static/src/js/web_dialog_size.js @@ -0,0 +1,37 @@ +openerp.web_dialog_size= function (instance) { + + instance.web.Dialog = instance.web.Dialog.extend({ + + init_dialog: function () { + var self = this; + this._super(); + self.$dialog_box.find('.dialog_button_restore').addClass('dialog_button_hide'); + if (this.dialog_options.size !== 'large'){ + self.$dialog_box.find('.dialog_button_extend').addClass('dialog_button_hide'); + } + else{ + self.$dialog_box.find('.dialog_button_extend').on('click', self._extending); + self.$dialog_box.find('.dialog_button_restore').on('click', self._restore); + } + }, + + _extending: function() { + var self = this; + $(this).parents('.modal-dialog').addClass('dialog_full_screen'); + $(this).addClass('dialog_button_hide'); + + $(this).parents('.modal-dialog').find('.dialog_button_restore').removeClass('dialog_button_hide') + }, + + _restore: function() { + var self = this; + $(this).parents('.modal-dialog').removeClass('dialog_full_screen'); + $(this).addClass('dialog_button_hide'); + + $(this).parents('.modal-dialog').find('.dialog_button_extend').removeClass('dialog_button_hide') + }, + + }); + +}; + diff --git a/web_dialog_size/static/src/xml/web_dialog_size.xml b/web_dialog_size/static/src/xml/web_dialog_size.xml new file mode 100644 index 000000000..1808dd2a6 --- /dev/null +++ b/web_dialog_size/static/src/xml/web_dialog_size.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/web_dialog_size/view/qweb.xml b/web_dialog_size/view/qweb.xml new file mode 100644 index 000000000..31dcd70fe --- /dev/null +++ b/web_dialog_size/view/qweb.xml @@ -0,0 +1,10 @@ + + + + + \ No newline at end of file From 73f9cb6934bc68e66648d25f3b3d9278ba5ca02f Mon Sep 17 00:00:00 2001 From: "Pedro M. Baeza" Date: Wed, 6 Apr 2016 20:33:56 +0200 Subject: [PATCH 02/20] [IMP] web_dialog_size: Select default dialog size by config * [IMP] web_dialog_size: Put dialog size expanded by default * [REM] web_popup_large: By duplication of the functionality * [IMP] web_dialog_size: README and contributors * [ADD] configuration parameter for default behavior [FIX] return super's promise [IMP] use fontawesome icons for buttons --- web_dialog_size/README.rst | 27 ++++---- web_dialog_size/__openerp__.py | 5 +- .../static/src/css/web_dialog_size.css | 14 ++-- .../static/src/js/web_dialog_size.js | 68 +++++++++++++------ .../static/src/xml/web_dialog_size.xml | 11 +-- 5 files changed, 77 insertions(+), 48 deletions(-) diff --git a/web_dialog_size/README.rst b/web_dialog_size/README.rst index f508aa0a6..c7e30bf04 100644 --- a/web_dialog_size/README.rst +++ b/web_dialog_size/README.rst @@ -1,19 +1,16 @@ Expand Dialog ============= -A module that lets the user expand a dialog box to the full screen width. +A module that lets the user expand/restore the dialog box size through a button +in the upper right corner (mimicking most windows managers). By default, +all dialog boxes are expanded. -It is named web_dialog_size as it could be extended to propose other dialog size management feature. - - -Bug Tracker -=========== - -Bugs are tracked on `GitHub Issues `_. -In case of trouble, please check there if your issue has already been reported. -If you spotted it first, help us smashing it by providing a detailed and welcomed feedback -`here `_. +Configuration +============= +By default, the module respects the caller's `dialog_size` option. If you want +to override this and have all dialogs maximized by default, set the configuration +parameter `web_dialog_size.default_maximize` to `1`. Credits ======= @@ -23,6 +20,8 @@ Contributors * Anthony Muschang * Stéphane Bidoul +* Pedro M. Baeza +* Holger Brunn Maintainer ---------- @@ -33,6 +32,8 @@ Maintainer This module is maintained by the OCA. -OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use. +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. -To contribute to this module, please visit http://odoo-community.org. \ No newline at end of file +To contribute to this module, please visit http://odoo-community.org. diff --git a/web_dialog_size/__openerp__.py b/web_dialog_size/__openerp__.py index f0429370a..cd7b6a401 100644 --- a/web_dialog_size/__openerp__.py +++ b/web_dialog_size/__openerp__.py @@ -28,7 +28,10 @@ A module that lets the user expand a dialog box to the full screen width.""", - 'author': "ACSONE SA/NV,Odoo Community Association (OCA)", + 'author': "ACSONE SA/NV," + "Serv. Tecnol. Avanzados - Pedro M. Baeza," + "Therp BV," + "Odoo Community Association (OCA)", 'website': "http://acsone.eu", 'category': 'web', diff --git a/web_dialog_size/static/src/css/web_dialog_size.css b/web_dialog_size/static/src/css/web_dialog_size.css index 10fba0f01..74f829ec3 100644 --- a/web_dialog_size/static/src/css/web_dialog_size.css +++ b/web_dialog_size/static/src/css/web_dialog_size.css @@ -1,17 +1,15 @@ .modal .modal-header button.dialog_button_extend { - padding-top: 0px; padding-right: 3px; } .modal .modal-header button.dialog_button_restore { - padding-top: 1px; - padding-right: 5px; -} - -.modal .modal-header .dialog_button_hide { - display: none; + padding-right: 3px; } .dialog_full_screen { width: calc(100% - 50px); -} \ No newline at end of file +} + +.modal .modal-header button.close { + font-size: 14px; +} diff --git a/web_dialog_size/static/src/js/web_dialog_size.js b/web_dialog_size/static/src/js/web_dialog_size.js index d1d0299c8..c2d1910c3 100644 --- a/web_dialog_size/static/src/js/web_dialog_size.js +++ b/web_dialog_size/static/src/js/web_dialog_size.js @@ -1,34 +1,58 @@ openerp.web_dialog_size= function (instance) { instance.web.Dialog = instance.web.Dialog.extend({ - init_dialog: function () { - var self = this; - this._super(); - self.$dialog_box.find('.dialog_button_restore').addClass('dialog_button_hide'); - if (this.dialog_options.size !== 'large'){ - self.$dialog_box.find('.dialog_button_extend').addClass('dialog_button_hide'); - } - else{ - self.$dialog_box.find('.dialog_button_extend').on('click', self._extending); - self.$dialog_box.find('.dialog_button_restore').on('click', self._restore); + var self = this, + result = this._super(); + self.$dialog_box.find('.dialog_button_extend') + .on('click', self.proxy('_extending')); + self.$dialog_box.find('.dialog_button_restore') + .on('click', self.proxy('_restore')); + if(this.dialog_options.size == 'large') + { + self._extending(); + return result; } + return jQuery.when(result).then(function() + { + var deferred = null; + if(openerp.web_dialog_size.default_maximize === undefined) + { + deferred = (new openerp.web.Model('ir.config_parameter')) + .call('get_param', + ['web_dialog_size.default_maximize']) + .then(function(default_maximize) + { + openerp.web_dialog_size.default_maximize = + default_maximize; + }); + } + return jQuery.when(deferred).then(function() + { + if(openerp.web_dialog_size.default_maximize) + { + self._extending(); + } + else + { + self._restore(); + } + }); + }); }, - _extending: function() { - var self = this; - $(this).parents('.modal-dialog').addClass('dialog_full_screen'); - $(this).addClass('dialog_button_hide'); - - $(this).parents('.modal-dialog').find('.dialog_button_restore').removeClass('dialog_button_hide') + _extending: function(e) { + var dialog = this.$el.parents('.modal-dialog'); + dialog.addClass('dialog_full_screen'); + dialog.find('.dialog_button_extend').hide(); + dialog.find('.dialog_button_restore').show(); }, - _restore: function() { - var self = this; - $(this).parents('.modal-dialog').removeClass('dialog_full_screen'); - $(this).addClass('dialog_button_hide'); - - $(this).parents('.modal-dialog').find('.dialog_button_extend').removeClass('dialog_button_hide') + _restore: function(e) { + var dialog = this.$el.parents('.modal-dialog'); + dialog.removeClass('dialog_full_screen'); + dialog.find('.dialog_button_restore').hide(); + dialog.find('.dialog_button_extend').show(); }, }); diff --git a/web_dialog_size/static/src/xml/web_dialog_size.xml b/web_dialog_size/static/src/xml/web_dialog_size.xml index 1808dd2a6..51e6fd6ae 100644 --- a/web_dialog_size/static/src/xml/web_dialog_size.xml +++ b/web_dialog_size/static/src/xml/web_dialog_size.xml @@ -1,9 +1,12 @@ - - - + + + + + + - \ No newline at end of file + From 0d04f3d64fb4eaf342a8bed511d611fdafd4be65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Bidoul?= Date: Fri, 27 May 2016 21:53:29 +0200 Subject: [PATCH 03/20] [FIX] web_dialog_size: do not expand by default and correctly honor default_maximize parameter --- web_dialog_size/README.rst | 3 +-- web_dialog_size/static/src/js/web_dialog_size.js | 5 ----- 2 files changed, 1 insertion(+), 7 deletions(-) diff --git a/web_dialog_size/README.rst b/web_dialog_size/README.rst index c7e30bf04..3d409a603 100644 --- a/web_dialog_size/README.rst +++ b/web_dialog_size/README.rst @@ -2,8 +2,7 @@ Expand Dialog ============= A module that lets the user expand/restore the dialog box size through a button -in the upper right corner (mimicking most windows managers). By default, -all dialog boxes are expanded. +in the upper right corner (mimicking most windows managers). Configuration ============= diff --git a/web_dialog_size/static/src/js/web_dialog_size.js b/web_dialog_size/static/src/js/web_dialog_size.js index c2d1910c3..ff3708e58 100644 --- a/web_dialog_size/static/src/js/web_dialog_size.js +++ b/web_dialog_size/static/src/js/web_dialog_size.js @@ -8,11 +8,6 @@ openerp.web_dialog_size= function (instance) { .on('click', self.proxy('_extending')); self.$dialog_box.find('.dialog_button_restore') .on('click', self.proxy('_restore')); - if(this.dialog_options.size == 'large') - { - self._extending(); - return result; - } return jQuery.when(result).then(function() { var deferred = null; From 0a33b6b4e85778cefcbf23549f8f4ad942ba91ef Mon Sep 17 00:00:00 2001 From: Siddharth Bhalgami Date: Sun, 12 Jun 2016 16:32:31 +0530 Subject: [PATCH 04/20] [MIG] web_dialog_siza: Migrate to v9.0 --- web_dialog_size/README.rst | 1 + web_dialog_size/__openerp__.py | 14 +-- .../static/src/css/web_dialog_size.css | 6 +- .../static/src/js/web_dialog_size.js | 85 ++++++++----------- web_dialog_size/view/qweb.xml | 19 ++--- 5 files changed, 56 insertions(+), 69 deletions(-) diff --git a/web_dialog_size/README.rst b/web_dialog_size/README.rst index 3d409a603..d30b2f019 100644 --- a/web_dialog_size/README.rst +++ b/web_dialog_size/README.rst @@ -21,6 +21,7 @@ Contributors * Stéphane Bidoul * Pedro M. Baeza * Holger Brunn +* Siddharth Bhalgami Maintainer ---------- diff --git a/web_dialog_size/__openerp__.py b/web_dialog_size/__openerp__.py index cd7b6a401..7c5696f00 100644 --- a/web_dialog_size/__openerp__.py +++ b/web_dialog_size/__openerp__.py @@ -28,14 +28,15 @@ A module that lets the user expand a dialog box to the full screen width.""", - 'author': "ACSONE SA/NV," - "Serv. Tecnol. Avanzados - Pedro M. Baeza," - "Therp BV," - "Odoo Community Association (OCA)", - 'website': "http://acsone.eu", + 'author': "ACSONE SA/NV, " + "Serv. Tecnol. Avanzados - Pedro M. Baeza, " + "Therp BV, " + "Odoo Community Association (OCA), " + "Siddharth Bhalgami", + 'website': "http://acsone.eu", 'category': 'web', - 'version': '8.0.0.1.0', + 'version': '9.0.1.0.0', 'license': 'AGPL-3', 'depends': [ @@ -47,4 +48,5 @@ 'data': [ 'view/qweb.xml', ], + 'installable': True, } diff --git a/web_dialog_size/static/src/css/web_dialog_size.css b/web_dialog_size/static/src/css/web_dialog_size.css index 74f829ec3..bd7fdb2ee 100644 --- a/web_dialog_size/static/src/css/web_dialog_size.css +++ b/web_dialog_size/static/src/css/web_dialog_size.css @@ -1,9 +1,9 @@ .modal .modal-header button.dialog_button_extend { - padding-right: 3px; + padding-right: 5px; } .modal .modal-header button.dialog_button_restore { - padding-right: 3px; + padding-right: 5px; } .dialog_full_screen { @@ -11,5 +11,5 @@ } .modal .modal-header button.close { - font-size: 14px; + font-size: 18px; } diff --git a/web_dialog_size/static/src/js/web_dialog_size.js b/web_dialog_size/static/src/js/web_dialog_size.js index ff3708e58..56e070f29 100644 --- a/web_dialog_size/static/src/js/web_dialog_size.js +++ b/web_dialog_size/static/src/js/web_dialog_size.js @@ -1,56 +1,41 @@ -openerp.web_dialog_size= function (instance) { +odoo.define('web_dialog_size.web_dialog_size', function (require) { +'use strict'; - instance.web.Dialog = instance.web.Dialog.extend({ - init_dialog: function () { - var self = this, - result = this._super(); - self.$dialog_box.find('.dialog_button_extend') - .on('click', self.proxy('_extending')); - self.$dialog_box.find('.dialog_button_restore') - .on('click', self.proxy('_restore')); - return jQuery.when(result).then(function() - { - var deferred = null; - if(openerp.web_dialog_size.default_maximize === undefined) - { - deferred = (new openerp.web.Model('ir.config_parameter')) - .call('get_param', - ['web_dialog_size.default_maximize']) - .then(function(default_maximize) - { - openerp.web_dialog_size.default_maximize = - default_maximize; - }); - } - return jQuery.when(deferred).then(function() - { - if(openerp.web_dialog_size.default_maximize) - { - self._extending(); - } - else - { - self._restore(); - } - }); - }); - }, +var Model = require('web.DataModel'); +var Dialog = require('web.Dialog'); - _extending: function(e) { - var dialog = this.$el.parents('.modal-dialog'); - dialog.addClass('dialog_full_screen'); - dialog.find('.dialog_button_extend').hide(); - dialog.find('.dialog_button_restore').show(); - }, +Dialog.include({ - _restore: function(e) { - var dialog = this.$el.parents('.modal-dialog'); - dialog.removeClass('dialog_full_screen'); - dialog.find('.dialog_button_restore').hide(); - dialog.find('.dialog_button_extend').show(); - }, + init: function (parent, options) { + var self = this; + this._super.apply(this, arguments); + self.$modal.find('.dialog_button_extend').on('click', self.proxy('_extending')); + self.$modal.find('.dialog_button_restore').on('click', self.proxy('_restore')); - }); + new Model('ir.config_parameter').query(['key', 'value']). + filter([['key', '=', 'web_dialog_size.default_maximize']]).all().then(function(default_maximize) { + if (default_maximize.length && default_maximize[0]['value'] == 1) { + self._extending(); + } else { + self._restore(); + } + }); + }, -}; + _extending: function() { + var dialog = this.$el.parents('.modal-dialog'); + dialog.addClass('dialog_full_screen'); + dialog.find('.dialog_button_extend').hide(); + dialog.find('.dialog_button_restore').show(); + }, + _restore: function() { + var dialog = this.$el.parents('.modal-dialog'); + dialog.removeClass('dialog_full_screen'); + dialog.find('.dialog_button_restore').hide(); + dialog.find('.dialog_button_extend').show(); + }, + +}); + +}); diff --git a/web_dialog_size/view/qweb.xml b/web_dialog_size/view/qweb.xml index 31dcd70fe..103b3d970 100644 --- a/web_dialog_size/view/qweb.xml +++ b/web_dialog_size/view/qweb.xml @@ -1,10 +1,9 @@ - - - - - \ No newline at end of file + + + + From c09bf98ebbf99dd7d4c233202507651cd52a45bc Mon Sep 17 00:00:00 2001 From: Siddharth Bhalgami Date: Sun, 5 Feb 2017 00:15:22 +0530 Subject: [PATCH 05/20] [10.0-MIG] web_dialog_size for v10.0 --- web_dialog_size/__manifest__.py | 33 ++++++++++++ web_dialog_size/__openerp__.py | 52 ------------------- .../static/src/js/web_dialog_size.js | 4 +- .../{view/qweb.xml => templates/assets.xml} | 0 4 files changed, 35 insertions(+), 54 deletions(-) create mode 100644 web_dialog_size/__manifest__.py delete mode 100644 web_dialog_size/__openerp__.py rename web_dialog_size/{view/qweb.xml => templates/assets.xml} (100%) diff --git a/web_dialog_size/__manifest__.py b/web_dialog_size/__manifest__.py new file mode 100644 index 000000000..10b14d75a --- /dev/null +++ b/web_dialog_size/__manifest__.py @@ -0,0 +1,33 @@ +# -*- coding: utf-8 -*- +# Copyright 2015 ACSONE SA/NV +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +{ + 'name': "Web Dialog Size", + + 'summary': """ + A module that lets the user expand a + dialog box to the full screen width.""", + + 'author': "ACSONE SA/NV, " + "Serv. Tecnol. Avanzados - Pedro M. Baeza, " + "Therp BV, " + "Odoo Community Association (OCA), " + "Siddharth Bhalgami", + + 'website': "http://acsone.eu", + 'category': 'web', + 'version': '10.0.1.0.0', + 'license': 'AGPL-3', + + 'depends': [ + 'web', + ], + 'qweb': [ + 'static/src/xml/web_dialog_size.xml', + ], + 'data': [ + 'templates/assets.xml', + ], + 'installable': True, +} diff --git a/web_dialog_size/__openerp__.py b/web_dialog_size/__openerp__.py deleted file mode 100644 index 7c5696f00..000000000 --- a/web_dialog_size/__openerp__.py +++ /dev/null @@ -1,52 +0,0 @@ -# -*- coding: utf-8 -*- -############################################################################## -# -# This file is part of web_dialog_sizes, an Odoo module. -# -# Copyright (c) 2015 ACSONE SA/NV () -# -# web_expand_dialog is free software: you can redistribute it and/or -# modify it under the terms of the GNU Affero General Public License -# as published by the Free Software Foundation, either version 3 of -# the License, or (at your option) any later version. -# -# web_expand_dialog is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the -# GNU Affero General Public License -# along with web_expand_dialog. -# If not, see . -# -############################################################################## -{ - 'name': "Web Dialog Size", - - 'summary': """ - A module that lets the user expand a - dialog box to the full screen width.""", - - 'author': "ACSONE SA/NV, " - "Serv. Tecnol. Avanzados - Pedro M. Baeza, " - "Therp BV, " - "Odoo Community Association (OCA), " - "Siddharth Bhalgami", - - 'website': "http://acsone.eu", - 'category': 'web', - 'version': '9.0.1.0.0', - 'license': 'AGPL-3', - - 'depends': [ - 'web', - ], - 'qweb': [ - 'static/src/xml/web_dialog_size.xml', - ], - 'data': [ - 'view/qweb.xml', - ], - 'installable': True, -} diff --git a/web_dialog_size/static/src/js/web_dialog_size.js b/web_dialog_size/static/src/js/web_dialog_size.js index 56e070f29..df56b8fee 100644 --- a/web_dialog_size/static/src/js/web_dialog_size.js +++ b/web_dialog_size/static/src/js/web_dialog_size.js @@ -23,14 +23,14 @@ Dialog.include({ }, _extending: function() { - var dialog = this.$el.parents('.modal-dialog'); + var dialog = this.$modal.find('.modal-dialog'); dialog.addClass('dialog_full_screen'); dialog.find('.dialog_button_extend').hide(); dialog.find('.dialog_button_restore').show(); }, _restore: function() { - var dialog = this.$el.parents('.modal-dialog'); + var dialog = this.$modal.find('.modal-dialog'); dialog.removeClass('dialog_full_screen'); dialog.find('.dialog_button_restore').hide(); dialog.find('.dialog_button_extend').show(); diff --git a/web_dialog_size/view/qweb.xml b/web_dialog_size/templates/assets.xml similarity index 100% rename from web_dialog_size/view/qweb.xml rename to web_dialog_size/templates/assets.xml From ebc473ad9e361dca912d5cc938b0d080f85198b5 Mon Sep 17 00:00:00 2001 From: Wolfgang Pichler Date: Mon, 18 Sep 2017 09:58:06 +0200 Subject: [PATCH 06/20] [FIX+IMP] web_dialog_size * IMP: Added draggable support to dialogs * FIX: web_dialog_size: export modal - PR #733 introduced draggable dialogs which broke some of them --- web_dialog_size/README.rst | 35 ++++++++++++++++--- web_dialog_size/__manifest__.py | 12 +++---- .../static/src/js/web_dialog_size.js | 20 ++++++++++- 3 files changed, 54 insertions(+), 13 deletions(-) diff --git a/web_dialog_size/README.rst b/web_dialog_size/README.rst index d30b2f019..c936a028d 100644 --- a/web_dialog_size/README.rst +++ b/web_dialog_size/README.rst @@ -1,8 +1,14 @@ +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg + :target: https://www.gnu.org/licenses/agpl + :alt: License: AGPL-3 + +============= Expand Dialog ============= A module that lets the user expand/restore the dialog box size through a button in the upper right corner (mimicking most windows managers). +It does also add draggable support to the dialogs. Configuration ============= @@ -11,24 +17,45 @@ By default, the module respects the caller's `dialog_size` option. If you want to override this and have all dialogs maximized by default, set the configuration parameter `web_dialog_size.default_maximize` to `1`. +.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas + :alt: Try me on Runbot + :target: https://runbot.odoo-community.org/runbot/162/10.0 + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues +`_. In case of trouble, please +check there if your issue has already been reported. If you spotted it first, +help us smash it by providing detailed and welcomed feedback. + Credits ======= +Images +------ + +* Odoo Community Association: `Icon `_. + Contributors ------------ * Anthony Muschang * Stéphane Bidoul -* Pedro M. Baeza +* Pedro M. Baeza * Holger Brunn * Siddharth Bhalgami +* Wolfgang Pichler +* David Vidal + +Do not contact contributors directly about support or help with technical issues. Maintainer ---------- -.. image:: http://odoo-community.org/logo.png +.. image:: https://odoo-community.org/logo.png :alt: Odoo Community Association - :target: http://odoo-community.org + :target: https://odoo-community.org This module is maintained by the OCA. @@ -36,4 +63,4 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use. -To contribute to this module, please visit http://odoo-community.org. +To contribute to this module, please visit https://odoo-community.org. diff --git a/web_dialog_size/__manifest__.py b/web_dialog_size/__manifest__.py index 10b14d75a..6b8df22f5 100644 --- a/web_dialog_size/__manifest__.py +++ b/web_dialog_size/__manifest__.py @@ -4,22 +4,18 @@ { 'name': "Web Dialog Size", - 'summary': """ A module that lets the user expand a dialog box to the full screen width.""", - 'author': "ACSONE SA/NV, " - "Serv. Tecnol. Avanzados - Pedro M. Baeza, " "Therp BV, " - "Odoo Community Association (OCA), " - "Siddharth Bhalgami", - + "Siddharth Bhalgami," + "Tecnativa, " + "Odoo Community Association (OCA)", 'website': "http://acsone.eu", 'category': 'web', - 'version': '10.0.1.0.0', + 'version': '10.0.1.0.1', 'license': 'AGPL-3', - 'depends': [ 'web', ], diff --git a/web_dialog_size/static/src/js/web_dialog_size.js b/web_dialog_size/static/src/js/web_dialog_size.js index df56b8fee..e8f84da2b 100644 --- a/web_dialog_size/static/src/js/web_dialog_size.js +++ b/web_dialog_size/static/src/js/web_dialog_size.js @@ -14,7 +14,7 @@ Dialog.include({ new Model('ir.config_parameter').query(['key', 'value']). filter([['key', '=', 'web_dialog_size.default_maximize']]).all().then(function(default_maximize) { - if (default_maximize.length && default_maximize[0]['value'] == 1) { + if (default_maximize.length && default_maximize[0].value === 1) { self._extending(); } else { self._restore(); @@ -22,6 +22,24 @@ Dialog.include({ }); }, + open: function() { + var res = this._super.apply(this, arguments); + this.$modal.draggable({ + handle: '.modal-header', + helper: false + }); + return res; + }, + + close: function() { + var draggable = this.$modal.draggable( "instance" ); + if (draggable) { + this.$modal.draggable("destroy"); + } + var res = this._super.apply(this, arguments); + return res; + }, + _extending: function() { var dialog = this.$modal.find('.modal-dialog'); dialog.addClass('dialog_full_screen'); From 20d71e049b730381abef3c77abe21c00fa35f27c Mon Sep 17 00:00:00 2001 From: David Date: Tue, 19 Dec 2017 20:02:41 +0100 Subject: [PATCH 07/20] [FIX] web_dialog_size: default_maximize - default_maximize option wasn't working due to strict value comparison --- web_dialog_size/__manifest__.py | 2 +- web_dialog_size/static/src/js/web_dialog_size.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/web_dialog_size/__manifest__.py b/web_dialog_size/__manifest__.py index 6b8df22f5..a609e7c35 100644 --- a/web_dialog_size/__manifest__.py +++ b/web_dialog_size/__manifest__.py @@ -14,7 +14,7 @@ "Odoo Community Association (OCA)", 'website': "http://acsone.eu", 'category': 'web', - 'version': '10.0.1.0.1', + 'version': '10.0.1.0.2', 'license': 'AGPL-3', 'depends': [ 'web', diff --git a/web_dialog_size/static/src/js/web_dialog_size.js b/web_dialog_size/static/src/js/web_dialog_size.js index e8f84da2b..f6faa4b10 100644 --- a/web_dialog_size/static/src/js/web_dialog_size.js +++ b/web_dialog_size/static/src/js/web_dialog_size.js @@ -14,7 +14,7 @@ Dialog.include({ new Model('ir.config_parameter').query(['key', 'value']). filter([['key', '=', 'web_dialog_size.default_maximize']]).all().then(function(default_maximize) { - if (default_maximize.length && default_maximize[0].value === 1) { + if (default_maximize.length && default_maximize[0].value == 1) { self._extending(); } else { self._restore(); From f243156e22a11e84d22c47786c54792c84e6194b Mon Sep 17 00:00:00 2001 From: Quentin Theuret Date: Sat, 17 Feb 2018 09:33:41 +0100 Subject: [PATCH 08/20] [MIG] Migrate web_dialog_size module to v11 --- web_dialog_size/README.rst | 3 +- web_dialog_size/__init__.py | 2 + web_dialog_size/__manifest__.py | 5 +- .../static/src/js/web_dialog_size.js | 46 ++++++++++--------- 4 files changed, 32 insertions(+), 24 deletions(-) diff --git a/web_dialog_size/README.rst b/web_dialog_size/README.rst index c936a028d..6cc0acf8d 100644 --- a/web_dialog_size/README.rst +++ b/web_dialog_size/README.rst @@ -19,7 +19,7 @@ parameter `web_dialog_size.default_maximize` to `1`. .. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas :alt: Try me on Runbot - :target: https://runbot.odoo-community.org/runbot/162/10.0 + :target: https://runbot.odoo-community.org/runbot/162/11.0 Bug Tracker =========== @@ -47,6 +47,7 @@ Contributors * Siddharth Bhalgami * Wolfgang Pichler * David Vidal +* Quentin Theuret Do not contact contributors directly about support or help with technical issues. diff --git a/web_dialog_size/__init__.py b/web_dialog_size/__init__.py index e69de29bb..2b46a37e4 100644 --- a/web_dialog_size/__init__.py +++ b/web_dialog_size/__init__.py @@ -0,0 +1,2 @@ +# Copyright 2018 Quentin Theuret +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). \ No newline at end of file diff --git a/web_dialog_size/__manifest__.py b/web_dialog_size/__manifest__.py index a609e7c35..df8945020 100644 --- a/web_dialog_size/__manifest__.py +++ b/web_dialog_size/__manifest__.py @@ -1,5 +1,5 @@ -# -*- coding: utf-8 -*- # Copyright 2015 ACSONE SA/NV +# Copyright 2018 Amaris # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { @@ -11,10 +11,11 @@ "Therp BV, " "Siddharth Bhalgami," "Tecnativa, " + "Amaris, " "Odoo Community Association (OCA)", 'website': "http://acsone.eu", 'category': 'web', - 'version': '10.0.1.0.2', + 'version': '11.0.1.0.1', 'license': 'AGPL-3', 'depends': [ 'web', diff --git a/web_dialog_size/static/src/js/web_dialog_size.js b/web_dialog_size/static/src/js/web_dialog_size.js index f6faa4b10..93056f728 100644 --- a/web_dialog_size/static/src/js/web_dialog_size.js +++ b/web_dialog_size/static/src/js/web_dialog_size.js @@ -1,34 +1,39 @@ odoo.define('web_dialog_size.web_dialog_size', function (require) { 'use strict'; -var Model = require('web.DataModel'); +var rpc = require('web.rpc'); var Dialog = require('web.Dialog'); Dialog.include({ - init: function (parent, options) { + willStart: function () { var self = this; - this._super.apply(this, arguments); - self.$modal.find('.dialog_button_extend').on('click', self.proxy('_extending')); - self.$modal.find('.dialog_button_restore').on('click', self.proxy('_restore')); - - new Model('ir.config_parameter').query(['key', 'value']). - filter([['key', '=', 'web_dialog_size.default_maximize']]).all().then(function(default_maximize) { - if (default_maximize.length && default_maximize[0].value == 1) { - self._extending(); - } else { - self._restore(); - } + return this._super.apply(this, arguments).then(function () { + self.$modal.find('.dialog_button_extend').on('click', self.proxy('_extending')); + self.$modal.find('.dialog_button_restore').on('click', self.proxy('_restore')); + return rpc.query({ + model: 'ir.config_parameter', + method: 'get_param', + args: ['web_dialog_size.default_maximize',], + }).then(function(default_maximize) { + if (default_maximize === "True" || default_maximize === 1) { + self._extending(); + } else { + self._restore(); + } + }); }); }, open: function() { - var res = this._super.apply(this, arguments); - this.$modal.draggable({ - handle: '.modal-header', - helper: false - }); - return res; + this._super.apply(this, arguments); + if (this.$modal) { + this.$modal.draggable({ + handle: '.modal-header', + helper: false + }); + }; + return this; }, close: function() { @@ -36,8 +41,7 @@ Dialog.include({ if (draggable) { this.$modal.draggable("destroy"); } - var res = this._super.apply(this, arguments); - return res; + return this._super.apply(this, arguments); }, _extending: function() { From 89861edf8156c1c87625dbd8ac9a3ecf19dc24c6 Mon Sep 17 00:00:00 2001 From: Quentin THEURET Date: Tue, 15 May 2018 20:42:14 +0200 Subject: [PATCH 09/20] [FIX] #921 Fixed issue when discard a modal with draggable element --- web_dialog_size/__manifest__.py | 2 +- web_dialog_size/static/src/js/web_dialog_size.js | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/web_dialog_size/__manifest__.py b/web_dialog_size/__manifest__.py index df8945020..3b032fe7f 100644 --- a/web_dialog_size/__manifest__.py +++ b/web_dialog_size/__manifest__.py @@ -15,7 +15,7 @@ "Odoo Community Association (OCA)", 'website': "http://acsone.eu", 'category': 'web', - 'version': '11.0.1.0.1', + 'version': '11.0.1.0.2', 'license': 'AGPL-3', 'depends': [ 'web', diff --git a/web_dialog_size/static/src/js/web_dialog_size.js b/web_dialog_size/static/src/js/web_dialog_size.js index 93056f728..4aa412f4b 100644 --- a/web_dialog_size/static/src/js/web_dialog_size.js +++ b/web_dialog_size/static/src/js/web_dialog_size.js @@ -37,9 +37,11 @@ Dialog.include({ }, close: function() { - var draggable = this.$modal.draggable( "instance" ); - if (draggable) { - this.$modal.draggable("destroy"); + if (this.$modal) { + var draggable = this.$modal.draggable("instance"); + if (draggable) { + this.$modal.draggable("destroy"); + } } return this._super.apply(this, arguments); }, From fe42dbcd924ac92f25cdcf7d343de5bca01d74a9 Mon Sep 17 00:00:00 2001 From: Jairo Llopis Date: Wed, 13 Jun 2018 08:54:46 +0200 Subject: [PATCH 10/20] [FIX] web_dialog_size: Fix usage for non-admins and reduce calls (#954) This addon had 2 problems after migrating to v11: 1. One call to backend's `ir.config_parameter.get_param` was done for each instantiated dialog, while the setting served for the whole session equally. 2. That model is now readable only by admin users, so non-admins couldn't use the default at all. Fixed now. --- web_dialog_size/README.rst | 86 ++-- web_dialog_size/__init__.py | 3 +- web_dialog_size/__manifest__.py | 4 +- web_dialog_size/models/__init__.py | 1 + web_dialog_size/models/ir_config_parameter.py | 17 + web_dialog_size/readme/CONFIGURATION.rst | 3 + web_dialog_size/readme/CONTRIBUTORS.rst | 11 + web_dialog_size/readme/DESCRIPTION.rst | 3 + web_dialog_size/static/description/index.html | 436 ++++++++++++++++++ .../static/src/js/web_dialog_size.js | 15 +- 10 files changed, 536 insertions(+), 43 deletions(-) create mode 100644 web_dialog_size/models/__init__.py create mode 100644 web_dialog_size/models/ir_config_parameter.py create mode 100644 web_dialog_size/readme/CONFIGURATION.rst create mode 100644 web_dialog_size/readme/CONTRIBUTORS.rst create mode 100644 web_dialog_size/readme/DESCRIPTION.rst create mode 100644 web_dialog_size/static/description/index.html diff --git a/web_dialog_size/README.rst b/web_dialog_size/README.rst index 6cc0acf8d..440f06333 100644 --- a/web_dialog_size/README.rst +++ b/web_dialog_size/README.rst @@ -1,67 +1,89 @@ -.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg - :target: https://www.gnu.org/licenses/agpl - :alt: License: AGPL-3 +=============== +Web Dialog Size +=============== -============= -Expand Dialog -============= +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png + :target: https://odoo-community.org/page/development-status + :alt: Beta +.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 +.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github + :target: https://github.com/OCA/web/tree/11.0/web_dialog_size + :alt: OCA/web +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/web-11-0/web-11-0-web_dialog_size + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/162/11.0 + :alt: Try me on Runbot + +|badge1| |badge2| |badge3| |badge4| |badge5| A module that lets the user expand/restore the dialog box size through a button -in the upper right corner (mimicking most windows managers). -It does also add draggable support to the dialogs. +in the upper right corner (imitating most windows managers). +It also adds draggable support to the dialogs. -Configuration -============= +**Table of contents** -By default, the module respects the caller's `dialog_size` option. If you want -to override this and have all dialogs maximized by default, set the configuration -parameter `web_dialog_size.default_maximize` to `1`. - -.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas - :alt: Try me on Runbot - :target: https://runbot.odoo-community.org/runbot/162/11.0 +.. contents:: + :local: Bug Tracker =========== -Bugs are tracked on `GitHub Issues -`_. In case of trouble, please -check there if your issue has already been reported. If you spotted it first, -help us smash it by providing detailed and welcomed feedback. +Bugs are tracked on `GitHub Issues `_. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us smashing it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. Credits ======= -Images ------- +Authors +~~~~~~~ -* Odoo Community Association: `Icon `_. +* ACSONE SA/NV +* Therp BV +* Siddharth Bhalgami +* Tecnativa +* Amaris Contributors ------------- +~~~~~~~~~~~~ * Anthony Muschang * Stéphane Bidoul -* Pedro M. Baeza * Holger Brunn * Siddharth Bhalgami * Wolfgang Pichler * David Vidal * Quentin Theuret +* `Tecnativa `_: -Do not contact contributors directly about support or help with technical issues. + * Pedro M. Baeza + * Jairo Llopis -Maintainer ----------- +Maintainers +~~~~~~~~~~~ + +This module is maintained by the OCA. .. image:: https://odoo-community.org/logo.png :alt: Odoo Community Association :target: https://odoo-community.org -This module is maintained by the OCA. - OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use. -To contribute to this module, please visit https://odoo-community.org. +This module is part of the `OCA/web `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/web_dialog_size/__init__.py b/web_dialog_size/__init__.py index 2b46a37e4..0650744f6 100644 --- a/web_dialog_size/__init__.py +++ b/web_dialog_size/__init__.py @@ -1,2 +1 @@ -# Copyright 2018 Quentin Theuret -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). \ No newline at end of file +from . import models diff --git a/web_dialog_size/__manifest__.py b/web_dialog_size/__manifest__.py index 3b032fe7f..4e799d1a5 100644 --- a/web_dialog_size/__manifest__.py +++ b/web_dialog_size/__manifest__.py @@ -13,9 +13,9 @@ "Tecnativa, " "Amaris, " "Odoo Community Association (OCA)", - 'website': "http://acsone.eu", + 'website': "http://github.com/OCA/web", 'category': 'web', - 'version': '11.0.1.0.2', + 'version': '11.0.1.0.3', 'license': 'AGPL-3', 'depends': [ 'web', diff --git a/web_dialog_size/models/__init__.py b/web_dialog_size/models/__init__.py new file mode 100644 index 000000000..bd3aa9f10 --- /dev/null +++ b/web_dialog_size/models/__init__.py @@ -0,0 +1 @@ +from . import ir_config_parameter diff --git a/web_dialog_size/models/ir_config_parameter.py b/web_dialog_size/models/ir_config_parameter.py new file mode 100644 index 000000000..bc916db00 --- /dev/null +++ b/web_dialog_size/models/ir_config_parameter.py @@ -0,0 +1,17 @@ +# Copyright 2018 Tecnativa - Jairo Llopis +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo.models import api, Model +from odoo.tools.safe_eval import const_eval + + +class IrConfigParameter(Model): + _inherit = "ir.config_parameter" + + @api.model + def get_web_dialog_size_config(self): + get_param = self.sudo().get_param + return { + key: const_eval(get_param("web_dialog_size.%s" % key, "False")) + for key in ["default_maximize"] + } diff --git a/web_dialog_size/readme/CONFIGURATION.rst b/web_dialog_size/readme/CONFIGURATION.rst new file mode 100644 index 000000000..18b1ad078 --- /dev/null +++ b/web_dialog_size/readme/CONFIGURATION.rst @@ -0,0 +1,3 @@ +By default, the module respects the caller's ``dialog_size`` option. +If you want to override this and have all dialogs maximized by default, +set the configuration parameter ``web_dialog_size.default_maximize`` to ``1``. diff --git a/web_dialog_size/readme/CONTRIBUTORS.rst b/web_dialog_size/readme/CONTRIBUTORS.rst new file mode 100644 index 000000000..0641b1d1e --- /dev/null +++ b/web_dialog_size/readme/CONTRIBUTORS.rst @@ -0,0 +1,11 @@ +* Anthony Muschang +* Stéphane Bidoul +* Holger Brunn +* Siddharth Bhalgami +* Wolfgang Pichler +* David Vidal +* Quentin Theuret +* `Tecnativa `_: + + * Pedro M. Baeza + * Jairo Llopis diff --git a/web_dialog_size/readme/DESCRIPTION.rst b/web_dialog_size/readme/DESCRIPTION.rst new file mode 100644 index 000000000..398e72f50 --- /dev/null +++ b/web_dialog_size/readme/DESCRIPTION.rst @@ -0,0 +1,3 @@ +A module that lets the user expand/restore the dialog box size through a button +in the upper right corner (imitating most windows managers). +It also adds draggable support to the dialogs. diff --git a/web_dialog_size/static/description/index.html b/web_dialog_size/static/description/index.html new file mode 100644 index 000000000..ce5afa560 --- /dev/null +++ b/web_dialog_size/static/description/index.html @@ -0,0 +1,436 @@ + + + + + + +Web Dialog Size + + + +
+

Web Dialog Size

+ + +

Beta License: AGPL-3 OCA/web Translate me on Weblate Try me on Runbot

+

A module that lets the user expand/restore the dialog box size through a button +in the upper right corner (imitating most windows managers). +It also adds draggable support to the dialogs.

+

Table of contents

+ +
+

Bug Tracker

+

Bugs are tracked on GitHub Issues. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us smashing it by providing a detailed and welcomed +feedback.

+

Do not contact contributors directly about support or help with technical issues.

+
+
+

Credits

+
+

Authors

+
    +
  • ACSONE SA/NV
  • +
  • Therp BV
  • +
  • Siddharth Bhalgami
  • +
  • Tecnativa
  • +
  • Amaris
  • +
+
+
+

Contributors

+ +
+
+

Maintainers

+

This module is maintained by the OCA.

+Odoo Community Association +

OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use.

+

This module is part of the OCA/web project on GitHub.

+

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

+
+
+
+ + diff --git a/web_dialog_size/static/src/js/web_dialog_size.js b/web_dialog_size/static/src/js/web_dialog_size.js index 4aa412f4b..4ec942464 100644 --- a/web_dialog_size/static/src/js/web_dialog_size.js +++ b/web_dialog_size/static/src/js/web_dialog_size.js @@ -4,6 +4,11 @@ odoo.define('web_dialog_size.web_dialog_size', function (require) { var rpc = require('web.rpc'); var Dialog = require('web.Dialog'); +var config = rpc.query({ + model: 'ir.config_parameter', + method: 'get_web_dialog_size_config', +}); + Dialog.include({ willStart: function () { @@ -11,12 +16,8 @@ Dialog.include({ return this._super.apply(this, arguments).then(function () { self.$modal.find('.dialog_button_extend').on('click', self.proxy('_extending')); self.$modal.find('.dialog_button_restore').on('click', self.proxy('_restore')); - return rpc.query({ - model: 'ir.config_parameter', - method: 'get_param', - args: ['web_dialog_size.default_maximize',], - }).then(function(default_maximize) { - if (default_maximize === "True" || default_maximize === 1) { + return config.done(function(default_maximize) { + if (default_maximize) { self._extending(); } else { self._restore(); @@ -32,7 +33,7 @@ Dialog.include({ handle: '.modal-header', helper: false }); - }; + } return this; }, From c901afffba9833571b2d6f82f833b7fe6278aae5 Mon Sep 17 00:00:00 2001 From: oca-travis Date: Sun, 24 Jun 2018 10:28:10 +0000 Subject: [PATCH 11/20] [UPD] Update web_dialog_size.pot --- web_dialog_size/i18n/web_dialog_size.pot | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 web_dialog_size/i18n/web_dialog_size.pot diff --git a/web_dialog_size/i18n/web_dialog_size.pot b/web_dialog_size/i18n/web_dialog_size.pot new file mode 100644 index 000000000..ab1f7385c --- /dev/null +++ b/web_dialog_size/i18n/web_dialog_size.pot @@ -0,0 +1,20 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * web_dialog_size +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 11.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: <>\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: web_dialog_size +#: model:ir.model,name:web_dialog_size.model_ir_config_parameter +msgid "ir.config_parameter" +msgstr "" + From 106fdd7dfb7ae3fa47fda960e37fd3e3581dec07 Mon Sep 17 00:00:00 2001 From: QS5ELkMu Date: Wed, 18 Jul 2018 12:45:50 +0200 Subject: [PATCH 12/20] [11.0][FIX] web_dialog_size: Draggable Dialog --- .../static/src/js/web_dialog_size.js | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/web_dialog_size/static/src/js/web_dialog_size.js b/web_dialog_size/static/src/js/web_dialog_size.js index 4ec942464..c5b281a04 100644 --- a/web_dialog_size/static/src/js/web_dialog_size.js +++ b/web_dialog_size/static/src/js/web_dialog_size.js @@ -26,15 +26,15 @@ Dialog.include({ }); }, - open: function() { - this._super.apply(this, arguments); - if (this.$modal) { - this.$modal.draggable({ - handle: '.modal-header', - helper: false - }); - } - return this; + opened: function(handler) { + return this._super.apply(this, arguments).then(function(){ + if (this.$modal) { + this.$modal.draggable({ + handle: '.modal-header', + helper: false + }); + } + }.bind(this)); }, close: function() { From 44da24f7949ad390ef6f561e2864478fcead9249 Mon Sep 17 00:00:00 2001 From: joezsweet Date: Fri, 21 Sep 2018 17:24:51 +0200 Subject: [PATCH 13/20] Fix default_maximize check Checking result of rpc call, `dialog_maximize`, will end to be always `true` as the method will return a json: `{'dialog_maximize': false }`. So i changed the test to test the value of json key `dialog_maximize` --- web_dialog_size/static/src/js/web_dialog_size.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web_dialog_size/static/src/js/web_dialog_size.js b/web_dialog_size/static/src/js/web_dialog_size.js index c5b281a04..7c5ab7c5b 100644 --- a/web_dialog_size/static/src/js/web_dialog_size.js +++ b/web_dialog_size/static/src/js/web_dialog_size.js @@ -16,8 +16,8 @@ Dialog.include({ return this._super.apply(this, arguments).then(function () { self.$modal.find('.dialog_button_extend').on('click', self.proxy('_extending')); self.$modal.find('.dialog_button_restore').on('click', self.proxy('_restore')); - return config.done(function(default_maximize) { - if (default_maximize) { + return config.done(function(r) { + if (r.default_maximize) { self._extending(); } else { self._restore(); From 6e89fb5896256a725123fa8930403f6adcb9492b Mon Sep 17 00:00:00 2001 From: ernesto Date: Wed, 21 Nov 2018 22:50:59 -0500 Subject: [PATCH 14/20] [MIG] web_dialog_size: Migration to 12.0 --- web_dialog_size/README.rst | 24 +++++++--- web_dialog_size/__manifest__.py | 2 +- web_dialog_size/models/ir_config_parameter.py | 4 +- web_dialog_size/readme/CONFIGURE.rst | 5 +++ web_dialog_size/readme/CONTRIBUTORS.rst | 5 ++- web_dialog_size/static/description/index.html | 44 ++++++++++++------- .../static/src/css/web_dialog_size.css | 15 ------- .../static/src/scss/web_dialog_size.scss | 24 ++++++++++ .../static/src/xml/web_dialog_size.xml | 2 +- web_dialog_size/templates/assets.xml | 2 +- web_dialog_size/tests/__init__.py | 1 + web_dialog_size/tests/test_web_dialog_size.py | 20 +++++++++ 12 files changed, 104 insertions(+), 44 deletions(-) create mode 100644 web_dialog_size/readme/CONFIGURE.rst delete mode 100644 web_dialog_size/static/src/css/web_dialog_size.css create mode 100644 web_dialog_size/static/src/scss/web_dialog_size.scss create mode 100644 web_dialog_size/tests/__init__.py create mode 100644 web_dialog_size/tests/test_web_dialog_size.py diff --git a/web_dialog_size/README.rst b/web_dialog_size/README.rst index 440f06333..ee62e1816 100644 --- a/web_dialog_size/README.rst +++ b/web_dialog_size/README.rst @@ -14,13 +14,13 @@ Web Dialog Size :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github - :target: https://github.com/OCA/web/tree/11.0/web_dialog_size + :target: https://github.com/OCA/web/tree/12.0/web_dialog_size :alt: OCA/web .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/web-11-0/web-11-0-web_dialog_size + :target: https://translation.odoo-community.org/projects/web-12-0/web-12-0-web_dialog_size :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/162/11.0 + :target: https://runbot.odoo-community.org/runbot/162/12.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -34,13 +34,22 @@ It also adds draggable support to the dialogs. .. contents:: :local: +Configuration +============= + +If you want to set dialog boxes maximized by default, you need to: + +#. Go to *Settings -> Technical -> Parameters -> System Parameters* +#. Add a new record with the text *web_dialog_size.default_maximize* in + the *Key* field and the text *True* in the *Value* field + Bug Tracker =========== Bugs are tracked on `GitHub Issues `_. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -68,8 +77,9 @@ Contributors * Quentin Theuret * `Tecnativa `_: - * Pedro M. Baeza - * Jairo Llopis + * Pedro M. Baeza + * Jairo Llopis + * Ernesto Tejeda Maintainers ~~~~~~~~~~~ @@ -84,6 +94,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use. -This module is part of the `OCA/web `_ project on GitHub. +This module is part of the `OCA/web `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/web_dialog_size/__manifest__.py b/web_dialog_size/__manifest__.py index 4e799d1a5..31f85ac95 100644 --- a/web_dialog_size/__manifest__.py +++ b/web_dialog_size/__manifest__.py @@ -15,7 +15,7 @@ "Odoo Community Association (OCA)", 'website': "http://github.com/OCA/web", 'category': 'web', - 'version': '11.0.1.0.3', + 'version': '12.0.1.0.0', 'license': 'AGPL-3', 'depends': [ 'web', diff --git a/web_dialog_size/models/ir_config_parameter.py b/web_dialog_size/models/ir_config_parameter.py index bc916db00..4de06e322 100644 --- a/web_dialog_size/models/ir_config_parameter.py +++ b/web_dialog_size/models/ir_config_parameter.py @@ -12,6 +12,6 @@ class IrConfigParameter(Model): def get_web_dialog_size_config(self): get_param = self.sudo().get_param return { - key: const_eval(get_param("web_dialog_size.%s" % key, "False")) - for key in ["default_maximize"] + "default_maximize": const_eval( + get_param("web_dialog_size.default_maximize", "False")) } diff --git a/web_dialog_size/readme/CONFIGURE.rst b/web_dialog_size/readme/CONFIGURE.rst new file mode 100644 index 000000000..902f3316e --- /dev/null +++ b/web_dialog_size/readme/CONFIGURE.rst @@ -0,0 +1,5 @@ +If you want to set dialog boxes maximized by default, you need to: + +#. Go to *Settings -> Technical -> Parameters -> System Parameters* +#. Add a new record with the text *web_dialog_size.default_maximize* in + the *Key* field and the text *True* in the *Value* field diff --git a/web_dialog_size/readme/CONTRIBUTORS.rst b/web_dialog_size/readme/CONTRIBUTORS.rst index 0641b1d1e..e78168e41 100644 --- a/web_dialog_size/readme/CONTRIBUTORS.rst +++ b/web_dialog_size/readme/CONTRIBUTORS.rst @@ -7,5 +7,6 @@ * Quentin Theuret * `Tecnativa `_: - * Pedro M. Baeza - * Jairo Llopis + * Pedro M. Baeza + * Jairo Llopis + * Ernesto Tejeda diff --git a/web_dialog_size/static/description/index.html b/web_dialog_size/static/description/index.html index ce5afa560..64208125a 100644 --- a/web_dialog_size/static/description/index.html +++ b/web_dialog_size/static/description/index.html @@ -367,34 +367,47 @@ ul.auto-toc { !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: AGPL-3 OCA/web Translate me on Weblate Try me on Runbot

+

Beta License: AGPL-3 OCA/web Translate me on Weblate Try me on Runbot

A module that lets the user expand/restore the dialog box size through a button in the upper right corner (imitating most windows managers). It also adds draggable support to the dialogs.

Table of contents

+
+

Configuration

+

If you want to set dialog boxes maximized by default, you need to:

+
    +
  1. Go to Settings -> Technical -> Parameters -> System Parameters
  2. +
  3. +
    Add a new record with the text web_dialog_size.default_maximize in
    +
    the Key field and the text True in the Value field
    +
    +
  4. +
+
-

Bug Tracker

+

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed -feedback.

+feedback.

Do not contact contributors directly about support or help with technical issues.

-

Credits

+

Credits

-

Authors

+

Authors

  • ACSONE SA/NV
  • Therp BV
  • @@ -404,7 +417,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
-

Contributors

+

Contributors

-

Maintainers

+

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

-

This module is part of the OCA/web project on GitHub.

+

This module is part of the OCA/web project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

diff --git a/web_dialog_size/static/src/css/web_dialog_size.css b/web_dialog_size/static/src/css/web_dialog_size.css deleted file mode 100644 index bd7fdb2ee..000000000 --- a/web_dialog_size/static/src/css/web_dialog_size.css +++ /dev/null @@ -1,15 +0,0 @@ -.modal .modal-header button.dialog_button_extend { - padding-right: 5px; -} - -.modal .modal-header button.dialog_button_restore { - padding-right: 5px; -} - -.dialog_full_screen { - width: calc(100% - 50px); -} - -.modal .modal-header button.close { - font-size: 18px; -} diff --git a/web_dialog_size/static/src/scss/web_dialog_size.scss b/web_dialog_size/static/src/scss/web_dialog_size.scss new file mode 100644 index 000000000..8e5e86b83 --- /dev/null +++ b/web_dialog_size/static/src/scss/web_dialog_size.scss @@ -0,0 +1,24 @@ + +.modal { + .dialog_full_screen { + @include media-breakpoint-up(sm) { + max-width: 100%; + width: calc(100% - 50px); + } + } + .modal-header button.close { + font-size: 18px; + + &:not(.dialog_button_extend):not(.dialog_button_restore) { + @include media-breakpoint-up(sm) { + margin-left: 15px; + } + } + + &.dialog_button_extend, .dialog_button_restore { + @include media-breakpoint-down(sm) { + display: none !important; + } + } + } +} diff --git a/web_dialog_size/static/src/xml/web_dialog_size.xml b/web_dialog_size/static/src/xml/web_dialog_size.xml index 51e6fd6ae..1ef058fe5 100644 --- a/web_dialog_size/static/src/xml/web_dialog_size.xml +++ b/web_dialog_size/static/src/xml/web_dialog_size.xml @@ -4,7 +4,7 @@ - + diff --git a/web_dialog_size/templates/assets.xml b/web_dialog_size/templates/assets.xml index 103b3d970..0845e5027 100644 --- a/web_dialog_size/templates/assets.xml +++ b/web_dialog_size/templates/assets.xml @@ -2,7 +2,7 @@ diff --git a/web_dialog_size/tests/__init__.py b/web_dialog_size/tests/__init__.py new file mode 100644 index 000000000..79d02635e --- /dev/null +++ b/web_dialog_size/tests/__init__.py @@ -0,0 +1 @@ +from . import test_web_dialog_size diff --git a/web_dialog_size/tests/test_web_dialog_size.py b/web_dialog_size/tests/test_web_dialog_size.py new file mode 100644 index 000000000..6d6014d0d --- /dev/null +++ b/web_dialog_size/tests/test_web_dialog_size.py @@ -0,0 +1,20 @@ +# Copyright 2018 Tecnativa - Ernesto Tejeda +# License AGPL-3 - See http://www.gnu.org/licenses/agpl-3.0 + +from odoo.tests.common import TransactionCase + + +class TestWebDialogSize(TransactionCase): + def setUp(self): + super(TestWebDialogSize, self).setUp() + + def test_get_web_dialog_size_config(self): + obj = self.env['ir.config_parameter'] + + self.assertFalse(obj.get_web_dialog_size_config()['default_maximize']) + + obj.set_param("web_dialog_size.default_maximize", "True") + self.assertTrue(obj.get_web_dialog_size_config()['default_maximize']) + + obj.set_param("web_dialog_size.default_maximize", "False") + self.assertFalse(obj.get_web_dialog_size_config()['default_maximize']) From ee1ed49afb2ea270ce73ebf3ad5fea6e1f59d030 Mon Sep 17 00:00:00 2001 From: oca-travis Date: Fri, 7 Dec 2018 16:59:27 +0000 Subject: [PATCH 15/20] [UPD] Update web_dialog_size.pot --- web_dialog_size/i18n/web_dialog_size.pot | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web_dialog_size/i18n/web_dialog_size.pot b/web_dialog_size/i18n/web_dialog_size.pot index ab1f7385c..513879ed3 100644 --- a/web_dialog_size/i18n/web_dialog_size.pot +++ b/web_dialog_size/i18n/web_dialog_size.pot @@ -4,7 +4,7 @@ # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 11.0\n" +"Project-Id-Version: Odoo Server 12.0\n" "Report-Msgid-Bugs-To: \n" "Last-Translator: <>\n" "Language-Team: \n" @@ -15,6 +15,6 @@ msgstr "" #. module: web_dialog_size #: model:ir.model,name:web_dialog_size.model_ir_config_parameter -msgid "ir.config_parameter" +msgid "System Parameter" msgstr "" From 148f9a18b168f357aeea30011eafbd07782726e4 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Mon, 29 Jul 2019 03:49:00 +0000 Subject: [PATCH 16/20] [UPD] README.rst --- web_dialog_size/static/description/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web_dialog_size/static/description/index.html b/web_dialog_size/static/description/index.html index 64208125a..b35dab812 100644 --- a/web_dialog_size/static/description/index.html +++ b/web_dialog_size/static/description/index.html @@ -3,7 +3,7 @@ - + Web Dialog Size