Skip to content

Commit 145819f

Browse files
authored
Merge pull request #931 from RooVetGit/fix_model_loading_flicker
Fix issue where Ollama/LMStudio URLs would flicker back to previous while entering
2 parents 4aa43d0 + febf434 commit 145819f

File tree

2 files changed

+20
-6
lines changed

2 files changed

+20
-6
lines changed

.changeset/funny-bananas-sneeze.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"roo-cline": patch
3+
---
4+
5+
Fix issue where Ollama/LMStudio URLs would flicker back to previous while entering

webview-ui/src/components/settings/ApiOptions.tsx

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -88,12 +88,21 @@ const ApiOptions = ({ apiErrorMessage, modelIdErrorMessage, fromWelcomeView }: A
8888
)
8989
const handleMessage = useCallback((event: MessageEvent) => {
9090
const message: ExtensionMessage = event.data
91-
if (message.type === "ollamaModels" && message.ollamaModels) {
92-
setOllamaModels(message.ollamaModels)
93-
} else if (message.type === "lmStudioModels" && message.lmStudioModels) {
94-
setLmStudioModels(message.lmStudioModels)
95-
} else if (message.type === "vsCodeLmModels" && message.vsCodeLmModels) {
96-
setVsCodeLmModels(message.vsCodeLmModels)
91+
if (message.type === "ollamaModels" && Array.isArray(message.ollamaModels)) {
92+
const newModels = message.ollamaModels
93+
setOllamaModels((prevModels) => {
94+
return JSON.stringify(prevModels) === JSON.stringify(newModels) ? prevModels : newModels
95+
})
96+
} else if (message.type === "lmStudioModels" && Array.isArray(message.lmStudioModels)) {
97+
const newModels = message.lmStudioModels
98+
setLmStudioModels((prevModels) => {
99+
return JSON.stringify(prevModels) === JSON.stringify(newModels) ? prevModels : newModels
100+
})
101+
} else if (message.type === "vsCodeLmModels" && Array.isArray(message.vsCodeLmModels)) {
102+
const newModels = message.vsCodeLmModels
103+
setVsCodeLmModels((prevModels) => {
104+
return JSON.stringify(prevModels) === JSON.stringify(newModels) ? prevModels : newModels
105+
})
97106
}
98107
}, [])
99108
useEvent("message", handleMessage)

0 commit comments

Comments
 (0)