From 6f325abbee804282eeb0d0e989f3186ae8cd0b90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20Todorovich?= Date: Thu, 22 May 2025 14:48:09 -0300 Subject: [PATCH 1/7] [ADD] web_widget_popover --- web_widget_popover/README.rst | 1 + web_widget_popover/__init__.py | 0 web_widget_popover/__manifest__.py | 20 ++++++++++ web_widget_popover/pyproject.toml | 3 ++ web_widget_popover/readme/CONTRIBUTORS.md | 1 + web_widget_popover/readme/DESCRIPTION.md | 1 + web_widget_popover/readme/USAGE.md | 11 +++++ web_widget_popover/static/src/popover.esm.js | 42 ++++++++++++++++++++ web_widget_popover/static/src/popover.xml | 19 +++++++++ 9 files changed, 98 insertions(+) create mode 100644 web_widget_popover/README.rst create mode 100644 web_widget_popover/__init__.py create mode 100644 web_widget_popover/__manifest__.py create mode 100644 web_widget_popover/pyproject.toml create mode 100644 web_widget_popover/readme/CONTRIBUTORS.md create mode 100644 web_widget_popover/readme/DESCRIPTION.md create mode 100644 web_widget_popover/readme/USAGE.md create mode 100644 web_widget_popover/static/src/popover.esm.js create mode 100644 web_widget_popover/static/src/popover.xml diff --git a/web_widget_popover/README.rst b/web_widget_popover/README.rst new file mode 100644 index 000000000000..b2c0bd68a0a9 --- /dev/null +++ b/web_widget_popover/README.rst @@ -0,0 +1 @@ +# TO BE GENERATED diff --git a/web_widget_popover/__init__.py b/web_widget_popover/__init__.py new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/web_widget_popover/__manifest__.py b/web_widget_popover/__manifest__.py new file mode 100644 index 000000000000..259c2a35cccb --- /dev/null +++ b/web_widget_popover/__manifest__.py @@ -0,0 +1,20 @@ +# Copyright 2025 Camptocamp SA (https://www.camptocamp.com). +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +{ + "name": "Web Widget Popover", + "summary": "Render an icon that displays the field content in a popover", + "version": "17.0.1.0.0", + "author": "Camptocamp, Odoo Community Association (OCA)", + "maintainers": ["ivantodorovich"], + "website": "https://github.com/OCA/web", + "license": "AGPL-3", + "category": "Web", + "depends": ["web"], + "assets": { + "web.assets_backend": [ + "web_widget_popover/static/src/**/*.js", + "web_widget_popover/static/src/**/*.xml", + ], + }, +} diff --git a/web_widget_popover/pyproject.toml b/web_widget_popover/pyproject.toml new file mode 100644 index 000000000000..4231d0cccb3d --- /dev/null +++ b/web_widget_popover/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" diff --git a/web_widget_popover/readme/CONTRIBUTORS.md b/web_widget_popover/readme/CONTRIBUTORS.md new file mode 100644 index 000000000000..45388bedc364 --- /dev/null +++ b/web_widget_popover/readme/CONTRIBUTORS.md @@ -0,0 +1 @@ +- Iván Todorovich \<\> diff --git a/web_widget_popover/readme/DESCRIPTION.md b/web_widget_popover/readme/DESCRIPTION.md new file mode 100644 index 000000000000..b9de948365c0 --- /dev/null +++ b/web_widget_popover/readme/DESCRIPTION.md @@ -0,0 +1 @@ +The field will be rendered as a simple icon, that when hovered will display the field content as a tooltip. diff --git a/web_widget_popover/readme/USAGE.md b/web_widget_popover/readme/USAGE.md new file mode 100644 index 000000000000..b93cbf6de6ea --- /dev/null +++ b/web_widget_popover/readme/USAGE.md @@ -0,0 +1,11 @@ +Use the `popover` widget on `Char` or `Text` fields. + +```xml + +``` diff --git a/web_widget_popover/static/src/popover.esm.js b/web_widget_popover/static/src/popover.esm.js new file mode 100644 index 000000000000..7edf9f155e7b --- /dev/null +++ b/web_widget_popover/static/src/popover.esm.js @@ -0,0 +1,42 @@ +/** @odoo-module **/ + +import {_t} from "@web/core/l10n/translation"; +import {Component} from "@odoo/owl"; +import {registry} from "@web/core/registry"; +import {standardFieldProps} from "@web/views/fields/standard_field_props"; + +export class IconPopoverField extends Component { + static template = "web_widget_popover.IconPopoverField"; + static props = { + ...standardFieldProps, + icon: {type: String, optional: true}, + }; + static defaultProps = { + icon: "fa-info-circle", + }; + get value() { + return this.props.record.data[this.props.name] || ""; + } + get tooltipInfo() { + return JSON.stringify({message: this.value}); + } +} + +export const iconPopoverField = { + component: IconPopoverField, + displayName: _t("Icon Popover"), + supportedTypes: ["char", "text"], + supportedOptions: [ + { + label: _t("Icon"), + name: "icon", + type: "string", + help: _t("FontAwesome icon to display"), + }, + ], + extractProps: ({attrs}) => ({ + icon: attrs.icon, + }), +}; + +registry.category("fields").add("popover", iconPopoverField); diff --git a/web_widget_popover/static/src/popover.xml b/web_widget_popover/static/src/popover.xml new file mode 100644 index 000000000000..5d2e7698a190 --- /dev/null +++ b/web_widget_popover/static/src/popover.xml @@ -0,0 +1,19 @@ + + + + + + + + +
+ +
+
+ +
From eba8ab54aaa7d85e08cf4bc874aa9da081e439ff Mon Sep 17 00:00:00 2001 From: Maksym Yankin Date: Mon, 20 Oct 2025 15:33:19 +0300 Subject: [PATCH 2/7] [IMP] web_widget_popover: pre-commit auto fixes --- web_widget_popover/README.rst | 101 +++- .../static/description/index.html | 440 ++++++++++++++++++ 2 files changed, 540 insertions(+), 1 deletion(-) create mode 100644 web_widget_popover/static/description/index.html diff --git a/web_widget_popover/README.rst b/web_widget_popover/README.rst index b2c0bd68a0a9..f63b724677de 100644 --- a/web_widget_popover/README.rst +++ b/web_widget_popover/README.rst @@ -1 +1,100 @@ -# TO BE GENERATED +================== +Web Widget Popover +================== + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:cdc76ba475a9adcbc43da5be34fbe52ab7fba0798dc0c17caef76ee5050d6977 + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |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/18.0/web_widget_popover + :alt: OCA/web +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/web-18-0/web-18-0-web_widget_popover + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png + :target: https://runboat.odoo-community.org/builds?repo=OCA/web&target_branch=18.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +The field will be rendered as a simple icon, that when hovered will +display the field content as a tooltip. + +**Table of contents** + +.. contents:: + :local: + +Usage +===== + +Use the ``popover`` widget on ``Char`` or ``Text`` fields. + +.. code:: xml + + + +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 to smash it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +------- + +* Camptocamp + +Contributors +------------ + +- Iván Todorovich + +Maintainers +----------- + +This module is maintained by the OCA. + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +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. + +.. |maintainer-ivantodorovich| image:: https://github.com/ivantodorovich.png?size=40px + :target: https://github.com/ivantodorovich + :alt: ivantodorovich + +Current `maintainer `__: + +|maintainer-ivantodorovich| + +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_widget_popover/static/description/index.html b/web_widget_popover/static/description/index.html new file mode 100644 index 000000000000..531905657cac --- /dev/null +++ b/web_widget_popover/static/description/index.html @@ -0,0 +1,440 @@ + + + + + +Web Widget Popover + + + +
+

