Commit graph

271 commits

Author SHA1 Message Date
Jis G Jacob
3829627dbd Atoll: clear lock screen widgets faster on unlock
- Add session-active and CGSession poll fallbacks for unlock detection
- Force weather panel alpha to 0 before orderOut for instant hide

Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
2026-05-18 09:51:50 +05:30
Jis G Jacob
b31bab2b4d Merge branch 'main' of https://github.com/Ebullioscopic/Atoll into pr-440 2026-05-14 20:32:58 +05:30
Jis G Jacob
1dffdd05f2 Atoll: freeze Spotify Canvas wallpaper when audio is paused
SIGSTOP WallpaperAgent and the aerial extensions while MusicManager
reports paused so the lockscreen Canvas holds its current frame, and
SIGCONT on resume, hide(), and willTerminate so the agent is never
left suspended.

Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
2026-05-14 08:27:31 +05:30
Jis G Jacob
8bea68d0fc Atoll: re-SIGSTOP OSDUIHelper across launchd respawns
OSDUIHelper jetsam-exits when idle and launchd spawns a fresh PID on
the next media-key press, so the one-shot SIGSTOP only suppressed the
first incarnation. SystemOSDManager now polls for the PID after
kickstart and runs a background watcher that re-SIGSTOPs every new
incarnation, with state guarded by OSAllocatedUnfairLock. Watcher is
torn down on enableSystemHUD().

Fixes the legacy OSDUIHelper duplicate-HUD path in #419.

The macOS 26 Liquid Glass HUD (loginwindow -> BezelServices ->
ControlCenter SystemBannerService) is a separate render path gated by
the com.apple.private.system-banner-client entitlement and is not
suppressible from a regular user-space app; it needs a privileged
SMAppService helper and is out of scope here.

Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
2026-05-12 22:53:13 +05:30
Jis G Jacob
43f1fb4283 Atoll: raise MemoryUsageMonitor threshold to 4 GiB in DEBUG builds
The 1 GiB resident-size threshold is reasonable for a release build,
but Swift/SwiftUI debug builds plus the AVPlayer-backed Canvas video
pipeline and SkyLight overlay windows can easily exceed it during
normal Xcode-attached development. The restart-alert dialog firing
mid-development is disruptive and not actionable.

Keep the 1 GiB safety net on release, raise to 4 GiB in DEBUG so
developers running under Xcode aren't interrupted by spurious
restart prompts. The poll interval, cooldown, and alert text all
stay the same.

Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
2026-05-12 16:10:50 +05:30
Jis G Jacob
a8d7dff322 Atoll: deliver Spotify Canvas as lockscreen wallpaper without album-art flash
Two fixes for the right-click-artwork-to-wallpaper flow on Spotify
tracks that have a Canvas video.

1. Force AllSpacesAndDisplays.Type and SystemDefault.Type to
   "individual" while the artwork is active (was: keep existing
   value via nil-coalescing). On macOS Tahoe the user-level
   wallpaper rotation honors the parent Type field, so leaving it
   as "folder" caused WallpaperAgent to advance to the next image
   in a rotating wallpaper pack instead of honoring the patched
   single-image / aerial choice. The original Type is preserved in
   the plist backup at temp/atoll_wallpaper_backup.plist and is
   restored byte-for-byte on dismiss, so rotation resumes normally
   after the artwork is dismissed. The forced override is also
   applied to nested Displays / Spaces blocks but only when Type
   was already present, to avoid mutating block shapes that
   intentionally omit it.

2. When the Canvas is expected at right-click time
   (effectiveVideoURL != nil), defer applyArtworkToPlist and
   restartWallpaperAgent entirely. Previously the flow applied raw
   album art as the static wallpaper, restarted the agent, then
   prepared and applied the aerial in a second restart, causing a
   visible flash of the raw album cover. The deferred path stores
   the blurred fallback URL in pendingFallbackStaticURL and only
   touches the plist once: with the aerial on success, or with the
   blurred album cover via applyDeferredStaticFallback if the
   aerial asset prep or aerial-plist patch fails. The in-app
   videoWindow continues to mask the desktop wallpaper during prep
   on the unlocked screen; the lock screen simply transitions from
   the existing wallpaper straight to the Canvas video.

