Commit Graph
151801 Commits
Author SHA1 Message Date
Romain Derie 030d3cb10e [IMP] website: use custom URL for website in backend
The website architecture has been refactored for the internal users and
admins with [1].
Now, they can access the website in the backend inside the website app.
Long story short, the website will be displayed in an iframe in a client
action. The URL of the browser will be tweaked to reflect the iframe one
instead of the real one (which is something like /web#action=..).

It had a few drawbacks:
- On page refresh (F5 or browser button), the user would land on the
  frontend version of the website instead of remaining in the backend.
- When the user edited the URL (Like removing `/shop` and typing `/jobs`
  instead, he would land on the frontend version too.
- Impossible to directly go to the backend version of the website.

Those are improved with this commit by using a slightly different URL
when we are in the backend. A `/@/` will prefix the iframe URL.

If logged in, the user will land on the backend. If not, it will simply
redirect to the frontend version of the website.

[1]: https://github.com/odoo/odoo/commit/31cc10b91dc7762e23b4bde9b945be0c4ce3fe3b

task-2687506

closes odoo/odoo#94580

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2022-06-30 18:52:01 +02:00
javl 2613e663f0 [CLA] signature for javl
closes odoo/odoo#94168

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2022-06-30 18:51:57 +02:00
Demesmaeker 08aff3b686 [FIX] (test_)sale(_product_configurators): fix nightly race condition
Fix some uncommon nightly error on the runbot where a race condition
happened when the tour finished too soon. The test is successful but
during the browser cleanup, things are still happening.

task-2832564

closes odoo/odoo#91920

Related: odoo/enterprise#27600
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-06-30 18:51:54 +02:00
mafo-odoo 55130e50f2 [FIX] mail: try to parse scheduled date input
``scheduled_date`` field of ``mail.mail`` is a char field since its addition
in 2015 (see odoo/odoo@364b4ba06d). As its first usage was in combination with
mail templates, a char field was used to simplify its implementation.

However this technically allows to store whatever value in that field. Using
it in a filter with a datetime argument is quite strange. A workaround is
to try to parse as much as possible the inputs, remove timezone information,
try to localize it, and have it in regular server format to enable filtering
on it.

We consider value should be set in UTC. If we have a specific timezone set
on the input we localize it to UTC. Otherwise we consider the input was done
in UTC, as all datetime fields. It is the role of the business code generating
mail.mail to either give the timezone, either already convert into UTC.

This might solve the following bug
  Step to reproduce:
	activate the developer mode
	go to settings - technical - emails
	create a new email and set the Scheduled Send Date in the future
	run the scheduled action Mail: Email Queue Manager
  Current behavior:
    the email is sent and the action does not consider the filter
  Expected behavior:
    the email is not sent and will only be sent when the scheduler detects
    that scheduled_date exceeds the current time.

Task-2833300
opw-2823106

closes odoo/odoo#94937

X-original-commit: 5c113cb9d54e051132a9a50deb2fcf61f9c9dc2c
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-06-30 17:41:13 +02:00
Rahul Prajapati dfb122b960 [IMP] mail: add message backlink on replyingto in composer
Before this commit:

There is no backlink to message on 'Replying To' in header of Composer

After this commit:

There is a backlink to message

Task-2664839

closes odoo/odoo#94873

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-30 14:14:45 +02:00
Pierrot (prro) 783a06fee8 [IMP] account: improve account list view UX
In the Chart of Accounts list view, the column "Non Trade"
is hidden by default

closes odoo/odoo#94150

Signed-off-by: Cedric Snauwaert <csn@odoo.com>
2022-06-30 14:14:42 +02:00
Alexandre Kühn 21471fc5e7 [IMP] im_livechat, *: Refactor JS Public Livechat (step 7)
*: website_livechat

This commit is a step towards refactoring the JS of public livechat,
so that it reuses the same architecture as the code of Discuss.
This implies code that uses JS models and OWL components.

Task-2898692

closes odoo/odoo#94914

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-06-30 12:11:00 +02:00
Odoo's Mergebot 56455a69aa [MERGE][IMP] portal: allow portal users to deactivate their accounts
Purpose
=======
Allow portal users to deactivate their accounts from the portal view.

After the deactivation, they are redirected to the login page, so
they can verify that they can not longer login with their credentials.

We first archived the record and remove sensitive information (password,
login, so he can not log in again with the same credentials).

After the deactivation, we blacklist the email and the phone of the
user, so we are sure that we never send him again email / SMS.

Then, we create a <res.users.deletion> to delete the user and the
partner in a CRON because this operation can be heavy (write_uid,
create_uid field on all models).

Task-2629544

closes odoo/odoo#78298

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-06-30 12:10:57 +02:00
std-odoo 66f5bc4dbf [IMP] portal: allow portal users to deactivate their accounts
Purpose
=======
Allow portal users to deactivate their accounts from the portal view.

After the deactivation, they are redirected to the login page, so
they can verify that they can not longer login with their credentials.

We first archived the record and remove sensitive information (password,
login, so he can not log in again with the same credentials).

After the deactivation, we blacklist the email and the phone of the
user, so we are sure that we never send him again email / SMS.

Then, we create a <res.users.deletion> to delete the user and the
partner in a CRON because this operation can be heavy (write_uid,
create_uid field on all models).

Task-2629544

Part-of: odoo/odoo#78298
2022-06-30 12:10:56 +02:00
std-odoo e46a04ce30 [IMP] auth_password_policy: show the password meter only when needed
Bug
===
The password meter is not super pretty, so we display it only when
needed.

Task-2629544

Part-of: odoo/odoo#78298
2022-06-30 12:10:56 +02:00
std-odoo 0e6c698698 [IMP] portal: improve the security page
Bug
===
Add a link to the documentation about 2FA
and make the buttons color consistent.

Task-2629544

Part-of: odoo/odoo#78298
2022-06-30 12:10:56 +02:00
std-odoo c180568890 [IMP] portal: improve the "reset password" flow
Bug
===
Improve the UI and the message displayed in the "reset password flow".

Task-2629544

Part-of: odoo/odoo#78298
2022-06-30 12:10:55 +02:00
Raphael Collet c0fea2cec8 [FIX] core: update inverse of many2many in order
Consider two models A and B, a many2many field F from A to B and its
inverse relation G from B to A.  When F is modified, G is updated
accordingly in cache.  The statement

    records.write({F: [Command.link(b.id)]})

is expected to add b.id to records.F, and add records.ids to b.G.  In
order to avoid nondeterminism, the additions should be done at the end
of the recordset, and in order.  In other words, if none of "records"
are in b.G, then after the statement above, b.G should be updated as

    b.G = b.G + records

This patch ensures that "records" are added in order.

closes odoo/odoo#94909

X-original-commit: b8fbc460673827497f6817e1751b5d365d8ae29a
Signed-off-by: Vincent Schippefilt (vsc) <vsc@odoo.com>
Signed-off-by: Raphael Collet <rco@odoo.com>
2022-06-30 09:29:58 +02:00
Nicolas Bayet 31d03da243 [FIX] web_editor: prevent selection on sanitize
Before this commit, it was possible to set the selection of the document
whenever sanitizing an element that was not present in the dom.

task-2877501

closes odoo/odoo#94900

X-original-commit: 7b60241e01914ffc0176c24d4e780f773f9a277f
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
2022-06-30 09:29:54 +02:00
+3 3d6c13ff3f [MERGE] web, *: kanban, list and form views in owl
This PR introduces the new kanban, list and form views written in owl.
Even though it contains the implementation of those 3 views, only the
kanban view is activated for now (the list and form views aren't 100%
ready yet, so they aren't added to the view registry).

Alongside the views, the fields (`<field name="..."/>` in archs) and
widgets (`<widget name="..."` in archs) of web/ have been implemented
in owl as well. Legacy ones remaining in other addons are supported
in our new views, thanks to a compatibility layer. The goal is to convert
them asap though. A few fields and widgets from other addons have
already been converted in this PR.

Legacy views, fields and widgets are kept for now, which explains the
number of added lines in this PR (around half of them concern tests).
They are still extended by custom code in other addons, that still need
to be converted (a lot of them are already on the way). Moreover,
they are still used in Studio as well. The plan is to lazy load them in
the Studio bundle when all custom code extending them will be
converted. Studio will be converted for v17.

closes odoo/odoo#92475

Related: odoo/enterprise#27879
Signed-off-by: Géry Debongnie <ged@odoo.com>
Co-authored-by: Aaron Bohy <aab@odoo.com>
Co-authored-by: Bruno Boi <boi@odoo.com>
Co-authored-by: Géry Debongnie <ged@odoo.com>
Co-authored-by: Samuel Degueldre <sad@odoo.com>
Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com>
Co-authored-by: Simon Genin (ges) <ges@odoo.com>
Co-authored-by: Francois (fge) <fge@odoo.com>
Co-authored-by: Michael Mattiello (mcm) <mcm@odoo.com>
Co-authored-by: Julien Mougenot <jum@odoo.com>
Co-authored-by: Lucas Perais (lpe) <lpe@odoo.com>
Co-authored-by: Jorge Pinna Puissant <jpp@odoo.com>
Co-authored-by: luvi <luvi@odoo.com>
2022-06-30 09:29:51 +02:00
Mathieu Duckerts-Antoine fb5815edfd [FIX] web,board: remember list orderBy
When adding a (new) list view to the Dashboard app, the list orderBy (if
any) was lost. We fix that.

Part-of: odoo/odoo#92475
2022-06-30 09:29:51 +02:00
Mathieu Duckerts-Antoine dc6834b216 [FIX] web: list: save list orderBy in favorite
When creating a favorite in a (new) list view, the list orderBy (if any)
was not saved with the favorite. We fix that.

Part-of: odoo/odoo#92475
2022-06-30 09:29:50 +02:00
Mathieu Duckerts-Antoine 8279607488 [FIX] web: list: keep list orderBy when (un)grouping
When (un)grouping a (new) list view, the list orderBy (if any) was not
kept. We fix that.

Part-of: odoo/odoo#92475
2022-06-30 09:29:50 +02:00
Géry Debongnie fde1ca963c [IMP] web, project: introduce and use renderToMarkup
Part-of: odoo/odoo#92475
2022-06-30 09:29:50 +02:00
Géry Debongnie f5f65f26be [FIX] web: scope legacy indicator to debug mode
With this commit, we only display the "legacy" indicator (red/pink
background color to indicate old widgets in new views) in debug mode.

Part-of: odoo/odoo#92475
2022-06-30 09:29:50 +02:00
Julien Mougenot 2b7f497442 [FIX] web: Support multiple dropdowns in kanban
This commit allows multiple declarations of a dropdown menu in a kanban
card to generate a dropdown component for each definition.

Part-of: odoo/odoo#92475
2022-06-30 09:29:49 +02:00
Aaron Bohy 6cdd91b614 [FIX] web: kanban: add JSON to the rendering context
In legacy kanban views, one could use JSON in the arch to, e.g.
parse text field values encoding data. This was no longer the case
in the new implementation. This commit fixes the issue by adding
it to the kanban record rendering context. However, we'll consider
adding it in owl directly.

Part-of: odoo/odoo#92475
2022-06-30 09:29:49 +02:00
Mathieu Duckerts-Antoine a5bfa26692 [FIX] web: kanban: attributes of card dropdowns
Some attributes of the elements determining the "ellipsis" dropdown menu
of a kanban card were invalidly reported on the main Dropdown node
created during the compilation. This could cause crashes (during the
props validation) or broke the CSS.

In this commit:
    - we fix the above mentioned problem
    - we put the class o_drowdown_kanban on all "ellipsis" dropdowns
      generated by the kanban compiler in order to get the appropriate CSS
    - we make sure that those dropdowns are visible in kanban dashboards
      by default

Part-of: odoo/odoo#92475
2022-06-30 09:29:49 +02:00
Julien Mougenot 5d0a28d0f5 [FIX] web: Fix KanbanCoverImageDialog
This commit removes the SimpleDialog class and adapts the
KanbanCoverImageDialog to use the Dialog component instead.

It also makes sure that the KanbanCoverImageDialog uses the FileInput
component to use a more centralized way of calling the HTTP
'upload_attachment' route.

Part-of: odoo/odoo#92475
2022-06-30 09:29:49 +02:00
Julien Mougenot 38710465a9 [IMP] web: Update to FileInput API
This commit changes the prop names of the FileInput component to bring
them in line with the current naming conventions. Also the default
route has been changed from '/web/binary/upload' to
'/web/binary/upload_attachment' since the latter is used more often.

Part-of: odoo/odoo#92475
2022-06-30 09:29:48 +02:00
Aaron Bohy 0196c052f1 [FIX] mail: check existence of record in FollowerListMenu
This commit fixes a race condition that makes several tours crash.
The reason is that the underlying record is removed from the model
which produces a re-rendering. At the end of that re-rendering,
a component is unmounted. At that point, we remove an handler
relying on the existence of the record. As a consequence, there
was a short time window during which the handler would crash if it
was called.

Part-of: odoo/odoo#92475
2022-06-30 09:29:48 +02:00
Jorge Pinna PuissantandXavier BOL 7e86933d94 [FIX] web: evaluate string domain in modifiers
Before this commit, in `getModifier` method when a modifier contains a
domain in a string, the domain is not evaluated and just converted into
a boolean value that is if the string is not empty then the method will
return `true` and `false` otherwise.
Also, the `applyInvisible` method does not take into account an invisible
domain in a string. That is if the `invisible` variable contains a domain
in an `Array` then  the domain is evaluated otherwise the domain is
considered as a boolean value.

This commit checks if the modifier contains a boolean value as value to
evaluate it as a boolean and return it otherwise the modifier value is
returned in the `getModifier` method.
In the `applyInvisible`, this commit allows to evaluate the domain if
the domain is containing in a string.

Part-of: odoo/odoo#92475
Co-authored-by: Xavier BOL (xbo) <xbo@odoo.com>
2022-06-30 09:29:48 +02:00
Samuel Degueldre 0e6481f359 [FIX] web: add support for kanban-tooltip in kanban arch
This commit re-adds support for the kanban-tooltip template in kanban
view arch, to do this, it also refactors the tooltip service to give it
a programmatic API, so that we are not constrained to only giving
tooltip info in serialized form, but can instead give the same context
to the tooltip template as to the kanban record's template.

One current limitation is that components that are available in the
kanban record cannot be used in the tooltip, as these are mostly used
for interactive content and one cannot interact with the contents of the
tooltip, we have decided to not work around this issue until needed.

Part-of: odoo/odoo#92475
2022-06-30 09:29:48 +02:00
Samuel Degueldre a7be88cd91 [REF] hr_contract, web: give tooltip info as t-call-context
Previously, we would use t-set to add the tooltip info under the key
"info" in the rendering context, while this works fine, it was mostly
just a workaround for the lack of support in owl for passing a rendering
context to be used by the t-call directly. Since this is now supported
in owl, the commit uses this feature for the tooltips and adapts the
call sites.

Part-of: odoo/odoo#92475
2022-06-30 09:29:47 +02:00
Mathieu Duckerts-Antoine be8472c851 [FIX] kanban: click outside of a quick create record
When on click outside of a quick create record, one wants
    - to remove the quick create record if it is not dirty
    - not to remove it if it is dirty with some exceptions:
        if the click is on a "Create", "Load more" or "+" (quick add) button

This fix makes the external listener of KanbanRecordQuickCreate work as
expected.

Part-of: odoo/odoo#92475
2022-06-30 09:29:47 +02:00
Mathieu Duckerts-Antoine dcbf2119fc [FIX] web: kanban: problem with date/datetime granularity
The call to web_read_group done in _loadGroups was incorrect when the first groupby
was of the form date_field:granularity (e.g. "create_date:day"). The groupby was
sent as a mesure and interpreded as such, leading to an error of the form
"Invalid aggregation function ...".
This was not detected before by lack of manual testing: the mock server used in tests
checks the read group parameters in a different way from what is done server side.
So the error was not visible in the testing environment.

In this commit, we remove the error in web_read_group and improve the mock server
(a bit) so as to make such errors be detected.

Part-of: odoo/odoo#92475
2022-06-30 09:29:47 +02:00
Mathieu Duckerts-Antoine f9b692e452 [FIX] web: kanban: problem with several groupbys
The kanban view is not supposed to be grouped by more than one groupby.
In this commit, we make sure that the param groupBy is correctly process at
the first level to only keep the first groupby (if any)

Part-of: odoo/odoo#92475
2022-06-30 09:29:47 +02:00
luvi 8e32e1dace [FIX] web: ViewButton supports styling set on anchors tags
Part-of: odoo/odoo#92475
2022-06-30 09:29:46 +02:00
Michael (mcm) b1f072cba4 [IMP] web: adapt dialog for mobile
This commit modifies the dialog to make it more user
friendly on small screen. On small screen, the dialog
opens in fullscreen and saves the scroll position when
opening to restore it on close.

Part-of: odoo/odoo#92475
2022-06-30 09:29:46 +02:00
Michael (mcm) 466cfbfb42 [IMP] web: fold statusbar field on mobile
This commit modifies the statusbar field to render all
its buttons in a dropdown when the user is on a small screen.

Part-of: odoo/odoo#92475
2022-06-30 09:29:46 +02:00
Michael (mcm) 2f9c346974 [IMP] web: group statusbar buttons on mobile
This commit modifies the statusbar's buttons to render
them in a dropdown when the user is on a small screen.

Part-of: odoo/odoo#92475
2022-06-30 09:29:46 +02:00
Simon Genin (ges) 53595b9326 [IMP] web: number parsers: fallback on english localization
With this commit, if the user types something in a numeric field
input that doesn't match its localization, we try to parse it with
the english localization. If it works, we considerer that value.
Otherwise, we throw an error.

al request

Part-of: odoo/odoo#92475
2022-06-30 09:29:45 +02:00
Géry Debongnie 3c782440ab [REF] board: rewrite board action in owl
This commit rewrites the board action in owl. Legacy actions are
still supported inside this new board thanks to a compatibility
layer.

Part-of: odoo/odoo#92475
2022-06-30 09:29:45 +02:00
Aaron Bohy 6982b4c5c5 [REF] web: scrolling: better handling of action scroll
This commit refactors the way actions restore their scrolling
positions (when coming back). By default, in desktop, we want the
o_content div of the action to scroll. In mobile, we want the
whole action to scroll (including the ControlPanel). With this
commit, the logic is handled at the concerned level: in the
action hook for the desktop case, and in the action service for
the mobile case.

Part-of: odoo/odoo#92475
2022-06-30 09:29:45 +02:00
Aaron Bohy 4f984568e1 [REF] *: adapt code to new kanban view
This commit makes various adapations in addons with respect to
the introduction of the owl kanban view. Mainly, some selectors
in scss and in tests needed to be adapted. Moreover, in some tests
that we haven't adapted yet, we must ensure that legacy form and
list views are still used (useLegacyViews).

It also contains some adaptations in kanban templates, e.g. the
replacement of moment by luxon, the removal of underscore...

Part-of: odoo/odoo#92475
2022-06-30 09:29:45 +02:00
luvi 968148f59e [REF] sms: patch new owl PhoneField
This commit patches the new implementation of the PhoneField to
add the sms button.

Part-of: odoo/odoo#92475
2022-06-30 09:29:44 +02:00
+2 b0f20bcd09 [REF] web: adapt ControlPanel to support new owl views
This commit contains several adaptations of the Layout, WithSearch,
ControlPanel and its children components with respect to the
conversion of kanban, list and form views in owl.

In a nutshell:
 - ActionMenus: we didn't have an implementation yet, as already
   converted views do not need it.
 - ControlPanel: allow to move the focus from the search bar to
   the view and vice-versa + slight rework of the template to
   properly handle hidden areas.
 - CustomFilterItems: adapt to formatter/parser changes.
 - Layout: hide breadcrumbs in dialogs and allow to move control
   panel buttons in the footer (in dialogs as well)
 - WithSearch: only pass search props to the underlying view +
   take its content in a default slot

Part-of: odoo/odoo#92475
Co-authored-by: Aaron Bohy <aab@odoo.com>
Co-authored-by: Bruno Boi <boi@odoo.com>
Co-authored-by: Géry Debongnie <ged@odoo.com>
Co-authored-by: Samuel Degueldre <sad@odoo.com>
Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com>
Co-authored-by: Simon Genin (ges) <ges@odoo.com>
Co-authored-by: Francois (fge) <fge@odoo.com>
Co-authored-by: Michael Mattiello (mcm) <mcm@odoo.com>
Co-authored-by: Julien Mougenot <jum@odoo.com>
Co-authored-by: Lucas Perais (lpe) <lpe@odoo.com>
Co-authored-by: Jorge Pinna Puissant <jpp@odoo.com>
Co-authored-by: luvi <luvi@odoo.com>
2022-06-30 09:29:44 +02:00
Aaron Bohy af0f323bac [REF] web: adapt debug items to new views
This commit adapts the (form) view debug items to make them work
with the new owl kanban, list and form views, and to make them
use the new owl SelectCreateDialog.

Part-of: odoo/odoo#92475
2022-06-30 09:29:44 +02:00
+2 48ef812a63 [REF] web: kanban, list and form views in owl
This commit introduces the new kanban, list and form views written
in owl. Even though it contains the implementation of those 3 views,
only the kanban view is activated for now (the list and form views
aren't 100% ready yet, so they aren't added to the view registry).

Alongside the views, the fields (<field name="..."/> in archs) and
widgets (<widget name="..." in archs) of web/ have been implemented
in owl as well. Legacy ones remaining in other addons are supported
in our new views, thanks to a compatibility layer. The goal is to convert
them asap though.

Legacy views, fields and widgets are kept for now, which explains the
number of added lines in this PR (around half of them concern tests).
They are still extended by custom code in other addons, that still need
to be converted (a lot of them are already on the way). Moreover,
they are still used in Studio as well. The plan is to lazy load them in
the Studio bundle when all custom code extending them will be
converted. Studio will be converted for v17.

Part-of: odoo/odoo#92475
Co-authored-by: Aaron Bohy <aab@odoo.com>
Co-authored-by: Bruno Boi <boi@odoo.com>
Co-authored-by: Géry Debongnie <ged@odoo.com>
Co-authored-by: Samuel Degueldre <sad@odoo.com>
Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com>
Co-authored-by: Simon Genin (ges) <ges@odoo.com>
Co-authored-by: Francois (fge) <fge@odoo.com>
Co-authored-by: Michael Mattiello (mcm) <mcm@odoo.com>
Co-authored-by: Julien Mougenot <jum@odoo.com>
Co-authored-by: Lucas Perais (lpe) <lpe@odoo.com>
Co-authored-by: Jorge Pinna Puissant <jpp@odoo.com>
Co-authored-by: luvi <luvi@odoo.com>
2022-06-30 09:29:44 +02:00
Aaron Bohy 8697a136c3 [IMP] web: tooltip: style, delay and empty tooltips
This commit is threefold:
 1) it improves the style of tooltips (mostly, a larger font size)
 2) it adds an option, `data-tooltip-delay` that allows to specify
    the delay before the tooltip opens
 3) it handles the case where the tooltip is empty (no tooltip
    displayed)

