Message displaying disabled if messages got removed.

This commit is contained in:
Martin Rotter 2013-12-28 11:44:35 +01:00
parent 6e7312e3e7
commit 0e83739327
1 changed files with 21 additions and 10 deletions

View File

@ -62,19 +62,30 @@ void MessagesView::reloadSelections(int mark_current_index_read) {
current_index = m_proxyModel->mapFromSource(m_sourceModel->index(mapped_current_index.row(),
mapped_current_index.column()));
if (mark_current_index_read == 0) {
// User selected to mark some messages as unread, if one
// of them will be marked as current, then it will be read again.
m_batchUnreadSwitch = true;
setCurrentIndex(current_index);
m_batchUnreadSwitch = false;
if (current_index.isValid()) {
if (mark_current_index_read == 0) {
// User selected to mark some messages as unread, if one
// of them will be marked as current, then it will be read again.
m_batchUnreadSwitch = true;
setCurrentIndex(current_index);
m_batchUnreadSwitch = false;
}
else {
setCurrentIndex(current_index);
}
scrollTo(current_index);
reselectIndexes(selected_indexes);
}
else {
setCurrentIndex(current_index);
// Messages were probably removed from the model, nothing can
// be selected and no message can be displayed.
// TOTO: Check if this is OKAY. If not, then emit this signal
// from FeedsView itself.
emit currentMessageRemoved();
}
scrollTo(current_index);
reselectIndexes(selected_indexes);
}
MessagesModel *MessagesView::sourceModel() {