• v0.19.0
    ci / web (push) Successful in 55s
    apple / swift (push) Successful in 1m26s
    ci / docs-site (push) Successful in 56s
    android-screenshots / screenshots (push) Successful in 3m20s
    ci / bench (push) Successful in 6m47s
    release / apple (push) Successful in 10m49s
    android / android (push) Successful in 15m8s
    decky / build-publish (push) Successful in 26s
    apple / screenshots (push) Successful in 6m40s
    deb / build-publish (push) Successful in 9m36s
    deb / build-publish-host (push) Successful in 9m39s
    flatpak / build-publish (push) Successful in 6m33s
    arch / build-publish (push) Successful in 15m57s
    ci / rust (push) Successful in 26m4s
    docker / deploy-docs (push) Successful in 16s
    docker / build-push (--build-arg FEDORA_VERSION=44, ci, ci/fedora-rpm.Dockerfile, punktfunk-fedora44-rpm) (push) Successful in 14s
    docker / build-push (., web/Dockerfile, punktfunk-web) (push) Successful in 14s
    docker / build-push (ci, ci/fedora-rpm.Dockerfile, punktfunk-fedora-rpm) (push) Successful in 12s
    docker / build-push (ci, ci/rust-ci-noble.Dockerfile, punktfunk-rust-ci-noble) (push) Successful in 9s
    docker / build-push (ci, ci/rust-ci.Dockerfile, punktfunk-rust-ci) (push) Successful in 10s
    docker / build-push (docs-site, docs-site/Dockerfile, punktfunk-docs) (push) Successful in 9s
    web-screenshots / screenshots (push) Successful in 3m10s
    windows-host / package (push) Successful in 10m33s
    linux-client-screenshots / screenshots (push) Successful in 7m51s
    windows-msix / package (arm64, C:\Users\Public\ffmpeg-arm64, --no-default-features, aarch64-pc-windows-msvc, C:\t-a64) (push) Successful in 2m12s
    windows-msix / package (x64, C:\Users\Public\ffmpeg, , x86_64-pc-windows-msvc, C:\t) (push) Successful in 3m3s
    rpm / build-publish (44, fedora-44, punktfunk-fedora44-rpm) (push) Successful in 16m18s
    rpm / build-publish (43, bazzite, punktfunk-fedora-rpm) (push) Successful in 16m57s
    Stable

    enricobuehler released this 2026-07-23 17:03:17 +00:00 | 1 commits to main since this release

    Update whenever it suits you — you can update your app and the machine you stream from one at a time, the new and old versions work together, and everything you've already paired stays paired. The new pen features simply switch on once both ends are updated. Nothing you already use changes.

    New: draw and write with a pen or stylus

    You can now use a real stylus while streaming, and it behaves like a real pen on the machine you're controlling — pressure, tilt, and the pen's side buttons all come through, not just a plain tap. Use your iPad's Apple Pencil (including Pencil Pro), an Android phone or tablet's S Pen or other active stylus, or a pen from a Moonlight app.

    It's great for drawing apps, handwriting and note-taking, signing documents, and photo editing over the stream. Windows and Linux hosts receive it as genuine pen input. If the machine you're streaming from is still on an older version, your pen keeps working as an ordinary touch.

    Fixed: your Steam Deck controller shows up as the right controller

    If a Steam controller was plugged into the computer you stream from, a streamed Steam Deck controller could be misread by games as a PlayStation (DualSense) controller — so button prompts and layouts came out wrong. It now stays a Steam Deck. Punktfunk only steps in to avoid a clash when two genuinely identical controllers are present.

    Improved: a sharper, correctly-sized mouse pointer

    • Right-sized pointer on high-resolution screens. On Linux and Mac, a pointer coming from a high-resolution host could show up about twice as big as it should. It now matches the video exactly.
    • Cleaner pointer on Windows security screens. The mouse pointer no longer duplicates or gets stuck on Windows sign-in and User Account Control (admin permission) prompts.
    • More reliable multi-monitor streaming on Windows. Switching between monitor layouts on the host could occasionally drop the stream — that's fixed.

    Fixed: touch input

    • Multi-touch from Moonlight apps now works on Windows hosts. It previously registered nothing; pinch, zoom, and multi-finger gestures now come through.
    • Touch is no longer silently dropped from some devices that report finger pressure in an unusual way.

    Fixed: Android (and Android TV)

    • Your mouse's back/forward buttons stay in the stream instead of bouncing you out to the Android home screen — a relief on Android TV in particular.
    • The on-screen keyboard stays out of the way when you're typing on a physical keyboard.

    Under the hood (for developers)

    • The streaming protocol is unchanged, so 0.18 and 0.19 hosts and apps mix freely; the pen is negotiated and older peers simply fall back to touch.
    • The embeddable core library adds one new call for sending pen input (the C ABI moves to 13) — rebuild any embedders against 0.19. The Windows virtual-display driver is unchanged: pen goes through Windows' normal pen system, not the display driver.
    • iOS builds are now attached to each release as a downloadable file (for TestFlight/archival).
    Downloads