The earlier ?? nil-coalescing in patchWallpaperEntries also covered
per-Display, per-Space.Default, and per-Space.Displays Type fields,
so those are forced too where present.

Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
2026-05-12 16:10:17 +05:30
Jis G Jacob
d1d9d75ba8 Atoll: drop lockscreen music player below widgets in canvas fallback
The Spotify Canvas fallback layout previously centered the panel+artwork
group on screenFrame.midY, so the enlarged artwork tile could push up
into the row of circular widgets (battery, audio, AQI, weather).
Clamp maxCenterY against the bottom edge of both
LockScreenWeatherPanelManager.latestFrame and
LockScreenTimerWidgetPanelManager.latestFrame, with a 20pt clearance,
and guard against the clamp inverting via max(maxCenterY, minCenterY).

The panel reflows through the existing
.atollLockScreenPanelFrameDidChange notification, so the artwork
overlay window follows the new panel position automatically.

Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
2026-05-12 16:08:25 +05:30
delli
c8a6c2b1fa new version 2026-05-08 19:50:26 +02:00
delli
f04de8f54a pleasseeee 2026-04-29 18:47:38 +02:00
delli
531340ae92 pleasseeeee 2026-04-29 18:47:06 +02:00
Jis G Jacob
3afa968236 Atoll: Add MusicKit animated artwork fetching for Apple Music
Uses MusicKit MusicCatalogSearchRequest to find the current track, then
fetches editorialVideo.motionTallVideo3x4 HLS URL via MusicDataRequest.
The animated artwork URL is pre-fetched on track change and cached per
song for instant availability.

Adds NSAppleMusicUsageDescription to Info.plist for MusicKit
authorization.

Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
2026-04-29 18:40:06 +02:00
Jis G Jacob
5bd84270aa Atoll: fullscreen album artwork as lockscreen wallpaper
Right-click on the album art in the lock screen music panel to set it
as the desktop wallpaper. Right-click again or click anywhere on the
background to restore the original wallpaper. Wallpaper also restores
automatically on track change or screen unlock.

Uses direct plist manipulation of the wallpaper config to avoid leaving
traces in the wallpaper picker. Album art PNG is pre-cached in the
background on track change for instant application.

Adds video artwork URL fetching from iTunes catalog for Apple Music
tracks (musicVideo entity search).

Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
2026-04-29 18:39:17 +02:00
Hariharan Mudaliar
cdf0785e29
Merge origin/main into bug/terminal-bugs 2026-04-27 10:35:39 +05:30
Soham Sharma
f39785f920 Fix terminal notch lifecycle so open/close, hover, outside-click, focus, and opacity stay consistent.
fix: stabilize terminal notch open/close, focus, and opacity

Improve terminal tab behavior in notch by preventing hover re-open races, keeping outside-click close logic accurate, and reliably restoring terminal opacity/translucency after remounts. Also ensure terminal receives focus on open and resigns cleanly on close so keyboard input and close/open cycles behave consistently.
2026-04-24 16:31:45 +08:00
Soham Sharma
9c9f68399e Terminal opacity fix 2026-04-24 09:14:41 +08:00
Jis G Jacob
78bf018fe2 Atoll: Fix LS Music Widget Overlapping Timers
- When lyrics was enabled the music widget would overlap the timers widget causing overlapped widgets which looks awful

Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
2026-04-23 18:15:49 +02:00
delli
ffd72456d9 other small improvements 2026-04-22 17:25:14 +02:00
delli
f7fbb81d36 small improvements 2026-04-21 23:54:51 +02:00
Soham Sharma
026f55dea7 Update TerminalManager.swift 2026-04-21 09:31:26 +08:00
Soham Sharma
ebaf1b0c2d Update TerminalManager.swift 2026-04-20 14:14:06 +08:00
Hariharan Mudaliar
d4cb3ef2cf
Merge pull request #418 from AkhilKonduru1/main
add groq
2026-04-19 20:34:18 +05:30
copilot-swe-agent[bot]
bb8f157d47
Deduplicate OpenAI and Groq response parsing switch cases
Agent-Logs-Url: https://github.com/AkhilKonduru1/Atoll/sessions/d40c666d-f589-48ca-9539-1fd33c799962

Co-authored-by: AkhilKonduru1 <210101196+AkhilKonduru1@users.noreply.github.com>
2026-04-15 03:16:05 +00:00
copilot-swe-agent[bot]
5c2ab19614
Refine Groq model selection fallback and provider card layout constants
Agent-Logs-Url: https://github.com/AkhilKonduru1/Atoll/sessions/d40c666d-f589-48ca-9539-1fd33c799962

Co-authored-by: AkhilKonduru1 <210101196+AkhilKonduru1@users.noreply.github.com>
2026-04-15 03:15:36 +00:00
copilot-swe-agent[bot]
e8b8ea5602
Address review feedback for Groq provider changes
Agent-Logs-Url: https://github.com/AkhilKonduru1/Atoll/sessions/d40c666d-f589-48ca-9539-1fd33c799962

