diff --git a/crates/pi-natives/src/desktop/linux/wayland/capture.rs b/crates/pi-natives/src/desktop/linux/wayland/capture.rs index 21bd10140..38c874f3c 100644 --- a/crates/pi-natives/src/desktop/linux/wayland/capture.rs +++ b/crates/pi-natives/src/desktop/linux/wayland/capture.rs @@ -147,11 +147,11 @@ fn rgba_from_buffer( fn grab_pipewire_frame(node: u32, fd: OwnedFd) -> Result { pw::init(); let mainloop = - pw::main_loop::MainLoop::new(None).map_err(|err| format!("PipeWire main loop: {err}"))?; - let context = - pw::context::Context::new(&mainloop).map_err(|err| format!("PipeWire context: {err}"))?; + pw::main_loop::MainLoopRc::new(None).map_err(|err| format!("PipeWire main loop: {err}"))?; + let context = pw::context::ContextRc::new(&mainloop, None) + .map_err(|err| format!("PipeWire context: {err}"))?; let core = context - .connect_fd(fd, None) + .connect_fd_rc(fd, None) .map_err(|err| format!("PipeWire remote: {err}"))?; let stream = pw::stream::StreamBox::new(&core, "omp-computer-capture", properties! { *pw::keys::MEDIA_TYPE => "Video", diff --git a/packages/natives/CHANGELOG.md b/packages/natives/CHANGELOG.md index 21e2d779d..58b9d3296 100644 --- a/packages/natives/CHANGELOG.md +++ b/packages/natives/CHANGELOG.md @@ -19,6 +19,9 @@ - Fixed read-only Wayland `computer` calls acquiring persistent keyboard and pointer control; RemoteDesktop input permission is now requested only on first input, is not persisted, and closes with the desktop session ([#7884](https://github.com/can1357/oh-my-pi/issues/7884)). - Fixed Wayland `libei` input initialization poisoning PipeWire screen capture: both paths now share one long-lived Tokio runtime so `ashpd`'s process-global D-Bus connection is never orphaned by a dropped runtime ([#7886](https://github.com/can1357/oh-my-pi/issues/7886)). +### Fixed + +- Fixed the `wayland-pipewire` Cargo feature failing to compile: the PipeWire capture path still used the removed 0.8 `MainLoop::new` / `Context::new` / `connect_fd` constructors instead of the 0.9 `MainLoopRc` / `ContextRc` / `connect_fd_rc` handle API ([#7885](https://github.com/can1357/oh-my-pi/issues/7885)). ## [17.2.10] - 2026-08-06