diff --git a/web_dialog_size/README.rst b/web_dialog_size/README.rst index f508aa0a6..d30b2f019 100644 --- a/web_dialog_size/README.rst +++ b/web_dialog_size/README.rst @@ -1,19 +1,15 @@ 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). -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 +19,9 @@ Contributors * Anthony Muschang * Stéphane Bidoul +* Pedro M. Baeza +* Holger Brunn +* Siddharth Bhalgami 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 e0d53fb17..7c5696f00 100644 --- a/web_dialog_size/__openerp__.py +++ b/web_dialog_size/__openerp__.py @@ -28,11 +28,15 @@ 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", + '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': [ @@ -44,5 +48,5 @@ 'data': [ 'view/qweb.xml', ], - 'installable': False, + '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 10fba0f01..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,17 +1,15 @@ .modal .modal-header button.dialog_button_extend { - padding-top: 0px; - padding-right: 3px; + padding-right: 5px; } .modal .modal-header button.dialog_button_restore { - padding-top: 1px; - padding-right: 5px; -} - -.modal .modal-header .dialog_button_hide { - display: none; + padding-right: 5px; } .dialog_full_screen { width: calc(100% - 50px); -} \ No newline at end of file +} + +.modal .modal-header button.close { + 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 d1d0299c8..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,37 +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({ +var Model = require('web.DataModel'); +var Dialog = require('web.Dialog'); - 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'); +Dialog.include({ + + 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(); } - 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'); + _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(); + }, - $(this).parents('.modal-dialog').find('.dialog_button_restore').removeClass('dialog_button_hide') - }, + _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(); + }, - _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 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 + 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 + + + +