Skip to content

Add SystemVisualSettings snapshot and notifications#14733

Open
KlausLoeffelmann wants to merge 10 commits into
dotnet:mainfrom
KlausLoeffelmann:Net11Api_01_New_Application_Api
Open

Add SystemVisualSettings snapshot and notifications#14733
KlausLoeffelmann wants to merge 10 commits into
dotnet:mainfrom
KlausLoeffelmann:Net11Api_01_New_Application_Api

Conversation

@KlausLoeffelmann

@KlausLoeffelmann KlausLoeffelmann commented Jul 14, 2026

Copy link
Copy Markdown
Member

Closes #14583.
Contributes to #14694.

API proposal: KlausLoeffelmann#14

  • Replaces the unshipped accent-color and Accessibility text-size APIs with the immutable
    SystemVisualSettings snapshot.
  • Normalizes accent color, text scale, High Contrast, client-area animation, keyboard
    cues, and focus-border metrics.
  • Raises the Application event once per process transition while delivering the
    leak-free Control cascade to every top-level tree on its owning UI thread.
  • Coalesces the relevant Windows message burst and preserves old/new snapshots plus
    category flags for efficient handlers.
  • Includes focused native mapping, concurrency, multi-message-loop, lifecycle, and
    static-rooting coverage.

The VisualStyles/renderer consumers are composed with this independent API branch in the
Net11 integration branch.

KlausLoeffelmann and others added 9 commits July 18, 2026 01:26
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 27022e2a-9eb8-4f58-9bfa-e79ca0d6c559
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Hand-author the IUISettings3 / UIColor / UIColorType WinRT ABI types and generate the RoActivateInstance / WindowsCreateString / WindowsDeleteString / IInspectable / HSTRING Win32 bindings via CsWin32. The WinRT ABI types are excluded from the .NET Framework build, which does not consume them.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Expose the user's current Windows accent color by activating the Windows.UI.ViewManagement.UISettings runtime component and reading UIColorType.Accent. When no accent color is set, Windows returns an OS-defined default, so the method always yields a usable color.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Use event subscriptions as the opt-in for text-size notifications and
remove the redundant awareness API surface.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 40d0f0f7-a584-4167-9187-9d529b7c70f8
Wrap the Form event remark in a paragraph and remove the redundant
nullable handler initialization reported by the Arcade analyzers.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 40d0f0f7-a584-4167-9187-9d529b7c70f8
@KlausLoeffelmann
KlausLoeffelmann force-pushed the Net11Api_01_New_Application_Api branch from 0dd2805 to 34ed079 Compare July 18, 2026 08:27
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 27022e2a-9eb8-4f58-9bfa-e79ca0d6c559
@KlausLoeffelmann KlausLoeffelmann changed the title Add .NET 11 Application text-size and accent-color APIs Add SystemVisualSettings snapshot and notifications Jul 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[NET 11 API Proposal] Application APIs for Windows accent color and Accessibility text scaling

1 participant