Skip to content

feat: add stubbed file sync UI#116

Merged
ethanndickson merged 3 commits into
mainfrom
ethan/stubbed-fs-ui
Mar 28, 2025
Merged

feat: add stubbed file sync UI#116
ethanndickson merged 3 commits into
mainfrom
ethan/stubbed-fs-ui

Conversation

@ethanndickson
Copy link
Copy Markdown
Member

@ethanndickson ethanndickson commented Mar 20, 2025

Closes #66
Relates to #63

The UI differs a fair bit from the wireframes & figma designs in the interest of being able to use the stock SwiftUI Table view. The biggest difference is that a modal is used to insert new file syncs, as opposed to creating them inline. This was done as it's a lot harder to do that within a SwiftUI table. This design is also consistent with tables used in Apple's own settings pages, and the HTTP header table in app settings.

Screen.Recording.2025-03-20.at.1.55.34.pm.mov

The UI is mostly non-functional, it still needs to be wired up over gRPC, including conversions from Mutagen data types.
As a result, the file sync button on the menu will not appear unless the file sync feature flag is enabled in settings.

Right now, the workspace dropdown menu is populated from the online agents (any row with a coloured dot on the menubar menu)

There's no tests for this since ViewInspector still does not support Tables.

@ethanndickson ethanndickson marked this pull request as ready for review March 20, 2025 02:59
@deansheather
Copy link
Copy Markdown
Member

How come is there a dot on the menu to open the file sync list?

@ethanndickson
Copy link
Copy Markdown
Member Author

image
It's wired up to the daemon status. no active sessions == mutagen daemon isn't running == gray dot.

Comment thread Coder-Desktop/Coder-Desktop/State.swift Outdated
Comment thread Coder-Desktop/Coder-Desktop/Views/FileSync/FileSyncConfig.swift Outdated
Comment thread Coder-Desktop/Coder-Desktop/Views/FileSync/FileSyncConfig.swift Outdated
Comment thread Coder-Desktop/Coder-Desktop/Views/FileSync/FileSyncConfig.swift Outdated
Comment thread Coder-Desktop/Coder-Desktop/Views/FileSync/FileSyncConfig.swift Outdated
@deansheather
Copy link
Copy Markdown
Member

Oh... it's kinda weird to have a green dot as if it's a workspace. I'll ping Rachel about the design I guess

@ethanndickson ethanndickson linked an issue Mar 20, 2025 that may be closed by this pull request
@ethanndickson ethanndickson self-assigned this Mar 24, 2025
@ethanndickson ethanndickson force-pushed the ethan/stubbed-fs-ui branch 2 times, most recently from 5fca50f to fceb8a5 Compare March 24, 2025 09:47
@ethanndickson ethanndickson changed the base branch from ethan/conditionally-start-daemon to graphite-base/116 March 24, 2025 09:49
@graphite-app graphite-app Bot changed the base branch from graphite-base/116 to main March 24, 2025 09:50
@ethanndickson ethanndickson force-pushed the ethan/stubbed-fs-ui branch 4 times, most recently from 227d056 to 93a8e1c Compare March 24, 2025 13:12
}
}
)) {
Button("OK", role: .cancel) {}.keyboardShortcut(.defaultAction)
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I discovered this was unnecessary and removed it everywhere. An OK button always appears on alerts, and it always gets selected by pressing enter.

@ethanndickson ethanndickson force-pushed the ethan/stubbed-fs-ui branch 2 times, most recently from 9f92961 to 82cc4ba Compare March 25, 2025 02:10
Comment thread Coder-Desktop/Coder-Desktop/Views/FileSync/FileSyncConfig.swift Outdated
Comment thread Coder-Desktop/Coder-Desktop/Views/FileSync/FileSyncSessionModal.swift Outdated
Comment thread Coder-Desktop/Coder-Desktop/Views/LoginForm.swift Outdated
Copy link
Copy Markdown
Member Author

ethanndickson commented Mar 28, 2025

Merge activity

  • Mar 27, 10:47 PM EDT: A user started a stack merge that includes this pull request via Graphite.
  • Mar 27, 10:47 PM EDT: A user merged this pull request with Graphite.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add local folder picker to file sync GUI

2 participants