Web Widget Popover

+ + +

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

+

The field will be rendered as a simple icon, that when hovered will +display the field content as a tooltip.

+

Table of contents

+ +
+

Usage

+

Use the popover widget on Char or Text fields.

+
+<field
+    name="warning_message"
+    widget="popover"
+    icon="fa-warning"
+    class="text-danger"
+    nolabel="1"
+/>
+
+
+
+

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 to smash it by providing a detailed and welcomed +feedback.

+

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

+
+
+

Credits

+
+

Authors

+
    +
  • Camptocamp
  • +
+
+
+

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.

+

Current maintainer:

+

ivantodorovich

+

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.

+
+
+
+ + From 987ccf6821fd1e9ed1ec11890c6f0627f6f2fad7 Mon Sep 17 00:00:00 2001 From: Maksym Yankin Date: Mon, 20 Oct 2025 15:39:07 +0300 Subject: [PATCH 3/7] [18.0][MIG] web_widget_popover: Migration to 18.0 --- web_widget_popover/__manifest__.py | 2 +- web_widget_popover/static/src/popover.esm.js | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/web_widget_popover/__manifest__.py b/web_widget_popover/__manifest__.py index 259c2a35cccb..324d314cf577 100644 --- a/web_widget_popover/__manifest__.py +++ b/web_widget_popover/__manifest__.py @@ -4,7 +4,7 @@ { "name": "Web Widget Popover", "summary": "Render an icon that displays the field content in a popover", - "version": "17.0.1.0.0", + "version": "18.0.1.0.0", "author": "Camptocamp, Odoo Community Association (OCA)", "maintainers": ["ivantodorovich"], "website": "https://github.com/OCA/web", diff --git a/web_widget_popover/static/src/popover.esm.js b/web_widget_popover/static/src/popover.esm.js index 7edf9f155e7b..706f8d67b7d6 100644 --- a/web_widget_popover/static/src/popover.esm.js +++ b/web_widget_popover/static/src/popover.esm.js @@ -1,5 +1,3 @@ -/** @odoo-module **/ - import {_t} from "@web/core/l10n/translation"; import {Component} from "@odoo/owl"; import {registry} from "@web/core/registry"; From db0e77b28949e33d6d733e97c8e5ecc0ec491d3a Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Thu, 17 Sep 2026 09:39:04 -0300 Subject: [PATCH 4/7] [BOT] post-merge updates --- web_widget_popover/README.rst | 8 +++-- .../i18n/web_widget_popover.pot | 32 ++++++++++++++++++ .../static/description/icon.png | Bin 0 -> 10254 bytes .../static/description/index.html | 28 +++++++++------ 4 files changed, 55 insertions(+), 13 deletions(-) create mode 100644 web_widget_popover/i18n/web_widget_popover.pot create mode 100644 web_widget_popover/static/description/icon.png diff --git a/web_widget_popover/README.rst b/web_widget_popover/README.rst index f63b724677de..22453619ee9b 100644 --- a/web_widget_popover/README.rst +++ b/web_widget_popover/README.rst @@ -1,3 +1,7 @@ +.. image:: https://odoo-community.org/readme-banner-image + :target: https://odoo-community.org/get-involved?utm_source=readme + :alt: Odoo Community Association + ================== Web Widget Popover ================== @@ -7,13 +11,13 @@ Web Widget Popover !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:cdc76ba475a9adcbc43da5be34fbe52ab7fba0798dc0c17caef76ee5050d6977 + !! source digest: sha256:e85087d8c8563b533d661d4388f5344a47a389b3dae799dbdc9bc53d6977cc77 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |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 +.. |badge2| image:: https://img.shields.io/badge/license-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 diff --git a/web_widget_popover/i18n/web_widget_popover.pot b/web_widget_popover/i18n/web_widget_popover.pot new file mode 100644 index 000000000000..3af332bea7e8 --- /dev/null +++ b/web_widget_popover/i18n/web_widget_popover.pot @@ -0,0 +1,32 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * web_widget_popover +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 18.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_widget_popover +#. odoo-javascript +#: code:addons/web_widget_popover/static/src/popover.esm.js:0 +msgid "FontAwesome icon to display" +msgstr "" + +#. module: web_widget_popover +#. odoo-javascript +#: code:addons/web_widget_popover/static/src/popover.esm.js:0 +msgid "Icon" +msgstr "" + +#. module: web_widget_popover +#. odoo-javascript +#: code:addons/web_widget_popover/static/src/popover.esm.js:0 +msgid "Icon Popover" +msgstr "" diff --git a/web_widget_popover/static/description/icon.png b/web_widget_popover/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..1dcc49c24f364e9adf0afbc6fc0bac6dbecdeb11 GIT binary patch literal 10254 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 -Web Widget Popover +README.rst -
-

Web Widget Popover

+
+ + +Odoo Community Association + +
+

Web Widget Popover

-

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

+

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

The field will be rendered as a simple icon, that when hovered will display the field content as a tooltip.

Table of contents

@@ -386,7 +391,7 @@

Web Widget Popover

-

Usage

+

Usage

Use the popover widget on Char or Text fields.

 <field
@@ -399,7 +404,7 @@ 

Usage

-

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 to smash it by providing a detailed and welcomed @@ -407,21 +412,21 @@

Bug Tracker

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

+
From 63b1ab1e93e1dd09d434a80df0d665aa5f6f0508 Mon Sep 17 00:00:00 2001 From: OCA Transbot Date: Thu, 17 Sep 2026 09:39:44 -0300 Subject: [PATCH 5/7] Translated using Weblate --- web_widget_popover/i18n/it.po | 35 ++++++++++++++++++++++++++++++++++ web_widget_popover/i18n/sl.po | 36 +++++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+) create mode 100644 web_widget_popover/i18n/it.po create mode 100644 web_widget_popover/i18n/sl.po diff --git a/web_widget_popover/i18n/it.po b/web_widget_popover/i18n/it.po new file mode 100644 index 000000000000..c8fe2b03e1fe --- /dev/null +++ b/web_widget_popover/i18n/it.po @@ -0,0 +1,35 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * web_widget_popover +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 18.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2025-11-11 11:23+0000\n" +"Last-Translator: mymage \n" +"Language-Team: none\n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.10.4\n" + +#. module: web_widget_popover +#. odoo-javascript +#: code:addons/web_widget_popover/static/src/popover.esm.js:0 +msgid "FontAwesome icon to display" +msgstr "Icona FontAwesome da visualizzare" + +#. module: web_widget_popover +#. odoo-javascript +#: code:addons/web_widget_popover/static/src/popover.esm.js:0 +msgid "Icon" +msgstr "Icona" + +#. module: web_widget_popover +#. odoo-javascript +#: code:addons/web_widget_popover/static/src/popover.esm.js:0 +msgid "Icon Popover" +msgstr "Icona Popover" diff --git a/web_widget_popover/i18n/sl.po b/web_widget_popover/i18n/sl.po new file mode 100644 index 000000000000..47d7d1a98956 --- /dev/null +++ b/web_widget_popover/i18n/sl.po @@ -0,0 +1,36 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * web_widget_popover +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 18.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2026-06-07 06:54+0000\n" +"Last-Translator: Matjaz Mozetic \n" +"Language-Team: none\n" +"Language: sl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || " +"n%100==4 ? 2 : 3;\n" +"X-Generator: Weblate 5.15.2\n" + +#. module: web_widget_popover +#. odoo-javascript +#: code:addons/web_widget_popover/static/src/popover.esm.js:0 +msgid "FontAwesome icon to display" +msgstr "Ikona FontAwesome za prikaz" + +#. module: web_widget_popover +#. odoo-javascript +#: code:addons/web_widget_popover/static/src/popover.esm.js:0 +msgid "Icon" +msgstr "Ikona" + +#. module: web_widget_popover +#. odoo-javascript +#: code:addons/web_widget_popover/static/src/popover.esm.js:0 +msgid "Icon Popover" +msgstr "Pojavno okno z ikonami" From 60582938d07742019c3466c3ce32e39b3b7d1490 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20Todorovich?= Date: Thu, 17 Sep 2026 09:40:20 -0300 Subject: [PATCH 6/7] [MIG] web_widget_popover: Migration to 19.0 --- web_widget_popover/README.rst | 10 +++++----- web_widget_popover/__manifest__.py | 2 +- web_widget_popover/static/description/index.html | 6 +++--- web_widget_popover/static/src/popover.xml | 4 +++- 4 files changed, 12 insertions(+), 10 deletions(-) diff --git a/web_widget_popover/README.rst b/web_widget_popover/README.rst index 22453619ee9b..7dc88fee2eee 100644 --- a/web_widget_popover/README.rst +++ b/web_widget_popover/README.rst @@ -21,13 +21,13 @@ Web Widget Popover :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/18.0/web_widget_popover + :target: https://github.com/OCA/web/tree/19.0/web_widget_popover :alt: OCA/web .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/web-18-0/web-18-0-web_widget_popover + :target: https://translation.odoo-community.org/projects/web-19-0/web-19-0-web_widget_popover :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png - :target: https://runboat.odoo-community.org/builds?repo=OCA/web&target_branch=18.0 + :target: https://runboat.odoo-community.org/builds?repo=OCA/web&target_branch=19.0 :alt: Try me on Runboat |badge1| |badge2| |badge3| |badge4| |badge5| @@ -61,7 +61,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 to smash it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -99,6 +99,6 @@ Current `maintainer `__: |maintainer-ivantodorovich| -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_widget_popover/__manifest__.py b/web_widget_popover/__manifest__.py index 324d314cf577..a2aa9cf94b4b 100644 --- a/web_widget_popover/__manifest__.py +++ b/web_widget_popover/__manifest__.py @@ -4,7 +4,7 @@ { "name": "Web Widget Popover", "summary": "Render an icon that displays the field content in a popover", - "version": "18.0.1.0.0", + "version": "19.0.1.0.0", "author": "Camptocamp, Odoo Community Association (OCA)", "maintainers": ["ivantodorovich"], "website": "https://github.com/OCA/web", diff --git a/web_widget_popover/static/description/index.html b/web_widget_popover/static/description/index.html index b6c00f307bb5..258d8b5d3f97 100644 --- a/web_widget_popover/static/description/index.html +++ b/web_widget_popover/static/description/index.html @@ -374,7 +374,7 @@

