The custom event 'open_view' triggered by the pivot
renderer was not stopped in the pivot controller. This
used to cause a crash because the dashboard controller
also listens to a custom event with the same name but
following another logic.
The present fix simply stop the propagaton of the event.
A test has been added in the module web_dashboard.
closesodoo/odoo#36466
Signed-off-by: Géry Debongnie (ged) <ged@openerp.com>
When employee try to edit his detail using my profile with empty
timezone and click on "Edit" button, it show traceback. It's coming
from the mistmatch timezone widget.
closesodoo/odoo#36593
Signed-off-by: Romain Libert (rli) <rli@odoo.com>
Purpose
========
In expense, we now allow any simple employee (no sales access rights) to
select sales order. Technically, the name_search is done in sudo mode,
to allow simply fetching the name_get of record.
The problem is that the m2o field widget displays the "search more"
option and click on that will open a modal executing a "search_read"
which is causing access error as the user doesn't have read access on
SO.
As we want to restrict the visible information from the SO(only name_get)
to all user, we can't hack the search_read too.
Specification
=============
To prevent user frustration, we need to remove the "search more" option.
Thus, make a private function which one have 'search more..' option
related stuff and create a new widget for sale_expense, override that
function which one is returing values as it is without any modification.
task-2057714
closesodoo/odoo#36152
Signed-off-by: Jérome Maes (jem) <jem@openerp.com>
Since ee5e972, "Achive" and "Unarchive" actions are
automatically displayed in the actions dropdown
if the record has an `active` field.
The "Archive" action is shown if `active=True`, and
"Unarchive" otherwise.
However, if the record has the `active` field but
it's not in the view, the form controller think
`active=False` because `undefined` is falsy.
Therefore, the "Unarchive" action is always shown.
If `active` is not in the view, neither "Archive" nor
"Unarchive" should be shown.
closesodoo/odoo#36551
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Before this commit if `display_name` was in the view, the breadcrumb when
creating a new record, the breadcrumb would display either `Unnamed`,
either the last value of `_title` in `action_mixin`.
The default value when creating a record should be `New`, but the return
was ignored because `display_name` was found in the view
closesodoo/odoo#36565
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Part of task 2005972
It is used in account_asset, when the o2m field is hidden and at the end of the form, but we need the user to see it at the beginning of the form
closesodoo/odoo#36315
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
Before this commit, translations were edited in a list view with a filter
on the field that needed to be translated.
After this commit, the translations for each fields are translated in a
dedicated dialog. The changes done to the current language are taken
into account immediately, both ways, from the dialog to the form and
from the form to the dialog.
Translating terms is also available in create mode, the user will be
prompted to save before editing a translation
Task ID: 2028152
closesodoo/odoo#36185
Signed-off-by: VincentSchippefilt <VincentSchippefilt@users.noreply.github.com>
Sometimes when using a form view in a modal (e.i.: in a gantt view), we might
want to have some button in the footer. We expect clicking on buttons to close
the dialog but nothing happens, since the webclient does not know that this is
a modal.
To do so, we provide the `close='1'` attribute on the button, in form view.
This will trigger the event closing the modal.
This is done with the benediction of aab-odoo
Task-2024216
closesodoo/odoo#36493
Signed-off-by: Jérome Maes (jem) <jem@openerp.com>
Let's assume a kanban view with oe_kanban_global_click className
(i.e. clicks on the card open the record in a form view), and an
image with the 'image' widget. This is for instance the case of the
hr.employee kanban view.
Before this rev., clicking on the image didn't open the record in
form view.
Since 78565b1dc9 , two menus with an act_url action drive the user to
external websites. This makes the click_all test very fragile.
With this commit the Apps menus "Theme Store" and "Third-Party Apps" are
black-listed in the click_all test.
Also, it happens that a filter which is not supposed to work in some
circumstances is simply hidden. Actually, the click_all test sets that
filter and leads to a crash.
With this commit, for a more realistic use case, the click_all test does
not activate hidden filters.
closesodoo/odoo#36433
Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
Task 2008956
* Add the root of an account (first 2 digits/char) as a searchable model.
* Create a custom searchpanel for this account root on account.move.line
* Add the account_root searchpanel to the account.account view too.
Before this commit, the width of the headers in a list were frozen
only when the list was seen, but the calculation of the width might have
happened while it was invisible (thus giving the headers 0px).
Now, the freeze AND the calculation only occur when the list is visible
and can actually be evaluated.
Task 2061848
closesodoo/odoo#36175
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Before this commit, when entering an empty editable list with buttons,
their width would be set to 0px.
Now, they are considered as fields and given a name, allowing the renderer
to give them their proper width (if any) or a default one.
Before this commit :
- resize handles were all attached at the right side of the list
- empty columns were given a resize handle, causing them to be larger than expected
Now :
- resize handles are attached to their corresponding header
- only non-empty columns are given a resize handle
Fix 2060807
Before this commit, if an x2many was in an inactive tab of the notebook,
its column headers widths were all set to 0px
Now, inactive x2many lists do not compute their width until they are visible
and interracted with (e.g. add/delete a record, sort columns, etc.)
Fix 2060418
Before this commit, handle was cropped in some views, showing an ellipsis
instead of the actual handle.
Now, handle has enough space to display properly.
closesodoo/odoo#36387
Signed-off-by: VincentSchippefilt <VincentSchippefilt@users.noreply.github.com>
Back-ported from the master,
commit ca9a733b27
Before this rev., classNames 'oe_read_only' (only display in
readonly mode) and 'oe_edit_only' (only display in edit mode)
didn't work in x2m lists inside form views (only the cells in the
tbody were hidden, but not the header). This rev. makes this work.
Task 1949618
closesodoo/odoo#36117
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
closesodoo/odoo#36285
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
This rev. makes the part of the progressbar corresponding to falsy
records 'alive': the user can now click on it to filter on records
whose value is false for the progressbar field.
Task 1952430
closesodoo/odoo#35100
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Co-authored-by: Mohammed Shekha <msh@odoo.com>
Co-authored-by: Aaron Bohy <aab@odoo.com>
purpose of this commit is:
- to remove filter and groupby option which are added at the time of fuzzy
search, it was useless as we have separate groupby and filter menu
also it generates the big dropdown menu so it is more confusing.
- align caret icon with the label.
After this commit:
- when user do the fuzzy search then filter and groupby option will not be shown
in the dropdown
task-2036351
closesodoo/odoo#35092
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Co-authored-by: Mohammed Shekha <msh@odoo.com>
When we have an onchange that modify items in One2many's lines (for
example the quantity of each line based on general quantity) and
we click on a record immediately after changing the field that
trigger the onchange, we have the the old value in the dialog box.
Indeed the dialog opens before the onchange has return the new
values, so the old one are used. This case appears only if the
One2many's line was never saved.
With this fix, we wait that the model is free of mutex, and so the
onchange is terminated before displaying it.
closesodoo/odoo#35306
Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
Let's assume an editable list view with a <widget> node in its
arch. Before this rev., when clicking on a field cell positionned
*after* the widget, the field next to the clicked one was focused.
closesodoo/odoo#36176
Signed-off-by: Géry Debongnie (ged) <ged@openerp.com>
As of August 20 2019, Microsoft Edge partially supports ECMA2018.
For instance, `Promise.prototype.finally()` can be used, but the
spread operator does not work on objects.
Task-ID 2056070
purpose of this commit is to remove ID from the fields to group by on the
searchview as it does not work nor does it make sense.
removed field 'ID' from custom group by on search view.
task-2028105
closesodoo/odoo#34752
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Before this commit: nocontent tooltip was not diplayed in center
After this commit: nocontent tooltip will be displayed in center,
toggle o_list_view class which should not be added if nocontent
help is displayed, as there is no listview to display so remove
o_list_view class
task-2008371
closesodoo/odoo#34178
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
This commit adds two methods as hooks to customize the way Dialog deals
with its buttons :
* _setButtonsTo() : to render and set the buttons into a container
element;
* _setRemoveButtonOption() : to define the remove button and
set its destination zone (header, footer)
Task ID: 2038324
closesodoo/odoo#35474
Signed-off-by: Pierre Paridans <pparidans@users.noreply.github.com>
Co-authored-by: Dharmang Soni <dpr@odoo.com>
Added a resizing feature to all non-empty editable lists:
- added a handle to each column header, allowing resize
- column width will expand/shrink the table width
- resized columns will reset when reloading the list or sorting columns
- only available when the list contains data
closesodoo/odoo#35975
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Co-authored-by: Gery Debongnie <ged@odoo.com>
Let's assume the following situation:
- an empty editable x2many list with date field (or any other
fixed width field) and optional fields
- add a record to the list, but discard it directly
- toggle an optional field
After those steps, the date field doesn't have its hardcoded,
absolute width anymore.
This rev. fixes this issue by clarifying the way the stored widths
are erased when the columns change, preventing to reach a corner
case in which we have stored widths, but we can't apply them, and
thus let the browser uniformly divide the space amongst columns.
Columns with an absolute width (e.g. '120px') must always have a
width of at least that value. When there are records in the list
the column's widths are computed by the browser according to the
content (in readonly). However, for some field types, the rendering
in edition is a bit wider (e.g. date(time) fields because of the
caret).
This rev. sets a min-width to those fields such that the rendering
is also correct in edition.
Before this rev., a grouped list view with all groups folded
behaved like a list with records w.r.t. the computation of column
widths, whereas it should behave like an empty list, as there is
no record to help the browser to compute the optimal width for each
record.
When there were records in the list (and the browser computed the
optimal column widths according to them), and the user removes
them, we want to keep the widths as they are instead of forcing
them according to the field's types.
Mainly, when adding the first record to the list, as this is when
we switch from forcing the column's widths (when there is no data),
to letting the browser optimally divide the available space.
Some other cases had to be handled, like the multi edition.
Having two attributes for this was probably overkill. We now have
a single attribute 'width' which can specify either a fixed width
(e.g. '120px') or a factor (e.g. '2.5').
On a list with no data, the width of each column is determined by
a heuristic. Before this rev., the heuristic was based on the field
type. It now takes the potential widget set in the arch into
account, and fallbacks on the field type.
This rev. refines the way we compute column's widths in editable
list views.
When there are displayed records, we let the browser compute the
width of each column (which is thus optimal with respect to the
content), and we then freeze those widths s.t. it doesn't flicker
when we switch a row in edition.
When there is no record, we keep the former heuristic based on
absolute and relative widths (depending on field types). However,
we set the same weight for all fields having a relative width (i.e.
all but boolean, date(time) and numeric), such that the remaining
space is evenly distributed between them.
Co-authored-by: Aaron Bohy <aab@odoo.com>
Before this commit, a simple optimization was done: if a field was
modified in such a way that the new value is the same as the initial
value, then it is not considered changed.
However, with the new changes in the ORM, it may be an issue, because
doing so loses the intent of the user. If an onchange changes a field,
then the user changes it back, the server is not aware of that fact.
With this commit, we simply keep the field in the list of changes to
send to the server.
opw #2057230closesodoo/odoo#35890
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
- Change the company's country to Finland;
- Go to Contacts and click on Create;
- Tick the Company box above the Name field;
- Start typing into the Name field;
- Click on a company with a VAT number under its name.
Before this commit, a Traceback appears. This occurs because the
response of the request with the suggested company has the fields
'company_name' and 'company_code' and these fields are not in
res_partner.
Now, the suggested company is parsed to correctly field the country
field.
opw-2049636
closesodoo/odoo#35631
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
before this commit, domain selector widget does not support
TRUE_LEAF and FALSE_LEAF i.e. [(1, '=', 1)] and [(0, '=', 1)] respectively,
the reason is the chain part of the domain i.e. field name has value 1/0 and
we don't have field name like 1 and 0 in domain and hence ModelFieldSelector
don't accept it
after this commit, domain selector can handle this special two domains which is
[(1, '=', 1)] and [(0, '=', 1)], add support for chain with 1/0 in ModelFieldSelector
task- 1998145
closesodoo/odoo#35603
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Co-authored-by: Mohammed Shekha <msh@odoo.com>
In the favorites menu, it was possible to create two
favorites with the same name (contrarily to the
specifications). The root cause of the problem was that
the submenus of the favorites menu were not updated at
all. This commit fixes that situation.
closesodoo/odoo#35495
Signed-off-by: Géry Debongnie (ged) <ged@openerp.com>