From 0e6e9a7639bfbf303d8ee98f491e8ff94346e182 Mon Sep 17 00:00:00 2001 From: Faris Ansari Date: Fri, 29 Dec 2017 15:32:41 +0530 Subject: [PATCH] scrollToCell on focus --- src/cellmanager.js | 5 +---- src/datamanager.js | 17 +++++++++++++++++ src/defaults.js | 3 ++- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/src/cellmanager.js b/src/cellmanager.js index b76fd7d..c08ab19 100644 --- a/src/cellmanager.js +++ b/src/cellmanager.js @@ -109,10 +109,6 @@ export default class CellManager { direction => keyboard.on('ctrl+' + direction, () => focusLastCell(direction)) ); - ['left', 'right', 'up', 'down'].map( - direction => keyboard.on(direction, () => this.scrollToCell(this.$focusedCell)) - ); - keyboard.on('esc', () => { this.deactivateEditing(); }); @@ -196,6 +192,7 @@ export default class CellManager { $cell.classList.add('selected'); this.highlightRowColumnHeader($cell); + this.scrollToCell($cell); } highlightRowColumnHeader($cell) { diff --git a/src/datamanager.js b/src/datamanager.js index 635aa73..5d681df 100644 --- a/src/datamanager.js +++ b/src/datamanager.js @@ -189,6 +189,19 @@ export default class DataManager { } return 0; }); + + if (this.hasColumn('Sr. No')) { + // update Sr. No indexes + const srNoColIndex = this.getColumnIndex('Sr. No'); + this.rows = this.rows.map((row, index) => { + return row.map(cell => { + if (cell.colIndex === srNoColIndex) { + cell.content = (index + 1) + ''; + } + return cell; + }); + }); + } } reverseArray(array) { @@ -378,6 +391,10 @@ export default class DataManager { hasColumn(name) { return Boolean(this.columns.find(col => col.content === name)); } + + getColumnIndex(name) { + return this.columns.findIndex(col => col.content === name); + } } function prepareRow(row, i) { diff --git a/src/defaults.js b/src/defaults.js index 1bd1abb..3e1f5eb 100644 --- a/src/defaults.js +++ b/src/defaults.js @@ -46,5 +46,6 @@ export default { addCheckboxColumn: true, enableClusterize: true, enableLogs: false, - takeAvailableSpace: false + takeAvailableSpace: false, + loadingText: 'Loading...' };