Conversation
…ositions across launches
…ted window per macOS HIG
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Refactors the Integrations area to follow native macOS / Apple HIG: Settings is for preferences only; data viewers and live operational state get their own window.
Before: Settings > Integrations bundled three things into one fixed-size 720×500 pane via a nested segmented Picker:
This caused layout jitter on refresh (loading state shrank the content area inside the fixed-size Settings window) and violated HIG ("avoid using a Settings window to display information that's accessible elsewhere").
After:
Window > Integrations Activity— resizable NSWindow with NavigationSplitView sidebar (Activity Log / Connected Clients), unified toolbar, native.searchable, filter Menu, refresh, export. Frame autosaved across launches.Formwith sections: Integrations · Server Configuration · Authentication · Network · two buttons (Connect a Client… / View Activity…). No more nested picker, no more sub-tabs.Listwith rich rows + status indicators + relative time + category badge + outcome badge. Refresh button shows a small spinner inline; the list stays visible during refresh (no jitter, no content flash).Architecture / HIG notes
IntegrationsActivityWindowFactoryfollows the same pattern asWelcomeWindowFactory/ConnectionFormWindowFactoryand usesapplyAutosaveName(_:)from PR fix(windows): persist welcome, connection form, feedback window positions #985 for native frame autosave.NavigationSplitViewwith sidebar is the modern macOS pattern (Console.app, Mail, Notes). Selection-driven viaList(selection:)with taggedLabels..toolbar { }; SwiftUI bridges items to the window'sNSToolbarautomatically. Toolbar items swap on sidebar selection..searchable(text:placement: .toolbar)provides the native macOS search field in the toolbar..navigationTitle/.navigationSubtitleset window title + subtitle natively; subtitle shows "Activity is retained for 90 days" or live "N connected" count.MCPAuditLogViewdeleted; helpers (AuditEntryrow formatting, time-range enum) re-homed into the new pane file asActivityLogRowandActivityTimeRange.Test plan
Window > Integrations Activitymenu item. Both routes focus the existing window if already open.trayicon), no matching filter (line.3.horizontal.decrease.circleicon), no search match (system search empty state).IntegrationsActivityWindow).