mirror of
https://gitee.com/spark-store-project/spark-store
synced 2025-12-18 10:01:38 +08:00
feat: 首页链接调用浏览器打开
首页链接调用浏览器打开 Log: 使用自定义 WebEngineView 和 WebEnginePage 替代 QWebEngineView,重写 createWindow 方法,当页面存在新建窗口或标签页动作时调用浏览器打开网址;修改 Widget UI 布局,在 page1 添加 QVBoxLayout,保证 WebEngineView 自动撑满布局,去除 webFoot 填充控件;更新翻译文件,添加“请勿频繁搜索”翻译文案,去除残留翻译
This commit is contained in:
44
src/webengine/webenginepage.cpp
Normal file
44
src/webengine/webenginepage.cpp
Normal file
@@ -0,0 +1,44 @@
|
||||
#include "webenginepage.h"
|
||||
|
||||
#include <QDesktopServices>
|
||||
|
||||
WebEnginePage::WebEnginePage(QObject *parent)
|
||||
: QWebEnginePage(parent)
|
||||
{
|
||||
}
|
||||
|
||||
WebEnginePage::~WebEnginePage()
|
||||
{
|
||||
}
|
||||
|
||||
void WebEnginePage::setUrl(const QUrl &url)
|
||||
{
|
||||
if (m_currentUrl == url) {
|
||||
return;
|
||||
}
|
||||
|
||||
m_currentUrl = url;
|
||||
QWebEnginePage::setUrl(url);
|
||||
}
|
||||
|
||||
QWebEnginePage *WebEnginePage::createWindow(QWebEnginePage::WebWindowType type)
|
||||
{
|
||||
Q_UNUSED(type)
|
||||
|
||||
WebEnginePage *page = new WebEnginePage(parent());
|
||||
connect(page, &WebEnginePage::urlChanged, this, &WebEnginePage::slotUrlChanged);
|
||||
return page;
|
||||
}
|
||||
|
||||
void WebEnginePage::slotUrlChanged(const QUrl &url)
|
||||
{
|
||||
if (m_currentUrl == url) {
|
||||
sender()->deleteLater();
|
||||
return;
|
||||
}
|
||||
|
||||
qDebug() << Q_FUNC_INFO << m_currentUrl << url;
|
||||
|
||||
QDesktopServices::openUrl(url);
|
||||
sender()->deleteLater();
|
||||
}
|
||||
Reference in New Issue
Block a user