Skip to content

docs: examples for the remaining public API, including Apple platforms - #4526

Merged
glennawatson merged 11 commits into
mainfrom
docs/examples-api-gaps
Sep 27, 2026
Merged

glennawatson merged 11 commits into
mainfrom
docs/examples-api-gaps

Conversation

@glennawatson

@glennawatson glennawatson commented Sep 27, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Every public ReactiveUI member now has a documentation example or a reviewed reason why app code never calls it, including the Apple platforms.

  • Core examples. Activation through IActivatableViewModel.Activator, and an IObserver witness subscribed straight to a ReactiveCommand and through ReactiveCommandBase.
  • Platform examples. New coverage for AndroidX (the IReactiveObject surface on views, ReactiveActivity results, USB permission requests, the fragment WireUpControls overload), MAUI and WinUI hosts and converters, WinForms panel and table set-method converters, WPF host properties, every TransitioningContentControl transition, the explicit-view WhenActivated overloads, and Blend behaviour properties.
  • New Pages/platform-apple project. An iOS and macOS library app covering the view controllers, views, hosts, suspension, and the UIKit table and collection sources, cells and section information. The iOS and macOS workloads exist only on Windows and macOS, so on Linux the project compiles a one-line placeholder.
  • Extending IViewFor. A view-location example that bridges a third-party base class to IViewFor with its own activation fetcher.
  • ReactiveUI.Binding 8.5.0. Picks up the fix for the generated BindCommand on AppKit NSButton targets, so the macOS example binds its button with BindCommand.
  • SourceLink is off for example projects. Examples are never packed, and SourceLink warned when an example built from a copy of the repository without .git. Libraries are unchanged.

Why

A fresh audit of the public surface after the recent Binding, source generator and routing changes found members with no example.

  • The handbook pages on reactiveui/website quote these examples verbatim; the matching page changes are in reactiveui/website (linked below).

Breaking changes

None.

  • Only example projects and the example build settings change.

How this was verified

Every console page's // Output: blocks match a real run; the platform apps were run on their platforms.

  • WPF, WinForms, Blend and WinUI ran on a Windows machine, and their printed output matches the blocks and the pages. Android ran on an emulator, and every quoted log line appears in the real log. The Apple project was built for iOS and macOS on Windows. It has not run on a simulator.

Notes for the reviewer

Start with Pages/platform-apple (new) and src/examples/Directory.Build.props; the rest adds methods to existing page projects.

Checklist

  • I have read the Contribute guide
  • The PR title follows Conventional Commits
  • Tests cover this change, or the summary says why they do not
  • New or changed public API has XML documentation

@glennawatson
glennawatson enabled auto-merge (squash) September 27, 2026 10:05
@sonarqubecloud

Copy link
Copy Markdown

@codecov

codecov Bot commented Sep 27, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 93.69%. Comparing base (8dcabad) to head (827ae23).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #4526   +/-   ##
=======================================
  Coverage   93.69%   93.69%           
=======================================
  Files         175      175           
  Lines        6231     6231           
  Branches      743      743           
=======================================
  Hits         5838     5838           
  Misses        392      392           
  Partials        1        1           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@glennawatson
glennawatson merged commit 04209a0 into main Sep 27, 2026
18 checks passed
@glennawatson
glennawatson deleted the docs/examples-api-gaps branch September 27, 2026 11:01
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.

2 participants