Part-of: odoo/odoo#92475
2022-06-30 09:29:43 +02:00
Bruno Boi 34c2610e9f [IMP] web: CheckBox: can toggle on Enter
This commit allows to toggle the value of a CheckBox component
by pressing Enter.

Part-of: odoo/odoo#92475
2022-06-30 09:29:43 +02:00
Bruno Boi aa97c19814 [IMP] web: add hotkey service options
This commit adds two options to the hotkey service to improve its
usability in some cases:
- `area` which is a function that returns an HTMLElement that restricts
  the operating area for an hotkey registration
- `validate` which is a function that returns a boolean that tells if
  the hotkey registration's callback should be called or not

Some typings adaptations were made in:
- @web/core/commands/command_palette
- @web/core/commands/command_service
- @web/core/utils/ui

Part-of: odoo/odoo#92475
2022-06-30 09:29:43 +02:00
FrancoisGe 37271102be [IMP] web: dropdown: various small changes
1) Force the cursor: pointer for dropdown items containing a
   checkbox (e.g. optional field dropdown in list views)
2) Always stop click events in dropdown togglers as they are
   handled
3) Add a test for the "tooltip" props

Part-of: odoo/odoo#92475
2022-06-30 09:29:43 +02:00
luvi bbc0f0c76e [IMP] web: add ColorList component
This commit introduces a ColorList component which allows to
choose a color from a list. There are several usecases for such
a component in Odoo (e.g. ColorPicker, Many2ManyTags, KanbanRecord).

Part-of: odoo/odoo#92475
2022-06-30 09:29:42 +02:00
Michael (mcm) ec8ed943fc [IMP] web: new DomainSelector in owl
This commit introduces the DomainSelector and ModelFieldSelector
components. They will especially be used by the owl DomainField.

Part-of: odoo/odoo#92475
2022-06-30 09:29:42 +02:00