Remove lock-screen support#6

open1
main
feat/remove-lock-screen
opened8d agobyKKainoa Newton
View on GitHubTwo-way sync enabledPR last imported 8d ago

Removes all lock-screen functionality. The notch is now a normal window and does not appear or do anything on the lock screen.

  • Deleted showOnLockScreen (Defaults key, settings toggle, localized string); the stale value is removed from UserDefaults on launch.
  • Deleted SkyLight/CGSSpace code (BoringNotchSkyLightWindow → plain BoringNotchWindow, CGSSpace, NotchSpaceManager) and the SkyLightWindow package. SkyLight was only used for the lock screen.
  • Removed the lock/unlock distributed-notification observers and the close/recreate-windows-on-lock logic.
  • applyOSDSources no longer checks for an empty notch space (only relevant to lock cleanup).
  • Docs: removed VISION item 3 and lock-screen order-of-work entries, noted #1346/#1498 are irrelevant, added a "no lock-screen support" Not goal. Item numbers left unchanged so references stay valid.
  • ContentView untouched, to avoid conflicts with #1.

Verified: scripts/dev.sh build succeeds. Lock/unlock behavior is not verifiable by build.

🤖 Generated with Claude Code


Summary by cubic

Removes all lock-screen support so the notch is a normal window and never appears on the lock screen.

Changes

  • Deletes the showOnLockScreen setting (Defaults key, settings toggle, and localized strings); the stale value is removed from UserDefaults on launch.
  • Removes the SkyLight/CGSSpace machinery: BoringNotchSkyLightWindow is now plain BoringNotchWindow, and CGSSpace, NotchSpaceManager and the SkyLightWindow package are gone.
  • Removes the lock/unlock distributed-notification observers and the related window close/recreate logic.
  • applyOSDSources no longer checks for an empty notch space.
  • Updates VISION, AGENTS and sync docs to drop lock-screen references and adds a "no lock-screen support" Not goal.

Written for commit f618f175875e39a744f7461d43953f7b9cc5583e. Summary will update on new commits.

View guided diff Turn on auto-fix

Checks

9 successful · 1 skipped
All checks passed
f618f17

Added 1 commit

Synced from GitHub

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: 745769b3-fff0-489a-adaa-ba74760df18d

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Ccubic-dev-aiBotreviewed · 3 inline threads8d ago
Synced from GitHub

3 issues found across 15 files

Prompt for AI agents (unresolved issues)
text
1
2Check if these issues are valid — if so, understand the root cause of each and fix them. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. If appropriate, use sub-agents to investigate and fix each issue separately.
3
4
5<file name="VISION.md">
6
7<violation number="1" location="VISION.md:76">
8P3: Item 1 still refers to 'items 2 and 3', but item 3 (lock screen) was removed in this PR. Change that reference to 'item 2' so it doesn't point at a missing item.</violation>
9</file>
10
11<file name="AGENTS.md">
12
13<violation number="1" location="AGENTS.md:75">
14P3: The new lock-screen requirement is no longer covered by the runtime gaps or test checklist. Keep lock-screen absence in both, since a build cannot verify that the notch stays absent across lock and unlock.</violation>
15</file>
16
17<file name="boringNotch/managers/NotchWindowManager.swift">
18
19<violation number="1" location="boringNotch/managers/NotchWindowManager.swift:129">
20P2: `cleanupWindows` can now leave OSD replacement active after the last notch window is gone because `applyOSDSources()` no longer checks window presence. During display changes or the lock screen, this can consume media/brightness events with no notch to render them; restore a window-presence guard backed by `NotchWindowManager` and stop the integrations when no windows remain.</violation>
21</file>

Reply with feedback, questions, or to request a fix.

View guided diff | Turn on auto-fix | Re-trigger cubic

……@@ -188,10 +126,7 @@ final class NotchWindowManager {
192- window.close()
193- NotchSpaceManager.shared.notchSpace.windows.remove(window)
194- }
129+ contexts[uuid]?.window?.close()
Ccubic-dev-aiBoton line 1298d ago

P2: cleanupWindows can now leave OSD replacement active after the last notch window is gone because applyOSDSources() no longer checks window presence. During display changes or the lock screen, this can consume media/brightness events with no notch to render them; restore a window-presence guard backed by NotchWindowManager and stop the integrations when no windows remain.

Prompt for AI agents
text
1Check if this issue is valid — if so, understand the root cause and fix it. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. At boringNotch/managers/NotchWindowManager.swift, line 129:
2
3<comment>`cleanupWindows` can now leave OSD replacement active after the last notch window is gone because `applyOSDSources()` no longer checks window presence. During display changes or the lock screen, this can consume media/brightness events with no notch to render them; restore a window-presence guard backed by `NotchWindowManager` and stop the integrations when no windows remain.</comment>
4
5<file context>
6@@ -188,10 +126,7 @@ final class NotchWindowManager {
7- window.close()
8- NotchSpaceManager.shared.notchSpace.windows.remove(window)
9- }
10+ contexts[uuid]?.window?.close()
11 contexts[uuid]?.dragDetector?.stopMonitoring()
12 contexts.removeValue(forKey: uuid)
13</file context>
VISION.mdline 76Open thread
……@@ -84,13 +73,12 @@ We deleted upstream's release pipeline in the cleanup commit because it depended
89-7. Lock-screen settings tab (item 3, full), once Raycast content exists.
90-8. Per-app volume (item 7).
91-9. Release workflow (item 9), before the first public build.
76+5. Raycast research spike, then the bridge (item 6).
Ccubic-dev-aiBoton line 768d ago

P3: Item 1 still refers to 'items 2 and 3', but item 3 (lock screen) was removed in this PR. Change that reference to 'item 2' so it doesn't point at a missing item.

Prompt for AI agents
text
1Check if this issue is valid — if so, understand the root cause and fix it. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. At VISION.md, line 76:
2
3<comment>Item 1 still refers to 'items 2 and 3', but item 3 (lock screen) was removed in this PR. Change that reference to 'item 2' so it doesn't point at a missing item.</comment>
4
5<file context>
6@@ -84,13 +73,12 @@ We deleted upstream's release pipeline in the cleanup commit because it depended
7-7. Lock-screen settings tab (item 3, full), once Raycast content exists.
8-8. Per-app volume (item 7).
9-9. Release workflow (item 9), before the first public build.
10+5. Raycast research spike, then the bridge (item 6).
11+6. Per-app volume (item 7).
12+7. Release workflow (item 9), before the first public build.
13</file context>
AGENTS.mdline 75Open thread
……@@ -57,19 +57,23 @@ scripts/dev.sh kill # stop this checkout's copy
7272
73+## Not goals
74+
75+- No lock-screen support. The notch must not appear or do anything on the lock screen.
Ccubic-dev-aiBoton line 758d ago

P3: The new lock-screen requirement is no longer covered by the runtime gaps or test checklist. Keep lock-screen absence in both, since a build cannot verify that the notch stays absent across lock and unlock.

Prompt for AI agents
text
1Check if this issue is valid — if so, understand the root cause and fix it. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. At AGENTS.md, line 75:
2
3<comment>The new lock-screen requirement is no longer covered by the runtime gaps or test checklist. Keep lock-screen absence in both, since a build cannot verify that the notch stays absent across lock and unlock.</comment>
4
5<file context>
6@@ -57,19 +57,23 @@ scripts/dev.sh kill # stop this checkout's copy
7
8+## Not goals
9+
10+- No lock-screen support. The notch must not appear or do anything on the lock screen.
11+
12 ## Licensing
13</file context>