Merge pull request #6253 from Kilo-Org/fix/text-field-focus-border

This commit is contained in:
Igor Šćekić
2026-02-24 17:00:43 +01:00
committed by GitHub
5 changed files with 31 additions and 1 deletions
@@ -6,7 +6,8 @@
border-radius: 2px;
&:focus-within:not(:has([data-readonly])) {
box-shadow: 0 0 0 1px var(--border-focus);
border-color: var(--border-focus);
box-shadow: none;
}
}
+4
View File
@@ -233,6 +233,10 @@ export class KiloProvider implements vscode.WebviewViewProvider, TelemetryProper
void this.handleLoadSessions()
}
public openCloudSession(sessionId: string): void {
this.postMessage({ type: "openCloudSession", sessionId })
}
/**
* Attach to a webview that already has its own HTML set.
* Sets up message handling and connection without overriding HTML content.
+14
View File
@@ -108,6 +108,20 @@ export function activate(context: vscode.ExtensionContext) {
}),
)
// Register URI handler for session imports (vscode://kilocode.kilo-code/s/{sessionId})
context.subscriptions.push(
vscode.window.registerUriHandler({
async handleUri(uri: vscode.Uri) {
const match = uri.path.match(/^\/kilocode\/s\/([a-zA-Z0-9_-]+)$/)
if (!match) return
const sessionId = match[1]
console.log("[Kilo New] URI handler: opening cloud session:", sessionId)
await vscode.commands.executeCommand(`${KiloProvider.viewType}.focus`)
provider.openCloudSession(sessionId)
},
}),
)
// Register autocomplete provider
registerAutocompleteProvider(context, connectionService)
@@ -164,6 +164,11 @@ const AppContent: Component = () => {
console.log("[Kilo New] App: 🧭 navigate:", message.view)
setCurrentView(message.view as ViewType)
}
if (message?.type === "openCloudSession" && message.sessionId) {
console.log("[Kilo New] App: ☁️ openCloudSession:", message.sessionId)
session.selectCloudSession(message.sessionId)
setCurrentView("newTask")
}
}
window.addEventListener("message", handler)
onCleanup(() => window.removeEventListener("message", handler))
@@ -447,6 +447,11 @@ export interface CloudSessionImportFailedMessage {
error: string
}
export interface OpenCloudSessionMessage {
type: "openCloudSession"
sessionId: string
}
export interface ActionMessage {
type: "action"
action: string
@@ -759,6 +764,7 @@ export type ExtensionMessage =
| CloudSessionDataLoadedMessage
| CloudSessionImportedMessage
| CloudSessionImportFailedMessage
| OpenCloudSessionMessage
| AgentManagerBranchesMessage
| AgentManagerExternalWorktreesMessage
| AgentManagerImportResultMessage