Skip to content

Commit f27b93e

Browse files
committed
Fix State Machine Updates
1 parent fbc91ba commit f27b93e

2 files changed

Lines changed: 6 additions & 5 deletions

File tree

client/src/services/state-machine.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ import { LJStateMachine } from "../types/fsm";
88
*/
99
export async function updateStateMachine(document: vscode.TextDocument) {
1010
const sm: LJStateMachine = await extension.client?.sendRequest("liquidjava/fsm", { uri: document.uri.toString() });
11-
extension.webview?.sendMessage({ type: "fsm", sm });
11+
12+
// dont update diagram if it hasnt changed to a new one
13+
if (!sm || JSON.stringify(sm) === JSON.stringify(extension.stateMachine)) return;
1214
extension.stateMachine = sm;
15+
extension.webview?.sendMessage({ type: "fsm", sm });
1316
}

client/src/webview/script.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -227,10 +227,8 @@ export function getScript(vscode: any, document: any, window: any) {
227227
if (!showAllDiagnostics && selectedTab === 'diagnostics') updateView();
228228
break;
229229
case 'fsm':
230-
if (msg.sm && msg.sm !== stateMachine) {
231-
stateMachine = msg.sm as LJStateMachine;
232-
if (selectedTab === 'fsm') updateView();
233-
}
230+
stateMachine = msg.sm as LJStateMachine;
231+
if (selectedTab === 'fsm') updateView();
234232
break;
235233
case 'context':
236234
context = msg.context as LJContext;

0 commit comments

Comments
 (0)