microsoft / microsoft/microsoft-ui-xaml

Shift-clicking in scroll bar should jump to destination

Open
#11,200 0 comments 0 reactions 0 assignees View on GitHub
area-ScrollBar area-Scrolling bug
Dominant language
C++
Stars
8.4k
Forks
942
Avg merge
2d 7h
Merged PRs (30d)
105

Description

### Describe the bug

When clicking inside a light area of the scroll bar, the scroll view jumps a page, as expected.

However, when shift-clicking, it still jumps page by page. This is inconsistent with how Win32 and WPF behave: when shift-clicking in those, the scroll view jumps _to the destination_.

For example, given this scroll bar:

Image

If I click near the bottom arrow, it should jump one page each, so I need about four clicks to get near the bottom of the content. But if I shift-click, it should immediately jump to the bottom of the content.

### Why is this important?

This behavior is inconsistent with other Windows apps. Other than Win32 and WPF (e.g., Visual Studio 2026), Chromium also implements this correctly. It's a rather basic and widespread control, so it should behave consistently with Windows.

### Steps to reproduce the bug

1. Open Notepad
2. Open a file with many pages of text, so you have a relatively _short_ scroll knob
3. Try clicking, then shift-clicking the scroll bar.

### Actual behavior

The behavior is identical: whether you hold shift or not, the scroll bar scrolls one page at a time.

### Expected behavior

When holding shift, it should ignore the intermediate pages and scroll directly to the position of the mouse pointer.

### Screenshots

_No response_

### NuGet package version

Notepad 26220.8690

### Windows version

Windows Insider Build (xxxxx)

### Additional context

See also tweet: https://x.com/JacqBens/status/2070611493935059382?s=20

Contributor guide

Open the contributing guide

Research direction

Reproduce the issue in Notepad with a long text file, comparing ordinary clicks with Shift-clicks in the scroll bar's light area. Trace the scroll bar input handling and add coverage for the expected direct jump to the mouse pointer position; done means Shift-click skips intermediate pages while ordinary clicks retain page-by-page behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
desktop
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.