Commit Graph
3170 Commits
Author SHA1 Message Date
FrancoisGe 23e7052861 [FIX] web: delete a record in a grouped kanban
Before this commit, in a grouped kanban view, when the "delete" button
of a card is clicked, the card is deleted but a "Load more..." is
displayed in the column.

Why is this?
The group counter is not correctly decremented when the record is deleted

How to reproduce :
- Go to a grouped kanban view with a delete button on its cards
- Click on the delete button

Before this commit:
The record is deleted and "Load more..." is displayed in the record column.

After this commit:
The record is deleted.

closes odoo/odoo#101817

X-original-commit: c97551a5aac6eaa0ca3d750039a65e3e03a453da
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-10-01 14:52:22 +02:00
Aaron Bohy 40df434b2d [REF] web: remove legacy calendar view
The calendar view and all its extensions have been converted to
owl, so it's time to get rid of the legacy implementation.

closes odoo/odoo#101816

X-original-commit: 681a6a98c9919021c2f688609e5e4263a9cf4d14
Related: odoo/enterprise#32130
Signed-off-by: Michaël Mattiello <mcm@odoo.com>
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-10-01 14:52:16 +02:00
Michael (mcm) 9087b3c2d8 [FIX] web: display "Oh snap" dialog when needed
Before this commit, the "Oh snap!" dialog could be displayed anytime
a server validation error was returned by an RPC. Also, clicking
on the "discard" button in this dialog always triggered an `historyBack`
even when we open a new action.

Now, this dialog is only opened on error while saving and does not
`historyBack` anymore.

closes odoo/odoo#101802

X-original-commit: 31c6ecb7f9ad68d337cbc7f0fd3b4d682c088b85
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-10-01 13:01:50 +02:00
Aaron Bohy 96c590504b [REF] web: remove toggle_button field from registry
This field widget is no longer used in form, list or kanban views,
so it hasn't been converted to owl. This commit removes its legacy
implementation from the registry, s.t. we ensure nobody use it
again. Moreover, we adapted a new view test using it to use another
field widget instead, to remove the dependency and ease the removal
that should happen soon.

closes odoo/odoo#101787

X-original-commit: 68cfd4b08bc9ab0305ae9033e42820370b52bdf3
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-30 18:42:37 +02:00
Aaron Bohy 91e7dfd63a [FIX] web: FieldTooltip: display component description in debug
In debug, we want to see the field component description in its
tooltip. For instance, for a many2one: `Widget: Many2one (many2one)`,
`Many2one` being the `displayName` attribute of the Component, and
`many2one` the key in the registry (to use with `widget="many2one"`
in archs).

X-original-commit: 39fbb4620b5e846cd597ecbbfefdbda8bc4cb8e1
Part-of: odoo/odoo#101787
2022-09-30 18:42:37 +02:00
luvi 909a510120 [FIX] web: add a send email button to field in edit mode
This commit brings back the functionality to send e-mails when using
the EmailField in form views. Since they are displayed in edition by
default, the link was no longer available and the feature was missing.

A test has been adapted to assert the presence of the button.

X-original-commit: dbaa1c1083803f31d932445fed8d6324c5191c4b
Part-of: odoo/odoo#101786
2022-09-30 18:42:31 +02:00
luvi e8a9868605 [FIX] web: add a Go to URL button to UrlField in edition
This commit adds a Go to Url button next to the UrlField input. Since form
views are always set in edition mode, it was no longer possible to open
URLs by clicking on the link. Now, a button has been added directly after
the input to bring back the original feature.

Tests assert the right behavior regarding this button.

X-original-commit: e97215e78500a7b36aa0da073c767f5f96198d3f
Part-of: odoo/odoo#101786
2022-09-30 18:42:31 +02:00
luvi aea8a49a35 [FIX] web: adapt Call button for PhoneField
Since form views are always visible in edition mode, it was no longer
possible to click on the phone number to start a call. Now, a button
is displayed next to the input, allowing the call to start despite
the state of the view.

Tests have been adapted to assert the presence of the button.

Enterprise PR: https://github.com/odoo/enterprise/pull/31954

