Fixed msg opening.

This commit is contained in:
Martin Rotter 2015-06-11 13:48:38 +02:00
parent a86d53ceef
commit 5c1915c98b
4 changed files with 21 additions and 9 deletions

View File

@ -7,7 +7,7 @@ Added:
Fixed:
<ul>
<li></li>
<li>Double-clickin on message now results in opening source article in mini web browser.</li>
</ul>
<hr/>

View File

@ -287,6 +287,7 @@ void FeedMessageViewer::createConnections() {
connect(m_feedsView, SIGNAL(messageCountsChanged(int,int,bool)), this, SLOT(updateTrayIconStatus(int,int,bool)));
// Message openers.
connect(m_messagesView, SIGNAL(openLinkMiniBrowser(QString)), m_messagesBrowser, SLOT(navigateToUrl(QString)));
connect(m_messagesView, SIGNAL(openMessagesInNewspaperView(QList<Message>)),
form_main->m_ui->m_tabWidget, SLOT(addBrowserWithMessages(QList<Message>)));
connect(m_messagesView, SIGNAL(openLinkNewTab(QString)),
@ -311,7 +312,7 @@ void FeedMessageViewer::createConnections() {
connect(form_main->m_ui->m_actionMarkSelectedMessagesAsUnread,
SIGNAL(triggered()), m_messagesView, SLOT(markSelectedMessagesUnread()));
connect(form_main->m_ui->m_actionOpenSelectedSourceArticlesExternally,
SIGNAL(triggered()), m_messagesView, SLOT(openSelectedSourceArticlesExternally()));
SIGNAL(triggered()), m_messagesView, SLOT(openSelectedSourceMessagesExternally()));
connect(form_main->m_ui->m_actionOpenSelectedSourceArticlesInternally,
SIGNAL(triggered()), m_messagesView, SLOT(openSelectedSourceMessagesInternally()));
connect(form_main->m_ui->m_actionOpenSelectedMessagesInternally,

View File

@ -56,9 +56,7 @@ void MessagesView::setSortingEnabled(bool enable) {
}
void MessagesView::createConnections() {
// Make sure that source message is opened
// in new tab on double click.
connect(this, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(openSelectedSourceArticlesExternally()));
connect(this, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(openSelectedSourceMessagesInternallyNoNewTab()));
// Adjust columns when layout gets changed.
connect(header(), SIGNAL(geometriesChanged()), this, SLOT(adjustColumns()));
@ -249,7 +247,7 @@ void MessagesView::loadFeeds(const FeedsSelection &selection) {
emit currentMessagesRemoved();
}
void MessagesView::openSelectedSourceArticlesExternally() {
void MessagesView::openSelectedSourceMessagesExternally() {
foreach (const QModelIndex &index, selectionModel()->selectedRows()) {
QString link = m_sourceModel->messageAt(m_proxyModel->mapToSource(index).row()).m_url;
@ -263,7 +261,9 @@ void MessagesView::openSelectedSourceArticlesExternally() {
}
// Finally, mark opened messages as read.
markSelectedMessagesRead();
if (selectionModel()->selectedRows().size() > 1) {
markSelectedMessagesRead();
}
}
void MessagesView::openSelectedSourceMessagesInternally() {
@ -282,7 +282,16 @@ void MessagesView::openSelectedSourceMessagesInternally() {
}
// Finally, mark opened messages as read.
markSelectedMessagesRead();
if (selectionModel()->selectedRows().size() > 1) {
markSelectedMessagesRead();
}
}
void MessagesView::openSelectedSourceMessagesInternallyNoNewTab() {
if (selectionModel()->selectedRows().size() == 1) {
emit openLinkMiniBrowser(
m_sourceModel->messageAt(m_proxyModel->mapToSource(selectionModel()->selectedRows().at(0)).row()).m_url);
}
}
void MessagesView::openSelectedMessagesInternally() {

View File

@ -63,8 +63,9 @@ class MessagesView : public QTreeView {
void loadFeeds(const FeedsSelection &selection);
// Message manipulators.
void openSelectedSourceArticlesExternally();
void openSelectedSourceMessagesExternally();
void openSelectedSourceMessagesInternally();
void openSelectedSourceMessagesInternallyNoNewTab();
void openSelectedMessagesInternally();
void sendSelectedMessageViaEmail();
@ -110,6 +111,7 @@ class MessagesView : public QTreeView {
signals:
// Link/message openers.
void openLinkNewTab(const QString &link);
void openLinkMiniBrowser(const QString &link);
void openMessagesInNewspaperView(const QList<Message> &messages);
// Notify others about message selections.