projects
/
dorian
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix forward navigation control on Linux.
[dorian]
/
mainwindow.cpp
diff --git
a/mainwindow.cpp
b/mainwindow.cpp
index
4ab3b90
..
8694cd2
100755
(executable)
--- a/
mainwindow.cpp
+++ b/
mainwindow.cpp
@@
-43,10
+43,6
@@
MainWindow::MainWindow(QWidget *parent):
setAttribute(Qt::WA_Maemo5StackedWindow, true);
#endif
setAttribute(Qt::WA_Maemo5StackedWindow, true);
#endif
-#ifndef Q_OS_SYMBIAN
- setWindowTitle("Dorian");
-#endif
-
// Central widget. Must be an intermediate, because the book view widget
// might be re-parented later
QFrame *central = new QFrame(this);
// Central widget. Must be an intermediate, because the book view widget
// might be re-parented later
QFrame *central = new QFrame(this);
@@
-122,7
+118,7
@@
MainWindow::MainWindow(QWidget *parent):
connect(view, SIGNAL(progress(qreal)), prog, SLOT(setProgress(qreal)));
// Shadow window for full screen reading
connect(view, SIGNAL(progress(qreal)), prog, SLOT(setProgress(qreal)));
// Shadow window for full screen reading
- fullScreenWindow = new FullScreenWindow(this);
+ fullScreenWindow = new FullScreenWindow();
connect(fullScreenWindow, SIGNAL(restore()), this, SLOT(showRegular()));
// Handle settings changes
connect(fullScreenWindow, SIGNAL(restore()), this, SLOT(showRegular()));
// Handle settings changes
@@
-138,11
+134,19
@@
MainWindow::MainWindow(QWidget *parent):
#endif
}
#endif
}
+MainWindow::~MainWindow()
+{
+ delete fullScreenWindow;
+}
+
void MainWindow::initialize()
{
TRACE;
Library *library = Library::instance();
void MainWindow::initialize()
{
TRACE;
Library *library = Library::instance();
+ // Show in regular (non full-screen) mode
+ showRegular();
+
// Upgrade library if needed, then load it
library->upgrade();
library->load();
// Upgrade library if needed, then load it
library->upgrade();
library->load();
@@
-167,9
+171,6
@@
void MainWindow::initialize()
library->setNowReading(sorted.mapToSource(sorted.index(0, 0)));
}
}
library->setNowReading(sorted.mapToSource(sorted.index(0, 0)));
}
}
-
- // Show in regular (non full-screen) mode
- showRegular();
}
void MainWindow::onCurrentBookChanged()
}
void MainWindow::onCurrentBookChanged()
@@
-182,28
+183,30
@@
void MainWindow::showRegular()
{
TRACE;
{
TRACE;
- // Re-parent children
+ view->setLastBookmark();
fullScreenWindow->leaveBookView();
takeBookView(view, prog, prev, next);
fullScreenWindow->hide();
show();
fullScreenWindow->leaveBookView();
takeBookView(view, prog, prev, next);
fullScreenWindow->hide();
show();
+ view->scheduleRestoreLastBookmark();
}
void MainWindow::showBig()
{
TRACE;
}
void MainWindow::showBig()
{
TRACE;
- // Re-parent children
+ view->setLastBookmark();
leaveBookView();
fullScreenWindow->takeBookView(view, prog, prev, next);
leaveBookView();
fullScreenWindow->takeBookView(view, prog, prev, next);
-#ifdef Q_WS_MAEMO_5
+#if defined(Q_WS_MAEMO_5)
fullScreenWindow->raise();
#else
hide();
#endif
fullScreenWindow->showFullScreen();
fullScreenWindow->raise();
#else
hide();
#endif
fullScreenWindow->showFullScreen();
+ view->scheduleRestoreLastBookmark();
}
void MainWindow::setCurrentBook(const QModelIndex ¤t)
}
void MainWindow::setCurrentBook(const QModelIndex ¤t)
@@
-229,6
+232,7
@@
void MainWindow::rotate()
QString current = Settings::instance()->value("orientation",
Platform::instance()->defaultOrientation()).toString();
QString target = (current == "landscape")? "portrait": "landscape";
QString current = Settings::instance()->value("orientation",
Platform::instance()->defaultOrientation()).toString();
QString target = (current == "landscape")? "portrait": "landscape";
+ view->setLastBookmark();
Settings::instance()->setValue("orientation", target);
}
Settings::instance()->setValue("orientation", target);
}
@@
-256,7
+260,6
@@
void MainWindow::onSettingsChanged(const QString &key)
qDebug() << "Key" << key;
if (key == "orientation") {
qDebug() << "Key" << key;
if (key == "orientation") {
- view->setLastBookmark();
QString value = Settings::instance()->value(key,
Platform::instance()->defaultOrientation()).toString();
qDebug() << "Value: orientation" << value;
QString value = Settings::instance()->value(key,
Platform::instance()->defaultOrientation()).toString();
qDebug() << "Value: orientation" << value;
@@
-355,6
+358,12
@@
void MainWindow::about()
Dyalog *aboutDialog = new Dyalog(this, false);
aboutDialog->setWindowTitle(tr("About Dorian"));
QString version = Platform::instance()->version();
Dyalog *aboutDialog = new Dyalog(this, false);
aboutDialog->setWindowTitle(tr("About Dorian"));
QString version = Platform::instance()->version();
+#if !defined(Q_WS_MAEMO_5) && !defined(Q_OS_SYMBIAN)
+ QLabel *icon = new QLabel(aboutDialog);
+ QPixmap pixmap(Platform::instance()->icon("dorian"));
+ icon->setPixmap(pixmap);
+ aboutDialog->addWidget(icon);
+#endif
QLabel *label = new QLabel(aboutDialog);
label->setTextFormat(Qt::RichText);
label->setOpenExternalLinks(true);
QLabel *label = new QLabel(aboutDialog);
label->setTextFormat(Qt::RichText);
label->setOpenExternalLinks(true);