Commit Graph
153002 Commits
Author SHA1 Message Date
Romain Derie 4dd344b1e6 [IMP] website: improve frontend mini UI navbar
- Make the animation smoother and less prompt to bad UX:
  1. The animation duration of the closing part is now slower. Somehow
     it looked like the closing animation was faster than the opening.
  2. The animation delay of the closing part is now bigger. It will
     prevent some weird UX issues when the cursor is moving out of
     the window by mistake (eg moving a bit too far in the bookmarks
     bar or the Ubuntu left panel for instance). In those case, despite
     the user wanting to open and click inside the navbar, it would
     directly close it.
- Make the edit button only visible for editors
- Make the go to backend button only visible for internal users (not
  portal anymore)
- Restore a behavior that was lost during the frontend > backend task
  [1]: clicking on the app switcher in community should show the list of
  apps so you can directly access where you want to go in the backend.
  It improves the usability in community where you otherwise have to
  click twice every time as the first click always brings you to the
  discuss module from where you have to click again on the app switcher
  to select the app you wanted to land on.

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

closes odoo/odoo#97745

Related: odoo/enterprise#30218
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2022-08-12 23:37:28 +02:00
Miquel Raïch a669992509 [FIX] project: use correct lang when creating personal stages
It's expected that the personal stage is in the lang of the user_id. This commit assures it happens.

closes odoo/odoo#97523

X-original-commit: 2ab1f055b77ab50b62245ab8e34de91500d0c423
Related: odoo/enterprise#30322
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
Signed-off-by: Xavier <xbo@odoo.com>
2022-08-12 23:37:19 +02:00
Didier (did) a682b0349c [IMP] mail: disable chatter when the user has no write access
Before this PR a user that could not post on the chatter could still try. This
PR disable the chatter topbar menu if the user doesn't have the write access.

task-2693304

closes odoo/odoo#88531

Related: odoo/enterprise#30054
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-08-12 23:37:10 +02:00
Odoo's Mergebot 25486cce80 [MERGE][REF] base(_automation), mail, sms: cleanup server actions or base automation model constraints and improve mail/sms actions
Currently only an email action based on template exists in server actions when
having mail app installed. It basically sends an email based on a mail template.

However being able to post a message on record is also useful. Instead of
sending emails it post on a document as a comment or as a note, like what
users can do using the chatter. Notification flow for those cases is the
classic from post: followers, specified partners, Inbox/Email, ...

After updating email server actions we can improve SMS server actions the
same way. We can now post on documents using SMS notification mechanism
in addition to pure mass SMS sending.

Finally models for both ir.actions.server and base.automation are cleaned to
remove onchange. Invalid configuration or unused fields are reset using stored
editable computed fields. Various small view tweaks are added to ease daily
usage of those technical models.

Task-2885890 (Base Automation model cleaning)
Task-2613245 (Server actions mail update / cleaning)

closes odoo/odoo#75906

Related: odoo/upgrade#3696
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-08-12 23:37:04 +02:00
Thibault Delavallée 63e52c200f [IMP] mail: add default values when creating template from server action
Better avoid wrongly-defined templates.

Task-2613245 (Server actions mail update / cleaning)

Part-of: odoo/odoo#75906
2022-08-12 23:37:04 +02:00
Thibault Delavallée db54f5eff1 [IMP] sms: add options for sms server actions
After updating email server actions we can improve SMS server actions the
same way. We can now post on documents using SMS notification mechanism
in addition to pure mass SMS sending.

A new field is added to handle the way of sending SMS, like we do for
email actions.

Task-2613245 (Server actions mail update / cleaning)

Part-of: odoo/odoo#75906
2022-08-12 23:37:03 +02:00
Thibault Delavallée b3fc41cc44 [IMP] mail: add a post server action
Currently only an email action based on template exists in server actions when
having mail app installed. It basically sends an email based on a mail template.

However being able to post a message on record is also useful. Instead of
sending emails it post on a document as a comment or as a note, like what
users can do using the chatter. Notification flow for those cases is the
classic from post: followers, specified partners, Inbox/Email, ...

Task-2613245 (Server actions mail update / cleaning)
Closes #45640

