diff options
author | Tarja Sundqvist <tarja.sundqvist@qt.io> | 2025-06-04 09:23:45 +0300 |
---|---|---|
committer | Tarja Sundqvist <tarja.sundqvist@qt.io> | 2025-06-04 09:23:45 +0300 |
commit | 94c09aab1dac228a9ddf03abd7d76559b5d6af16 (patch) | |
tree | 9a02c6407dded2f74b6790f8686c4ab7c8777b21 /src/webenginewidgets/api/qwebengineview.cpp | |
parent | f08b503f680e8a6d4021d2fd21d2386f8e60da24 (diff) | |
parent | 0efae85f199a61fd6919703cfbb74d680d9a9443 (diff) |
Merge tag 'v6.5.6-lts' into 6.5.66.5.6
Qt 6.5.6-lts release
Conflicts solved:
dependencies.yaml
Change-Id: I31ed402989d58b5195459a8a3bf309e6354c35f6
Diffstat (limited to 'src/webenginewidgets/api/qwebengineview.cpp')
-rw-r--r-- | src/webenginewidgets/api/qwebengineview.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/webenginewidgets/api/qwebengineview.cpp b/src/webenginewidgets/api/qwebengineview.cpp index c4a0da4d9..e28f70b5f 100644 --- a/src/webenginewidgets/api/qwebengineview.cpp +++ b/src/webenginewidgets/api/qwebengineview.cpp @@ -1,6 +1,7 @@ // Copyright (C) 2021 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only +#include "qapplication.h" #include "qwebenginenotificationpresenter_p.h" #include "qwebengineview.h" #include "qwebengineview_p.h" @@ -156,6 +157,7 @@ public: } void SetClearColor(const QColor &color) override { + setUpdatesEnabled(false); QQuickWidget::setClearColor(color); // QQuickWidget is usually blended by punching holes into widgets // above it to simulate the visual stacking order. If we want it to be @@ -164,7 +166,8 @@ public: bool isTranslucent = color.alpha() < 255; setAttribute(Qt::WA_AlwaysStackOnTop, isTranslucent); setAttribute(Qt::WA_OpaquePaintEvent, !isTranslucent); - update(); + setUpdatesEnabled(true); + window()->update(); } void MoveWindow(const QPoint &screenPos) override { @@ -441,6 +444,8 @@ void QWebEngineViewPrivate::widgetChanged(QtWebEngineCore::WebEngineQuickWidget #endif q->layout()->addWidget(newWidget); q->setFocusProxy(newWidget); + if (oldWidget && oldWidget == QApplication::focusWidget()) + newWidget->setFocus(); newWidget->show(); } } |