Skip to content

Take the native runtime from PlatformHeads - #967

Merged
SimonCropp merged 3 commits into
mainfrom
platformheads-native
Oct 22, 2026
Merged

SimonCropp merged 3 commits into
mainfrom
platformheads-native

Conversation

@SimonCropp

@SimonCropp SimonCropp commented Oct 22, 2026 •

Copy link
Copy Markdown
Member

Takes PlatformHeads layer 4, the native runtime (SimonCropp/PlatformHeads#1, tagged 0.4.0).

  • Linux: the C++ head calls PlatformHeads' runtime as ph:: for the window, GLFW's input, which frames are built and drawn, the renderer, the fonts and the label helpers, where it had its own copy.
  • macOS: the Swift head imports PlatformHeadsMac for HeadWindow, EventPump, TerminateGuard, NapGuard, KnobScroller, ScrollerTravel, WheelNotches, ToolTipRegions, StringBlob, Capture, Clipboard and WindowPlacement.

All six PlatformHeads pins are at 0.4.0: the workflow's uses:, CMake's GIT_TAG, the three packages in Directory.Packages.props, and the new PlatformHeads package in native/swift/Package.swift. The committed binaries follow in the PR build-native opens.

SimonCropp and others added 3 commits October 22, 2026 16:09
The window, GLFW's input, the frame skipping, the renderer, the fonts and the label helpers of
deview.cpp move to PlatformHeads' native runtime, which BuildMonitor takes too, and deview.cpp
calls them as ph::. A placement handed over now also places a window started hidden.

The AppKit head takes PlatformHeadsMac the same way: HeadWindow, EventPump, TerminateGuard,
NapGuard, KnobScroller (which was PaneScroller), ScrollerTravel, WheelNotches, ToolTipRegions,
StringBlob, Capture, Clipboard and WindowPlacement. A placement is now measured from the top left
of the primary screen, as every other head measures it, so a window left by an older viewer opens
once where its old bottom-left numbers say.

CMake and SwiftPM point at the PlatformHeads branch until it is tagged 0.4.0.
All six pins, off the native-runtime branch the adoption was checked against.
Co-authored-by: SimonCropp <122666+SimonCropp@users.noreply.github.com>
@SimonCropp
SimonCropp merged commit efcf474 into main Oct 22, 2026
15 checks passed
@SimonCropp
SimonCropp deleted the platformheads-native branch October 22, 2026 09:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant