From bcc3a365ce1851d2504cb98ba2f5dcc1091af44f Mon Sep 17 00:00:00 2001 From: Ernesto Tejeda Date: Thu, 19 Nov 2020 09:53:24 -0500 Subject: [PATCH] [MIG] web_listview_range_select: Migration to 13.0 --- web_listview_range_select/README.rst | 20 +++++++++++-------- web_listview_range_select/__manifest__.py | 6 +++--- .../readme/CONTRIBUTORS.rst | 3 +++ web_listview_range_select/readme/USAGE.rst | 7 ++++--- .../static/description/index.html | 17 ++++++++++------ .../src/js/web_listview_range_select.js | 20 ++++++++++++------- 6 files changed, 46 insertions(+), 27 deletions(-) diff --git a/web_listview_range_select/README.rst b/web_listview_range_select/README.rst index 15458608c..618a37622 100644 --- a/web_listview_range_select/README.rst +++ b/web_listview_range_select/README.rst @@ -14,13 +14,13 @@ List Range Selection :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/12.0/web_listview_range_select + :target: https://github.com/OCA/web/tree/13.0/web_listview_range_select :alt: OCA/web .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/web-12-0/web-12-0-web_listview_range_select + :target: https://translation.odoo-community.org/projects/web-13-0/web-13-0-web_listview_range_select :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/12.0 + :target: https://runbot.odoo-community.org/runbot/162/13.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -37,9 +37,10 @@ Usage To use this module, you need to: -#. click a record; -#. hold shift and click another record; -#. you can repeat this operation as many times as you want. +#. Go to some list view. +#. Click a record. +#. Hold shift and click another record. +#. You can repeat this operation as many times as you want. Known issues / Roadmap ====================== @@ -54,7 +55,7 @@ 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. @@ -71,6 +72,9 @@ Contributors * Dennis Sluijk * Aldo Soares +* `Tecnativa `_: + + * Ernesto Tejeda Maintainers ~~~~~~~~~~~ @@ -85,6 +89,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_listview_range_select/__manifest__.py b/web_listview_range_select/__manifest__.py index f4a019817..98863c8ac 100644 --- a/web_listview_range_select/__manifest__.py +++ b/web_listview_range_select/__manifest__.py @@ -6,12 +6,12 @@ "summary": """ Enables selecting a range of records using the shift key """, - "version": "12.0.1.0.0", + "version": "13.0.1.0.0", "category": "Web", - "author": "Onestein,Odoo Community Association (OCA)", + "author": "Onestein, Odoo Community Association (OCA)", "website": "https://github.com/oca/web", "license": "AGPL-3", - "depends": ["web",], + "depends": ["web"], "data": ["templates/assets.xml"], "installable": True, "application": False, diff --git a/web_listview_range_select/readme/CONTRIBUTORS.rst b/web_listview_range_select/readme/CONTRIBUTORS.rst index 761e89a4f..3c6f9b720 100644 --- a/web_listview_range_select/readme/CONTRIBUTORS.rst +++ b/web_listview_range_select/readme/CONTRIBUTORS.rst @@ -1,2 +1,5 @@ * Dennis Sluijk * Aldo Soares +* `Tecnativa `_: + + * Ernesto Tejeda diff --git a/web_listview_range_select/readme/USAGE.rst b/web_listview_range_select/readme/USAGE.rst index 12e9db1e1..11d8a7f4d 100644 --- a/web_listview_range_select/readme/USAGE.rst +++ b/web_listview_range_select/readme/USAGE.rst @@ -1,5 +1,6 @@ To use this module, you need to: -#. click a record; -#. hold shift and click another record; -#. you can repeat this operation as many times as you want. +#. Go to some list view. +#. Click a record. +#. Hold shift and click another record. +#. You can repeat this operation as many times as you want. diff --git a/web_listview_range_select/static/description/index.html b/web_listview_range_select/static/description/index.html index cfa908754..ebe2e6ffb 100644 --- a/web_listview_range_select/static/description/index.html +++ b/web_listview_range_select/static/description/index.html @@ -367,7 +367,7 @@ 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

Enables selecting a range of records using the shift key.

Table of contents

@@ -387,9 +387,10 @@ ul.auto-toc {

Usage

To use this module, you need to:

    -
  1. click a record;
  2. -
  3. hold shift and click another record;
  4. -
  5. you can repeat this operation as many times as you want.
  6. +
  7. Go to some list view.
  8. +
  9. Click a record.
  10. +
  11. Hold shift and click another record.
  12. +
  13. You can repeat this operation as many times as you want.
@@ -405,7 +406,7 @@ ul.auto-toc {

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.

@@ -421,6 +422,10 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
@@ -430,7 +435,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome

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_listview_range_select/static/src/js/web_listview_range_select.js b/web_listview_range_select/static/src/js/web_listview_range_select.js index e12eeb17a..4876cf20f 100644 --- a/web_listview_range_select/static/src/js/web_listview_range_select.js +++ b/web_listview_range_select/static/src/js/web_listview_range_select.js @@ -7,6 +7,15 @@ odoo.define("web_listview_range_select", function(require) { var ListRenderer = require("web.ListRenderer"); ListRenderer.include({ + /* + I extend 'events' because in v13 Odoo catches 'change' event instead + of the 'click' event for the selector .o_list_record_selector ", + so shift + [click] is not caught. + https://github.com/OCA/OCB/blob/13.0/addons/web/static/src/js/views/list/list_renderer.js#L42:L42 + */ + events: _.extend({}, ListRenderer.prototype.events, { + "click tbody .o_list_record_selector": "_onClickSelectRecord", + }), _range_history: [], _render: function() { @@ -17,7 +26,6 @@ odoo.define("web_listview_range_select", function(require) { _getRangeSelection: function() { var self = this; - // Get start and end var start = null, end = null; @@ -28,7 +36,7 @@ odoo.define("web_listview_range_select", function(require) { .data("id"); var checked = self._range_history.indexOf(id) !== -1; if (checked && $(el).is(":checked")) { - if (start == null) { + if (start === null) { start = i; } else { end = i; @@ -49,9 +57,9 @@ odoo.define("web_listview_range_select", function(require) { .closest("tr") .each(function(i, el) { var record_id = $(el).data("id"); - if (start != null && end != null && i >= start && i <= end) { + if (start !== null && end !== null && i >= start && i <= end) { result.push(record_id); - } else if (start != null && end == null && start == i) { + } else if (start !== null && end === null && start === i) { result.push(record_id); } }); @@ -70,9 +78,8 @@ odoo.define("web_listview_range_select", function(require) { window.getSelection().removeAllRanges(); }, - _onSelectRecord: function(event) { + _onClickSelectRecord: function(event) { var el = $(event.currentTarget); - var res = this._super(event); // Firefox shift click fix if (/firefox/i.test(navigator.userAgent) && event.shiftKey) { @@ -102,7 +109,6 @@ odoo.define("web_listview_range_select", function(require) { this._updateSelection(); this._deselectTable(); } - return res; }, }); });