logic: Return to last scroll position in code view on undo

* fixed scrolling on undo
* refactored autoscrolling in code view
* save scroll position of user with MessageScrollCode
This commit is contained in:
Eberhard Graether
2016-01-29 13:08:30 +01:00
parent 427c94457b
commit ead0abfba2
20 changed files with 240 additions and 91 deletions
+9 -10
View File
@@ -265,13 +265,13 @@ QtCodeSnippet* QtCodeFile::findFirstActiveSnippet() const
return nullptr;
}
bool QtCodeFile::openCollapsedActiveSnippet() const
bool QtCodeFile::isCollapsedActiveFile() const
{
bool isActiveFile = false;
if (m_locationFile)
{
std::vector<Id> ids = getActiveTokenIds();
bool isActiveFile = false;
m_locationFile->forEachTokenLocation(
[&](TokenLocation* location)
{
@@ -281,15 +281,9 @@ bool QtCodeFile::openCollapsedActiveSnippet() const
}
}
);
if (isActiveFile)
{
showSnippets();
return true;
}
}
return false;
return isActiveFile;
}
void QtCodeFile::updateContent()
@@ -430,7 +424,7 @@ void QtCodeFile::clickedMaximizeButton() const
).dispatch();
}
void QtCodeFile::showSnippets() const
void QtCodeFile::requestSnippets() const
{
if (m_snippetsRequested)
{
@@ -450,6 +444,11 @@ void QtCodeFile::showSnippets() const
msg.dispatch();
}
bool QtCodeFile::hasSnippets() const
{
return m_snippets.size() > 0;
}
void QtCodeFile::handleMessage(MessageWindowFocus* message)
{
updateTitleBar();