Diff
Modified: trunk/LayoutTests/ChangeLog (239918 => 239919)
--- trunk/LayoutTests/ChangeLog 2019-01-14 09:29:08 UTC (rev 239918)
+++ trunk/LayoutTests/ChangeLog 2019-01-14 10:32:03 UTC (rev 239919)
@@ -1,3 +1,20 @@
+2019-01-14 Karl Leplat <[email protected]>
+
+ [GTK][WPE] Graphic issue with invalidations on composited layers with subpixel positions
+ https://bugs.webkit.org/show_bug.cgi?id=193239
+
+ Reviewed by Žan Doberšek.
+
+ * compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions.html: Added.
+ * platform/gtk/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png: Added.
+ * platform/gtk/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt: Added.
+ * platform/ios/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png: Added.
+ * platform/ios/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt: Added.
+ * platform/mac/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png: Added.
+ * platform/mac/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt: Added.
+ * platform/wpe/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png: Added.
+ * platform/wpe/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt: Added.
+
2019-01-13 Carlos Garcia Campos <[email protected]>
[FreeType] Support emoji modifiers
Added: trunk/LayoutTests/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions.html (0 => 239919)
--- trunk/LayoutTests/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions.html (rev 0)
+++ trunk/LayoutTests/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions.html 2019-01-14 10:32:03 UTC (rev 239919)
@@ -0,0 +1,40 @@
+<!DOCTYPE html>
+
+<html>
+ <head>
+ <style type="text/css">
+ .list_option {
+ position: relative;
+ font-size: 1.3em;
+ width: 1280px;
+ height: 1.5em;
+ background-color: #333;
+ color: white;
+ }
+ .list_option.selected {
+ background-color: #F60;
+ }
+ </style>
+ <script src=""
+ <script>
+ function repaintTest() {
+ document.getElementById("opt1").className = "list_option";
+ document.getElementById("opt2").className = "list_option";
+ document.getElementById("opt3").className = "list_option";
+ document.getElementById("opt4").className = "list_option";
+ document.getElementById("opt5").className = "list_option";
+ document.getElementById("opt6").className = "list_option";
+ }
+ </script>
+</head>
+<body _onload_="runRepaintTest()">
+<div id="forceAcceleratedCompositing" style="position:absolute;left:0;right:0;top:0;bottom:0;-webkit-transform: translate3d(0, 0, 0);"></div>
+
+ <div class="list_option selected" id="opt1">.</div>
+ <div class="list_option selected" id="opt2">.</div>
+ <div class="list_option selected" id="opt3">.</div>
+ <div class="list_option selected" id="opt4">.</div>
+ <div class="list_option selected" id="opt5">.</div>
+ <div class="list_option selected" id="opt6">.</div>
+</body>
+</html>
Added: trunk/LayoutTests/platform/gtk/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png
(Binary files differ)
Index: trunk/LayoutTests/platform/gtk/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png
===================================================================
--- trunk/LayoutTests/platform/gtk/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png 2019-01-14 09:29:08 UTC (rev 239918)
+++ trunk/LayoutTests/platform/gtk/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png 2019-01-14 10:32:03 UTC (rev 239919)
Property changes on: trunk/LayoutTests/platform/gtk/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png
___________________________________________________________________
Added: svn:mime-type
+image/png
\ No newline at end of property
Added: trunk/LayoutTests/platform/gtk/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt (0 => 239919)
--- trunk/LayoutTests/platform/gtk/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt (rev 0)
+++ trunk/LayoutTests/platform/gtk/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt 2019-01-14 10:32:03 UTC (rev 239919)
@@ -0,0 +1,31 @@
+layer at (0,0) size 1288x585
+ RenderView at (0,0) size 800x585
+layer at (0,0) size 800x203
+ RenderBlock {HTML} at (0,0) size 800x204
+ RenderBody {BODY} at (8,8) size 784x188
+layer at (0,0) size 800x585
+ RenderBlock (positioned) {DIV} at (0,0) size 800x585
+layer at (8,8) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,0) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 5x24
+ text run at (0,0) width 5: "."
+layer at (8,39) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,31) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 5x24
+ text run at (0,0) width 5: "."
+layer at (8,70) size 1280x32
+ RenderBlock (relative positioned) {DIV} at (0,62) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 5x24
+ text run at (0,0) width 5: "."
+layer at (8,102) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,93) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 5x24
+ text run at (0,0) width 5: "."
+layer at (8,133) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,124) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 5x24
+ text run at (0,0) width 5: "."
+layer at (8,164) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,155) size 1280x33 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 5x24
+ text run at (0,0) width 5: "."
Added: trunk/LayoutTests/platform/ios/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png
(Binary files differ)
Index: trunk/LayoutTests/platform/ios/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png
===================================================================
--- trunk/LayoutTests/platform/ios/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png 2019-01-14 09:29:08 UTC (rev 239918)
+++ trunk/LayoutTests/platform/ios/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png 2019-01-14 10:32:03 UTC (rev 239919)
Property changes on: trunk/LayoutTests/platform/ios/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png
___________________________________________________________________
Added: svn:mime-type
+image/png
\ No newline at end of property
Added: trunk/LayoutTests/platform/ios/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt (0 => 239919)
--- trunk/LayoutTests/platform/ios/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt (rev 0)
+++ trunk/LayoutTests/platform/ios/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt 2019-01-14 10:32:03 UTC (rev 239919)
@@ -0,0 +1,31 @@
+layer at (0,0) size 1288x600
+ RenderView at (0,0) size 800x600
+layer at (0,0) size 800x203
+ RenderBlock {HTML} at (0,0) size 800x204
+ RenderBody {BODY} at (8,8) size 784x188
+layer at (0,0) size 800x600
+ RenderBlock (positioned) {DIV} at (0,0) size 800x600
+layer at (8,8) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,0) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 6x24
+ text run at (0,0) width 6: "."
+layer at (8,39) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,31) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 6x24
+ text run at (0,0) width 6: "."
+layer at (8,70) size 1280x32
+ RenderBlock (relative positioned) {DIV} at (0,62) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 6x24
+ text run at (0,0) width 6: "."
+layer at (8,102) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,93) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 6x24
+ text run at (0,0) width 6: "."
+layer at (8,133) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,124) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 6x24
+ text run at (0,0) width 6: "."
+layer at (8,164) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,155) size 1280x33 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 6x24
+ text run at (0,0) width 6: "."
Added: trunk/LayoutTests/platform/mac/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png
(Binary files differ)
Index: trunk/LayoutTests/platform/mac/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png
===================================================================
--- trunk/LayoutTests/platform/mac/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png 2019-01-14 09:29:08 UTC (rev 239918)
+++ trunk/LayoutTests/platform/mac/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png 2019-01-14 10:32:03 UTC (rev 239919)
Property changes on: trunk/LayoutTests/platform/mac/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png
___________________________________________________________________
Added: svn:mime-type
+image/png
\ No newline at end of property
Added: trunk/LayoutTests/platform/mac/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt (0 => 239919)
--- trunk/LayoutTests/platform/mac/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt (rev 0)
+++ trunk/LayoutTests/platform/mac/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt 2019-01-14 10:32:03 UTC (rev 239919)
@@ -0,0 +1,31 @@
+layer at (0,0) size 1288x585
+ RenderView at (0,0) size 800x585
+layer at (0,0) size 800x203
+ RenderBlock {HTML} at (0,0) size 800x204
+ RenderBody {BODY} at (8,8) size 784x188
+layer at (0,0) size 800x585
+ RenderBlock (positioned) {DIV} at (0,0) size 800x585
+layer at (8,8) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,0) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 6x24
+ text run at (0,0) width 6: "."
+layer at (8,39) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,31) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 6x24
+ text run at (0,0) width 6: "."
+layer at (8,70) size 1280x32
+ RenderBlock (relative positioned) {DIV} at (0,62) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 6x24
+ text run at (0,0) width 6: "."
+layer at (8,102) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,93) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 6x24
+ text run at (0,0) width 6: "."
+layer at (8,133) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,124) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 6x24
+ text run at (0,0) width 6: "."
+layer at (8,164) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,155) size 1280x33 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 6x24
+ text run at (0,0) width 6: "."
Added: trunk/LayoutTests/platform/wpe/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png
(Binary files differ)
Index: trunk/LayoutTests/platform/wpe/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png
===================================================================
--- trunk/LayoutTests/platform/wpe/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png 2019-01-14 09:29:08 UTC (rev 239918)
+++ trunk/LayoutTests/platform/wpe/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png 2019-01-14 10:32:03 UTC (rev 239919)
Property changes on: trunk/LayoutTests/platform/wpe/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.png
___________________________________________________________________
Added: svn:mime-type
+image/png
\ No newline at end of property
Added: trunk/LayoutTests/platform/wpe/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt (0 => 239919)
--- trunk/LayoutTests/platform/wpe/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt (rev 0)
+++ trunk/LayoutTests/platform/wpe/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt 2019-01-14 10:32:03 UTC (rev 239919)
@@ -0,0 +1,31 @@
+layer at (0,0) size 1288x585
+ RenderView at (0,0) size 800x585
+layer at (0,0) size 800x203
+ RenderBlock {HTML} at (0,0) size 800x204
+ RenderBody {BODY} at (8,8) size 784x188
+layer at (0,0) size 800x585
+ RenderBlock (positioned) {DIV} at (0,0) size 800x585
+layer at (8,8) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,0) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 5x24
+ text run at (0,0) width 5: "."
+layer at (8,39) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,31) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 5x24
+ text run at (0,0) width 5: "."
+layer at (8,70) size 1280x32
+ RenderBlock (relative positioned) {DIV} at (0,62) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 5x24
+ text run at (0,0) width 5: "."
+layer at (8,102) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,93) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 5x24
+ text run at (0,0) width 5: "."
+layer at (8,133) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,124) size 1280x32 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 5x24
+ text run at (0,0) width 5: "."
+layer at (8,164) size 1280x31
+ RenderBlock (relative positioned) {DIV} at (0,155) size 1280x33 [color=#FFFFFF] [bgcolor=#333333]
+ RenderText {#text} at (0,0) size 5x24
+ text run at (0,0) width 5: "."
Modified: trunk/Source/WebCore/ChangeLog (239918 => 239919)
--- trunk/Source/WebCore/ChangeLog 2019-01-14 09:29:08 UTC (rev 239918)
+++ trunk/Source/WebCore/ChangeLog 2019-01-14 10:32:03 UTC (rev 239919)
@@ -1,3 +1,16 @@
+2019-01-14 Karl Leplat <[email protected]>
+
+ [GTK][WPE] Graphic issue with invalidations on composited layers with subpixel positions
+ https://bugs.webkit.org/show_bug.cgi?id=193239
+
+ Reviewed by Žan Doberšek.
+
+ Test: compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions.html
+
+ * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
+ (WebCore::CoordinatedGraphicsLayer::updateContentBuffers): Use enclosed dirty rect values
+ when invalidating the CoordinatedBackingStore areas.
+
2019-01-13 Carlos Garcia Campos <[email protected]>
[FreeType] Support emoji modifiers
Modified: trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp (239918 => 239919)
--- trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp 2019-01-14 09:29:08 UTC (rev 239918)
+++ trunk/Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp 2019-01-14 10:32:03 UTC (rev 239919)
@@ -888,7 +888,7 @@
if (!m_needsDisplay.completeLayer) {
for (auto& rect : m_needsDisplay.rects)
- layerState.mainBackingStore->invalidate(IntRect { rect });
+ layerState.mainBackingStore->invalidate(enclosingIntRect(rect));
} else
layerState.mainBackingStore->invalidate({ { }, IntSize { m_size } });