Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add stubbed file sync UI #116

Merged
merged 3 commits into from
Mar 28, 2025
Merged

feat: add stubbed file sync UI #116

merged 3 commits into from
Mar 28, 2025

Conversation

ethanndickson
Copy link
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
Member

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

@ethanndickson
Copy link
Member Author

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

@deansheather
Copy link
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
@@ -48,10 +48,8 @@ struct LoginForm: View {
loginError = nil
}
}
)) {
Button("OK", role: .cancel) {}.keyboardShortcut(.defaultAction)
Copy link
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
Copy link
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.

@ethanndickson ethanndickson merged commit f0cf155 into main Mar 28, 2025
4 checks passed
@ethanndickson ethanndickson deleted the ethan/stubbed-fs-ui branch March 28, 2025 02:47
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