Title: [102337] trunk/Source/WebKit2
Revision
102337
Author
hausm...@webkit.org
Date
2011-12-08 07:30:29 -0800 (Thu, 08 Dec 2011)

Log Message

REGRESSION(r101683): QQuickWebView doesn't work with OpenGL/ES 2.0
https://bugs.webkit.org/show_bug.cgi?id=74077

Reviewed by Kenneth Rohde Christiansen.

Replace Desktop OpenGL idiom of using gl_Vertex with a simple vertex attribute
that's tied to the same register 0 (by being the first in the array).

* UIProcess/API/qt/qquickwebpage.cpp:
(PageProxyMaterialShader::attributeNames): Define "vertex" attribute, which is
bound to register 0, which is the current vertex.
(PageProxyMaterialShader::vertexShader): Use the vertex attribute instead of the
built-in gl_Vertex, which is only present in Desktop GL.

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (102336 => 102337)


--- trunk/Source/WebKit2/ChangeLog	2011-12-08 15:29:13 UTC (rev 102336)
+++ trunk/Source/WebKit2/ChangeLog	2011-12-08 15:30:29 UTC (rev 102337)
@@ -1,3 +1,19 @@
+2011-12-08  Simon Hausmann  <simon.hausm...@nokia.com>
+
+        REGRESSION(r101683): QQuickWebView doesn't work with OpenGL/ES 2.0
+        https://bugs.webkit.org/show_bug.cgi?id=74077
+
+        Reviewed by Kenneth Rohde Christiansen.
+
+        Replace Desktop OpenGL idiom of using gl_Vertex with a simple vertex attribute
+        that's tied to the same register 0 (by being the first in the array).
+
+        * UIProcess/API/qt/qquickwebpage.cpp:
+        (PageProxyMaterialShader::attributeNames): Define "vertex" attribute, which is
+        bound to register 0, which is the current vertex.
+        (PageProxyMaterialShader::vertexShader): Use the vertex attribute instead of the
+        built-in gl_Vertex, which is only present in Desktop GL.
+
 2011-12-07  Jocelyn Turcotte  <jocelyn.turco...@nokia.com>
 
         [Qt] Fix the memory leak of AC layer update message contents on the UI process.

Modified: trunk/Source/WebKit2/UIProcess/API/qt/qquickwebpage.cpp (102336 => 102337)


--- trunk/Source/WebKit2/UIProcess/API/qt/qquickwebpage.cpp	2011-12-08 15:29:13 UTC (rev 102336)
+++ trunk/Source/WebKit2/UIProcess/API/qt/qquickwebpage.cpp	2011-12-08 15:30:29 UTC (rev 102337)
@@ -226,7 +226,7 @@
     virtual void updateState(const RenderState& state, QSGMaterial* newMaterial, QSGMaterial* oldMaterial);
     virtual char const* const* attributeNames() const
     {
-        static char const* const attr[] = { 0 };
+        static char const* const attr[] = { "vertex", 0 };
         return attr;
     }
 
@@ -234,7 +234,8 @@
     // All real painting is gone by TextureMapper through LayerTreeHostProxy.
     virtual const char* vertexShader() const
     {
-        return "void main() { gl_Position = gl_Vertex; }";
+        return "attribute highp vec4 vertex; \n"
+               "void main() { gl_Position = vertex; }";
     }
 
     virtual const char* fragmentShader() const
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to