Web Widget Popover

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! source digest: sha256:e85087d8c8563b533d661d4388f5344a47a389b3dae799dbdc9bc53d6977cc77 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

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

+

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

The field will be rendered as a simple icon, that when hovered will display the field content as a tooltip.

Table of contents

@@ -408,7 +408,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 to smash it by providing a detailed and welcomed -feedback.

+feedback.

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

@@ -436,7 +436,7 @@

Maintainers

promote its widespread use.

Current maintainer:

ivantodorovich

-

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_widget_popover/static/src/popover.xml b/web_widget_popover/static/src/popover.xml index 5d2e7698a190..498cb70340b9 100644 --- a/web_widget_popover/static/src/popover.xml +++ b/web_widget_popover/static/src/popover.xml @@ -2,7 +2,9 @@ - , not a : list cells force `vertical-align: top` on + spans of char fields, which pushes the icon above the row text. --> + Date: Thu, 17 Sep 2026 10:03:52 -0300 Subject: [PATCH 7/7] [IMP] web_widget_popover: fit the list column to the icon --- web_widget_popover/README.rst | 3 +++ web_widget_popover/readme/USAGE.md | 3 +++ web_widget_popover/static/description/index.html | 2 ++ web_widget_popover/static/src/popover.esm.js | 3 +++ 4 files changed, 11 insertions(+) diff --git a/web_widget_popover/README.rst b/web_widget_popover/README.rst index 7dc88fee2eee..03fb08748a9f 100644 --- a/web_widget_popover/README.rst +++ b/web_widget_popover/README.rst @@ -55,6 +55,9 @@ Use the ``popover`` widget on ``Char`` or ``Text`` fields. nolabel="1" /> +In list views, use ``nolabel="1"`` to hide the column header: the column +is then kept as narrow as the icon. + Bug Tracker =========== diff --git a/web_widget_popover/readme/USAGE.md b/web_widget_popover/readme/USAGE.md index b93cbf6de6ea..282beb3c3ffd 100644 --- a/web_widget_popover/readme/USAGE.md +++ b/web_widget_popover/readme/USAGE.md @@ -9,3 +9,6 @@ Use the `popover` widget on `Char` or `Text` fields. nolabel="1" /> ``` + +In list views, use `nolabel="1"` to hide the column header: the column is then +kept as narrow as the icon. diff --git a/web_widget_popover/static/description/index.html b/web_widget_popover/static/description/index.html index 258d8b5d3f97..bfeaedc325e5 100644 --- a/web_widget_popover/static/description/index.html +++ b/web_widget_popover/static/description/index.html @@ -402,6 +402,8 @@

Usage

nolabel="1" /> +

In list views, use nolabel="1" to hide the column header: the column +is then kept as narrow as the icon.

Bug Tracker

diff --git a/web_widget_popover/static/src/popover.esm.js b/web_widget_popover/static/src/popover.esm.js index 706f8d67b7d6..13dd88ff82a7 100644 --- a/web_widget_popover/static/src/popover.esm.js +++ b/web_widget_popover/static/src/popover.esm.js @@ -24,6 +24,9 @@ export const iconPopoverField = { component: IconPopoverField, displayName: _t("Icon Popover"), supportedTypes: ["char", "text"], + // In list views the column only holds an icon: keep it as narrow as the + // handle column, unless a header label is displayed. + listViewWidth: ({hasLabel}) => (hasLabel ? false : 20), supportedOptions: [ { label: _t("Icon"),