Skip to content
This repository was archived by the owner on Jan 15, 2024. It is now read-only.

Commit 5321ff1

Browse files
author
steven.roulleau
committed
fix(Editor): setTheme not sent on reconnect or language change
MSIS-2643
1 parent a237f62 commit 5321ff1

File tree

2 files changed

+18
-4
lines changed

2 files changed

+18
-4
lines changed

src/Editor.js

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -521,7 +521,7 @@ export class Editor {
521521
this.undoRedoContext = UndoRedoContext.createUndoRedoContext(this.configuration)
522522
this.undoRedoManager = UndoRedoManager
523523

524-
const initialize = (model) => {
524+
const initialize = (model, shouldSendTheme) => {
525525
/**
526526
* @private
527527
* @type {Recognizer}
@@ -542,6 +542,11 @@ export class Editor {
542542
this.innerRecognizer.init(this.recognizerContext, model)
543543
.then((values) => {
544544
logger.info('Recognizer initialized !')
545+
if (shouldSendTheme) {
546+
setTheme(this, this.model)
547+
setPenStyle(this, this.model)
548+
setPenStyleClasses(this, this.model)
549+
}
545550
this.loader.style.display = 'none'
546551
})
547552
.catch(err => handleError(this, err))
@@ -554,7 +559,7 @@ export class Editor {
554559
.then((model) => {
555560
logger.info('Recognizer closed')
556561
handleSuccess(this, model)
557-
initialize(InkModel.clearModel(model))
562+
initialize(InkModel.clearModel(model), true)
558563
})
559564
.catch(err => handleError(this, err))
560565
} else {
@@ -565,7 +570,7 @@ export class Editor {
565570
this.model = InkModel.createModel(this.configuration)
566571

567572
// INFO: Recognizer needs model to be initialized
568-
initialize(this.model)
573+
initialize(this.model, false)
569574
}
570575
}
571576
}

src/recognizer/websocket/WsRecognizerUtil.js

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,12 @@ import * as NetworkWSInterface from './networkWSInterface'
33
import * as PromiseHelper from '../../util/PromiseHelper'
44
import * as InkModel from '../../model/InkModel'
55
import * as RecognizerContext from '../../model/RecognizerContext'
6-
import { responseCallback } from './iinkWsRecognizer'
6+
import {
7+
responseCallback,
8+
setTheme,
9+
setPenStyle,
10+
setPenStyleClasses
11+
} from './iinkWsRecognizer'
712

813
function buildUrl (configuration, suffixUrl) {
914
const scheme = (configuration.recognitionParams.server.scheme === 'https') ? 'wss' : 'ws'
@@ -49,6 +54,10 @@ export async function retry (func, recognizerContext, model, buildFunc, ...param
4954
logger.error('Failed retry', err)
5055
retry(func, recognizerContext, model, buildFunc, ...params)
5156
})
57+
setTheme(recognizerContext, model, recognizerContext.editor.theme)
58+
setPenStyle(recognizerContext, model, recognizerContext.editor.penStyle)
59+
setPenStyleClasses(recognizerContext, model, recognizerContext.editor.penStyleClasses)
60+
5261
return func(recognizerContext, model, buildFunc, ...params)
5362
} else {
5463
responseCallback(model, 'Unable to reconnect')

0 commit comments

Comments
 (0)