Skip to content

Commit bff0a60

Browse files
committed
Fix run repeatedly being called
1 parent c0251f5 commit bff0a60

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/latest/scripts/ui/VyTerminal.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ const VyTerminal = forwardRef(function VyTerminal({ onRunningGroupChanged, onGro
2222
const wrapperRef = useRef(null);
2323
const elementData = useContext(ElementDataContext)!;
2424
const runner = useMemo(() => new VyRunner(splashes.trim().split("\n"), elementData!.version), [elementData]);
25+
const hasInitialized = useRef(false);
2526

2627
const runningGroupChangedCallback = useCallback((e: VyRunnerEvents["runningGroupChanged"]) => {
2728
onRunningGroupChanged(e.detail.group);
@@ -51,7 +52,10 @@ const VyTerminal = forwardRef(function VyTerminal({ onRunningGroupChanged, onGro
5152
useEffect(() => {
5253
runner.addEventListener("runningGroupChanged", runningGroupChangedCallback);
5354
runner.addEventListener("groupSucceeded", groupSucceededCallback);
54-
runner.addEventListener("ready", () => onReady?.() as void, { once: true });
55+
if (!hasInitialized.current) {
56+
hasInitialized.current = true;
57+
runner.addEventListener("ready", () => onReady?.() as void, { once: true });
58+
}
5559
return () => {
5660
runner.removeEventListener("runningGroupChanged", runningGroupChangedCallback);
5761
};

0 commit comments

Comments
 (0)