Signal-Desktop icon indicating copy to clipboard operation
Signal-Desktop copied to clipboard

Cursor and scrollbar become out of sync when drag-and-dropping the scrollbar

Open hiqua opened this issue 4 years ago • 5 comments

Bug Description

The cursor and the scrollbar don't match each other exactly when drag-and-dropping the scrollbar. This means that I can't scroll all the way down by drag-and-dropping the scrollbar in one go

Steps to Reproduce

  1. do a search with many results
  2. drag-and-drop the scrollbar to the bottom of the Signal-Desktop window

Actual Result On my screen, there are around 40 results lower than the last result I reach.

Expected Result The last search result should be visible.

The bug is probably also there outside of the search panel, if your conversation list is too long, but I have too many archived conversations to try it out.

Screencast

That's only the scrollbar. You can see that towards the end, the cursor is lower than the whole scrollbar.

out

Platform Info

Signal Version: 5.12.0-beta3

Operating System: Debian

Link to Debug Log

https://debuglogs.org/0b6385463b39daffa25e5e918ddec1c702eb9bc0a3b19480756000eb73a8eac7.gz

hiqua avatar Aug 03 '21 16:08 hiqua

Confirm on Windows..

ITaluone avatar Aug 04 '21 07:08 ITaluone

@hiqua Just to set expectations, I don't this will be fixed until we fully rewrite our approach to scroll virtualization. And I don't think that's going to happen soon.

scottnonnenberg-signal avatar Aug 20 '21 00:08 scottnonnenberg-signal

I had no expectations so this fully matches them! This is the kind of bug that I think you should have in mind, but it doesn't really impact me much.

hiqua avatar Aug 20 '21 05:08 hiqua

I built a simple page to reproduce the issue. It appears to be a Chromium bug because I can't reproduce it in Firefox, so I filed an issue with Chromium.

EvanHahn-Signal avatar Dec 16 '21 16:12 EvanHahn-Signal

I investigated the upstream Chromium issue today. See my comment on the Chromium bug tracker.

I managed to create a Chromium patch that fixed this behavior (not fully polished though, would need some more work).

However, from the Git history I learned that this behavior was introduced intentionally to fix a different bug. Here is the respective code change.

It would probably be easier to implement a custom scrollbar in JavaScript.

nikwen avatar Feb 28 '25 21:02 nikwen