From 84607127fec2f03fd4a2078392ce503f59b6a440 Mon Sep 17 00:00:00 2001 From: Felix Kauselmann <2039670+selmf@users.noreply.github.com> Date: Fri, 2 Jan 2015 14:39:13 +0100 Subject: [PATCH] Make sure we always have a valid fit mode, even if someone or something screws with the config --- YACReader/viewer.cpp | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/YACReader/viewer.cpp b/YACReader/viewer.cpp index b9717a46..67c0169e 100644 --- a/YACReader/viewer.cpp +++ b/YACReader/viewer.cpp @@ -320,7 +320,7 @@ void Viewer::updateContentSize() { content->resize(currentPage->size()); } - if(Configuration::getConfiguration().getFitMode()=="full_page") + else if(Configuration::getConfiguration().getFitMode()=="full_page") { QSize pagefit=currentPage->size(); pagefit.scale(size(), Qt::KeepAspectRatio); @@ -329,7 +329,7 @@ void Viewer::updateContentSize() //float aspectRatio = (float)currentPage->width()/currentPage->height(); //Fit to width - if(Configuration::getConfiguration().getFitMode()=="to_width") + else if(Configuration::getConfiguration().getFitMode()=="to_width") { QSize pagefit=currentPage->size(); pagefit.scale(width(), 0, Qt::KeepAspectRatioByExpanding); @@ -356,13 +356,21 @@ void Viewer::updateContentSize() else content->resize(static_cast(height()*aspectRatio),height()); }*/ - if(Configuration::getConfiguration().getFitMode()=="to_height") + else if(Configuration::getConfiguration().getFitMode()=="to_height") { QSize pagefit=currentPage->size(); pagefit.scale(0, height(), Qt::KeepAspectRatioByExpanding); content->resize(pagefit); } + else //if everything else fails use full_page + { + Configuration::getConfiguration().setFitMode("full_page"); + QSize pagefit=currentPage->size(); + pagefit.scale(size(), Qt::KeepAspectRatio); + content->resize(pagefit); + } + } if(Configuration::getConfiguration().getPageZoomLevel())