X-original-commit: 4ac2f17ce6279aa745b1a930f52b86635a04753c
Part-of: odoo/odoo#101786
2022-09-30 18:42:31 +02:00
Bruno Boi 7e1304c137 [FIX] web: color edition of many2many_tags_field
Before this commit
Can display the color list picker event if no color_field has been set.
This could lead to a traceback if a color is selected.

After this commit
The field does not allow to show the color list without a color_field.

closes odoo/odoo#101679

X-original-commit: 160ba4b4edfde052d9881a23294ceafc0ceec278
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-30 09:32:18 +02:00
luvi 8912bb4dfb [FIX] web: add binaryFormatter for files
This commit fixes the display of files in list and in the BinaryField,
which was displaying the complete file value instead of a human readable
size.

A new formatter has been added, and the isBinSize utils has been added
to its own utils file instead of depending from the field.

A test has been added to verify the correct visibility of a file in a
list view instead of showing the file content.

closes odoo/odoo#101673

X-original-commit: ff8485b2289a1157cdae608bd4223012fc67b77c
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-29 20:51:18 +02:00
Aaron Bohy f026c8a4d4 [FIX] web: convert iframe_wrapper field to owl
This field has been forgotten in the PR converting all web fields
to wowl.

closes odoo/odoo#101661

X-original-commit: 2e1c78b3818cdcb97afe4cd1496e0da6f8bac1b7
Related: odoo/enterprise#32041
Signed-off-by: Géry Debongnie <ged@odoo.com>
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-29 20:51:07 +02:00
Aaron Bohy 85bbbd2381 [FIX] web: re-introduce many2one_reference field and formatter
This field type has been forgotten in the PR that converts web
fields to wowl, probably because it wasn't tested. This commit
defines a Component and a formatter to use for that field type,
in wowl views, s.t. we no longer rely on the legacy implementation.

X-original-commit: 540e113d107b59af23dc9726a55f5b8376248247
Part-of: odoo/odoo#101661
2022-09-29 20:51:06 +02:00
Aaron Bohy e81c93380b [FIX] web: convert CopyClipboardButton field to owl
There are several versions of the CopyClipboard field (char, text,
url). There's also the version where the field's value isn't
displayed (only the copy button is), aka `CopyClipboardButton`.
This one has been forgotten during the owl conversion. This commit
restores it.

X-original-commit: 3dfbfb5b9568b72ebbe7c376cd56ebf056a86c75
Part-of: odoo/odoo#101661
2022-09-29 20:51:05 +02:00
Brieuc-brd 929769ecdd [REF] web: FormView, replace tables with grids
This commit replaces the FormView group tables with css grids.
Part of the overall v16 SCSS optimization/restyle, task-2704984

task-2918464

X-original-commit: a2b894989ea33364dd29a7d412e4bd4260c1f5ef
Part-of: odoo/odoo#101655
2022-09-29 19:54:49 +02:00
William Braeckman 286eee3320 [FIX] web: prevent selecting an invalid scale in calendar
By pressing the date in the calendar's date picker, a function computes
a new scale to be used depending on the previous focused date and scale,
for example clicking on the focused date in month scale will switch to
week and so on.
However it bypasses the scales that are available on the calendar's
definition.
It is now prevented.

X-original-commit: a9059b0bee02f635d563b45ee94f04bab5532fe4
Part-of: odoo/odoo#101603
2022-09-29 15:27:05 +02:00
FrancoisGe f360965dc2 [FIX] web: group a list view with a date field
Before this commit, in a grouped list view, if a date field is between
two fields with an operator_group then the view crashes.

Why is this?
The view will try to format the aggregated date value but the date does not have one.

Solution:
Use the value false if there is no aggregated value for a field.

closes odoo/odoo#101573

X-original-commit: c9485ea3dd377f486fb7543fc1092175006fc987
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-29 13:23:09 +02:00
Achraf c120f43905 [FIX] web: Allow users to enable list view with group_by_no_leaf
- Go to accounting/Report/Invoices Analysis
- Open studio
- enable list view
- empty view

