Repository navigation
Releases: ljzxzxl/my-window-pip
Releases · ljzxzxl/my-window-pip
Release list
v0.1.7
新增
- 浮窗磁吸:拖动浮窗靠近屏幕边缘或其它浮窗时自动吸附,相邻浮窗零间隔贴合。磁吸只调整位置、绝不改变窗口大小;按住
Control拖动可临时跳过磁吸做像素级摆放。支持多显示器,含负坐标屏幕与显示器之间的空隙。 - 位置记忆按捕获目标细分:整窗、窗口内区域、屏幕区域各自记住自己的位置。同一个应用开多个窗口(VSCode、Cursor 这类)不再互相覆盖位置;身份不含窗口标题,切文件切标签都不会丢映射。宽度与帧率仍按应用记忆。
- 窗口列表可以选其它 Space 的窗口:菜单栏的窗口列表不再局限于当前桌面。同时列表过滤收紧,Dock 和通知中心小组件这类系统条目不再出现在候选里。
- Chromium 兼容模式(默认关闭):部分 Chromium / Electron 应用的窗口进入其他 Space 后会主动停止 repaint,导致 ScreenCaptureKit 只能拿到最后一帧。开启后 MyWindowPip 会询问是否用 Chromium 的后台绘制开关重启源应用。重启会退出该应用,所以默认关闭且默认先询问;「自动」档只对本项目已人工验证的应用(ChatGPT、Google Chrome)生效,靠 bundle 特征识别到的其它应用一律先询问。设置入口:设置 → Chromium 兼容。
修复
- 源窗口切到非活跃 Space 时可能被误判为「已消失」进而关闭浮窗:现在把「传输卡流」与「源窗口生命周期」分开判定,用 WindowServer 与辅助功能证据分类,状态不明时保留浮窗而不是关掉。
- 重连或全屏切换后画面可能残留几像素黑边:改为按每帧的 ScreenCaptureKit 元数据裁掉动态 padding。
- 自动隐藏状态下的浮窗现在仍可缩放(边角热区 + 实时缩放锁定);
Cmd拖拽选区改为按选区自身宽高比。 - 菜单栏选窗去重加固:WindowServer 复用已销毁窗口的 ID 时,不会再把新选的窗口错认成正在等待重连的旧会话。
安装
通用 DMG,支持 Apple Silicon 与 Intel,需要 macOS 14 或更高版本。
发布包使用自签名证书,尚未经过 Apple 公证。首次打开可能需要在 Finder 中右键选择「打开」;建议把 App 拖入 /Applications 再启动,这有助于让屏幕录制授权在版本更新后保持稳定。
致谢
- @winking324 —— 浮窗磁吸(#4)、按捕获目标记忆位置(#6),以及跨 Space 窗口列表问题的定位(#5)
- @Silhouette-my —— 跨 Space 生命周期与交互修复(#8)
What's Changed
- feat: add magnetic snapping for PiP windows by @winking324 in #4
- fix: remember PiP positions per capture target by @winking324 in #6
- Fix cross-Space PiP lifecycle and interaction regressions by @Silhouette-my in #8
New Contributors
- @Silhouette-my made their first contribution in #8
Full Changelog: v0.1.6...v0.1.7
v0.1.6
v0.1.5
What's Changed
- fix: recover stalled PiP renderers by @winking324 in #2
Full Changelog: v0.1.4...v0.1.5
v0.1.4
What's Changed
- fix: activate exact source windows and refresh titles by @winking324 in #1
New Contributors
- @winking324 made their first contribution in #1
Full Changelog: v0.1.3...v0.1.4
v0.1.3
v0.1.2
v0.1.1
v0.1.0
Full Changelog: https://github.com/ljzxzxl/my-window-pip/commits/v0.1.0