diff options
author | kh1 <qt-info@nokia.com> | 2010-08-23 14:30:29 +0200 |
---|---|---|
committer | hjk <qtc-committer@nokia.com> | 2010-08-23 15:25:57 +0200 |
commit | 7974504797d364c0bc79e14375a293ce6fdc4b38 (patch) | |
tree | f607153722fe3af5218329f69396f2b6316a79c5 | |
parent | f8c1d16e45e353d08dd2008079d843a2f06e3baf (diff) |
Fix jumping to an anchor once the page has been scrolled.
Task-number: QTCREATORBUG-2130
(cherry picked from commit 9e352be3b1698ee3607ca9c6760a82340d8b50b8)
-rw-r--r-- | src/plugins/help/helpplugin.cpp | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/src/plugins/help/helpplugin.cpp b/src/plugins/help/helpplugin.cpp index e8c733b0f7..9c7beb8682 100644 --- a/src/plugins/help/helpplugin.cpp +++ b/src/plugins/help/helpplugin.cpp @@ -719,16 +719,20 @@ void HelpPlugin::activateContext() viewer->stop(); #endif viewer->setSource(source); - } - viewer->setFocus(); - connect(viewer, SIGNAL(loadFinished(bool)), this, - SLOT(highlightSearchTerms())); + connect(viewer, SIGNAL(loadFinished(bool)), this, + SLOT(highlightSearchTerms())); - if (source.toString().remove(source.fragment()) - == oldSource.toString().remove(oldSource.fragment())) { - highlightSearchTerms(); + if (source.toString().remove(source.fragment()) + == oldSource.toString().remove(oldSource.fragment())) { + highlightSearchTerms(); + } + } else { +#if !defined(QT_NO_WEBKIT) + viewer->page()->mainFrame()->scrollToAnchor(source.fragment()); +#endif } } + viewer->setFocus(); } } @@ -866,7 +870,7 @@ void HelpPlugin::highlightSearchTerms() if (attrValue == name || name.startsWith(attrValue + QLatin1Char('-'))) { QWebElement parent = element.parent(); m_styleProperty = parent.styleProperty(property, - QWebElement::InlineStyle); + QWebElement::ComputedStyle); parent.setStyleProperty(property, QLatin1String("yellow")); } } |