@@ -129,7 +129,43 @@ export async function activate(context: vscode.ExtensionContext) {
129129 // Initialize Roo Code Cloud service.
130130 const postStateListener = ( ) => ClineProvider . getVisibleInstance ( ) ?. postStateToWebview ( )
131131 authStateChangedHandler = postStateListener
132- settingsUpdatedHandler = postStateListener
132+
133+ // Enhanced settings updated handler that also updates ExtensionBridgeService
134+ settingsUpdatedHandler = async ( ) => {
135+ // Update ExtensionBridgeService when settings change
136+ const userInfo = CloudService . instance . getUserInfo ( )
137+ if ( userInfo && CloudService . instance . cloudAPI ) {
138+ try {
139+ const config = await CloudService . instance . cloudAPI . bridgeConfig ( )
140+
141+ const isCloudAgent =
142+ typeof process . env . ROO_CODE_CLOUD_TOKEN === "string" && process . env . ROO_CODE_CLOUD_TOKEN . length > 0
143+
144+ const remoteControlEnabled = isCloudAgent
145+ ? true
146+ : ( CloudService . instance . getUserSettings ( ) ?. settings ?. extensionBridgeEnabled ?? false )
147+
148+ cloudLogger ( `[CloudService] Settings updated - remoteControlEnabled = ${ remoteControlEnabled } ` )
149+
150+ ExtensionBridgeService . handleRemoteControlState (
151+ userInfo ,
152+ remoteControlEnabled ,
153+ {
154+ ...config ,
155+ provider,
156+ sessionId : vscode . env . sessionId ,
157+ } ,
158+ cloudLogger ,
159+ )
160+ } catch ( error ) {
161+ cloudLogger (
162+ `[CloudService] Failed to update ExtensionBridgeService on settings change: ${ error instanceof Error ? error . message : String ( error ) } ` ,
163+ )
164+ }
165+ }
166+
167+ postStateListener ( )
168+ }
133169
134170 userInfoHandler = async ( { userInfo } : { userInfo : CloudUserInfo } ) => {
135171 postStateListener ( )
@@ -147,9 +183,13 @@ export async function activate(context: vscode.ExtensionContext) {
147183
148184 cloudLogger ( `[CloudService] isCloudAgent = ${ isCloudAgent } , socketBridgeUrl = ${ config . socketBridgeUrl } ` )
149185
186+ const remoteControlEnabled = isCloudAgent
187+ ? true
188+ : ( CloudService . instance . getUserSettings ( ) ?. settings ?. extensionBridgeEnabled ?? false )
189+
150190 ExtensionBridgeService . handleRemoteControlState (
151191 userInfo ,
152- isCloudAgent ? true : contextProxy . getValue ( " remoteControlEnabled" ) ,
192+ remoteControlEnabled ,
153193 {
154194 ...config ,
155195 provider,
0 commit comments