Part-of: odoo/odoo#75906
2022-08-12 23:37:03 +02:00
Thibault Delavallée 138ab8ef14 [REF] base, mail, sms: cleanup ir.actions.server model constraints
In this commit we cleanup server actions model in order to make it a bit
more inlined with current code state of the art.

  * add no_create / no_open on technical fields (m2o towards fields notably)
    as creating or updating fields on the fly is not the purpose of base
    automation module;
  * rewrite onchange into compute or constraint methods;
  * add compute methods to cleanup data when changing configuration (model or
    trigger). Some fields have no usage except in some configuration better
    reset their value. Notably fields linked to the chosen model should be
    reset;
  * add constraints for invalid configuration, notably for models coherency
    with mail features;

Task-2613245 (Server actions mail update / cleaning)

Part-of: odoo/odoo#75906
2022-08-12 23:37:03 +02:00
Thibault Delavallée e891aaf23c [REF] base_automation: cleanup base automation model constraints
In this commit we cleanup base automation model in order to make it a bit
more inlined with current code state of the art.

  * add no_create / no_open on technical fields (m2o towards fields notably)
    as creating or updating fields on the fly is not the purpose of base
    automation module;
  * rewrite onchange into compute or constraint methods;
  * add compute methods to cleanup data when changing configuration (model or
    trigger). Some fields have no usage except in some configuration better
    reset their value. Notably fields linked to the chosen model should be
    reset;
  * add constraints for invalid configuration, in addition to currently
    returned "warning" in the interface;

Task-2885890 (Base Automation model cleaning)

Part-of: odoo/odoo#75906
2022-08-12 23:37:03 +02:00
Thibault Delavallée 3902ae3b18 [MOV] base_automation, sms, website: move server actions code in their own files
Purpose is to ease finding server actions code and views. We just rename
some files and move some code, nothing should change functionally.

Task-2613245 (Server actions cleaning and mail update)

Part-of: odoo/odoo#75906
2022-08-12 23:37:02 +02:00
Yannick Tivisse d22bdc5828 [FIX] product: Prevent deleting Expenses product category
closes odoo/odoo#98048

Taskid: 2937400
X-original-commit: af30867f01a1e4e0a7a06c098d5833a60ddc73a4
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2022-08-12 22:18:17 +02:00
Yannick Tivisse f9adbaf422 [IMP] hr: Improve demo data
closes odoo/odoo#98027

Taskid: 2784316
Related: odoo/enterprise#30398
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2022-08-12 20:16:50 +02:00
Antoine Guenet b7f223eeab [FIX] web_editor: properly convert css calc and var values
convert_inline relies on getComputedStyle to crystalize var and calc
values. This however was conflicting with the fact that it also combines
positional styles (eg., margin-top, padding-left) together. This seems
to make getComputedStyle give out the wrong value with var and calc.

closes odoo/odoo#98003

Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
2022-08-12 20:16:47 +02:00
Jeremy Kersten 783022dbb2 [FIX] mondialrelay: brand is not a secret, it is public in url
Allow non system user to get the mondial relay url for tracking parcel.

closes odoo/odoo#98065

X-original-commit: ce8e2e755edab703c557efb0959e0ba21decbb5c
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
Signed-off-by: Jérémy Kersten <jke@odoo.com>
2022-08-12 19:05:35 +02:00
tronghung0398 de51970c7d [FIX] hr_holidays: Fix the wrong timezone display
closes odoo/odoo#98064

X-original-commit: ec462b8361e03516905eb38c041ad511b1604896
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2022-08-12 19:05:32 +02:00
David Monjoie 300d3d1b74 [FIX] web_editor: fix code textarea size in Firefox
On Chrome, the textarea is automatically resized to use all the
available space. On Firefox, this is not the case. Since the css rules
only set the position of the textarea and not its size, the textarea in
Firefox was ridiculously small and unusable.

task-id 2950108

closes odoo/odoo#98060

X-original-commit: ca1d70cb36be99a171a46eb1455b9f5ef5ac388b
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
2022-08-12 19:05:29 +02:00
Lucas Perais 1c0a118a86 [FIX] web: many2many_tags field support createDomain to be Boolean
Pass the options: `{'create': False}` to the a many2many_tags field in some arch

Before this commit, there was a crash because the API of the field's props did not
account for that use case.

After this commit, it does.

closes odoo/odoo#98050

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2022-08-12 19:05:25 +02:00
Louis Wicket (wil) 090c558452 [IMP] mail, *: introduce Mailbox model for mail.box threads
This commit will simplify the code of Thread by properly splitting all
behaviors exclusive to mail.box threads.

