diff options
Diffstat (limited to 'ext/mixed/js')
-rw-r--r-- | ext/mixed/js/display.js | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/ext/mixed/js/display.js b/ext/mixed/js/display.js index 05b67bbd..dac99e4b 100644 --- a/ext/mixed/js/display.js +++ b/ext/mixed/js/display.js @@ -843,6 +843,7 @@ class Display extends EventDispatcher { } let {sentence=null, optionsContext=null, focusEntry=null, scrollX=null, scrollY=null} = state; + if (typeof focusEntry !== 'number') { focusEntry = 0; } if (!(typeof optionsContext === 'object' && optionsContext !== null)) { optionsContext = this.getOptionsContext(); state.optionsContext = optionsContext; @@ -907,9 +908,11 @@ class Display extends EventDispatcher { entry.dataset.index = `${i}`; this._addEntryEventListeners(entry); container.appendChild(entry); + if (focusEntry === i) { + this._focusEntry(i, false); + } } - this._focusEntry(typeof focusEntry === 'number' ? focusEntry : 0, false); if (typeof scrollX === 'number' || typeof scrollY === 'number') { let {x, y} = this._windowScroll; if (typeof scrollX === 'number') { x = scrollX; } |