mirror of
https://invent.kde.org/graphics/okular
synced 2024-11-05 18:34:53 +00:00
No description
9b34bfb45e
Okular renders a simple 'shadow' at the right and the bottom of each page. The code for this is a bit fragile: After the page is rendered, Okular paints a black outline, and then the shadow. The shadow is a hand-implemented gradient, painted line by line. Finally, the remaining area is painted in the background color. No pixel is ever touched twice. Unfortunately, the code is buggy, and in hidpi / fractional scaling situations, some pixels are never touched. This results in rendering glitches as reported in https://bugs.kde.org/show_bug.cgi?id=383943 Instead of trying to fix the previous approach, this patch makes the code more robust by changing the order of the painting operations. After painting the page, the code now first paints the background, which is now enlarged to cover everything off the page. Finally, the black outline and shadow are drawn on the previously drawn background. This makes sures that no pixel is ever left uninitialized. It also allows to simplify the shadow drawing operation a bit. BUG: 383943 |
||
---|---|---|
autotests | ||
cmake/modules | ||
conf | ||
core | ||
doc | ||
generators | ||
interfaces | ||
mobile | ||
shell | ||
ui | ||
.arcconfig | ||
.gitignore | ||
.gitlab-ci.yml | ||
.krazy | ||
aboutdata.h | ||
AUTHORS | ||
CMakeLists.txt | ||
config-okular.h.cmake | ||
COPYING | ||
COPYING.DOC | ||
COPYING.LIB | ||
extensions.cpp | ||
extensions.h | ||
kdocumentviewer.h | ||
Mainpage.dox | ||
Messages.sh | ||
metainfo.yaml | ||
okular.categories | ||
okular.upd | ||
Okular5Config.cmake.in | ||
okular_part.desktop | ||
OkularConfigureChecks.cmake | ||
part-viewermode.rc | ||
part.cpp | ||
part.h | ||
part.rc | ||
README.internals.png | ||
TODO |