* = test_mail_full

closes odoo/odoo#97996

Related: odoo/enterprise#30402
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-08-12 17:06:08 +02:00
thcl-odoo 1a3517a572 [FIX] mail: correct starred count computation in private channels
Current behavior

Starred messages counter takes into account the starred messages of a private
channels even if we no longer have access to this channel. Happens with deleted
messages too.

Steps channels
- Install Discuss
- Create a Private Channel and invite Marc Demo to join it
then send him a message
- *As Marc Demo*, star the message then leave the channel
-> Starred counter still shows 1

Steps for deleted messages
- Join the private channel again
- Delete the starred message (with Mitchell Admin)
-> Starred counter still shows 1 for Marc Demo

Reasons
Starred message count is computed by a raw sql [1] which only counts partner's
occurrences without taking into account the message's state and/or the
associated channel.
Side records (stars, notifications) are not removed when emptying a message
content [2].

With changes

- It doesn't take into account messages from a private channel which we no
longer have access to by doing a search on mail.message instead of doing it
in SQL (which filters out invisible messages);
- It correctly voids side records when emptying messages;

Side effects

This somehow raises number of queries because we now check access on messages
and records. However this is necessary as bypassing ACLs means unreachable
notifications or stars.

OPW-2742092
Task-2813738

[1] : https://github.com/odoo/odoo/blob/2c1c6b1373c238216fda1e2d9d2f00b5d16c8ca3/addons/mail/models/res_partner.py#L49-L51
[2] : 776d1ee08b

closes odoo/odoo#97974

X-original-commit: b1e8f7d97e3a1fa624436d2dd6801bf5fe7d19aa
Related: odoo/enterprise#30415
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-08-12 17:06:02 +02:00
amdi-odoo ed89790e6e [FIX] survey: Fix question type preview
Fixing the survey question form view which is
currently displaying a preview outside of the form
boundaries as a consequence of the BS5 migration.

This commit modifies the question preview to render it
inside the form boudaries.

Task-2950180