This code bellow compute count_field as `__count` because group_by_no_leaf
is in the context.

But in the basic_model we don't consider this case.

https://github.com/odoo/odoo/blob/5797fd80a63309269f15bcbe4948d4429a53eec2/odoo/models.py#L2798-L2802

opw-2980923

closes odoo/odoo#101570

X-original-commit: bde2985959ef8914da4b8aca96efc5772262d0c0
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-29 13:23:01 +02:00
Pierre Paridans 7fbc49d486 [FIX] web: ListView colspan for empty lines
Before this commit, empty lines on non-editable form's list are 1 column
too long and breaks the list's layout (ie. squish other columns and
empty space on non-empty columns).

This commit fixes it by properly calculating the number of columns and
their application on the empty lines' colspan. It also fixes an assert
in the list view's tests which mistakenly required that list's records
should be editable in a non-editable form.

Steps to reproduce:
- Open a Contact
- In the notebook, choose the Accounting tab
=> The Bank Accounts list has broken layout

closes odoo/odoo#101550

X-original-commit: 543134e215200bafd89edc1303032a210a4206cf
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Signed-off-by: Pierre Paridans (app) <app@odoo.com>
2022-09-29 12:17:12 +02:00
Aaron Bohy 23e93f9341 [FIX] web: Mutex: do not fork rejected promise
Have a many2one field in a form view, and try to quick create a
record. If the name_create returns an error (e.g. ValidationError
in the model), the many2one field opens a form in a dialog (aka the
slow create). It thus properly handle the error.

However, before this commit, the error returned by the RPC was also
displayed in its own dialog (behind the form dialog).

This was due to a mistake in the Mutex, which forks the promise
returned by the registered action. When that promise was rejected,
the forked one was thus rejected as well, and it wasn't caught.
That later promise is only used to unlock the mutex, so we can
safely catch it.

closes odoo/odoo#101549

X-original-commit: fe9e044b9e03ac7fff5d314e6e207921a15c8965
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-29 12:17:09 +02:00
Dardenne Florent (dafl) 9a132ba95f [FIX] web: many2many_tags_field: fix mobile placeholder
Before, in mobile, the placeholder for `many2many_tags_field` when in mobile
was the text "props.placeholder".

Now the placeholder text is dynamically set.

closes odoo/odoo#101513

X-original-commit: b7fe9f2cf2b04b1172ec2ecbb3998328976f4960
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-29 09:09:09 +02:00
Julien Mougenot e8124d2e38 [FIX] web,*: Fix style in sample data views
This commit defines new rules to disable elements in views using sample
data.

Previously, this was done by setting a 'o_view_sample_data' class on the
view and then setting another class 'o_sample_data_disabled' on elements
which had to be disabled.

Now, the logic determining which elements are disabled has been moved to
each view's SCSS file to avoid polluting the templates with redundant
class assignations. A mixin (o-sample-data-disabled) has been defined in
the SCSS utils to have the same rules on these elements.

closes odoo/odoo#101485

X-original-commit: 3e413c96ff2dff60de22e1d5e1fed7070ac2943d
Related: odoo/enterprise#31960
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-28 21:26:32 +02:00
Julien Mougenot 05d361d383 [REF] web: Rename legacy sample view class
This commit renames the 'o_view_sample_data' class to
'o_legacy_view_sample_data' in legacy views to allow new views to use
different sets of rules.

X-original-commit: 05ae053dc94f9ce91c099d74f6740604e3e376c3
Part-of: odoo/odoo#101485
2022-09-28 21:26:32 +02:00
std-odoo 9e2a3ff662 [IMP] web: clean the code about property attributes reset
Purpose
=======
When changing the type or the model of a property, the name is
re-generated, so the others record values are reset. If we change back
to the original model / type, the original property name is restored.

This is a super important behavior of the properties component and
it should be fully tested.

Reset the model and model description when changing the type.

Now that the form view is always in edit mode, even if we changed the
model / type of a properties, then save, we are able to restore the old
properties as long as we don't refresh the page.

Task-2965523

