дзеркало
https://github.com/l0ng-ai/openidea.git
синхронізовано 2026-11-09 19:25:54 +02:00
feat(terminal): paste clipboard images into remote SSH terminals (#699)
In a remote-project window, pasting a clipboard image into the terminal uploads it to the SSH host that owns the terminal (new term_store_image command over the existing remote RPC) and inserts the POSIX-quoted path after a successful upload, without a newline. Images go to a private per-user terminal-images directory (0700/0600, UUID names, no-follow descriptor-relative writes) and expire after 24 hours on the next upload. Failures notify and insert nothing; text paste and local terminals are unchanged. Images over 20 MiB are rejected in both the frontend and the host. Co-authored-by: dvictor357 <[email protected]>
Цей коміт міститься в:
1 джерело
0d0de01831
коміт
88619505c3
15 files changed
+737
-13
No files matched your search
@@ -298,6 +298,7 @@ pub fn builder() -> tauri_specta::Builder<tauri::Wry> {
|
||||
vcs::vcs_changelists_save,
|
||||
vcs::vcs_write_patch,
|
||||
term::term_spawn,
|
||||
term::term_store_image,
|
||||
term::term_write,
|
||||
term::term_resize,
|
||||
term::term_kill,
|
||||
|
||||
@@ -24,6 +24,17 @@ pub async fn term_spawn(
|
||||
)
|
||||
}
|
||||
|
||||
#[tauri::command]
|
||||
#[specta::specta]
|
||||
pub async fn term_store_image(
|
||||
state: State<'_, AppState>,
|
||||
id: TerminalId,
|
||||
data: Vec<u8>,
|
||||
mime: String,
|
||||
) -> IdeResult<String> {
|
||||
ide_host::ops::term::store_image(&state.host, id, data, mime).await
|
||||
}
|
||||
|
||||
#[tauri::command]
|
||||
#[specta::specta]
|
||||
pub fn term_write(state: State<'_, AppState>, id: TerminalId, data: String) -> IdeResult<()> {
|
||||
|
||||
Reference in new issue
Заблокувати користувача