diff options
author | Tasuku Suzuki <tasuku.suzuki@signal-slot.co.jp> | 2022-03-29 00:14:48 +0900 |
---|---|---|
committer | Tasuku Suzuki <tasuku.suzuki@signal-slot.co.jp> | 2022-03-31 02:15:31 +0000 |
commit | c49645483ea168c2728ab5fe4db3876532c76374 (patch) | |
tree | 92cc157bcb4fdd268806bc6a19094a06d3263ff4 /src/plugins/help/localhelpmanager.cpp | |
parent | 42d6704c4f690d34ce8751cec6db0c3600b23fbf (diff) | |
download | qt-creator-c49645483ea168c2728ab5fe4db3876532c76374.tar.gz |
Help: support qt-6 online documentation
Last segment of host part represents version string.
e.g. qthelp://org.qt-project.qtwidgets.630/...
If it starts with "6", let's open qt-6 documentation.
Otherwise, let's open qt-5 as it is.
Change-Id: I88b5f6bd2ebfd8494e48f043678dbc190310b90f
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Diffstat (limited to 'src/plugins/help/localhelpmanager.cpp')
-rw-r--r-- | src/plugins/help/localhelpmanager.cpp | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/plugins/help/localhelpmanager.cpp b/src/plugins/help/localhelpmanager.cpp index 49d09d2885..99c73c200d 100644 --- a/src/plugins/help/localhelpmanager.cpp +++ b/src/plugins/help/localhelpmanager.cpp @@ -589,10 +589,22 @@ bool LocalHelpManager::openOnlineHelp(const QUrl &url) if (canOpenOnlineHelp(url)) { QString urlPrefix = "http://doc.qt.io/"; - if (url.authority().startsWith(unversionedLocalDomainName)) + if (url.authority().startsWith(unversionedLocalDomainName)) { urlPrefix.append(Core::Constants::IDE_ID); - else - urlPrefix.append("qt-5"); + } else { + const auto host = url.host(); + const auto dot = host.lastIndexOf('.'); + if (dot < 0) { + urlPrefix.append("qt-5"); + } else { + const auto version = host.mid(dot + 1); + if (version.startsWith('6')) { + urlPrefix.append("qt-6"); + } else { + urlPrefix.append("qt-5"); + } + } + } const QString address = url.toString(); QDesktopServices::openUrl(QUrl(urlPrefix + address.mid(address.lastIndexOf(QLatin1Char('/'))))); return true; |