X-original-commit: 54ae82974b836a0badab3c4c767916a1daf88f76
Part-of: odoo/odoo#101487
2022-09-28 19:31:50 +02:00
std-odoo a631a333b0 [FIX] web: fix the properties field test about many2many
Purpose
=======
The many2many properties have "res.users" as model, but the model and
records were missing in the test data.

Task-2965523

X-original-commit: 974999d32e14fcfca94b327fb8d6efa06d6bf06e
Part-of: odoo/odoo#101487
2022-09-28 19:31:50 +02:00
Renaud Thiry 0553e16dbd [FIX] mail, web_editor: dialog file update event
An event was not called on uploading files in a media dialog.
This meant the parent of html field didn't know of the new attachments
which resulted in attachments being linked to no record at all
and  not being garbage collected later.

This adds a reference inside the media dialog file input so that it can
trigger that event on behalf of the html field.

The attachments newly uploaded in media dialog are uneditable
to prevent users from unlinking attachments
that are still used in the body of the composer (causing the same issue)

Task-2860761

closes odoo/odoo#101405

X-original-commit: f4dd1eb3f25672e7309759c347e2b552c5652b2f
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-09-28 14:19:11 +02:00
Aaron Bohy a076fc14e2 [REM] web: remove two unused field widgets
closes odoo/odoo#101351

X-original-commit: 577e9898029b84a70c85f2eefa68d02e265dd4fd
Signed-off-by: Géry Debongnie <ged@odoo.com>
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-27 22:03:00 +02:00
FrancoisGe 71c6eb1134 [FIX] web: required field compute by another
Before this commit, if an invalid field was completed when editing
another field using an onchange, the field was always considered invalid.
It was not possible to save the record.

Why:
Fields modified by an onchange were not removed from the list of
invalid fields.

Solution:
Remove all fields modified by an onchange from the list of invalid fields.

How to reproduce:
- Create a new record in a form view with a required field
- Click on save (the required field appears as invalid)
- Edit another field that causes a change to the invalid field (onchange)
- Click on save

Before this commit:
    The record is not saved and the required field is still invalid.

After this commit
    The record is saved.

closes odoo/odoo#101343

X-original-commit: 46074244798d2e447f4e5cf174244ea263563b1d
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-27 21:08:54 +02:00
William Braeckman 6a0efdb7c4 [IMP] web: expose before and after execute action on controllers
Make it possible to override both before and after execute actions on
all view controllers using `useViewButtons`.
This avoids having to change a value in the env to override the function
being called when clicking on a button.

closes odoo/odoo#101310

X-original-commit: 9f6c2b8e969635f35786d58ee89ca767ff57144d
Related: odoo/enterprise#31860
Signed-off-by: William Braeckman (wbr) <wbr@odoo.com>
2022-09-27 18:14:49 +02:00
FrancoisGe cb022c00a3 [FIX] web: discard invalid input field
Before this commit, in a form view, discarding a record with an invalid
field containing an input does not restore the original value.

How to reproduce
- go to a form view with an integer field
- edit the integer field with an invalid value ("blabla")
- click outside the field (the field is displayed as invalid)
- click on the discard button

Before this commit:
The integer field always displays the invalid value.

After this commit:
The integer field displays the value before the edit.

closes odoo/odoo#101316

X-original-commit: f81e4019ca00953d9624557c98033aef46efc47a
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-27 17:11:53 +02:00
Simon Genin (ges) a105e8b3cb [FIX] web: pager offset in list interprets 0 as falsy when it shouldn't
If a view with groups and pager, going next then previous (back to the 0
offset) doesn't work.

The pager offset and limit were used in an conditional expression.
If the value was 0, it was considered falsy and set to a default value
while the 0 was actually a valid and expected value.

closes odoo/odoo#101314

X-original-commit: 5c9173241dbe55007c3a84fe078d21ea733e9046
Signed-off-by: Julien Mougenot (jum) <jum@odoo.com>
Signed-off-by: Simon Genin (ges@odoo) <ges@odoo.com>
2022-09-27 17:11:48 +02:00
Simon Genin (ges) 6233bcbac3 [FIX] web: markup no content helper with session storage actions
When an action was retrieved from session storage, the no content helper
content was not markuped. It would therefore display hmtl text on the
user screen.

