669 Commits
Author SHA1 Message Date
Cédric Krier e189e555fe Fix domain parser for Reference field when there is no value but a target
Closes #14413
2025-12-11 18:27:45 +01:00
Nicolas Évrard c59b8b9b47 Force breaking error message when overflowing the error window
Closes #14414
2025-12-10 16:09:44 +01:00
José Antonio Díaz Miralles 49132d132a Do not return early when validating the default values set
Since f1fa123ad508 the validate method does not return any promise.

Closes #14378
2025-12-01 16:14:29 +01:00
Cédric Krier c5d64cf98f Limit editable tree click event to the tab
This permits the navigation between tabs.

Closes #14393
2025-11-26 21:34:50 +01:00
Cédric Krier d0cd3e31f9 Set focus on the first visible input when navigating with arrow keys
Closes #14372
2025-11-19 00:27:21 +01:00
Cédric Krier ff2b79194d Use double click to start editing up/down cell on editable tree
Closes #14371
2025-11-19 00:17:24 +01:00
Cédric Krier 8ab505205d Allow users to subscribe to chats 2025-12-02 13:08:05 +01:00
Nicolas Évrard 48dcd6ffdd Add user notification 2025-12-02 13:08:54 +01:00
Nicolas Évrard 50e79a35bf Always return a promise when calling Sao.Tab.create 2025-10-02 09:42:19 +02:00
Cédric Krier 66da5bf18a Add support to domain parser to search on empty relation field
Closes #14106
2025-11-06 18:15:38 +01:00
Nicolas Évrard 835aa2c1bc Use the form part of view_ids when opening a Many2One in a new tab
Closes #14391
2025-11-26 16:41:20 +01:00
Cédric Krier 67190a2e83 Use the default digit values to calculate the width for float widget
Closes #14153
2025-08-11 18:06:38 +02:00
Cédric Krier 9a8492d928 Do not sum digits for widget width when some parts are unknown
Closes #14384
2025-11-27 01:14:59 +01:00
Cédric Krier ff2c9f7bc3 Load sub-fields of xxx2Many only for lazy loading
The sub-fields are not needed for eager loading view like the tree because they
are rendered with only the number of records.

Closes #14305
2025-10-21 12:14:04 +02:00
Cédric Krier da78b11fca Escape completion content with custom format
Closes #14363
2025-11-20 17:03:46 +01:00
Cédric Krier f98c5e87d9 Do not display error details if empty 2025-11-12 14:57:12 +01:00
Cédric Krier e5b29042d8 Force reload on save of record
07831c6eddaf implemented the default value as `false` but in tryton it has
always been `True` since b8658ba902a5.
Some save calls relies on the record being reloaded like in the editable tree
when selecting another row.
This synchronise the behavior of all save calls between tryton and sao.

Closes #14345
2025-11-03 11:16:05 +01:00
Nicolas Évrard 47efd4dba1 Use the local context when launching a graph_open action
Using the local context allow us to access the context of the field shown by
the graph when the graph shows a One2Many field.

Closes #14341
2025-10-31 18:04:31 +01:00
Nicolas Évrard 10ee881e65 Return the data name as the action key when launching the graph_open action
The ids of each record is in fact indexed by the name of the label in a pie
chart

Closes #14340
2025-10-31 18:02:26 +01:00
Cédric Krier 0e5d2fc391 Use the view_ids attribute to open the Many2One target from tree view
Closes #14327
2025-10-28 17:17:31 +01:00
Cédric Krier b696fdadac Set column width only when the tree view is initialized
The column width should not be calculated on each display because a custom
width may have been applied by the user which is not yet saved.

Closes #14309
2025-10-22 18:57:34 +02:00
Cédric Krier 2b6880e12e Use mouse events instead of drag/drop events to resize column
On drag/drop events some browsers automatically scroll the container to make
the dragged element visible.

Closes #14306
2025-10-21 17:31:22 +02:00
Nicolas Évrard 3850af11f7 Find new key names using the definition from the dict widget's field
Closes #14323
2025-05-22 18:24:57 +02:00
Cédric Krier 353deb659f Use sandboxed iframe to display document
The HTML element used to display the document is based on the mimetype.
And by default a sandboxed iframe is used to isolate the unsafe content from
the parent context.

Closes #14290
2025-10-17 14:55:30 +02:00
Nicolas Évrard b5ca5de485 Use && as the boolean operator instead of &
The typo was introduced in d5338ef23267
2025-09-17 11:41:30 +02:00
Nicolas Évrard 1492a174c7 Save column width in sao only when it has changed
Closes #14277
2025-10-07 12:42:44 +02:00
Nicolas Évrard 2029a9fa71 Skip the validation of the parent field of group
This is required because it can happen that a x2M field will have some records
set through an on_change but if the x2M is not linked to a screen then
exclude_field won't be set.

