You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This document records the `screencapturekit` v3.1.0 coverage audit against Apple's `ScreenCaptureKit.framework` from Xcode 26.2 (`MacOSX26.2.sdk`).
4
+
5
+
## Certification
6
+
7
+
As of `screencapturekit`**3.1.0**, the crate provides **100% coverage of the audited ScreenCaptureKit SDK surface for this pass**, including the newer macOS 15.x and 26.0-era APIs requested for review.
8
+
9
+
That coverage includes both:
10
+
11
+
- direct bindings for concrete classes, enums, and properties
12
+
- safe Rust equivalents where Apple's surface is protocol- or attachment-key-oriented
13
+
14
+
## Audited surface
15
+
16
+
The audit covered the following public SDK areas:
17
+
18
+
-`SCStream`
19
+
-`SCStreamConfiguration`
20
+
-`SCContentFilter`
21
+
-`SCShareableContent`
22
+
-`SCShareableContentInfo`
23
+
-`SCRunningApplication`
24
+
-`SCDisplay`
25
+
-`SCWindow`
26
+
-`SCContentSharingPicker`
27
+
-`SCContentSharingPickerConfiguration`
28
+
-`SCContentSharingPickerMode`
29
+
-`SCRecordingOutput`
30
+
-`SCRecordingOutputConfiguration`
31
+
-`SCStreamErrorCode`
32
+
- newer macOS 15.x / 26.0 additions in `SCScreenshotManager` and preset APIs
Apple models frame metadata as attachment keys on `CMSampleBuffer`. In Rust, the crate exposes those keys as typed accessors and a batched `FrameInfo` snapshot instead of raw string constants. This is a deliberate ergonomic layer, not a coverage gap.
55
+
56
+
### `SCContentSharingPicker` observer APIs
57
+
58
+
Apple's picker surface is observer- and presentation-oriented. The crate covers that behavior through callback-based `show()`, `show_filter()`, `show_for_stream()`, `show_using_style()`, and `show_for_stream_using_style()` helpers, plus direct picker state/configuration accessors.
59
+
60
+
### Assigned Core Foundation / Core Graphics properties
61
+
62
+
Apple declares `SCStreamConfiguration.backgroundColor`, `colorSpaceName`, and `colorMatrix` as assigned `CGColorRef` / `CFStringRef` properties. The bridge now retains the values it assigns so those properties remain valid for the full lifetime of the configuration object.
0 commit comments