closes odoo/odoo#101306

X-original-commit: 592b8016b8a44dc1775918e4ffbf572e9b02c50f
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Signed-off-by: Simon Genin (ges@odoo) <ges@odoo.com>
2022-09-27 17:11:34 +02:00
Michael (mcm)andluvi 710271240f [IMP] web: remove readonly mode of form view
This commit does multiple things:
- The readonly mode of form view is removed but not for the fields.
  it means that the fields in the view are always in edit mode except
  if we force them to be readonly.
- The control panel is revamped to take less vertical space and shows now
  the record editing (dirtiness)/validity status after editing the record.
- The record is saved only when leaving the view or by clicking the save
  button when hovering the record status in the control panel.
- The record can still be discarded by clicking the discard button when
  hovering the status text in control panel.

task id: 2822553

X-original-commit: 77824ad44b6945a9811120380747f87ef6362ae2
Part-of: odoo/odoo#101118
Co-authored-by: luvi <luvi@odoo.com>
2022-09-27 12:43:50 +02:00
Michael (mcm) c02e4316bb [IMP] web: open m2o record in target current
This commit adds an option to many2one field to open the record either
in target new (dialog) or target current (replace view) which is now
the default.

task id: 2822553

X-original-commit: abe26f6eebb450512b35c25094329f85b98c15d9
Part-of: odoo/odoo#101118
2022-09-27 12:43:50 +02:00
Laurent Stukkens (LTU) 902bb30f85 [IMP] web: allow formatFloatTime to return seconds
This commit adds an option which allows getting the seconds in the
returned formatted hour.

task-2936932

X-original-commit: c7a3a40cadfe5f2db951860173417044e8e365c1
Part-of: odoo/odoo#101208
2022-09-26 23:46:12 +02:00
Bruno BoiandJorge Pinna Puissant ed9a9d024a [REF] *: calendar view in owl
This commit introduces the new calendar view written in owl.

closes odoo/odoo#101185

X-original-commit: e88988f58582d5b49a32d7102a74a176f40c4c69
Related: odoo/enterprise#31808
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Signed-off-by: Bruno Boi (boi) <boi@odoo.com>
Co-authored-by: Bruno Boi <boi@odoo.com>
Co-authored-by: Jorge Pinna Puissant <jpp@odoo.com>
2022-09-26 22:48:44 +02:00
Jorge Pinna PuissantandBruno Boi 3f15989e15 [MOV] web: transfer settings touch customization to community
This commit adapts codebase following the move and integration of the
touch device detection and customization (through the o_touch_device
class) in community.

X-original-commit: f3adc2b0f70feb80292f6c755d53690e49647dbb
Part-of: odoo/odoo#101185
Co-authored-by: Bruno Boi <boi@odoo.com>
2022-09-26 22:48:44 +02:00
Bruno BoiandJorge Pinna Puissant 156d41dbda [MOV] web: transfer ActionSwiper to community
This commit adapts codebase following the move and integration of the
touch device detection and customization (through the o_touch_device
class) in community.

X-original-commit: 5ae86ad473dd69559820b1f599ce389484cdebbc
Part-of: odoo/odoo#101185
Co-authored-by: Jorge Pinna Puissant <jpp@odoo.com>
2022-09-26 22:48:43 +02:00
Simon Genin (ges) 66289abd5e [FIX] web: fix reactivity in custom filter menu
Before: On a map view, a bunch of points get loaded one by one. Each of
them triggering a new render of the controller. Currently, the useModel
hook does a deep render no matter what. If you are trying to set a
custom filter un the filter menu in the control panel, the content would
systematically diseapear (rerendered) when a new map point loaded.

After: To prevent this, setting the input node as t-model is a solution.
It allows owl to keep track of the value of the input and correctly
set it back when a render occurs.

closes odoo/odoo#100421

