2.3.3-1
- qtwebkit-2.3.3 - include some post 2.3.3 commits/fixes
This commit is contained in:
parent
8f60fcf973
commit
30bd45bb64
3
.gitignore
vendored
3
.gitignore
vendored
@ -1,3 +1,2 @@
|
||||
/qtwebkit-developers-qtwebkit-qtwebkit-2.1.1.tar.xz
|
||||
/qtwebkit-2.2.2-source.tar.xz
|
||||
/qtwebkit-2.3.2.tar.xz
|
||||
/qtwebkit-2.3.3.tar.xz
|
||||
|
81
0002-Texmap-GTK-The-poster-circle-doesn-t-appear.patch
Normal file
81
0002-Texmap-GTK-The-poster-circle-doesn-t-appear.patch
Normal file
@ -0,0 +1,81 @@
|
||||
From 14dca2f9fc4fd1a370cdf7d0d690472e1f56da8b Mon Sep 17 00:00:00 2001
|
||||
From: ChangSeok Oh <shivamidow@gmail.com>
|
||||
Date: Tue, 3 Sep 2013 13:51:29 +0200
|
||||
Subject: [PATCH 2/9] [Texmap][GTK] The poster-circle doesn't appear.
|
||||
https://bugs.webkit.org/show_bug.cgi?id=106672
|
||||
|
||||
Patch by ChangSeok Oh <shivamidow@gmail.com> on 2013-01-21
|
||||
Reviewed by Noam Rosenthal.
|
||||
|
||||
Source/WebCore:
|
||||
|
||||
We need to call setNeedsDisplay to redraw GraphicsLayer after we set drawsContent
|
||||
a new value for the layer. Otherwise we can't get a chance for first drawing the layer.
|
||||
|
||||
Test: compositing/visibility/visibility-composited-animation.html
|
||||
|
||||
* platform/graphics/texmap/TextureMapperLayer.cpp:
|
||||
(WebCore::TextureMapperLayer::flushCompositingStateForThisLayerOnly):
|
||||
|
||||
LayoutTests:
|
||||
|
||||
A new pixel test is added. It tests if animated layer is drawn for the first scene.
|
||||
|
||||
* compositing/visibility/visibility-composited-animation-expected.png: Added.
|
||||
* compositing/visibility/visibility-composited-animation-expected.txt: Added.
|
||||
* compositing/visibility/visibility-composited-animation.html: Added.
|
||||
|
||||
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140347 268f45cc-cd09-0410-ab3c-d52691b4dbfc
|
||||
---
|
||||
LayoutTests/ChangeLog | 13 +++++++
|
||||
.../visibility-composited-animation-expected.txt | 2 +
|
||||
.../visibility-composited-animation.html | 45 ++++++++++++++++++++++
|
||||
Source/WebCore/ChangeLog | 15 ++++++++
|
||||
.../graphics/texmap/TextureMapperLayer.cpp | 3 ++
|
||||
5 files changed, 78 insertions(+)
|
||||
create mode 100644 LayoutTests/compositing/visibility/visibility-composited-animation-expected.txt
|
||||
create mode 100644 LayoutTests/compositing/visibility/visibility-composited-animation.html
|
||||
|
||||
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
|
||||
index a220029..16d902c 100644
|
||||
--- a/Source/WebCore/ChangeLog
|
||||
+++ b/Source/WebCore/ChangeLog
|
||||
@@ -838,6 +838,21 @@
|
||||
* dom/Element.h:
|
||||
(Element):
|
||||
|
||||
+2013-01-21 ChangSeok Oh <shivamidow@gmail.com>
|
||||
+
|
||||
+ [Texmap][GTK] The poster-circle doesn't appear.
|
||||
+ https://bugs.webkit.org/show_bug.cgi?id=106672
|
||||
+
|
||||
+ Reviewed by Noam Rosenthal.
|
||||
+
|
||||
+ We need to call setNeedsDisplay to redraw GraphicsLayer after we set drawsContent
|
||||
+ a new value for the layer. Otherwise we can't get a chance for first drawing the layer.
|
||||
+
|
||||
+ Test: compositing/visibility/visibility-composited-animation.html
|
||||
+
|
||||
+ * platform/graphics/texmap/TextureMapperLayer.cpp:
|
||||
+ (WebCore::TextureMapperLayer::flushCompositingStateForThisLayerOnly):
|
||||
+
|
||||
2013-01-15 Allan Sandfeld Jensen <allan.jensen@digia.com>
|
||||
|
||||
[Qt][CSS Shaders] Make custom filter render in Wk1 mode
|
||||
diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
|
||||
index d2a10aa..4024333 100644
|
||||
--- a/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
|
||||
+++ b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
|
||||
@@ -400,6 +400,9 @@ void TextureMapperLayer::flushCompositingStateSelf(GraphicsLayerTextureMapper* g
|
||||
|
||||
m_size = graphicsLayer->size();
|
||||
|
||||
+ if ((changeMask & DrawsContentChange) && graphicsLayer->drawsContent())
|
||||
+ graphicsLayer->setNeedsDisplay();
|
||||
+
|
||||
if (changeMask & MaskLayerChange) {
|
||||
if (TextureMapperLayer* layer = toTextureMapperLayer(graphicsLayer->maskLayer()))
|
||||
layer->m_effectTarget = this;
|
||||
--
|
||||
1.8.3.1
|
||||
|
@ -0,0 +1,80 @@
|
||||
From 974c1dfeb826cc6d6e96d316d63bf13c645b1ac8 Mon Sep 17 00:00:00 2001
|
||||
From: Allan Sandfeld Jensen <allan.jensen@digia.com>
|
||||
Date: Mon, 9 Sep 2013 14:35:31 +0200
|
||||
Subject: [PATCH 3/9] [Qt] Tiled-backing store not clipped to frame or visible
|
||||
rect https://bugs.webkit.org/show_bug.cgi?id=120606
|
||||
|
||||
Reviewed by Jocelyn Turcotte.
|
||||
|
||||
Clip painting from the tiled-backing store to the frame rect.
|
||||
|
||||
* WebCoreSupport/QWebFrameAdapter.cpp:
|
||||
(QWebFrameAdapter::renderFromTiledBackingStore):
|
||||
|
||||
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154983 268f45cc-cd09-0410-ab3c-d52691b4dbfc
|
||||
---
|
||||
Source/WebKit/qt/Api/qwebframe.cpp | 17 ++++++++---------
|
||||
Source/WebKit/qt/ChangeLog | 12 ++++++++++++
|
||||
2 files changed, 20 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/Source/WebKit/qt/Api/qwebframe.cpp b/Source/WebKit/qt/Api/qwebframe.cpp
|
||||
index f37457e..6205a9c 100644
|
||||
--- a/Source/WebKit/qt/Api/qwebframe.cpp
|
||||
+++ b/Source/WebKit/qt/Api/qwebframe.cpp
|
||||
@@ -200,25 +200,24 @@ void QWebFramePrivate::renderFromTiledBackingStore(GraphicsContext* context, con
|
||||
if (vector.isEmpty())
|
||||
return;
|
||||
|
||||
- QPainter* painter = context->platformContext();
|
||||
-
|
||||
WebCore::FrameView* view = frame->view();
|
||||
-
|
||||
+
|
||||
int scrollX = view->scrollX();
|
||||
int scrollY = view->scrollY();
|
||||
- context->translate(-scrollX, -scrollY);
|
||||
+ QRect frameRect = view->frameRect();
|
||||
|
||||
for (int i = 0; i < vector.size(); ++i) {
|
||||
const QRect& clipRect = vector.at(i);
|
||||
|
||||
- painter->save();
|
||||
-
|
||||
- QRect rect = clipRect.translated(scrollX, scrollY);
|
||||
- painter->setClipRect(rect, Qt::IntersectClip);
|
||||
+ context->save();
|
||||
+ QRect rect = clipRect.intersected(frameRect);
|
||||
+ context->translate(-scrollX, -scrollY);
|
||||
+ rect.translate(scrollX, scrollY);
|
||||
+ context->clip(rect);
|
||||
|
||||
frame->tiledBackingStore()->paint(context, rect);
|
||||
|
||||
- painter->restore();
|
||||
+ context->restore();
|
||||
}
|
||||
|
||||
#if USE(ACCELERATED_COMPOSITING)
|
||||
diff --git a/Source/WebKit/qt/ChangeLog b/Source/WebKit/qt/ChangeLog
|
||||
index ecb4acb..62f60c5 100644
|
||||
--- a/Source/WebKit/qt/ChangeLog
|
||||
+++ b/Source/WebKit/qt/ChangeLog
|
||||
@@ -1,3 +1,15 @@
|
||||
+2013-09-03 Allan Sandfeld Jensen <allan.jensen@digia.com>
|
||||
+
|
||||
+ [Qt] Tiled-backing store not clipped to frame or visible rect
|
||||
+ https://bugs.webkit.org/show_bug.cgi?id=120606
|
||||
+
|
||||
+ Reviewed by Jocelyn Turcotte.
|
||||
+
|
||||
+ Clip painting from the tiled-backing store to the frame rect.
|
||||
+
|
||||
+ * WebCoreSupport/QWebFrameAdapter.cpp:
|
||||
+ (QWebFrameAdapter::renderFromTiledBackingStore):
|
||||
+
|
||||
2013-06-05 Allan Sandfeld Jensen <allan.jensen@digia.com>
|
||||
|
||||
[Qt] Handle Return key without key text
|
||||
--
|
||||
1.8.3.1
|
||||
|
66
0004-Qt-Images-scaled-poorly-on-composited-canvas.patch
Normal file
66
0004-Qt-Images-scaled-poorly-on-composited-canvas.patch
Normal file
@ -0,0 +1,66 @@
|
||||
From b2a2856f9102515e9a9a048655f08d9c8152b179 Mon Sep 17 00:00:00 2001
|
||||
From: Allan Sandfeld Jensen <allan.jensen@digia.com>
|
||||
Date: Mon, 9 Sep 2013 15:00:54 +0200
|
||||
Subject: [PATCH 4/9] [Qt] Images scaled poorly on composited canvas
|
||||
https://bugs.webkit.org/show_bug.cgi?id=120632
|
||||
|
||||
Reviewed by Jocelyn Turcotte.
|
||||
|
||||
Explicitly set a imageInterpolationQuality on the TextureMapper, because
|
||||
InterpolationDefault may be interpreted differently by nested GraphicsContexts.
|
||||
|
||||
* WebCoreSupport/TextureMapperLayerClientQt.cpp:
|
||||
(TextureMapperLayerClientQt::renderCompositedLayers):
|
||||
|
||||
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154985 268f45cc-cd09-0410-ab3c-d52691b4dbfc
|
||||
---
|
||||
Source/WebKit/qt/Api/qwebframe.cpp | 9 ++++++++-
|
||||
Source/WebKit/qt/ChangeLog | 13 +++++++++++++
|
||||
2 files changed, 21 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Source/WebKit/qt/Api/qwebframe.cpp b/Source/WebKit/qt/Api/qwebframe.cpp
|
||||
index 6205a9c..b54b9c0 100644
|
||||
--- a/Source/WebKit/qt/Api/qwebframe.cpp
|
||||
+++ b/Source/WebKit/qt/Api/qwebframe.cpp
|
||||
@@ -234,7 +234,14 @@ void QWebFramePrivate::renderCompositedLayers(GraphicsContext* context, const In
|
||||
return;
|
||||
|
||||
textureMapper->setGraphicsContext(context);
|
||||
- textureMapper->setImageInterpolationQuality(context->imageInterpolationQuality());
|
||||
+ // GraphicsContext::imageInterpolationQuality is always InterpolationDefault here,
|
||||
+ // but 'default' may be interpreted differently due to a different backend QPainter,
|
||||
+ // so we need to set an explicit imageInterpolationQuality.
|
||||
+ if (context->platformContext()->renderHints() & QPainter::SmoothPixmapTransform)
|
||||
+ textureMapper->setImageInterpolationQuality(WebCore::InterpolationMedium);
|
||||
+ else
|
||||
+ textureMapper->setImageInterpolationQuality(WebCore::InterpolationNone);
|
||||
+
|
||||
textureMapper->setTextDrawingMode(context->textDrawingMode());
|
||||
QPainter* painter = context->platformContext();
|
||||
const QTransform transform = painter->worldTransform();
|
||||
diff --git a/Source/WebKit/qt/ChangeLog b/Source/WebKit/qt/ChangeLog
|
||||
index 62f60c5..ec00b6e 100644
|
||||
--- a/Source/WebKit/qt/ChangeLog
|
||||
+++ b/Source/WebKit/qt/ChangeLog
|
||||
@@ -1,5 +1,18 @@
|
||||
2013-09-03 Allan Sandfeld Jensen <allan.jensen@digia.com>
|
||||
|
||||
+ [Qt] Images scaled poorly on composited canvas
|
||||
+ https://bugs.webkit.org/show_bug.cgi?id=120632
|
||||
+
|
||||
+ Reviewed by Jocelyn Turcotte.
|
||||
+
|
||||
+ Explicitly set a imageInterpolationQuality on the TextureMapper, because
|
||||
+ InterpolationDefault may be interpreted differently by nested GraphicsContexts.
|
||||
+
|
||||
+ * WebCoreSupport/TextureMapperLayerClientQt.cpp:
|
||||
+ (TextureMapperLayerClientQt::renderCompositedLayers):
|
||||
+
|
||||
+2013-09-03 Allan Sandfeld Jensen <allan.jensen@digia.com>
|
||||
+
|
||||
[Qt] Tiled-backing store not clipped to frame or visible rect
|
||||
https://bugs.webkit.org/show_bug.cgi?id=120606
|
||||
|
||||
--
|
||||
1.8.3.1
|
||||
|
@ -1,12 +1,21 @@
|
||||
From 9fe66e8b769e6fe1c66b8d00b6c8e6403d9d6303 Mon Sep 17 00:00:00 2001
|
||||
From: Konstantin Tokarev <ktokarev@smartlabs.tv>
|
||||
Date: Tue, 10 Sep 2013 10:57:29 +0200
|
||||
Subject: [PATCH 5/9] Port of r118587 to TextBreakIteratorQt.cpp.
|
||||
|
||||
---
|
||||
.../WebCore/platform/text/qt/TextBreakIteratorQt.cpp | 19 +++++++++++++++++--
|
||||
1 file changed, 17 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/Source/WebCore/platform/text/qt/TextBreakIteratorQt.cpp b/Source/WebCore/platform/text/qt/TextBreakIteratorQt.cpp
|
||||
index 0d9d48d..0917b03 100644
|
||||
index 0d9d48d..96436a7 100644
|
||||
--- a/Source/WebCore/platform/text/qt/TextBreakIteratorQt.cpp
|
||||
+++ b/Source/WebCore/platform/text/qt/TextBreakIteratorQt.cpp
|
||||
@@ -25,6 +25,7 @@
|
||||
#include <algorithm>
|
||||
#include <qdebug.h>
|
||||
#include <wtf/Atomics.h>
|
||||
+#include <QMutex>
|
||||
+#include <wtf/ThreadingPrimitives.h>
|
||||
|
||||
// #define DEBUG_TEXT_ITERATORS
|
||||
#ifdef DEBUG_TEXT_ITERATORS
|
||||
@ -19,8 +28,8 @@ index 0d9d48d..0917b03 100644
|
||||
+#if ENABLE(COMPARE_AND_SWAP)
|
||||
+ return weakCompareAndSwap(reinterpret_cast<void**>(&nonSharedCharacterBreakIterator), expected, newValue);
|
||||
+#else
|
||||
+ DEFINE_STATIC_LOCAL(QMutex, nonSharedCharacterBreakIteratorMutex, ());
|
||||
+ QMutexLocker locker(&nonSharedCharacterBreakIteratorMutex);
|
||||
+ DEFINE_STATIC_LOCAL(Mutex, nonSharedCharacterBreakIteratorMutex, ());
|
||||
+ MutexLocker locker(nonSharedCharacterBreakIteratorMutex);
|
||||
+ if (nonSharedCharacterBreakIterator != expected)
|
||||
+ return false;
|
||||
+ nonSharedCharacterBreakIterator = newValue;
|
||||
@ -41,7 +50,10 @@ index 0d9d48d..0917b03 100644
|
||||
NonSharedCharacterBreakIterator::~NonSharedCharacterBreakIterator()
|
||||
{
|
||||
- if (!weakCompareAndSwap(reinterpret_cast<void**>(&nonSharedCharacterBreakIterator), 0, m_iterator))
|
||||
+ if (!compareAndSwapNonSharedCharacterBreakIterator(0, m_iterator))
|
||||
+ if (!compareAndSwapNonSharedCharacterBreakIterator(m_iterator, 0))
|
||||
delete m_iterator;
|
||||
}
|
||||
|
||||
--
|
||||
1.8.3.1
|
||||
|
@ -0,0 +1,60 @@
|
||||
From 0609a6521a7750cc9b7ba9882034b47c754ca538 Mon Sep 17 00:00:00 2001
|
||||
From: Gabor Rapcsanyi <rgabor@webkit.org>
|
||||
Date: Tue, 10 Sep 2013 16:16:16 +0200
|
||||
Subject: [PATCH 6/9] JSC ARM traditional failing on Octane NavierStokes test
|
||||
https://bugs.webkit.org/show_bug.cgi?id=115626
|
||||
|
||||
Reviewed by Zoltan Herczeg.
|
||||
|
||||
Change the ARM traditional assembler to use double precision on value
|
||||
conversions.
|
||||
|
||||
* assembler/ARMAssembler.h:
|
||||
|
||||
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@149601 268f45cc-cd09-0410-ab3c-d52691b4dbfc
|
||||
---
|
||||
Source/JavaScriptCore/ChangeLog | 12 ++++++++++++
|
||||
Source/JavaScriptCore/assembler/ARMAssembler.h | 4 ++--
|
||||
2 files changed, 14 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/Source/JavaScriptCore/ChangeLog b/Source/JavaScriptCore/ChangeLog
|
||||
index 4841d37..669ed57 100644
|
||||
--- a/Source/JavaScriptCore/ChangeLog
|
||||
+++ b/Source/JavaScriptCore/ChangeLog
|
||||
@@ -17,6 +17,18 @@
|
||||
(UdOptableXmlParser.parse):
|
||||
(printFn):
|
||||
|
||||
+2013-05-06 Gabor Rapcsanyi <rgabor@webkit.org>
|
||||
+
|
||||
+ JSC ARM traditional failing on Octane NavierStokes test
|
||||
+ https://bugs.webkit.org/show_bug.cgi?id=115626
|
||||
+
|
||||
+ Reviewed by Zoltan Herczeg.
|
||||
+
|
||||
+ Change the ARM traditional assembler to use double precision on value
|
||||
+ conversions.
|
||||
+
|
||||
+ * assembler/ARMAssembler.h:
|
||||
+
|
||||
2013-04-23 Allan Sandfeld Jensen <allan.jensen@digia.com>
|
||||
|
||||
REGRESSION(r148790) Made 7 tests fail on x86 32bit
|
||||
diff --git a/Source/JavaScriptCore/assembler/ARMAssembler.h b/Source/JavaScriptCore/assembler/ARMAssembler.h
|
||||
index ebab46d..c03fc47 100644
|
||||
--- a/Source/JavaScriptCore/assembler/ARMAssembler.h
|
||||
+++ b/Source/JavaScriptCore/assembler/ARMAssembler.h
|
||||
@@ -163,8 +163,8 @@ namespace JSC {
|
||||
VMOV_VFP32 = 0x0e000a10,
|
||||
VMOV_ARM32 = 0x0e100a10,
|
||||
VCVT_F64_S32 = 0x0eb80bc0,
|
||||
- VCVT_S32_F64 = 0x0ebd0b40,
|
||||
- VCVT_U32_F64 = 0x0ebc0b40,
|
||||
+ VCVT_S32_F64 = 0x0ebd0bc0,
|
||||
+ VCVT_U32_F64 = 0x0ebc0bc0,
|
||||
VCVT_F32_F64 = 0x0eb70bc0,
|
||||
VCVT_F64_F32 = 0x0eb70ac0,
|
||||
VMRS_APSR = 0x0ef1fa10,
|
||||
--
|
||||
1.8.3.1
|
||||
|
69
0007-Correct-range-used-for-Emoji-checks.patch
Normal file
69
0007-Correct-range-used-for-Emoji-checks.patch
Normal file
@ -0,0 +1,69 @@
|
||||
From 41c7cbdead4d77254bf59397875dcc5cbb1e0a9d Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20Br=C3=BCning?= <michael.bruning@digia.com>
|
||||
Date: Wed, 18 Sep 2013 10:42:53 +0200
|
||||
Subject: [PATCH 7/9] Correct range used for Emoji checks.
|
||||
https://bugs.webkit.org/show_bug.cgi?id=121486
|
||||
|
||||
Reviewed by Allan Sandfeld Jensen.
|
||||
|
||||
Found and reported by David Binderman via Qt bug tracker.
|
||||
|
||||
The check if a character was in the Emoji range always evaluated to
|
||||
false due to the upper range limit being lower than the lower limit.
|
||||
|
||||
Changed the upper limit to the highest assigned character from the
|
||||
"Transport and Map Symbols" (0x1F6C5) as that seems to have been the
|
||||
intended upper range limit of this check.
|
||||
|
||||
* platform/graphics/Font.cpp:
|
||||
(WebCore::Font::isCJKIdeographOrSymbol):
|
||||
|
||||
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155951 268f45cc-cd09-0410-ab3c-d52691b4dbfc
|
||||
---
|
||||
Source/WebCore/ChangeLog | 19 +++++++++++++++++++
|
||||
Source/WebCore/platform/graphics/Font.cpp | 2 +-
|
||||
2 files changed, 20 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
|
||||
index 16d902c..75c29ab 100644
|
||||
--- a/Source/WebCore/ChangeLog
|
||||
+++ b/Source/WebCore/ChangeLog
|
||||
@@ -1,3 +1,22 @@
|
||||
+2013-09-17 Michael Brüning <michael.bruning@digia.com>
|
||||
+
|
||||
+ Correct range used for Emoji checks.
|
||||
+ https://bugs.webkit.org/show_bug.cgi?id=121486
|
||||
+
|
||||
+ Reviewed by Allan Sandfeld Jensen.
|
||||
+
|
||||
+ Found and reported by David Binderman via Qt bug tracker.
|
||||
+
|
||||
+ The check if a character was in the Emoji range always evaluated to
|
||||
+ false due to the upper range limit being lower than the lower limit.
|
||||
+
|
||||
+ Changed the upper limit to the highest assigned character from the
|
||||
+ "Transport and Map Symbols" (0x1F6C5) as that seems to have been the
|
||||
+ intended upper range limit of this check.
|
||||
+
|
||||
+ * platform/graphics/Font.cpp:
|
||||
+ (WebCore::Font::isCJKIdeographOrSymbol):
|
||||
+
|
||||
2013-08-19 Allan Sandfeld Jensen <allan.jensen@digia.com>
|
||||
|
||||
[Qt] QtWebKit (using the Arora browser) displays the border radii (radius) of a button very ugly
|
||||
diff --git a/Source/WebCore/platform/graphics/Font.cpp b/Source/WebCore/platform/graphics/Font.cpp
|
||||
index fd3e414..e0963f6 100644
|
||||
--- a/Source/WebCore/platform/graphics/Font.cpp
|
||||
+++ b/Source/WebCore/platform/graphics/Font.cpp
|
||||
@@ -616,7 +616,7 @@ bool Font::isCJKIdeographOrSymbol(UChar32 c)
|
||||
return true;
|
||||
|
||||
// Emoji.
|
||||
- if (c >= 0x1F200 && c <= 0x1F6F)
|
||||
+ if (c >= 0x1F200 && c <= 0x1F6C5)
|
||||
return true;
|
||||
|
||||
return isCJKIdeograph(c);
|
||||
--
|
||||
1.8.3.1
|
||||
|
42
0008-Qt-RepaintRequested-signal-sometimes-not-emitted.patch
Normal file
42
0008-Qt-RepaintRequested-signal-sometimes-not-emitted.patch
Normal file
@ -0,0 +1,42 @@
|
||||
From c2e59a0a266e61e6688311df9aadadbb0eaf997b Mon Sep 17 00:00:00 2001
|
||||
From: Allan Sandfeld Jensen <allan.jensen@digia.com>
|
||||
Date: Thu, 26 Sep 2013 13:40:03 +0200
|
||||
Subject: [PATCH 8/9] [Qt] RepaintRequested signal sometimes not emitted
|
||||
https://bugs.webkit.org/show_bug.cgi?id=121790
|
||||
|
||||
Reviewed by Simon Hausmann.
|
||||
|
||||
We should also emit repaintRequested after calling PageClient::update().
|
||||
|
||||
* WidgetSupport/PageClientQt.cpp:
|
||||
(WebCore::PageClientQWidget::repaintViewport):
|
||||
(WebCore::PageClientQGraphicsWidget::repaintViewport):
|
||||
|
||||
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156329 268f45cc-cd09-0410-ab3c-d52691b4dbfc
|
||||
---
|
||||
Source/WebKit/qt/WebCoreSupport/PageClientQt.cpp | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/Source/WebKit/qt/WebCoreSupport/PageClientQt.cpp b/Source/WebKit/qt/WebCoreSupport/PageClientQt.cpp
|
||||
index 9979401..a33fb1c 100644
|
||||
--- a/Source/WebKit/qt/WebCoreSupport/PageClientQt.cpp
|
||||
+++ b/Source/WebKit/qt/WebCoreSupport/PageClientQt.cpp
|
||||
@@ -162,6 +162,7 @@ void PageClientQWidget::syncLayers(Timer<PageClientQWidget>*)
|
||||
if (TextureMapperLayerClient->rootLayer()->descendantsOrSelfHaveRunningAnimations() && !syncTimer.isActive())
|
||||
syncTimer.startOneShot(1.0 / 60.0);
|
||||
update(view->rect());
|
||||
+ QMetaObject::invokeMethod(page, "repaintRequested", Qt::QueuedConnection, Q_ARG(QRect, view->rect()));
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -294,6 +295,7 @@ void PageClientQGraphicsWidget::syncLayers()
|
||||
if (TextureMapperLayerClient->rootLayer()->descendantsOrSelfHaveRunningAnimations() && !syncTimer.isActive())
|
||||
syncTimer.startOneShot(1.0 / 60.0);
|
||||
update(view->boundingRect().toAlignedRect());
|
||||
+ QMetaObject::invokeMethod(page, "repaintRequested", Qt::QueuedConnection, Q_ARG(QRect, view->boundingRect().toAlignedRect()));
|
||||
}
|
||||
|
||||
void PageClientQGraphicsWidget::setRootGraphicsLayer(GraphicsLayer* layer)
|
||||
--
|
||||
1.8.3.1
|
||||
|
276
0009-TexMap-Remove-ParentChange-in-TextureMapperLayer.patch
Normal file
276
0009-TexMap-Remove-ParentChange-in-TextureMapperLayer.patch
Normal file
@ -0,0 +1,276 @@
|
||||
From fa54af90c55c5264e2e2510a24311a77c9e569b0 Mon Sep 17 00:00:00 2001
|
||||
From: Allan Sandfeld Jensen <allan.jensen@digia.com>
|
||||
Date: Thu, 26 Sep 2013 13:43:10 +0200
|
||||
Subject: [PATCH 9/9] [TexMap] Remove ParentChange in TextureMapperLayer.
|
||||
https://bugs.webkit.org/show_bug.cgi?id=105494
|
||||
|
||||
Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-20
|
||||
Reviewed by Noam Rosenthal.
|
||||
|
||||
ParentChange is useless, because ChildrenChange is enough. In addition,
|
||||
GraphicsLayer uses setParent() method internally. This patch copies
|
||||
GraphicsLayer::setChildren() into TextureMapperLayer::setChildren().
|
||||
|
||||
No new tests. Covered by existing tests.
|
||||
|
||||
* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
|
||||
(WebCore):
|
||||
(WebCore::GraphicsLayerTextureMapper::setChildren):
|
||||
Match the similar style of replaceChild().
|
||||
* platform/graphics/texmap/GraphicsLayerTextureMapper.h:
|
||||
(GraphicsLayerTextureMapper):
|
||||
* platform/graphics/texmap/TextureMapperLayer.cpp:
|
||||
(WebCore::TextureMapperLayer::flushCompositingStateForThisLayerOnly):
|
||||
(WebCore::TextureMapperLayer::setChildren):
|
||||
Copied from GraphicsLayer::setChildren().
|
||||
(WebCore):
|
||||
(WebCore::TextureMapperLayer::addChild):
|
||||
Copied from GraphicsLayer::addChild().
|
||||
(WebCore::TextureMapperLayer::removeFromParent):
|
||||
Copied from GraphicsLayer::removeFromParent().
|
||||
(WebCore::TextureMapperLayer::removeAllChildren):
|
||||
Copied from GraphicsLayer::removeAllChildren().
|
||||
* platform/graphics/texmap/TextureMapperLayer.h:
|
||||
(TextureMapperLayer):
|
||||
|
||||
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@138291 268f45cc-cd09-0410-ab3c-d52691b4dbfc
|
||||
---
|
||||
Source/WebCore/ChangeLog | 33 +++++++++
|
||||
.../graphics/texmap/GraphicsLayerTextureMapper.cpp | 25 ++-----
|
||||
.../graphics/texmap/GraphicsLayerTextureMapper.h | 2 -
|
||||
.../graphics/texmap/TextureMapperLayer.cpp | 79 +++++++++++++---------
|
||||
.../platform/graphics/texmap/TextureMapperLayer.h | 6 +-
|
||||
5 files changed, 91 insertions(+), 54 deletions(-)
|
||||
|
||||
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
|
||||
index 75c29ab..e70115f 100644
|
||||
--- a/Source/WebCore/ChangeLog
|
||||
+++ b/Source/WebCore/ChangeLog
|
||||
@@ -1205,6 +1205,39 @@
|
||||
(GenerateGetOwnPropertySlotBody): Use getStaticValueSlotEntryWithoutCaching to climb up the class
|
||||
hierarchy.
|
||||
|
||||
+2012-12-20 Huang Dongsung <luxtella@company100.net>
|
||||
+
|
||||
+ [TexMap] Remove ParentChange in TextureMapperLayer.
|
||||
+ https://bugs.webkit.org/show_bug.cgi?id=105494
|
||||
+
|
||||
+ Reviewed by Noam Rosenthal.
|
||||
+
|
||||
+ ParentChange is useless, because ChildrenChange is enough. In addition,
|
||||
+ GraphicsLayer uses setParent() method internally. This patch copies
|
||||
+ GraphicsLayer::setChildren() into TextureMapperLayer::setChildren().
|
||||
+
|
||||
+ No new tests. Covered by existing tests.
|
||||
+
|
||||
+ * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
|
||||
+ (WebCore):
|
||||
+ (WebCore::GraphicsLayerTextureMapper::setChildren):
|
||||
+ Match the similar style of replaceChild().
|
||||
+ * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
|
||||
+ (GraphicsLayerTextureMapper):
|
||||
+ * platform/graphics/texmap/TextureMapperLayer.cpp:
|
||||
+ (WebCore::TextureMapperLayer::flushCompositingStateForThisLayerOnly):
|
||||
+ (WebCore::TextureMapperLayer::setChildren):
|
||||
+ Copied from GraphicsLayer::setChildren().
|
||||
+ (WebCore):
|
||||
+ (WebCore::TextureMapperLayer::addChild):
|
||||
+ Copied from GraphicsLayer::addChild().
|
||||
+ (WebCore::TextureMapperLayer::removeFromParent):
|
||||
+ Copied from GraphicsLayer::removeFromParent().
|
||||
+ (WebCore::TextureMapperLayer::removeAllChildren):
|
||||
+ Copied from GraphicsLayer::removeAllChildren().
|
||||
+ * platform/graphics/texmap/TextureMapperLayer.h:
|
||||
+ (TextureMapperLayer):
|
||||
+
|
||||
2012-12-13 Filip Pizlo <fpizlo@apple.com>
|
||||
|
||||
Named lookups on HTML documents produce inconsistent results in JavaScriptCore bindings
|
||||
diff --git a/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp b/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp
|
||||
index 5ba1090..364ddd2 100644
|
||||
--- a/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp
|
||||
+++ b/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp
|
||||
@@ -123,18 +123,13 @@ void GraphicsLayerTextureMapper::setNeedsDisplayInRect(const FloatRect& rect)
|
||||
|
||||
/* \reimp (GraphicsLayer.h)
|
||||
*/
|
||||
-void GraphicsLayerTextureMapper::setParent(GraphicsLayer* layer)
|
||||
-{
|
||||
- notifyChange(TextureMapperLayer::ParentChange);
|
||||
- GraphicsLayer::setParent(layer);
|
||||
-}
|
||||
-
|
||||
-/* \reimp (GraphicsLayer.h)
|
||||
-*/
|
||||
bool GraphicsLayerTextureMapper::setChildren(const Vector<GraphicsLayer*>& children)
|
||||
{
|
||||
- notifyChange(TextureMapperLayer::ChildrenChange);
|
||||
- return GraphicsLayer::setChildren(children);
|
||||
+ if (GraphicsLayer::setChildren(children)) {
|
||||
+ notifyChange(TextureMapperLayer::ChildrenChange);
|
||||
+ return true;
|
||||
+ }
|
||||
+ return false;
|
||||
}
|
||||
|
||||
/* \reimp (GraphicsLayer.h)
|
||||
@@ -182,16 +177,6 @@ bool GraphicsLayerTextureMapper::replaceChild(GraphicsLayer* oldChild, GraphicsL
|
||||
|
||||
/* \reimp (GraphicsLayer.h)
|
||||
*/
|
||||
-void GraphicsLayerTextureMapper::removeFromParent()
|
||||
-{
|
||||
- if (!parent())
|
||||
- return;
|
||||
- notifyChange(TextureMapperLayer::ParentChange);
|
||||
- GraphicsLayer::removeFromParent();
|
||||
-}
|
||||
-
|
||||
-/* \reimp (GraphicsLayer.h)
|
||||
-*/
|
||||
void GraphicsLayerTextureMapper::setMaskLayer(GraphicsLayer* value)
|
||||
{
|
||||
if (value == maskLayer())
|
||||
diff --git a/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h b/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h
|
||||
index 00b0fe7..5a11503 100644
|
||||
--- a/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h
|
||||
+++ b/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h
|
||||
@@ -42,14 +42,12 @@ public:
|
||||
virtual void setNeedsDisplay();
|
||||
virtual void setContentsNeedsDisplay();
|
||||
virtual void setNeedsDisplayInRect(const FloatRect&);
|
||||
- virtual void setParent(GraphicsLayer* layer);
|
||||
virtual bool setChildren(const Vector<GraphicsLayer*>&);
|
||||
virtual void addChild(GraphicsLayer*);
|
||||
virtual void addChildAtIndex(GraphicsLayer*, int index);
|
||||
virtual void addChildAbove(GraphicsLayer* layer, GraphicsLayer* sibling);
|
||||
virtual void addChildBelow(GraphicsLayer* layer, GraphicsLayer* sibling);
|
||||
virtual bool replaceChild(GraphicsLayer* oldChild, GraphicsLayer* newChild);
|
||||
- virtual void removeFromParent();
|
||||
virtual void setMaskLayer(GraphicsLayer* layer);
|
||||
virtual void setPosition(const FloatPoint& p);
|
||||
virtual void setAnchorPoint(const FloatPoint3D& p);
|
||||
diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
|
||||
index 4024333..8463622 100644
|
||||
--- a/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
|
||||
+++ b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
|
||||
@@ -366,37 +366,8 @@ void TextureMapperLayer::flushCompositingStateSelf(GraphicsLayerTextureMapper* g
|
||||
|
||||
graphicsLayer->updateDebugIndicators();
|
||||
|
||||
- if (changeMask & ParentChange) {
|
||||
- TextureMapperLayer* newParent = toTextureMapperLayer(graphicsLayer->parent());
|
||||
- if (newParent != m_parent) {
|
||||
- // Remove layer from current from child list first.
|
||||
- if (m_parent) {
|
||||
- size_t index = m_parent->m_children.find(this);
|
||||
- m_parent->m_children.remove(index);
|
||||
- m_parent = 0;
|
||||
- }
|
||||
- // Set new layer parent and add layer to the parents child list.
|
||||
- if (newParent) {
|
||||
- m_parent = newParent;
|
||||
- m_parent->m_children.append(this);
|
||||
- }
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- if (changeMask & ChildrenChange) {
|
||||
- // Clear children parent pointer to avoid unsync and crash on layer delete.
|
||||
- for (size_t i = 0; i < m_children.size(); i++)
|
||||
- m_children[i]->m_parent = 0;
|
||||
-
|
||||
- m_children.clear();
|
||||
- for (size_t i = 0; i < graphicsLayer->children().size(); ++i) {
|
||||
- TextureMapperLayer* child = toTextureMapperLayer(graphicsLayer->children()[i]);
|
||||
- if (!child)
|
||||
- continue;
|
||||
- m_children.append(child);
|
||||
- child->m_parent = this;
|
||||
- }
|
||||
- }
|
||||
+ if (changeMask & ChildrenChange)
|
||||
+ setChildren(graphicsLayer->children());
|
||||
|
||||
m_size = graphicsLayer->size();
|
||||
|
||||
@@ -446,6 +417,52 @@ void TextureMapperLayer::flushCompositingStateSelf(GraphicsLayerTextureMapper* g
|
||||
m_transform.setChildrenTransform(m_state.childrenTransform);
|
||||
}
|
||||
|
||||
+void TextureMapperLayer::setChildren(const Vector<GraphicsLayer*>& newChildren)
|
||||
+{
|
||||
+ removeAllChildren();
|
||||
+ for (size_t i = 0; i < newChildren.size(); ++i) {
|
||||
+ TextureMapperLayer* child = toTextureMapperLayer(newChildren[i]);
|
||||
+ ASSERT(child);
|
||||
+ addChild(child);
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+void TextureMapperLayer::addChild(TextureMapperLayer* childLayer)
|
||||
+{
|
||||
+ ASSERT(childLayer != this);
|
||||
+
|
||||
+ if (childLayer->m_parent)
|
||||
+ childLayer->removeFromParent();
|
||||
+
|
||||
+ childLayer->m_parent = this;
|
||||
+ m_children.append(childLayer);
|
||||
+}
|
||||
+
|
||||
+void TextureMapperLayer::removeFromParent()
|
||||
+{
|
||||
+ if (m_parent) {
|
||||
+ unsigned i;
|
||||
+ for (i = 0; i < m_parent->m_children.size(); i++) {
|
||||
+ if (this == m_parent->m_children[i]) {
|
||||
+ m_parent->m_children.remove(i);
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ m_parent = 0;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+void TextureMapperLayer::removeAllChildren()
|
||||
+{
|
||||
+ while (m_children.size()) {
|
||||
+ TextureMapperLayer* curLayer = m_children[0];
|
||||
+ ASSERT(curLayer->m_parent);
|
||||
+ curLayer->removeFromParent();
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+
|
||||
bool TextureMapperLayer::descendantsOrSelfHaveRunningAnimations() const
|
||||
{
|
||||
if (m_animations.hasRunningAnimations())
|
||||
diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
|
||||
index 27a77f6..e4a422f 100644
|
||||
--- a/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
|
||||
+++ b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
|
||||
@@ -57,7 +57,6 @@ public:
|
||||
enum ChangeMask {
|
||||
NoChanges = 0,
|
||||
|
||||
- ParentChange = (1L << 0),
|
||||
ChildrenChange = (1L << 1),
|
||||
MaskLayerChange = (1L << 2),
|
||||
PositionChange = (1L << 3),
|
||||
@@ -145,6 +144,11 @@ private:
|
||||
FloatPoint adjustedPosition() const { return m_state.pos + m_scrollPositionDelta; }
|
||||
bool isAncestorFixedToViewport() const;
|
||||
|
||||
+ void setChildren(const Vector<GraphicsLayer*>&);
|
||||
+ void addChild(TextureMapperLayer*);
|
||||
+ void removeFromParent();
|
||||
+ void removeAllChildren();
|
||||
+
|
||||
void paintRecursive(const TextureMapperPaintOptions&);
|
||||
void paintSelf(const TextureMapperPaintOptions&);
|
||||
void paintSelfAndChildren(const TextureMapperPaintOptions&);
|
||||
--
|
||||
1.8.3.1
|
||||
|
@ -2,8 +2,8 @@
|
||||
Name: qtwebkit
|
||||
Summary: Qt WebKit bindings
|
||||
|
||||
Version: 2.3.2
|
||||
Release: 3%{?dist}
|
||||
Version: 2.3.3
|
||||
Release: 1%{?dist}
|
||||
|
||||
License: LGPLv2 with exceptions or GPLv3 with exceptions
|
||||
URL: http://trac.webkit.org/wiki/QtWebKit
|
||||
@ -43,10 +43,14 @@ Patch10: qtwebkit-ppc.patch
|
||||
Patch11: qtwebkit-23-LLInt-C-Loop-backend-ppc.patch
|
||||
|
||||
## upstream patches
|
||||
# NonSharedCharacterBreakIterator leads to CRASH() in configurations that do not have COMPARE_AND_SWAP enabled
|
||||
# http://bugs.webkit.org/show_bug.cgi?id=101337
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1006539
|
||||
Patch100: qtwebkit-webkit101337.patch
|
||||
Patch102: 0002-Texmap-GTK-The-poster-circle-doesn-t-appear.patch
|
||||
Patch103: 0003-Qt-Tiled-backing-store-not-clipped-to-frame-or-visib.patch
|
||||
Patch104: 0004-Qt-Images-scaled-poorly-on-composited-canvas.patch
|
||||
Patch105: 0005-Port-of-r118587-to-TextBreakIteratorQt.cpp.patch
|
||||
patch106: 0006-JSC-ARM-traditional-failing-on-Octane-NavierStokes-t.patch
|
||||
Patch107: 0007-Correct-range-used-for-Emoji-checks.patch
|
||||
Patch108: 0008-Qt-RepaintRequested-signal-sometimes-not-emitted.patch
|
||||
Patch109: 0009-TexMap-Remove-ParentChange-in-TextureMapperLayer.patch
|
||||
|
||||
BuildRequires: bison
|
||||
BuildRequires: chrpath
|
||||
@ -105,7 +109,15 @@ Provides: qt4-webkit-devel%{?_isa} = 2:%{version}-%{release}
|
||||
%patch10 -p1 -b .system-malloc
|
||||
%patch11 -p1 -b .Double2Ints
|
||||
%endif
|
||||
%patch100 -p1 -b .webkit101337
|
||||
%patch102 -p1 -b .0002
|
||||
%patch103 -p1 -b .0003
|
||||
%patch104 -p1 -b .0004
|
||||
%patch105 -p1 -b .0005
|
||||
%patch106 -p1 -b .0006
|
||||
%patch107 -p1 -b .0007
|
||||
%patch108 -p1 -b .0008
|
||||
%patch109 -p1 -b .0009
|
||||
|
||||
|
||||
|
||||
%build
|
||||
@ -159,6 +171,10 @@ popd
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu Oct 03 2013 Rex Dieter <rdieter@fedoraproject.org> 2.3.3-1
|
||||
- qtwebkit-2.3.3
|
||||
- include some post 2.3.3 commits/fixes
|
||||
|
||||
* Thu Sep 12 2013 Rex Dieter <rdieter@fedoraproject.org> 2.3.2-3
|
||||
- SIGSEGV - ~NonSharedCharacterBreakIterator (#1006539, webkit#101337)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user