Title: [185666] trunk
- Revision
- 185666
- Author
- [email protected]
- Date
- 2015-06-17 14:08:44 -0700 (Wed, 17 Jun 2015)
Log Message
REGRESSION (r173283-r173296): Amazon.com front page has no caret in the search field
https://bugs.webkit.org/show_bug.cgi?id=146073
rdar://problem/21022203
Reviewed by Tim Horton.
Source/WebCore:
Text controls (text inputs and textareas) need backing store even when empty, because
they need to be able to paint a caret.
Test: compositing/backing/form-controls-backing.html
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
LayoutTests:
Dump layers for composited text inputs and textareas.
* compositing/backing/form-controls-backing-expected.txt: Added.
* compositing/backing/form-controls-backing.html: Added.
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (185665 => 185666)
--- trunk/LayoutTests/ChangeLog 2015-06-17 21:06:58 UTC (rev 185665)
+++ trunk/LayoutTests/ChangeLog 2015-06-17 21:08:44 UTC (rev 185666)
@@ -1,3 +1,16 @@
+2015-06-17 Simon Fraser <[email protected]>
+
+ REGRESSION (r173283-r173296): Amazon.com front page has no caret in the search field
+ https://bugs.webkit.org/show_bug.cgi?id=146073
+ rdar://problem/21022203
+
+ Reviewed by Tim Horton.
+
+ Dump layers for composited text inputs and textareas.
+
+ * compositing/backing/form-controls-backing-expected.txt: Added.
+ * compositing/backing/form-controls-backing.html: Added.
+
2015-06-17 Zalan Bujtas <[email protected]>
Selection cache produces invalid result when ancestor has float element.
Added: trunk/LayoutTests/compositing/backing/form-controls-backing-expected.txt (0 => 185666)
--- trunk/LayoutTests/compositing/backing/form-controls-backing-expected.txt (rev 0)
+++ trunk/LayoutTests/compositing/backing/form-controls-backing-expected.txt 2015-06-17 21:08:44 UTC (rev 185666)
@@ -0,0 +1,31 @@
+
+(GraphicsLayer
+ (anchor 0.00 0.00)
+ (bounds 800.00 600.00)
+ (children 1
+ (GraphicsLayer
+ (bounds 800.00 600.00)
+ (contentsOpaque 1)
+ (children 3
+ (GraphicsLayer
+ (position 19.00 19.00)
+ (bounds 20.00 420.00)
+ (contentsOpaque 1)
+ )
+ (GraphicsLayer
+ (position 19.00 19.00)
+ (bounds 202.00 22.00)
+ (contentsOpaque 1)
+ (drawsContent 1)
+ )
+ (GraphicsLayer
+ (position 19.00 59.00)
+ (bounds 204.00 24.00)
+ (contentsOpaque 1)
+ (drawsContent 1)
+ )
+ )
+ )
+ )
+)
+
Added: trunk/LayoutTests/compositing/backing/form-controls-backing.html (0 => 185666)
--- trunk/LayoutTests/compositing/backing/form-controls-backing.html (rev 0)
+++ trunk/LayoutTests/compositing/backing/form-controls-backing.html 2015-06-17 21:08:44 UTC (rev 185666)
@@ -0,0 +1,59 @@
+<!DOCTYPE html>
+
+<html>
+<head>
+ <style>
+ .container {
+ position: relative;
+ z-index: 1;
+ padding: 10px;
+ width: 400px;
+ height: 400px;
+ border: 1px solid black;
+ }
+
+ input, textarea {
+ position: absolute;
+ border-style: none;
+ outline: 0;
+ height: 20px;
+ width: 200px;
+ background: silver;
+ }
+
+ .composited {
+ position: absolute;
+ left: 10px;
+ width: 20px;
+ height: 100%;
+ -webkit-transform: translateZ(0);
+ background-color: #eee;
+ }
+ </style>
+ <script>
+ if (window.testRunner)
+ testRunner.dumpAsText();
+
+ function dumpLayers()
+ {
+ var layersResult = document.getElementById('layers');
+ if (window.testRunner)
+ layersResult.innerText = window.internals.layerTreeAsText(document);
+ }
+
+ window.addEventListener('load', dumpLayers, false)
+ </script>
+</head>
+<body>
+
+<div class="container">
+ <div class="composited"></div>
+
+ <input type="text" style="top: 10px"></input>
+ <textarea style="top: 50px"></textarea>
+</div>
+
+<pre id="layers">Layer tree goes here in DRT</pre>
+
+</body>
+</html>
Modified: trunk/Source/WebCore/ChangeLog (185665 => 185666)
--- trunk/Source/WebCore/ChangeLog 2015-06-17 21:06:58 UTC (rev 185665)
+++ trunk/Source/WebCore/ChangeLog 2015-06-17 21:08:44 UTC (rev 185666)
@@ -1,3 +1,19 @@
+2015-06-17 Simon Fraser <[email protected]>
+
+ REGRESSION (r173283-r173296): Amazon.com front page has no caret in the search field
+ https://bugs.webkit.org/show_bug.cgi?id=146073
+ rdar://problem/21022203
+
+ Reviewed by Tim Horton.
+
+ Text controls (text inputs and textareas) need backing store even when empty, because
+ they need to be able to paint a caret.
+
+ Test: compositing/backing/form-controls-backing.html
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
+
2015-06-17 Zalan Bujtas <[email protected]>
Selection cache produces invalid result when ancestor has float element.
Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.cpp (185665 => 185666)
--- trunk/Source/WebCore/rendering/RenderLayerBacking.cpp 2015-06-17 21:06:58 UTC (rev 185665)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.cpp 2015-06-17 21:08:44 UTC (rev 185666)
@@ -1848,6 +1848,9 @@
if (renderer().isRenderReplaced() && (!isCompositedPlugin(renderer()) || isRestartedPlugin(renderer())))
return false;
+ if (renderer().isTextControl())
+ return false;
+
if (paintsBoxDecorations() || paintsChildren())
return false;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes