Skip to content

[Feature]: Show drop upload progress only in the workspace the files are going to #24151

Open

Description

@mmarabel

Problem or use case

When I drop a file onto a terminal in a workspace that runs on a paired remote server, Orca shows "Uploading 1 file to runtime…" in the bottom-right corner until the upload finishes. SSH workspaces show the same thing as "Uploading 1 file to remote…". That notice is app-wide. It stays on screen after I switch to another workspace, and it doesn't say which workspace or file it belongs to.

Large files take minutes. A 230 MB screen recording kept the spinner up for more than two and a half minutes, following me through every workspace I opened. Dropping a file into a second workspace stacks a second identical spinner on the first. From any one workspace I can't tell whether a spinner is waiting on something here or on an upload that belongs somewhere else.

Where it comes from (main at fa3710d): uploadRuntimeDropPaths and uploadRemoteDropPaths in src/renderer/src/components/terminal-pane/terminal-native-file-drop.ts (lines 181 and 253) open a global toast.loading and dismiss it only after the upload and the path paste finish. Nothing ties the toast to the workspace the files are going to.

Proposed solution

  • Show upload progress only while the workspace it uploads into is the active one. Switching away hides it, and switching back brings it back with the current progress. The upload keeps running either way, and the path is still typed into the terminal the file was dropped on.
  • Keep failures visible from every workspace. When they belong to a workspace you are not looking at, say which one.
  • If an upload finishes while you are elsewhere, don't replay the "done" notice when you come back.

Alternatives or additional context

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions