tryton-sao 7.4.13 → 7.4.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG CHANGED
@@ -1,4 +1,14 @@
1
1
 
2
+ Version 7.4.15 - 2025-08-01
3
+ ---------------------------
4
+ * Bug fixes (see mercurial logs for details)
5
+
6
+
7
+ Version 7.4.14 - 2025-07-15
8
+ ---------------------------
9
+ * Bug fixes (see mercurial logs for details)
10
+
11
+
2
12
  Version 7.4.13 - 2025-07-01
3
13
  ---------------------------
4
14
  * Bug fixes (see mercurial logs for details)
@@ -3,7 +3,7 @@
3
3
 
4
4
  /* eslint-disable no-redeclare */
5
5
  var Sao = {
6
- __version__: '7.4.13',
6
+ __version__: '7.4.15',
7
7
  };
8
8
  /* eslint-enable no-redeclare */
9
9
 
@@ -22805,11 +22805,13 @@ function eval_pyson(value){
22805
22805
  }
22806
22806
  listener.on('click.sao.editabletree', handler);
22807
22807
 
22808
- Sao.View.Tree.RowEditable._super.select_row.call(this, event_);
22809
-
22808
+ // do not call super when editing row because the selection must
22809
+ // not be changed
22810
22810
  if (!event_.shiftKey && !(event_.ctrlKey || event_.metaKey) &&
22811
22811
  (this.record === current_record)) {
22812
22812
  this.tree.edit_row(this);
22813
+ } else {
22814
+ Sao.View.Tree.RowEditable._super.select_row.call(this, event_);
22813
22815
  }
22814
22816
  },
22815
22817
  unset_editable: function() {
@@ -23776,6 +23778,7 @@ function eval_pyson(value){
23776
23778
  if (states.invisible || states.readonly) {
23777
23779
  return;
23778
23780
  }
23781
+ event.stopImmediatePropagation();
23779
23782
  button.el.prop('disabled', true); // state will be reset at display
23780
23783
  var row = this.view.rows.find(function(row) {
23781
23784
  return row.record == record;
@@ -26567,7 +26570,8 @@ function eval_pyson(value){
26567
26570
  },
26568
26571
  _get_fields: function(model) {
26569
26572
  return Sao.rpc({
26570
- 'method': 'model.' + model + '.fields_get'
26573
+ 'method': 'model.' + model + '.fields_get',
26574
+ 'params': [this.screen.context],
26571
26575
  }, this.session, false);
26572
26576
  },
26573
26577
  on_row_expanded: function(node) {
@@ -26926,7 +26930,7 @@ function eval_pyson(value){
26926
26930
  Sao.rpc({
26927
26931
  'method': 'model.' + this.screen.model_name +
26928
26932
  '.import_data',
26929
- 'params': [fields, data, {}]
26933
+ 'params': [fields, data, this.screen.context]
26930
26934
  }, this.session).then(count => {
26931
26935
  return Sao.common.message.run(
26932
26936
  Sao.i18n.ngettext('%1 record imported',
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "tryton-sao",
3
3
  "title": "sao",
4
4
  "description": "Tryton webclient",
5
- "version": "7.4.13",
5
+ "version": "7.4.15",
6
6
  "homepage": "https://www.tryton.org/",
7
7
  "author": {
8
8
  "name": "Tryton"
package/src/sao.js CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  /* eslint-disable no-redeclare */
5
5
  var Sao = {
6
- __version__: '7.4.13',
6
+ __version__: '7.4.15',
7
7
  };
8
8
  /* eslint-enable no-redeclare */
9
9
 
package/src/view/tree.js CHANGED
@@ -2050,11 +2050,13 @@
2050
2050
  }
2051
2051
  listener.on('click.sao.editabletree', handler);
2052
2052
 
2053
- Sao.View.Tree.RowEditable._super.select_row.call(this, event_);
2054
-
2053
+ // do not call super when editing row because the selection must
2054
+ // not be changed
2055
2055
  if (!event_.shiftKey && !(event_.ctrlKey || event_.metaKey) &&
2056
2056
  (this.record === current_record)) {
2057
2057
  this.tree.edit_row(this);
2058
+ } else {
2059
+ Sao.View.Tree.RowEditable._super.select_row.call(this, event_);
2058
2060
  }
2059
2061
  },
2060
2062
  unset_editable: function() {
@@ -3021,6 +3023,7 @@
3021
3023
  if (states.invisible || states.readonly) {
3022
3024
  return;
3023
3025
  }
3026
+ event.stopImmediatePropagation();
3024
3027
  button.el.prop('disabled', true); // state will be reset at display
3025
3028
  var row = this.view.rows.find(function(row) {
3026
3029
  return row.record == record;
package/src/window.js CHANGED
@@ -1375,7 +1375,8 @@
1375
1375
  },
1376
1376
  _get_fields: function(model) {
1377
1377
  return Sao.rpc({
1378
- 'method': 'model.' + model + '.fields_get'
1378
+ 'method': 'model.' + model + '.fields_get',
1379
+ 'params': [this.screen.context],
1379
1380
  }, this.session, false);
1380
1381
  },
1381
1382
  on_row_expanded: function(node) {
@@ -1734,7 +1735,7 @@
1734
1735
  Sao.rpc({
1735
1736
  'method': 'model.' + this.screen.model_name +
1736
1737
  '.import_data',
1737
- 'params': [fields, data, {}]
1738
+ 'params': [fields, data, this.screen.context]
1738
1739
  }, this.session).then(count => {
1739
1740
  return Sao.common.message.run(
1740
1741
  Sao.i18n.ngettext('%1 record imported',