Summary: | Selecting text moves it one pixel towards the bottom | ||
---|---|---|---|
Product: | [Applications] okular | Reporter: | Oliver Sander <oliver.sander> |
Component: | general | Assignee: | David Edmundson <kde> |
Status: | CONFIRMED --- | ||
Severity: | normal | CC: | aacid, kde, me, simonandric5 |
Priority: | NOR | ||
Version First Reported In: | 1.2.70 | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: |
Not selected, missing line, thin j in project
Selected, everything looks right Line annotation used to draw, the wrong way |
Description
Oliver Sander
2017-10-23 14:25:00 UTC
I don't think i can reproduce it either (you mean Ctrl+4, right?) Could you link the file you're using and maybe some screenshots? > I don't think i can reproduce it either (you mean Ctrl+4, right?)
No, I mean Ctrl+3.
I found out that it has to do with display scaling. On my system,
~/okular(master)> echo $QT_SCREEN_SCALE_FACTORS
eDP-1=1.5;DP-1=1.5;HDMI-1=1.5;HDMI-2=1.5;DP-1-1=1.5;DP-1-2=1.5;DP-1-3=1.5;
If I replace all these 1.5 by 1.0 then the bug disappears.
yes, i can reproduce when using QT_SCALE_FACTOR=1.5 Git commit 804d0bd42a23488a6bbd8090ee2590871ddeb64e by David Edmundson. Committed on 09/04/2018 at 21:58. Pushed by davidedmundson into branch 'Applications/18.04'. Fix rubber band selection drawing contents misaligned with scaling Summary: in drawPixmap(source, sourceRect) the source rect is in native pixels. In this code the size was scaled by the DPR, but the location was not. blendRect is the contents of a selection rectangle, offset from the bounding darker blue rectangle. Hence we haven't really noticed. This completely fixes the rectangle when the scale == 2.0/3.0 Some smaller artifacts remain on fractional scale factors, which is a separate code bug with the same symptoms. Reviewers: aacid, rkflx Reviewed By: rkflx Subscribers: sander, rkflx, anthonyfieroni, #okular Tags: #okular Differential Revision: https://phabricator.kde.org/D8980 M +3 -2 ui/pageview.cpp https://commits.kde.org/okular/804d0bd42a23488a6bbd8090ee2590871ddeb64e Created attachment 182755 [details]
Not selected, missing line, thin j in project
…or one pixel towards the right. Actually, shifted representation (with some text selected) is correct, while unshifted really cuts out one column of pixels from the horizontal middle of the left page: on the attached screenshot collage notice how thin is "j" in "project" on line 3 without selection.
Full Screen, but can happen at every second window size (probably needs to be divisible by 2 with a remainder of 1, or something like that).
View Mode: Facing Pages
Zoom: Fit Width
Monitor: 2560x1600
Global Scale: 150%
QT_SCREEN_SCALE_FACTORS: eDP-1=1.5
Operating System: Arch Linux
KDE Plasma Version: 6.3.5
KDE Frameworks Version: 6.15.0
Qt Version: 6.9.1
Kernel Version: 6.15.2-arch1-1 (64-bit)
Graphics Platform: X11
Graphics Processor 1: AMD Radeon RX 7700S
Graphics Processor 2: AMD Radeon 780M Graphics
Created attachment 182756 [details]
Selected, everything looks right
Actually if I zoom it out small enough, pages squeeze vertically (missing horizontal line of pixels) too. It happens on a per-page basis, i.e. only affects pages across which spans the selection. Also, happens in any View Mode: Single Page, Facing Pages, Facing Pages (Center First Page) and Overview. In Overview there are 3×3 grid of pages, horizontal line is missing only from one row of pages (which one — it's not consistent, might depend on scroll position or something, but so far it's always pages of the same row and never more than one row). Vertical lines are missing from all pages. Created attachment 182815 [details]
Line annotation used to draw, the wrong way
This one is even better
|