Signed-off-by: Géry Debongnie <ged@odoo.com>
2022-09-26 15:47:44 +02:00
FrancoisGe 2c26a810c8 [FIX] web: wrong domain in a new column
Before this commit, in a Kanban view, the group representing
a new column did not contain a domain. Its domain should have combined
the view domain and the groupBy domain ([groupByField.name, "=", id]).

How to reproduce:
- Go to a grouped kanban view with a progress bar
- Create a new column
- Create a record in this new column
- Click on the progress bar to filter the records on a state

Before this commit:
All records corresponding to the selected state are displayed in the
column. (even the records that are not part of the column)

After this commit:
Only the new record is displayed in the column.

closes odoo/odoo#101096

X-original-commit: 1022262c6fcd51c8d4fc8024217542bb1f536d2c
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-26 12:39:52 +02:00
Denis Ledoux ba7bc2e8cb [FIX] web: kanban do not allow to drag grouped by readonly fields
When the kanban is grouped on a readonly fields,
it shouldn't be possible to drag and drop a record from
one column to another.

It was the case when the field was part of the view architecture,
but not when the fields wasn't part of the architecture,
despite we have the information as we have the field description
through the search view / the control panel.

This is a bug which has been introduced during the OWL conversion.
For instance, in 15.0, when grouping CRM leads by sanitized phone,
it wasn't possible to drag and drop records from one column
to another.
In master this is possible.
Besides, in the legacy code, the readonly information
is read from both the field in the architecture and the general
field descriptions:
- https://github.com/odoo/odoo/blob/67191359f2e71be85e6e72d64720bb2748008b3f/addons/web/static/src/legacy/js/views/kanban/kanban_renderer.js#L506-L515

In addition, compared to before,
this revision allows a new possibility compared to before:
Make draggable when grouped by a field which is by default
readonly in the model,
but which is set as `readonly="0"` in the view.
This is to be uniform with what is done in the list and form views.

closes odoo/odoo#101041

X-original-commit: 2a0f8d9ddba754cfc297b2a0de6e2c56990b1e61
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-26 08:38:40 +02:00
Pierre Paridans 6c4fb8805e [FIX] web: tags field placeholder when tag selected
This commit properly removes the Many2ManyTagsField and
Many2ManyTagsAvatarField's placeholder when at least one tag has been
selected.

Steps to reproduce:
- In Contacts, open a partner's form view
- Edit and set at least one "tag"
- The placeholder is present next to the selected tags

Note: the placeholder was already present in previous versions.
Reported by FP.

closes odoo/odoo#101042

X-original-commit: 5976e19a31b9b0edaefc1079541514810d12b240
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
2022-09-23 22:04:23 +02:00
Julien Mougenot 8933614b3c [FIX] web: Do not check non-dirty records validity
Before this commit, when exiting a record in any way, the validity of
each of the fields was checked, even if not dirty. This means that the
user would be locked on a required field if that field got an invalid
value from the server, even with no given input.

In this commit, switching the mode on a record ("readonly" | "edit")
will not go through validation if the record was not dirty.

closes odoo/odoo#101000

X-original-commit: 8a8241503e41486e79ca19f9ca16f413cfabb08b
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-23 22:04:15 +02:00
FrancoisGe 2edec16782 [FIX] web: create with m2o use the field context
Before this commit, in a list view, the context set on a m2o field
is not used when you edit the field to create a new record.

How:
- Go to a list view with a m2o field containing a context
    <field name="m2o" context={"test":1}/>
- Edit the field the m2o field
- Click on "Create ..."

Before this commit:
The name_create method call does not contain the context defined
on the <field/>

After this commit:
The call to the name_create method contains the context defined
on the <field/>

closes odoo/odoo#100987

X-original-commit: dd1e7fab585ed5a691456632c20097ce443d9d69
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-23 14:37:04 +02:00
Julien Mougenot 30ad9ac2eb [REF] web: Make list and kanban sortable handlers overridable
This commit moves the inline handlers of the `useSortable` hook
calls in the list and kanban renderers to proper class methods.

This allows said handlers to be overridden in child classes.

closes odoo/odoo#100986

