Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

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

Open Beginner friendly
#26,548 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@makhnatkin is already working on this.

Since Oct 28, 2026.

  • #26549 by @makhnatkin — open

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
62/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
typescript
Domain
frontend

Research direction

The drag threshold lives in SIDEBAR_DRAG_DISTANCE and is applied by SidebarPointerSensor in apps/web/src/components/Sidebar.pointer.ts, wired up in apps/web/src/components/Sidebar.tsx. Start by reading how the sensor records pointerdown and when it switches into drag and installs the click suppressor. Done means a pen tap with a few pixels of slide still fires the row's onClick, while mouse drag behaviour and the settle, un-settle and wake buttons stay correct; check it with pointer-event tests that set pointerType to pen.

Written by the indexing model from the issue text.

Description

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).

Dominant language
TypeScript
Stars
24.8k
Forks
6.4k
Avg merge
2h 54m
Merged PRs (30d)
350

Getting set up

Open in Codespaces

Starts the project's dev container in your browser, under your own GitHub account.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from pingdotgg/t3code

All issues in pingdotgg/t3code

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.