Fork
0
代码
介绍
代码
Issues
Pull Requests
流水线
Actions
讨论
Wiki
项目成员
分析
项目设置
Fork
0
main
atomcode
/
crates
/
atomcode-tuix
/
src
/
input
下载当前目录
saulcy
refactor(tuix): collapse dead selection logic + harden Drop panic path
d1bb5b4a
创建于
9 天前
历史提交
文件
最后提交记录
最后更新时间
history.rs
feat(history): GC orphan image-cache files on save Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
26 天前
key_action.rs
feat(tuix): add Ctrl+J newline + fix terminal compat docs
28 天前
mod.rs
refactor(tuix): collapse dead selection logic + harden Drop panic path Task 7.1 follow-up to 62036bdf (which disabled SGR mouse capture in favour of terminal-native selection/wheel/copy). With ?1002h / ?1006h never emitted, the terminal stops sending MouseDown/Drag/Up to atomcode, so the internal SelectionState machinery is now unreachable from any interactive event: * begin_selection / update_selection / end_selection / copy_selection trait methods never fire * apply_selection_overlay paint hook never has selection bounds * Ctrl+C copy_selection fallback always returns false → degrades to plain Cancel (== pre-62036bdf behaviour) * Windows OS-level Ctrl+C signal arm copy_selection branch + the keyboard-echo suppression debounce both lose their reason to exist Deletes: selection.rs entirely (789 lines), the 4 trait default methods, the SelectionState field + apply_selection_overlay + screen_to_body in retained, the 4 RenderCmd variants and worker forwards, the 3 InputEvent mouse variants and reader arms, the Ctrl+C copy_selection intercept, win_ctrl_c copy_selection branch, last_ctrl_c_copy debounce, and 7 selection-only retained tests. Keeps: ?1002l / ?1006l defensive disable in shutdown/suspend/Drop (clears any stale capture inherited from a prior process), and the InputEvent::MouseScroll → scroll_body no-op (some terminals forward wheel events outside the SGR mouse protocol). Also hardens RetainedRenderer::Drop with cursor / autowrap / DECSTBM restore, mirroring shutdown(): a panic while the spinner hid the cursor (DECTCEM off) used to leak that state into the parent shell since shutdown() never ran on the panic path. Net: 9 files, -1429 / +44. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
9 天前
reader.rs
refactor(tuix): collapse dead selection logic + harden Drop panic path Task 7.1 follow-up to 62036bdf (which disabled SGR mouse capture in favour of terminal-native selection/wheel/copy). With ?1002h / ?1006h never emitted, the terminal stops sending MouseDown/Drag/Up to atomcode, so the internal SelectionState machinery is now unreachable from any interactive event: * begin_selection / update_selection / end_selection / copy_selection trait methods never fire * apply_selection_overlay paint hook never has selection bounds * Ctrl+C copy_selection fallback always returns false → degrades to plain Cancel (== pre-62036bdf behaviour) * Windows OS-level Ctrl+C signal arm copy_selection branch + the keyboard-echo suppression debounce both lose their reason to exist Deletes: selection.rs entirely (789 lines), the 4 trait default methods, the SelectionState field + apply_selection_overlay + screen_to_body in retained, the 4 RenderCmd variants and worker forwards, the 3 InputEvent mouse variants and reader arms, the Ctrl+C copy_selection intercept, win_ctrl_c copy_selection branch, last_ctrl_c_copy debounce, and 7 selection-only retained tests. Keeps: ?1002l / ?1006l defensive disable in shutdown/suspend/Drop (clears any stale capture inherited from a prior process), and the InputEvent::MouseScroll → scroll_body no-op (some terminals forward wheel events outside the SGR mouse protocol). Also hardens RetainedRenderer::Drop with cursor / autowrap / DECSTBM restore, mirroring shutdown(): a panic while the spinner hid the cursor (DECTCEM off) used to leak that state into the parent shell since shutdown() never ran on the panic path. Net: 9 files, -1429 / +44. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
9 天前