Co-authored-by: AkhilKonduru1 <210101196+AkhilKonduru1@users.noreply.github.com>
2026-04-15 03:14:55 +00:00
copilot-swe-agent[bot]
01c4284270
Add Groq provider to screen assistant model selection and API routing
Agent-Logs-Url: https://github.com/AkhilKonduru1/Atoll/sessions/d40c666d-f589-48ca-9539-1fd33c799962

Co-authored-by: AkhilKonduru1 <210101196+AkhilKonduru1@users.noreply.github.com>
2026-04-15 03:14:11 +00:00
Soham Sharma
517de364f7 Added Amazon Music Support 2026-04-13 18:52:56 +08:00
NekomiRyan
edd8ecc3bb
feat: add camera selector for mirror mode and fix hover glitch 2026-04-13 13:00:00 +05:30
Hariharan Mudaliar
29b80226b4
Update references to SwiftTerm and rtaudio 2026-04-08 13:46:38 +05:30
Hariharan Mudaliar
aee19c90d6
BugFix: remove sharp corners 2026-03-29 16:06:23 +05:30
Hariharan Mudaliar
79f41cb69e
Update phases 2026-03-29 15:58:38 +05:30
Hariharan Mudaliar
bbde9fa73f
Update default icon 2026-03-28 16:01:45 +05:30
Hariharan Mudaliar
794e05c7d6
Update: Popover for Localsend 2026-03-28 15:53:39 +05:30
Hariharan Mudaliar
62f96385d8
Merge remote-tracking branch 'origin/main' into pr-360 2026-03-28 14:31:28 +05:30
Hariharan Mudaliar
061564eb8b
Update LockScreenMusicPanel for smooth vertical expansion 2026-03-28 12:31:15 +05:30
Hariharan Mudaliar
73d076636f
Merge remote-tracking branch 'origin/main' into pr-361
# Conflicts:
#	DynamicIsland/components/Settings/SettingsView.swift
2026-03-28 11:49:27 +05:30
Amir Zarrinkafsh
5e1e8f613b
feat(media): include airplay for apple music on lock screen widget 2026-03-22 21:26:27 +11:00
Amir Zarrinkafsh
75bb8ce9be
feat(media): add airplay device selector with volume control for apple music
Adds an AirPlay device picker popover to the music player controls, allowing users to select and control volume for individual AirPlay devices (HomePod, Apple TV, AirPort Express, etc.) when Apple Music is the active player.
2026-03-22 17:27:00 +11:00
AntonP29
f345ddaff8 Add LocalSend support with service integration and UI updates 2026-03-21 21:30:41 -07:00
Amir Zarrinkafsh
d39c61c475
refactor(calendar): group calendars by accounts in settings
Calendars in the "Select Calendars" settings section are now grouped by their source account with color indicators, making it possible to distinguish calendars that share the same name across different accounts.

Each account group header includes a toggle to select or deselect all calendars in that group.
2026-03-22 13:19:20 +11:00
Hariharan Mudaliar
28320e4cb8
HotFix: Remove Unnecessary Mach service for Stats 2026-03-20 20:24:08 +05:30
Hariharan Mudaliar
bf4939c326
Modify stuff to work, fuck copilot PR 2026-03-19 22:38:52 +05:30
Hariharan Mudaliar
9396a5a8ff
Merge branch 'main' of https://github.com/Ebullioscopic/Atoll into feature/lunar-support
conflict resolution needed
2026-03-19 22:26:07 +05:30
Hariharan Mudaliar
18766e7885
Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-03-19 21:42:02 +05:30
AkhilKonduru1
cafd0290d4
Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-03-18 12:07:53 -05:00
AkhilKonduru1
a85cc65a03 fixed more 2026-03-18 17:03:50 +00:00
AkhilKonduru1
38f45e9386 Add reset context button to Screen Assistant 2026-03-17 17:49:29 +00:00
Hariharan Mudaliar
bfb36cb9d1
RPC work 2026-03-15 23:59:13 +05:30
Hariharan Mudaliar
68cb3fd2de
Update Volume listener for ddc controls 2026-03-15 12:45:10 +05:30
Hariharan Mudaliar
8abd21de31
Update ddc control toggle 2026-03-15 12:14:32 +05:30
Hariharan Mudaliar
9c044237c1
Update HUDs for external display parity 2026-03-13 21:40:42 +05:30