X-original-commit: ec5ab1d389a0bdfb37c8b2c6766b6be1330085a7
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-23 14:37:01 +02:00
FrancoisGe 9d6c9338e6 [FIX] web: add method "name_get" in sample server
This commit implements the "name_get" method in the sample server.
This is required for m2o fields with the "always_reload" option.

How to reproduce?
go to an empty list view with sample="1" containing a m2o field with the
"always_reload" option

Before this commit
    We have a crash because the "name_get" method does not exist.

After this commit
    The view is rendered correctly with the sample data.

closes odoo/odoo#100985

X-original-commit: 4e53f92caf2527b15439eae041fcd238e2ed8145
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-23 14:36:59 +02:00
Yolann Sabaux fc594c6b50 [FIX] web: numpad decimal with number type
Steps to reproduce:
- in Barcode > Inventory Adjustment
In the quantities add a decimal numpad

Issue:
Traceback

Cause:
The field is from type=number. This kind of field does not accept methods such `selectionStart()` or `selectionEnd` which causes an error: https://html.spec.whatwg.org/multipage/input.html#do-not-apply

Solution:
When of type=number, just return.
On Chrome, numpad won't be possible for regions such as Portugese - BR. They would have to use the keyboard key `period`, code '.' in order to be able to put a decimal via the keyboard.
In Firefox, HTML is parsing the input correctly if the browser settings are set to the right localization. https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Input#localization

opw-2956481

closes odoo/odoo#100953

X-original-commit: d95fbd80f63efbb47c9635e299f6ac417c5cb4c2
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Signed-off-by: Yolann Sabaux (yosa) <yosa@odoo.com>
2022-09-23 11:22:35 +02:00
Pierre-Yves Dufays 9811f426ea [FIX] web: fix domain widget record counter update + wording
In mass mailing, a button allows you to see selected records. In some case the
displayed view of selected records allows to alter records (ex.: cancel
attendee in event) which then affects the number of selected records. This fix
forces the recompute of the number of selected record when closing the view so
that it takes into account the potential modification done in the selected
record view.

In mass mailing, in the selected records view, the button is called "cancel"
but any action performed in the modal will still be applied. This fix renames
that button to "close".

Task-2921762

closes odoo/odoo#100933

X-original-commit: be4e409ec1c23f64e11796b05643e424a93aba9e
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-09-23 09:21:45 +02:00
Aaron Bohy 668378b0f5 [FIX] web: useChildRef: handle conditional children
The useChildRef (used with the useForwardRefToParent hook) allows
to retrieve, from a parent component, a t-ref from a child.

Consider the following scenario:
 - have a parent calling useChildRef
 - have a conditional (with t-if) child calling useForwardRefToParent
 - in the initial rendering, the child is displayed
  -> ref.el points to the correct html element
 - re-render s.t. the child is no longer displayed
  -> ref.el is null, because the referenced element doesn't exist
 - re-render s.t. the child is displayed again

Before this commit, at this point, ref.el will always be null,
even though the corresponding element comes back into the DOM. This
commit fixes the issue by correctly updating the ref, each time the
useForwardRefToParent hook is called.

closes odoo/odoo#100937

X-original-commit: 78d39c79993d1d63c189164f8104e5a3c90f2efd
Signed-off-by: Géry Debongnie <ged@odoo.com>
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-23 08:26:01 +02:00
FrancoisGe c82fdaa538 [REF] web: convert signature field/widget to owl
closes odoo/odoo#100865

X-original-commit: f13e4c486b9d0bf5828f83425b21d11388e45bdb
Related: odoo/enterprise#31653
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2022-09-23 08:25:58 +02:00
Pierre Paridans 062e7b1c21 [IMP] web,*: make ControlPanel, SearchView, SearchPanel responsive
This commit transfers responsive related customizations for
ControlPanel, SearchView and SearchPanel to community which allows them
to render properly on smaller devices.

Note: a page reload (aka. F5) is required to properly adapt the UI after
a resize to a mobile-like size.

X-original-commit: 26a755610da36b01ba07ca224cc5937a672eb6a8
Part-of: odoo/odoo#100759
2022-09-23 01:39:32 +02:00