closes odoo/odoo#97938

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-08-12 17:05:56 +02:00
MAHAMADASIF ANSARI 17bed2745d [IMP] calendar: make 'DISCUSS_ROUTE' a class property
When an online appointment (having no location set in it's appointment type) is
booked, we need automatically generate the `videocall_location` so that in the
confirmation email received by customers already has a link to join. For
building this URL, we need to use 'DISCUSS_ROUTE' when appointment is being
created (see the linked ENT PR).

For making 'DISCUSS_ROUTE' easily accessible, instead of keeping it as a global
variable, we now make it a class property of the model `calendar.event`.

taskID-2821957

closes odoo/odoo#92628

Related: odoo/enterprise#27136
Related: odoo/upgrade#3558
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
2022-08-12 17:05:42 +02:00
MAHAMADASIF ANSARI 19183d9f2f [IMP] calendar: improve the mail templates related to appointment
This commit done below changes:

- Change the "Meeting URL" label to "How to Join".

- Change the "https://meet.jit.si/odoo-xyz" label to
  "www.mycompany.com/calendar/join_videocall/xyz".

- Adds the label "Join with Odoo Discuss" if the `base_url` is found
  in `videocall_lcation`, otherwise "Join At" instead of simply showing
  the meeting URL in calendar event related mail templates and moves the
  meeting URL to the bottom of this label.

- To avoid a tiny calendar badge, add style `min-width: 130px;` to the
  calendar badge.

taskID-2821957

Part-of: odoo/odoo#92628
2022-08-12 17:05:42 +02:00
JF Aubert ec4473a381 [IMP] mrp_subcontracting: allow multiple locations
Ease subcontractor stock tracking by using dedicated locations.
Simply declare location as a subcontracting one (rules are
automatically adapted) and set it on vendor.

closes odoo/odoo#88644

Task: 2720393
Related: odoo/upgrade#3755
Signed-off-by: Tiffany Chang <tic@odoo.com>
2022-08-12 17:05:36 +02:00
Víctor Martínez 77c6b0146f [IMP] hr_attendance: Separate the attendance report in functions to allow inheritance.
TT36461

closes odoo/odoo#98037

X-original-commit: 9468c62a470455043c1fc45edf18df614c2d2d18
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2022-08-12 15:12:53 +02:00
Jorge Pinna Puissant 25d2654b3b [REF] web: convert field upgradeBoolean
This commit rewrites upgradeBoolean using the new framework.

closes odoo/odoo#97951

Related: odoo/enterprise#30334
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2022-08-12 13:13:02 +02:00
Mathieu Duckerts-Antoine 94c9b4c8f1 [FIX] web: address style
The form view and many fields have recently been rewritten in OWL (see https://github.com/odoo/odoo/commit/48ef812a635f70571b395f82ffdb2969ce99da9e).
The fields have now always a div as root element. This breaks some css
rules specifying the way in which some fields composing an address has
to be displayed together. Here we adapt the rules to make them have the
intended effect.

closes odoo/odoo#97876

Related: odoo/enterprise#30234
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2022-08-12 13:12:56 +02:00
Mathieu Duckerts-Antoine 483cacb4b0 [FIX] web: no content helper style in list view with search panel
The list view has recently been rewritten in OWL (see 48ef812).
During the rewriting, it was forgotten to put the class o_renderer on
list renderers, making a no content helper in a list view be positioned
too much on the left and have its style broken when the list has a search
panel.

Part-of: odoo/odoo#97876
2022-08-12 13:12:55 +02:00
Mathieu Duckerts-Antoine b12a2a9846 [FIX] web: no content helper position
The list view has recently been rewritten in OWL (see https://github.com/odoo/odoo/commit/48ef812a635f70571b395f82ffdb2969ce99da9e).
During the rewriting, a css rule specifying the height of the list
renderer has been forgotten making the no content helper be positioned
too high on the page. We reintroduce that rule.

Part-of: odoo/odoo#97876
2022-08-12 13:12:55 +02:00
JF Aubert 144dd4c7f9 [FIX] mrp: fix workorders duration expected
_split_productions wrongly compute duration expected.

task: 2925901
related to task 2884562

closes odoo/odoo#98029

X-original-commit: fb1abddb20131f087d39abd1b87e920acd7282a4
Signed-off-by: Tiffany Chang <tic@odoo.com>
2022-08-12 11:29:00 +02:00
Ricardo Gomes Rodrigues (rigr) e36de5b312 [IMP] account: remove useless popup on Fiscal Positions when not in edit mode
closes odoo/odoo#97175

Signed-off-by: Laurent Smet <las@odoo.com>
2022-08-12 11:28:52 +02:00
Ricardo Gomes Rodrigues (rigr) 50511048a3 [IMP] account: remove the Unreconcile button on Exchange Difference items
When an invoice has led to the creation of an Exchange Difference Entry, it is shown on the invoice view form.
The info button allows to see more information on that entry, however in the case of an exchange difference,
the "Unreconcile" button should not be displayed. This commit fixes this.

closes odoo/odoo#96997

Signed-off-by: Laurent Smet <las@odoo.com>
2022-08-12 11:28:49 +02:00
Odoo's Mergebot b880b60a4e [IMP] l10n_it_edi: Hook to manage partner in invoice import
The need for this change is give the flessibility to add new features. Eg.  same company have multiple plant/office in this case we will have one VAT code and multiple fiscal code.

closes odoo/odoo#91326

Signed-off-by: Josse Colpaert <jco@odoo.com>
2022-08-12 11:28:46 +02:00
Tony Masci 3a34eccf82 [IMP] l10n_it_edi: Hook to manage partner in invoice import
Part-of: odoo/odoo#91326
2022-08-12 11:28:45 +02:00
Tony Masci 52b7d9a48e [IMP] l10n_it_edi: Hook to manage partner in invoice import
Part-of: odoo/odoo#91326
2022-08-12 11:28:44 +02:00
Julien Banken 21d1b99f2f [IMP] website_slides_survey: add certification attempts tab on user profile
This new commit will add a new tab on the user profile that will list
the certifications attempts made a given user. With this new tab, the
administrators can get a quick overview of the user activity.

task-2679881

closes odoo/odoo#81057

Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
2022-08-12 11:28:40 +02:00
Julien Banken fe0f3e756e [IMP] survey: include the user's score in the notification email
The default email sent when a user succeed the certification will now
include the user's score. By opening the email, the users will directly
know how well they performed without having to log in.

task-2679881

Part-of: odoo/odoo#81057
2022-08-12 11:28:39 +02:00
Odoo's Mergebot b43a086be6 [MERGE][IMP] mass_mailing[_sms]: improve utm campaign a/b testing integration
PURPOSE

Improve the Marketing Campaign and Mass SMS form/tree views.
Notably to display clearly what's happening with the A/B testing.

SPECIFICATIONS

- Re-arrange and improve the "mailings" embed tree view in the Marketing
  Campaign form, for both mail and sms
- Add A/B testing information in Marketing Campaign form views
- Reword some labels
- Do not override existing campaign when enabling A/B testing

See underlying commits for details.

LINKS

PR #77768
Task 2653806

Related: odoo/enterprise#21421
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
2022-08-12 11:28:32 +02:00
Dharmraj Jhala 3d8faf9b9d [IMP] mass_mailing: do not reset campaign while enabling a/b testing
Right now, on an existing mailing, if we enable the a/b testing and there's
already a campaign set, we remove it and add a newly create campaign that
matches the name of current mailing. Also, while duplicating a campaign, the
`ab_testing_completed` field should not be copied over.

This commit improves the behavior and only creates a new campaign if there's
not one already set on a record, and by preventing `ab_testing_completed`
from being copied.

TaskID-2653806

Part-of: odoo/odoo#77768
2022-08-12 11:28:32 +02:00
ijas ahammed 080efbb9d2 [IMP] mass_mailing: shorten action button string
This commit shortens the action button string from 'Send new Mailing'
to 'Send Mailing' in campaign form view

TaskID-2653806

Part-of: odoo/odoo#77768
2022-08-12 11:28:31 +02:00
ijas ahammed 0714966042 [IMP] {mass_mailing}_sms: add A/B Test related info in campaign
This commit adds a new group `ab_test_group` after notebook of campaign form
view, which displays A/B test related information. Below are the fields
displayed within the group:

 - ab_testing_winner_selection
 - ab_testing_schedule_datetime

They will become readonly as soon as the the A/B testing is completed.

Apart from that, this commit makes the mailing/sms mailing lines editable.

TaskID-2653806

Part-of: odoo/odoo#77768
2022-08-12 11:28:31 +02:00
ijas ahammed 87e538dd1d [IMP] {mass_mailing}_sms: update the embed tree view on campaign
This commit improves the embedded tree view of mailings, sms within
a campaign, and makes it uniform with the original tree views.

However, due to lack of space, we display the stats simply in
numeric format instead using progressbar widget.

Also, to save a bit space, if no mailing, sms has A/B testing
enabled, we hide that column.

Apart from that we have added sum for the field `sent` and average
for these fields,

- recieved_ratio
- opened_ratio
- clicks_ratio
- replied_ratio
- clicked
- bounced

TaskID-2653806

Part-of: odoo/odoo#77768
2022-08-12 11:28:31 +02:00
ijas ahammed d0f25aa59a [IMP] mass_mailing_sms: improve list view of SMS marketing
This commit improves the list view of SMS Marketing to make it
similar to Email Marketing. Now we have these fields in following
order:

- calendar_date
- subject (string updated to `Title`)
- mailing_model_id (optional hide)
- user_id
- campaign_id (optional hide, displayed when activated)
- ab_testing_enabled (displayed when activated)
- sent (added sum)
- clicked (updated string to `Clicked (%)` and added progressbar widget, average)
- bounced (updated string to `Bounced (%)`, optional hide with progressbar widget
  and average)
- state

TaskID-2653806

Part-of: odoo/odoo#77768
2022-08-12 11:28:31 +02:00
Guillaume (guva) 03a0204dc7 [FIX] account_payment_register: register different payment type
When register a payment for a bill an a credit note,
the two payments have the same type.

Steps:

- Create a Vendor Bill, and a Vendor Bill Credit Note
- Select both and register payment without grouping them
-> The two created payments have the same type

With this commit, if the field group_payment is True, we
set the payment type regarding the balance of the move line.

opw-2852186

closes odoo/odoo#98010

X-original-commit: 2ad78818b59350cf5e9367802c41820e36d05db1
Signed-off-by: Laurent Smet <las@odoo.com>
Signed-off-by: Guillaume Vanleynseele (guva) <guva@odoo.com>
2022-08-12 10:06:57 +02:00
Rémy Voet (ryv) 6e1bb5ca3e [FIX] test_website: fix test when trigram psql extention is installed.
When we want to activate trigram psql extension for odoo/odoo#97294
on runbot. But one test fails (`test_01_many_records`) with it because
the website fuzzy search behavior depends on trigram extension presence.

closes odoo/odoo#98018

X-original-commit: 0562a17f8ca1be83c80372e2300e24ab9d0458a9
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
Signed-off-by: Raphael Collet <rco@odoo.com>
2022-08-12 08:53:59 +02:00
Mahamadasif Ansari 12df988766 [IMP] website_slides: style mismatch in full screen
Currently, bold style intensity on text is lost when switching from default
browser mode to full-screen mode for viewing e Learning Course content.

This happens due to the use of the `fw-light` class in full screen.
This class property is font-weight: 300 !important, so it overrides the
font-weight style property in the child element of this class.

This commit solves this issue by removing the `fw-light` class in the
full-screen record set.

task-2850325

closes odoo/odoo#91732

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-08-12 08:53:53 +02:00
Camille Spiritus 8852ff2767 [FIX] account: coa search functionality crashing
Searching for anything in the Chart Of Account view would make a stacktrace appear.

FIX -->  classic domain names instead of 'str(self)+'%''

Task-2951261

closes odoo/odoo#97991

Signed-off-by: Laurent Smet <las@odoo.com>
2022-08-11 19:15:01 +02:00
Panagiotis Kyriakou 06b81a71aa [FIX] sale_project: reduce the activities displayed on project update
This commit changes the activities that are displayed on the project update.
(Both in the table of the project update form view and on the right panel in project update)
Specifically it reduces the sale order items to only the ones that are directly
related to the project (the project itself or its tasks)

A test was modified in order to accomodate the change.

closes odoo/odoo#97985

Signed-off-by: Xavier <xbo@odoo.com>
2022-08-11 19:14:57 +02:00
Victor Feyens f5310d21c4 [FIX] sale_margin: forbid manual cost specification
Considering recent recurring bug reports and the fact that bridge modules
now automatically compute the cost considering logistics, timesheets & expense
flows, the ability to manually edit the cost on a sale.order.line is now disabled.

In most cases, manually specified costs are automatically reset because of
stock/timesheets/expenses added dependencies on the purchase_price field.

Also adapt existing tests and use the new Sale tests common.

closes odoo/odoo#97977

Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-08-11 19:14:54 +02:00
David MonjoieandNicolas Bayet 0755d72433 [FIX] web_editor: fix colorpicker reverting history
The colorpickers forcefully reset the current history step to revert the
color change while previewing colors. This works when the only change in
the current step is in fact the colorpicker. If other changes already
existed in the current step however, they will be reverted as well. This
commit fixes the issue by introducing the concept of stashing mutations to
avoid that these be reverted. They can be unstashed later on when the
system is done abusing the revert mechanism.

task-2921844

closes odoo/odoo#97973

X-original-commit: cc280522d590c3ed257e7c6c495008e8986b2bf3
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
Co-authored-by: Nicolas Bayet <nby@odoo.com>
Co-authored-by: David Monjoie <dmo@odoo.com>
2022-08-11 17:57:34 +02:00
David MonjoieandNicolas Bayet 0c22f04354 [FIX] web_editor: fix link tools losing selection
When clicking the link tools button, the focus is set inside the URL
input, changing the selection temporarily to that input. This means that
if the user clicks any other button from the toolbar right after using
that input, a command would try (and refuse) to execute outside the
editable area.

The link tool is now destroyed when clicking other buttons of the
toolbar, thus either validating the link or reverting it, and the
selection is reset accordingly.

The toolbar buttons are now correctly bound on click rather than some
being bound on mousedown and some on clicks, like colorpickers, which
would result in weird behavior such as a mousedown handler modifying the
dom which changes the layout so the mouseup event is on another node and
the click is not fired anymore. This commit streamlines the behavior to
use click so that this issue does not occur anymore.

task-2921844

X-original-commit: 798e3d0eb0017e05261ca0a0c5e29706629f0350
Part-of: odoo/odoo#97973
Co-authored-by: Nicolas Bayet <nby@odoo.com>
Co-authored-by: David Monjoie <dmo@odoo.com>
2022-08-11 17:57:34 +02:00