From 01b0810fecf804aa02a17092020668fe7005f227 Mon Sep 17 00:00:00 2001 From: Jason Hawks Date: Fri, 13 Feb 2015 18:52:33 -0500 Subject: [PATCH] added framework to make links clickable to InfoView --- interface/src/ui/InfoView.cpp | 9 +++++++++ interface/src/ui/InfoView.h | 1 + 2 files changed, 10 insertions(+) diff --git a/interface/src/ui/InfoView.cpp b/interface/src/ui/InfoView.cpp index 607b222207..b62b8f3f2d 100644 --- a/interface/src/ui/InfoView.cpp +++ b/interface/src/ui/InfoView.cpp @@ -11,6 +11,7 @@ #include #include +#include #include #include #include @@ -32,6 +33,9 @@ InfoView::InfoView(bool forced, QString path) : QString absPath = QFileInfo(PathUtils::resourcesPath() + path).absoluteFilePath(); QUrl url = QUrl::fromLocalFile(absPath); + page()->setLinkDelegationPolicy(QWebPage::DelegateExternalLinks); + connect(this, SIGNAL(linkClicked(QUrl)), this, SLOT(linkClickedInfoView(QUrl))); + load(url); connect(this, SIGNAL(loadFinished(bool)), this, SLOT(loaded(bool))); } @@ -83,3 +87,8 @@ void InfoView::loaded(bool ok) { setAttribute(Qt::WA_DeleteOnClose); show(); } + +void InfoView::linkClickedInfoView(QUrl url) { + close(); + QDesktopServices::openUrl(url); +} diff --git a/interface/src/ui/InfoView.h b/interface/src/ui/InfoView.h index 47d5dac9ce..1198a703e4 100644 --- a/interface/src/ui/InfoView.h +++ b/interface/src/ui/InfoView.h @@ -27,6 +27,7 @@ private: private slots: void loaded(bool ok); + void linkClickedInfoView(QUrl url); }; #endif // hifi_InfoView_h