Skip to content

Commit 00ece8b

Browse files
committed
table.plugin.CellEditing: mountEditor() => check if an editor has a keyNav #6437
1 parent 2192406 commit 00ece8b

2 files changed

Lines changed: 14 additions & 3 deletions

File tree

src/form/field/Base.mjs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,10 @@ class Field extends Component {
3333
* @member {String|null} formGroup_=null
3434
*/
3535
formGroup_: null,
36+
/**
37+
* @member {String|null} keys={}
38+
*/
39+
keys: {},
3640
/**
3741
* True indicates that a user has interacted with the form field
3842
* @member {Boolean} isTouched_=false

src/table/plugin/CellEditing.mjs

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,8 @@ class CellEditing extends Plugin {
114114
cellNode = VdomUtil.find(view.vdom, cellId).vdom,
115115
column = me.owner.headerToolbar.getColumn(dataField),
116116
editor = me.editors[dataField],
117-
value = record[dataField];
117+
value = record[dataField],
118+
keys;
118119

119120
if (me.mountedEditor) {
120121
await me.unmountEditor();
@@ -140,12 +141,18 @@ class CellEditing extends Plugin {
140141
...column.editor
141142
});
142143

143-
editor.keys.add({
144+
keys = {
144145
Enter : 'onEditorKeyEnter',
145146
Escape: 'onEditorKeyEscape',
146147
Tab : 'onEditorKeyTab',
147148
scope : me
148-
})
149+
};
150+
151+
if (editor.keys) {
152+
editor.keys.add(keys)
153+
} else {
154+
editor.keys = keys
155+
}
149156
} else {
150157
editor.originalConfig.value = value;
151158
editor.setSilent({record, value})

0 commit comments

Comments
 (0)