@@ -72,9 +72,15 @@ import { slide } from 'svelte/transition';
7272
7373 $effect (() => {
7474 if (userSettings .data ?.theme !== undefined ) {
75- currentTheme = userSettings .data .theme ;
76- currentThemePrimaryColor = userSettings .data .themePrimaryColor ?? null ;
77- currentThemeAccentColor = userSettings .data .themeAccentColor ?? null ;
75+ if (currentTheme !== userSettings .data .theme ) {
76+ currentTheme = userSettings .data .theme ;
77+ }
78+ if (currentThemePrimaryColor !== (userSettings .data .themePrimaryColor ?? null )) {
79+ currentThemePrimaryColor = userSettings .data .themePrimaryColor ?? null ;
80+ }
81+ if (currentThemeAccentColor !== (userSettings .data .themeAccentColor ?? null )) {
82+ currentThemeAccentColor = userSettings .data .themeAccentColor ?? null ;
83+ }
7884 }
7985 if (searchForwardModel && ! availableModels .some ((model ) => model .id === searchForwardModel )) {
8086 searchForwardModel = availableModels [0 ]?.id ?? ' ' ;
@@ -83,23 +89,34 @@ import { slide } from 'svelte/transition';
8389 searchForwardModel = availableModels [0 ]! .id ;
8490 }
8591 if (searchForwardModel ) {
86- clientSettings .modelId = searchForwardModel ;
92+ if (clientSettings .modelId !== searchForwardModel ) {
93+ clientSettings .modelId = searchForwardModel ;
94+ }
95+ }
96+ if (searchForwardSearchMode !== clientSettings .webSearchMode ) {
97+ searchForwardSearchMode = clientSettings .webSearchMode ;
98+ }
99+ if (searchForwardSearchProvider !== clientSettings .webSearchProvider ) {
100+ searchForwardSearchProvider = clientSettings .webSearchProvider ;
87101 }
88- searchForwardSearchMode = clientSettings .webSearchMode ;
89- searchForwardSearchProvider = clientSettings .webSearchProvider ;
90102 });
91103
92104 function handleSearchForwardModelChange(event : Event ) {
93105 searchForwardModel = (event .currentTarget as HTMLSelectElement ).value ;
94- clientSettings .modelId = searchForwardModel || undefined ;
106+ const nextModelId = searchForwardModel || undefined ;
107+ if (clientSettings .modelId !== nextModelId ) {
108+ clientSettings .modelId = nextModelId ;
109+ }
95110 }
96111
97112 function handleSearchForwardModeChange(event : Event ) {
98113 searchForwardSearchMode = (event .currentTarget as HTMLSelectElement ).value as
99114 | ' off'
100115 | ' standard'
101116 | ' deep' ;
102- clientSettings .webSearchMode = searchForwardSearchMode ;
117+ if (clientSettings .webSearchMode !== searchForwardSearchMode ) {
118+ clientSettings .webSearchMode = searchForwardSearchMode ;
119+ }
103120 }
104121
105122 function handleSearchForwardProviderChange(event : Event ) {
@@ -113,7 +130,9 @@ import { slide } from 'svelte/transition';
113130 | ' brave'
114131 | ' brave-pro'
115132 | ' brave-research' ;
116- clientSettings .webSearchProvider = searchForwardSearchProvider ;
133+ if (clientSettings .webSearchProvider !== searchForwardSearchProvider ) {
134+ clientSettings .webSearchProvider = searchForwardSearchProvider ;
135+ }
117136 }
118137
119138 function copySearchForwardUrl() {
0 commit comments