Make orientation switch explicit on Symbian, too.
[dorian] / mainwindow.cpp
index 22a06fe..e20bf84 100755 (executable)
@@ -42,10 +42,13 @@ MainWindow::MainWindow(QWidget *parent):
 #ifdef Q_WS_MAEMO_5
     setAttribute(Qt::WA_Maemo5StackedWindow, true);
 #endif
+
+#ifndef Q_OS_SYMBIAN
     setWindowTitle("Dorian");
+#endif
 
     // Central widget. Must be an intermediate, because the book view widget
-    // can be re-parented later
+    // might be re-parented later
     QFrame *central = new QFrame(this);
     QVBoxLayout *layout = new QVBoxLayout(central);
     layout->setMargin(0);
@@ -54,7 +57,6 @@ MainWindow::MainWindow(QWidget *parent):
 
     // Book view
     view = new BookView(this);
-    view->show();
 
     // Tool bar actions
 
@@ -107,7 +109,8 @@ MainWindow::MainWindow(QWidget *parent):
     // Load library, upgrade it if needed
     libraryProgress = new ProgressDialog(tr("Upgrading library"), this);
     Library *library = Library::instance();
-    connect(library, SIGNAL(beginUpgrade(int)), this, SLOT(onBeginUpgrade(int)));
+    connect(library, SIGNAL(beginUpgrade(int)),
+            this, SLOT(onBeginUpgrade(int)));
     connect(library, SIGNAL(upgrading(const QString &)),
             this, SLOT(onUpgrading(const QString &)));
     connect(library, SIGNAL(endUpgrade()), this, SLOT(onEndUpgrade()));
@@ -187,7 +190,7 @@ void MainWindow::showRegular()
     fullScreenWindow->hide();
     show();
 
-#if 0 // #if defined(Q_OS_SYMBIAN)
+#if defined(Q_OS_SYMBIAN)
     activateWindow();
 #endif
 }
@@ -203,7 +206,7 @@ void MainWindow::showBig()
     fullScreenWindow->showFullScreen();
     hide();
 
-#if 0 // #ifdef Q_OS_SYMBIAN
+#ifdef Q_OS_SYMBIAN
     fullScreenWindow->activateWindow();
 #endif
 }
@@ -252,45 +255,29 @@ void MainWindow::showBookmarks()
     }
 }
 
-void MainWindow::closeEvent(QCloseEvent *event)
+void MainWindow::onSettingsChanged(const QString &key)
 {
     TRACE;
-    view->setLastBookmark();
-    AdopterWindow::closeEvent(event);
-}
+    qDebug() << "Key" << key;
 
-void MainWindow::onSettingsChanged(const QString &key)
-{
-#if defined(Q_WS_MAEMO_5)
     if (key == "orientation") {
+        view->setLastBookmark();
         QString value = Settings::instance()->value(key,
             Platform::instance()->defaultOrientation()).toString();
-        qDebug() << "MainWindow::onSettingsChanged: orientation" << value;
-        if (value == "portrait") {
-            setAttribute(Qt::WA_Maemo5LandscapeOrientation, false);
-            setAttribute(Qt::WA_Maemo5PortraitOrientation, true);
-            fullScreenWindow->setAttribute(Qt::WA_Maemo5LandscapeOrientation,
-                                           false);
-            fullScreenWindow->setAttribute(Qt::WA_Maemo5PortraitOrientation, true);
-        } else {
-            setAttribute(Qt::WA_Maemo5PortraitOrientation, false);
-            setAttribute(Qt::WA_Maemo5LandscapeOrientation, true);
-            fullScreenWindow->setAttribute(Qt::WA_Maemo5PortraitOrientation,
-                                           false);
-            fullScreenWindow->setAttribute(Qt::WA_Maemo5LandscapeOrientation,
-                                           true);
-        }
-    } else if (key == "lightson") {
+        qDebug() << "Value: orientation" << value;
+        Platform::instance()->setOrientation(this, value);
+        Platform::instance()->setOrientation(fullScreenWindow, value);
+    }
+
+#if defined(Q_WS_MAEMO_5)
+    else if (key == "lightson") {
         bool enable = Settings::instance()->value(key, false).toBool();
-        qDebug() << "MainWindow::onSettingsChanged: lightson" << enable;
         killTimer(preventBlankingTimer);
         if (enable) {
             preventBlankingTimer = startTimer(29 * 1000);
         }
     }
-#else
-    Q_UNUSED(key);
-#endif // Q_WS_MAEMO_5
+#endif // defined(Q_WS_MAEMO_5)
 }
 
 void MainWindow::onPartLoadStart()