Skip to content

✨ Ability to use window corner radius in preview + SkyLightToolBelt & SkyLightSymbolLoader#906

Merged
SenpaiHunters merged 9 commits into
developfrom
skylight-window-corner-radius
Nov 27, 2025
Merged

✨ Ability to use window corner radius in preview + SkyLightToolBelt & SkyLightSymbolLoader#906
SenpaiHunters merged 9 commits into
developfrom
skylight-window-corner-radius

Conversation

@mrkai77
Copy link
Copy Markdown
Owner

@mrkai77 mrkai77 commented Nov 27, 2025

  • Consolidates all SkyLight interactions into a new SkyLightToolBelt file. Several SkyLight functions were previously scattered across the codebase, so they’ve been centralized with wrapper functions for cleaner and easier usage.
  • Adds SkyLightSymbolLoader to dynamically load private SkyLight APIs, since some symbols are only available on newer macOS versions. Other private API definitions have also been moved into PrivateApis.swift.
  • Adds a new feature for the preview window to use the selected window’s actual corner radius instead of a user-defined value.

@mrkai77 mrkai77 changed the title Skylight window corner radius ✨ Ability to use window corner radius in preview + SkyLightToolBelt & SkyLightSymbolLoader Nov 27, 2025
@mrkai77 mrkai77 linked an issue Nov 27, 2025 that may be closed by this pull request
4 tasks
@mrkai77 mrkai77 self-assigned this Nov 27, 2025
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR refactors and enhances window corner radius handling in preview windows by consolidating SkyLight API interactions and adding dynamic loading capabilities for private APIs.

  • Centralizes SkyLight API interactions into a dedicated SkyLightToolBelt and adds SkyLightSymbolLoader for runtime symbol resolution
  • Enables preview windows to use the actual corner radius of selected windows
  • Refactors logging to use description instead of debugDescription where appropriate

Reviewed changes

Copilot reviewed 20 out of 20 changed files in this pull request and generated no comments.

Show a summary per file
File Description
Loop/Stashing/StashManager.swift Updated logging calls to use description instead of debugDescription for Window objects
Loop/Localizable.xcstrings Added localization strings for corner radius configuration options and bumped version to 1.1
Loop/Extensions/RectangleCornerRadii+Extensions.swift New extension providing inset method for adjusting corner radii with minimum radius constraint
Loop/Extensions/Defaults+Extensions.swift Added previewUseWindowCornerRadius user default to toggle between window-specific and default corner radius
Loop/Extensions/AXUIElement+Extensions.swift Updated function name from _AXUIElementGetWindow to AXUIElementGetWindow to match declaration in PrivateApis.swift
Loop/Core/WindowDragManager.swift Updated logging to use description for Window objects
Loop/Core/LoopManager.swift Refactored window handling to delay targetWindow assignment, improved isLoopActive flag management, and updated logging to use description

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Copy Markdown
Collaborator

@SenpaiHunters SenpaiHunters left a comment

Choose a reason for hiding this comment

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

This finally compiles for macOS 15, testing locally. Hopefully, when built with actions, we don't see any errors or crashes!

@SenpaiHunters SenpaiHunters merged commit c3cc614 into develop Nov 27, 2025
1 check passed
@SenpaiHunters SenpaiHunters deleted the skylight-window-corner-radius branch November 27, 2025 23:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

✨ Adaptive Corner Radius Rendering Based on Window Style

3 participants