feat(remote-dev): Remote Development in the project popup, opened in a new or this window

- The title bar project popup lists Remote Development… next to Open… and Clone Repository….
- Opening a remote project follows "Open project in" (new window / this window / ask) when this window already has a project, and confirms leaving the current one first.
- A remote project already open in another window focuses that window.
- A new window connects to the host itself and shows the connection progress on its welcome screen.
- Recent remote projects get Open in New Window.
Цей коміт міститься в:
l0ng-ai committed 2026-10-28 11:29:13 +08:00
1 джерело 45c7f43c02
коміт 0222c84ace
15 files changed
+210 -62

No files matched your search

+10
Переглянути файл
@@ -47,6 +47,16 @@ impl Connections {
self.0.lock().get(window).cloned()
}
/// The window connected to folder `root` on the host of SSH configuration `ssh_config`.
pub fn window_of(&self, ssh_config: &str, root: &str) -> Option<String> {
let root = root.trim_end_matches('/');
self.0
.lock()
.iter()
.find(|(_, c)| c.ssh_config == ssh_config && c.root.trim_end_matches('/') == root)
.map(|(label, _)| label.clone())
}
pub fn disconnect(&self, window: &str) {
if let Some(c) = self.0.lock().remove(window) {
c.peer.kill();