From e0274514ff8fb7678f303b3ae97af2ce496bac7c Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Thu, 17 May 2007 20:48:41 +0000 Subject: [PATCH] When paiting an empty page (because there are no pixmaps for it), then fill with a color conforming with all the accessibility settings (not just the paper color). svn path=/trunk/KDE/kdegraphics/okular/; revision=665774 --- ui/pagepainter.cpp | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/ui/pagepainter.cpp b/ui/pagepainter.cpp index 05e82c934..8b1becdfc 100644 --- a/ui/pagepainter.cpp +++ b/ui/pagepainter.cpp @@ -46,11 +46,24 @@ void PagePainter::paintPageOnPainter( QPainter * destPainter, const Okular::Page if ( !pixmap || pixmapRescaleRatio > 20.0 || pixmapRescaleRatio < 0.25 || (scaledWidth != pixmap->width() && pixmapPixels > 6000000L) ) { - if ( Okular::Settings::changeColors() && - Okular::Settings::renderMode() == Okular::Settings::EnumRenderMode::Paper ) - destPainter->fillRect( limits, Okular::Settings::paperColor() ); - else - destPainter->fillRect( limits, Qt::white ); + QColor color = Qt::white; + if ( Okular::Settings::changeColors() ) + { + switch ( Okular::Settings::renderMode() ) + { + case Okular::Settings::EnumRenderMode::Inverted: + color = Qt::black; + break; + case Okular::Settings::EnumRenderMode::Paper: + color = Okular::Settings::paperColor(); + break; + case Okular::Settings::EnumRenderMode::Recolor: + color = Okular::Settings::recolorBackground(); + break; + default: ; + } + } + destPainter->fillRect( limits, color ); // draw something on the blank page: the okular icon or a cross (as a fallback) if ( !busyPixmap->isNull() )