Dead end.
authorAkos Polster <polster@marzipan.pipacs.com>
Sun, 1 Aug 2010 18:16:00 +0000 (20:16 +0200)
committerAkos Polster <polster@marzipan.pipacs.com>
Sun, 1 Aug 2010 18:16:00 +0000 (20:16 +0200)
bookview.cpp
mainwindow.cpp

index 32c2b4c..44bdc48 100644 (file)
@@ -363,11 +363,10 @@ void BookView::addJavaScriptObjects()
 
 void BookView::onContentsSizeChanged(const QSize &size)
 {
-    Trace t("BookView::onContentsSizeChanged");
-    t.trace(QString("To %1").arg(size.height()));
     contentsHeight = size.height();
     if (decorated) {
         if (restorePositionAfterLoad) {
+            Trace::debug("BookView::onContentSizeChanged: Time to restore");
             restorePositionAfterLoad = false;
             goToPosition(positionAfterLoad);
         }
@@ -377,6 +376,7 @@ void BookView::onContentsSizeChanged(const QSize &size)
 void BookView::leaveEvent(QEvent *e)
 {
     Trace t("BookView::leaveEvent");
+    // Save current position, to be restored later
     setLastBookmark();
     QWebView::leaveEvent(e);
 }
@@ -384,6 +384,8 @@ void BookView::leaveEvent(QEvent *e)
 void BookView::enterEvent(QEvent *e)
 {
     Trace t("BookView::enterEvent");
+    // Restore position saved at Leave event. This seems to be required,
+    // after temporarily switching from portrait to landscape and back
     restoreLastBookmark();
     QWebView::enterEvent(e);
 }
index e9d28ce..b10614b 100755 (executable)
@@ -231,12 +231,17 @@ void MainWindow::onSettingsChanged(const QString &key)
         // view->setLastBookmark();
         QString value = Settings::instance()->value(key).toString();
         if (value == "portrait") {
+            setAttribute(Qt::WA_Maemo5LandscapeOrientation, false);
             setAttribute(Qt::WA_Maemo5PortraitOrientation, true);
         }
         else {
+            setAttribute(Qt::WA_Maemo5PortraitOrientation, false);
             setAttribute(Qt::WA_Maemo5LandscapeOrientation, true);
         }
 
+        // FIXME: Orientation change should re-activate the window but it doesn't.
+        // And I have no idea how to force it
+
         // view->restoreLastBookmark();
         // view->setFocus();
         // raise();