diff options
author | Eike Ziller <eike.ziller@qt.io> | 2016-09-09 15:37:01 +0200 |
---|---|---|
committer | Eike Ziller <eike.ziller@qt.io> | 2016-09-23 11:26:07 +0000 |
commit | a416a5b6e3e0d0c038276f1093cc5a1a770c3d5c (patch) | |
tree | 0e17342fcaba4a066e8348dc8c51f28bae9f2db2 /src/plugins/help/helpwidget.cpp | |
parent | 2cd307a7b007ef7752d0797d6e99492e797fa0a2 (diff) |
Help: Option to open links in window
Task-number: QTCREATORBUG-16842
Change-Id: I420f48a00c56ebc89bade7e91ceb8ec391316e36
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Diffstat (limited to 'src/plugins/help/helpwidget.cpp')
-rw-r--r-- | src/plugins/help/helpwidget.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/plugins/help/helpwidget.cpp b/src/plugins/help/helpwidget.cpp index 8684e7272da..40697fc50f0 100644 --- a/src/plugins/help/helpwidget.cpp +++ b/src/plugins/help/helpwidget.cpp @@ -417,8 +417,8 @@ void HelpWidget::addViewer(HelpViewer *viewer) { m_viewerStack->addWidget(viewer); viewer->setFocus(Qt::OtherFocusReason); - if (m_style == SideBarWidget || m_style == ExternalWindow) - viewer->setOpenInNewPageActionVisible(false); + viewer->setActionVisible(HelpViewer::Action::NewPage, m_style == ModeWidget); + viewer->setActionVisible(HelpViewer::Action::ExternalWindow, m_style != ExternalWindow); connect(viewer, &HelpViewer::sourceChanged, this, [viewer, this](const QUrl &url) { if (currentViewer() == viewer) emit sourceChanged(url); @@ -438,6 +438,15 @@ void HelpWidget::addViewer(HelpViewer *viewer) connect(viewer, &HelpViewer::titleChanged, this, &HelpWidget::updateWindowTitle); connect(viewer, &HelpViewer::loadFinished, this, &HelpWidget::highlightSearchTerms); + connect(viewer, &HelpViewer::newPageRequested, [](const QUrl &url) { + OpenPagesManager::instance().createPage(url); + }); + connect(viewer, &HelpViewer::externalPageRequested, [](const QUrl &url) { + HelpViewer *viewer = HelpPlugin::viewerForHelpViewerLocation(Core::HelpManager::ExternalHelpAlways); + if (QTC_GUARD(viewer)) + viewer->setSource(url); + Core::ICore::raiseWindow(viewer); + }); updateCloseButton(); } |