Bug 371904 - horizontal mouse-drag wraparound
Summary: horizontal mouse-drag wraparound
Alias: None
Product: okular
Classification: Applications
Component: general (show other bugs)
Version: 0.26.1
Platform: Arch Linux Linux
: NOR wishlist
Target Milestone: ---
Assignee: Laura David Hurka
Depends on:
Reported: 2016-10-31 18:30 UTC by azrdev
Modified: 2021-07-02 20:18 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 21.08


Note You need to log in before you can comment on or make changes to this bug.
Description azrdev 2016-10-31 18:30:47 UTC
When doing click-and-drag scrolling in okular, the mouse pointer wraps around upon reaching the top or bottom screen edges. This would also be useful for the left and right edges, i.e. horizontal scrolling.

Expected behaviour:
- open a file in okular, zoom in until the viewport is (much) smaller than the document
- in "navigation mode", left-click anywhere on the page, keeping the mouse button down
- drag the mouse: the visible part of the document scrolls accordingly
- drag the mouse to/over a screen edge: it reappears at the opposite edge, you continue scrolling

Maybe this is related to https://bugs.kde.org/show_bug.cgi?id=343910
Comment 1 Laura David Hurka 2020-06-06 13:33:53 UTC
This is not just relevant for horizontal scrolling mode, but also for landscape documents in Overview mode with the current limit of 8 facing pages. Horizontal scrolling is difficult with most mouse wheels, so horizontal drag wraparound makes not less sense than the existing vertical wraparound.
Comment 2 Bug Janitor Service 2020-06-17 22:58:36 UTC
A possibly relevant merge request was started @ https://invent.kde.org/graphics/okular/-/merge_requests/199
Comment 3 Bug Janitor Service 2021-04-04 12:37:36 UTC
A possibly relevant merge request was started @ https://invent.kde.org/graphics/okular/-/merge_requests/394
Comment 4 Laura David Hurka 2021-04-11 11:19:36 UTC
Git commit 2e1ddaa1095fc2b564512851f55eee880e964746 by David Hurka.
Committed on 11/04/2021 at 09:56.
Pushed by davidhurka into branch 'master'.

Enable horizontal mouse wrap for Browse tool drag scrolling

Also fixes calculation of wrap edges, where top and bottom edge were swapped.

M  +4    -2    part/pageview.cpp

Comment 5 Nate Graham 2021-04-12 16:35:37 UTC

David, do you think this might be worth cherry-picking into stable too, or is it too risky or dependent on master-only code?
Comment 6 Laura David Hurka 2021-04-13 11:26:35 UTC
It depends on 67325270e “Fix viewport jumps when drag-scrolling beyond screen edges” which introduces CursorWrapHelper and is only on master. So I think it’s too risky.