bug-fix: restore header from edit mode after web side logic is ready

This commit is contained in:
Le Tan 2017-12-20 20:47:59 +08:00
parent c5a17b210b
commit 7fd5ec26e5
2 changed files with 8 additions and 3 deletions

View File

@ -81,7 +81,8 @@ void VMdTab::showFileReadMode()
{
m_isEditMode = false;
VHeaderPointer header(m_currentHeader);
// Will recover the header when web side is ready.
m_headerFromEditMode = m_currentHeader;
if (m_mdConType == MarkdownConverterType::Hoedown) {
viewWebByConverter();
@ -93,8 +94,6 @@ void VMdTab::showFileReadMode()
m_stacks->setCurrentWidget(m_webViewer);
clearSearchedWordHighlight();
scrollWebViewToHeader(header);
updateStatus();
}
@ -395,6 +394,9 @@ void VMdTab::setupMarkdownViewer()
connect(m_document, &VDocument::logicsFinished,
this, [this]() {
if (m_ready & TabReady::ReadMode) {
// Recover header from edit mode.
scrollWebViewToHeader(m_headerFromEditMode);
m_headerFromEditMode.clear();
return;
}

View File

@ -196,6 +196,9 @@ private:
QTimer *m_backupTimer;
bool m_backupFileChecked;
// Used to scroll to the header of edit mode in read mode.
VHeaderPointer m_headerFromEditMode;
};
inline VMdEditor *VMdTab::getEditor()