Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

[Bug]: Pen taps on sidebar rows start a drag and lose their click

未关闭 适合新手
#26,548 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

@makhnatkin 已经在做这个了。

开始于 2026年10月28日。

  • #26549 来自 @makhnatkin —— 未关闭

评估

难度
2/5
预计耗时
1-3 小时
新手友好度
62/100
Issue 类型
缺陷
描述清晰度
描述清楚
活跃度
活跃
技术栈
typescript
领域
frontend

调研方向

先阅读传感器如何记录 pointerdown,以及它何时切换到拖拽模式并安装点击抑制器。阈值位于 SIDEBAR_DRAG_DISTANCE 中,由 apps/web/src/components/Sidebar.pointer.ts 中的 SidebarPointerSensor 应用,并在 apps/web/src/components/Sidebar.tsx 中接入。完成的标准是:带有几个像素滑动的笔触仍会触发行的 onClick,鼠标拖拽行为以及固定、取消固定和唤醒按钮保持正确。请用将 pointerType 设为 pen 的指针事件测试来验证。

由索引模型根据 Issue 内容生成。

描述

AI-generated
"Generated" means mostly the model, "Edited" means mostly me.

Before submitting
  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.
Area

apps/web

Steps to reproduce
  1. On macOS, use a Wacom pen in pen (absolute) mode. Mine: Intuos S (CTL-4100WL) with Wacom Pen 4K; its 152 × 95 mm active area maps to a 1920 × 1080 pt display.
  2. Tap thread rows in the sidebar with the pen tip, 10–20 times.
Expected behavior

Every tap opens the thread.

Actual behavior

Some taps do nothing.

SidebarPointerSensor starts a row drag once the pointer moves more than SIDEBAR_DRAG_DISTANCE (6 px) from pointerdown, for every pointer type (Sidebar.tsx#L854, Sidebar.pointer.ts#L72-L82). Once dragging, it installs a document-capture click suppressor, so the row's onClick never runs.

On this tablet 6 px is about 0.5 mm of tip travel (152 mm / 1920 pt × 6). A pen tip slides that far during an ordinary tap; a mouse stays still while clicking. Chromium itself allows 20 px for a stylus click by default and 10 px on ChromeOS (gesture_configuration.h, gesture_configuration_aura.cc).

The same sensor backs the settle, un-settle and wake sweep buttons, so pen taps on them are affected too.

Impact

Minor bug or occasional failure

Version or commit

T3 Code (Beta) 0.1.3; the code above is unchanged on main @ 5211acfe95.

Environment

macOS 26.6.2, Electron 44.9.3, Wacom driver 6.4.6-3

Logs or stack traces

No response

Screenshots, recordings, or supporting files

No response

Workaround

Press without sliding the tip, then pause longer than the double-click interval before a retry: quicker retries arrive with detail > 1 and are skipped (#22058).

Related: #22058 (same symptom, other causes), #25442 (zero-button move before pointerup).

主要语言
TypeScript
星标
24.8k
派生
6.4k
平均合并
2 小时 54 分钟
30 天内合并 PR
350

环境准备

在 Codespaces 中打开

在浏览器里用你自己的 GitHub 账号启动这个项目的开发容器。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

pingdotgg/t3code 的其他 Issue

查看 pingdotgg/t3code 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。