Closes #14283
2025-10-09 18:50:07 +02:00
Cédric Krier caf49b463f Implement Array.toReversed when browser does not implement it
The usage of Array.toReversed was added in 9b65bcce3d16.

Closes #14270
2025-10-01 18:48:11 +02:00
Cédric Krier 9aff219032 Use an alert for processing notification 2025-08-22 00:13:56 +02:00
Cédric Krier 5fdcba985b Set width to 100% on all elements between pane and screen-container
Without the 100% width, Chrome does not render an horizontal scrollbar when the
form overflow the pane width.

Closes #14197
2025-09-23 12:12:52 +02:00
Nicolas Évrard 736eda2333 Handle URL host of the bus on login instead of using a redirect
Browsers remove authorization header upon cross-origin redirect.

Closes #12329
2025-10-06 17:03:41 +02:00
Cédric Krier 9b39b6f170 Disable action and reload toolbar menu when there is no record
There is no action to execute without a record.

Closes #11929
2025-09-23 11:37:19 +02:00
Cédric Krier 457adf3ebc Hide buttons and links when there is no record
There is no action to run without a record.

Closes #14250
2025-09-23 11:35:23 +02:00
Cédric Krier 705baad2b1 Keep original order for data on pie chart
Closes #14222
2025-09-10 00:56:46 +02:00
Cédric Krier c66acb75e5 Use the length of data to generate color scheme on pie chart
We need a different color for each data instead of each y field.

Closes #14221
2025-09-10 00:53:45 +02:00
Cédric Krier 0bfe0895ae Update height of list-form when it is set on xxx2Many widget
The current view element is the `list-form` so it is not found. Instead we must
search from the content element of the xxx2Many widget because it replicate the
CSS rule.

Closes #14212
2025-09-02 14:28:57 +02:00
Cédric Krier 91b88aed85 Prevent the CSV import and export windows from being clicked on multiple times
Closes #14205
2025-08-28 19:20:03 +02:00
Cédric Krier 33d5deb5c3 Pass also the number as formatting parameter to ngettext
Closes #14204
2025-08-28 18:16:48 +02:00
Cédric Krier 33ee5f0d51 Set client language in the context when user has no language 2025-05-02 00:46:38 +02:00
José Antonio Díaz Miralles 3925faca88 Use the page position instead of the screen position to compute the column resizing
Screen or client position calculations may be inaccurate when there are
multiple monitors or scrollbars.

Closes #14156
2025-08-21 12:30:44 +02:00
Cédric Krier f555e35eca Set selected class before changing current record and do not rely on toggle
The class must be set before changing the current record because the property
selected_records relies on the classes and this method is called when changing
the current record to set the sensitivity of the buttons.
Also clicking a second time on the row must unselect the row which is not
possible to implement with the toggling of the class.

Closes #13980
2025-08-01 11:08:58 +02:00
Cédric Krier b6472c7a71 Ensure date in log window is always a string
The date can be null for example for record having been just created without
any modification later.

Closes #14142
2025-08-01 10:20:59 +02:00
Cédric Krier 26fff46aa6 Define the file types that image input accepts
Closes #14083
2025-06-18 00:49:55 +02:00
Cédric Krier bcb8fd1cd2 Do not execute button if there is no current record for the screen 2025-06-16 11:38:20 +02:00
Cédric Krier e994731e14 Add multiple attribute to the buttons in the tree view
Closes #14072
2025-06-13 17:34:39 +02:00
Cédric Krier bf821e68df Support shortcuts on modal
The shortcut function search for a button in the last opened modal footer
having the id and click on it.
Otherwise it fallback to the existing searches on the current tab.

Closes #14041
2025-05-28 17:58:36 +02:00
José Antonio Díaz Miralles 9eb7dcc1c7 Avoid performing duplicate searches when submitting the filter dialog
Closes #14104
2025-07-06 13:03:41 +02:00
Nicolas Évrard bf64f359a2 Set current screen context in import / export windows
Closes #14128
2025-07-23 14:10:32 +02:00
Cédric Krier 490fb564ea Stop propagation of click event on button in tree view
If the button is going to be executed, the selection of the row must not change
so the propagation must be stopped before reaching the row.

Closes #14118
2025-07-11 15:19:22 +02:00
Cédric Krier 125668e0e2 Do not change the selection of row when starting the edition
The edition of tree row relies on having the current record of the screen set
to the row edited. This can be only guarantee if we do not change the
selection.

Closes #14097
2025-07-03 16:24:59 +02:00