Line 0
Link Here
|
|
|
1 |
From 6faf11215e1af27d35e921ae669aa0251a01a1ab Mon Sep 17 00:00:00 2001 |
2 |
From: =?UTF-8?q?Michael=20Br=C3=BCning?= <michael.bruning@digia.com> |
3 |
Date: Wed, 13 Nov 2013 18:13:36 +0100 |
4 |
Subject: [PATCH] Trigger layout after resizing the FrameView. |
5 |
|
6 |
There are problems with QGLWidget based web plugins due to the fact |
7 |
that WebKit forces us to relayout during paint events, which in turn |
8 |
might resize widgets, causing the shared backing store's QImages to |
9 |
be corrupted and hence causing crashed. |
10 |
|
11 |
This patch triggers a layout upon resizing the FrameView, which reduces |
12 |
the likely hood of resizing plugins during a subsequent paintEvent. |
13 |
|
14 |
Task-number: QTBUG-34277 |
15 |
Change-Id: Id35c72a3cc68ac6633a74fba0669c2d8fbfabc88 |
16 |
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com> |
17 |
--- |
18 |
Source/WebKit/qt/WebCoreSupport/QWebFrameAdapter.cpp | 3 +++ |
19 |
1 file changed, 3 insertions(+) |
20 |
|
21 |
diff --git a/Source/WebKit/qt/WebCoreSupport/QWebFrameAdapter.cpp b/Source/WebKit/qt/WebCoreSupport/QWebFrameAdapter.cpp |
22 |
index e6145b6ffb82..941d8df603d9 100644 |
23 |
--- Source/WebKit/qt/WebCoreSupport/QWebFrameAdapter.cpp |
24 |
+++ Source/WebKit/qt/WebCoreSupport/QWebFrameAdapter.cpp |
25 |
@@ -962,6 +962,9 @@ void QWebFrameAdapter::setViewportSize(const QSize& size) |
26 |
ASSERT(view); |
27 |
view->resize(size); |
28 |
view->adjustViewSize(); |
29 |
+ |
30 |
+ if (view->needsLayout()) |
31 |
+ view->layout(); |
32 |
} |
33 |
|
34 |
|