[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [gwenview] lib/documentview: Fix images not showing after viewing a video
From:       Aurélien Gâteau <agateau () kde ! org>
Date:       2012-06-14 18:43:43
Message-ID: 20120614184343.E2618A60A9 () git ! kde ! org
[Download RAW message or body]

Git commit e4e135c63ff7851af4fe3f74ffc9cd6c3dd8f379 by Aurélien Gâteau.
Committed on 14/06/2012 at 20:43.
Pushed by gateau into branch 'master'.

Fix images not showing after viewing a video

M  +8    -5    lib/documentview/documentview.cpp
M  +3    -1    lib/documentview/documentview.h

http://commits.kde.org/gwenview/e4e135c63ff7851af4fe3f74ffc9cd6c3dd8f379

diff --git a/lib/documentview/documentview.cpp b/lib/documentview/documentview.cpp
index 6742920..5451062 100644
--- a/lib/documentview/documentview.cpp
+++ b/lib/documentview/documentview.cpp
@@ -133,7 +133,7 @@ struct DocumentViewPrivate
             adapter->widget()->setFocus();
         }
 
-        if (adapter->canZoom()) {
+        if (mSetup.valid && adapter->canZoom()) {
             adapter->setZoomToFit(mSetup.zoomToFit);
             if (!mSetup.zoomToFit) {
                 adapter->setZoom(mSetup.zoom);
@@ -446,10 +446,13 @@ void DocumentView::slotCompleted()
 DocumentView::Setup DocumentView::setup() const
 {
     Setup setup;
-    setup.zoomToFit = zoomToFit();
-    if (!setup.zoomToFit) {
-        setup.zoom = zoom();
-        setup.position = position();
+    if (d->mAdapter->canZoom()) {
+        setup.valid = true;
+        setup.zoomToFit = zoomToFit();
+        if (!setup.zoomToFit) {
+            setup.zoom = zoom();
+            setup.position = position();
+        }
     }
     return setup;
 }
diff --git a/lib/documentview/documentview.h b/lib/documentview/documentview.h
index 518f911..13e41b0 100644
--- a/lib/documentview/documentview.h
+++ b/lib/documentview/documentview.h
@@ -60,7 +60,9 @@ public:
     static const int AnimDuration;
 
     struct Setup {
-        bool zoomToFit;
+        Setup() : valid(false) {}
+        bool valid:1;
+        bool zoomToFit:1;
         qreal zoom;
         QPointF position;
     };
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic