Skip to content

Fix microphone, Dock, and locked-screen behavior - #937

Merged
altic-dev merged 2 commits into
mainfrom
B/1.6.10-safe-bug-fixes
Sep 2, 2026
Merged

Fix microphone, Dock, and locked-screen behavior#937
altic-dev merged 2 commits into
mainfrom
B/1.6.10-safe-bug-fixes

Conversation

@altic-dev

@altic-dev altic-dev commented Sep 2, 2026

Copy link
Copy Markdown
Owner

Description

Fix ignored microphones returning after reconnect, restore the saved Dock visibility on reopen, and prevent shortcuts while the Mac is locked.

Type of Change

  • 🐞 Bug fix
  • ✨ New feature
  • 💥 Breaking change
  • 🧹 Chore
  • 📝 Documentation update

Related Issue or Discussion

Closes #933
Closes #753
Closes #884

Testing

  • Tested on Intel Mac
  • Tested on Apple Silicon Mac
  • Tested on macOS version: 27.0
  • Ran linter locally: swiftlint --strict --config .swiftlint.yml Sources
  • Ran formatter locally: swiftformat --config .swiftformat Sources
  • Ran tests locally: focused microphone reconnect and session-lock tests

Screenshots / Video

  • No UI/visual changes; screenshots/video are not applicable.

Notes

None.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 2, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-02T21:53:27.034092Z 4366822 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actions github-actions Bot added needs PR template Pull request is missing required template content. needs screenshots Pull request needs screenshot or video evidence. labels Sep 2, 2026
@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown

The PR Policy check is blocking this PR because required template information is missing.

Please update the PR description with:

  • Description
  • Type of Change
  • Related Issue or Discussion
  • Testing
  • Screenshots / Video

Visual files detected:

  • Sources/Fluid/Persistence/SettingsStore.swift

Screenshots or video are required for UI, UX, settings, onboarding, overlay, menu bar, or visual behavior changes. If this PR has no visual changes, check the no-visual-change box in the template.

If this remains incomplete for 48 hours after opening, the PR may be closed.

@github-actions github-actions Bot removed needs PR template Pull request is missing required template content. needs screenshots Pull request needs screenshot or video evidence. labels Sep 2, 2026
@greptile-apps

greptile-apps Bot commented Sep 2, 2026

Copy link
Copy Markdown

Greptile Summary

This PR preserves microphone-removal suppression across reconnects, reapplies the saved Dock visibility policy when reopening the app, and blocks recording actions when macOS reports a locked session.

  • Stops reconciliation from discarding suppressed microphone UIDs when devices disconnect.
  • Restores the user’s Dock visibility preference before foregrounding a reopened app.
  • Adds session-lock detection to the recording-action gate and focused test coverage.

Confidence Score: 5/5

The PR appears safe to merge with no concrete changed-code defects identified.

The microphone change retains explicit recovery paths, Dock policy reapplication preserves existing window activation behavior, and the lock guard blocks new shortcut actions without disrupting required release cleanup.

Reviews (1): Last reviewed commit: "Fix dock visibility and locked-screen sh..." | Re-trigger Greptile

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 43668220e2

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +1908 to +1911
guard !Self.currentSessionIsLocked() else {
DebugLogger.shared.info("Ignoring \(label) - screen is locked", source: "GlobalHotkeyManager")
return false
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Gate every locked-session shortcut path

When recording is already active, this guard is bypassed by several shortcut paths: toggle and hold-release handling call stopRecordingIfNeeded() directly, while the cancel shortcut calls stopWithoutTranscription() directly. Consequently, pressing those shortcuts while the session is locked can still stop or cancel capture; apply the lock check before dispatching shortcut events or add it to these stop/cancel paths as well.

Useful? React with 👍 / 👎.

@altic-dev
altic-dev merged commit 5ee259f into main Sep 2, 2026
7 of 8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant