Repository navigation
feat: WindowFrame 异形窗口(shape clip-path + snap 开关) - #3
Merged
Merged
Conversation
ShiningRay
added this pull request to stack #6
September 15, 2026 23:11
…p 开关 - shape 设置后结构变为 .panel-wrap(定位/z 序/滤镜阴影)包 .panel(clip-path 裁剪): box-shadow 会被 clip-path 裁掉,阴影必须由包裹层 filter 承担;拖拽/缩放手柄 经 drag_pane 改投包裹层;几何保持矩形包围盒,z 序/clamp/任务栏零改动 - panel 在包裹层 block 内部 emit(emit_panel 抽取)——先建节点再塞 block 会 二次 emit 并以 to_s 文本泄漏(块返回值坑同款),测试加文本泄漏回归锁定 - WindowManager#frame(snap: false):按窗关闭边缘吸附(吸附是矩形假设) - 首个消费者:emerald 便利贴示例包
ShiningRay
force-pushed
the
feat/shaped-windows
branch
from
September 15, 2026 23:12
d9f0dde to
10f4c2a
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
栈叠在 #2(feat/drag-scale)之上——emit_panel 携 drag_scale 透传,合入顺序请先 #2 后本 PR(或 #2 合并后 retarget main)。
内容
WindowFrame#shapeprop:任意 clip-path 值。设置后结构变为.panel-wrap(定位/z 序/drop-shadow滤镜阴影)包.panel(clip-path 裁剪)drag_pane改投包裹层WindowManager#frame(snap: false):按窗关闭边缘吸附(吸附是矩形假设,异形窗口不适用)emit_panel在包裹层 block 内部 emit——先建节点再塞 block 会二次 emit、以 to_s 文本泄漏(块返回值坑同款),测试锁定回归测试
bundle exec rake:97 项全绿 + Opal 编译验收通过