The mode value is from the last row rendered not the current one.
So we must just rely on the type of CellRenderer to know if it can be edited.
issue8483
review261821002
We add a sequence attribute to the key definition and use it for sorting.
This attribute is filled by the field sequence if it exists (using
sequence_ordered) or by the key name.
issue8373
review275431002
We add to DomainValidationError the invalid domain and the field definition so
the client can format and append it to the description of the error.
issue8288
review255351002
The server adds to the definition of the fields, the definition of relation
fields up to specific deep level.
The clients use this relation fields definition to extend the domain parser
with those fields using a dot notation. But those "dotted fields" are not
shown in the search filter to not bloat the popup as it is dedicated to
learning.
In addition, Dict fields are also filled with relation fields coming from the
keys defined in the schema model. As the size can very large, it is possible
to deactivate this feature from the configuration.
issue8293
review259391005
The cached value should never be changed after being stored by the setter or
by a getter. So we make a copy of the value before storing it and return
another copy when returned.
issue8387
review269601002
In contrary to One2Many, Many2Many can not be modified when they are readonly.
But Many2Many inherit from One2Many so we must exclude them explicitly from
the test.
issue8323
review275371002
If the views attribute of the field is wrong or empty, the record will not
load the value for this field. The views attribute can be empty if it was
created by copying the field from its parent.
So it is safer to not rely on this attribute which is there only for
optimization and instead always use all the fields defined on the view.
issue8289
review263471002
After drag&drop, the treeview keeps the selection at the path where the
drag&drop started. But as the current_record is not changed, this creates an
inconsistant display. So we ensure that the dropped record is selected at the
end.
issue8192
review267371002
When launching a new action, the context should not contain the session
context because it is automatically appended to the evaluation.
When creating a new group when the context model changed, it should not
contain the session context neither.
issue8312
review267301002
If the screen container or the domain parser are not yet ready to compute the
search_value, we should ensure to use the initial search_value. Otherwise sao
may trigger to open a new tab without the search_value because the URL will be
set with an empty search.
issue8267
review281471002
Since the removal of pygtkcompat, set_cursor needs to get a real TreePath and
no more a tuple.
Also we added a cell argument to set_cursor, so it must be filled or use
keyword arguments.
issue8290
review271351002
We should first try parsing for locale format to avoid ambiguity.
But also the index may fail if the locale format is not using numeric value.
issue8087
review273221002