Title: [154971] trunk/Source/WebCore
Revision
154971
Author
[email protected]
Date
2013-09-03 00:29:18 -0700 (Tue, 03 Sep 2013)

Log Message

[BlackBerry] Remove LayerData::LayerProgram
https://bugs.webkit.org/show_bug.cgi?id=120601

Reviewed by Anders Carlsson.

JIRA 490672
All layer contents are RGBA now, so there's no need to support BGRA any
more and the LayerData::LayerProgram enum can be removed. Related dead
code was removed.

No new tests, no change in behavior.

* platform/graphics/blackberry/EGLImageLayerWebKitThread.cpp:
(WebCore::EGLImageLayerWebKitThread::EGLImageLayerWebKitThread):
* platform/graphics/blackberry/LayerData.h:
(WebCore::LayerData::LayerData):
* platform/graphics/blackberry/LayerRenderer.cpp:
(WebCore::LayerRenderer::compositeLayersRecursive):
(WebCore::LayerRenderer::createProgram):
* platform/graphics/blackberry/LayerRenderer.h:
* platform/graphics/blackberry/LayerWebKitThread.h:
* platform/graphics/blackberry/PluginLayerWebKitThread.cpp:
(WebCore::PluginLayerWebKitThread::setPluginView):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (154970 => 154971)


--- trunk/Source/WebCore/ChangeLog	2013-09-03 07:16:02 UTC (rev 154970)
+++ trunk/Source/WebCore/ChangeLog	2013-09-03 07:29:18 UTC (rev 154971)
@@ -1,3 +1,29 @@
+2013-09-03  Arvid Nilsson  <[email protected]>
+
+        [BlackBerry] Remove LayerData::LayerProgram
+        https://bugs.webkit.org/show_bug.cgi?id=120601
+
+        Reviewed by Anders Carlsson.
+
+        JIRA 490672
+        All layer contents are RGBA now, so there's no need to support BGRA any
+        more and the LayerData::LayerProgram enum can be removed. Related dead
+        code was removed.
+
+        No new tests, no change in behavior.
+
+        * platform/graphics/blackberry/EGLImageLayerWebKitThread.cpp:
+        (WebCore::EGLImageLayerWebKitThread::EGLImageLayerWebKitThread):
+        * platform/graphics/blackberry/LayerData.h:
+        (WebCore::LayerData::LayerData):
+        * platform/graphics/blackberry/LayerRenderer.cpp:
+        (WebCore::LayerRenderer::compositeLayersRecursive):
+        (WebCore::LayerRenderer::createProgram):
+        * platform/graphics/blackberry/LayerRenderer.h:
+        * platform/graphics/blackberry/LayerWebKitThread.h:
+        * platform/graphics/blackberry/PluginLayerWebKitThread.cpp:
+        (WebCore::PluginLayerWebKitThread::setPluginView):
+
 2013-09-03  Xabier Rodriguez Calvar  <[email protected]>
 
         [GStreamer] Video player sets system volume to 100%

Modified: trunk/Source/WebCore/platform/graphics/blackberry/EGLImageLayerWebKitThread.cpp (154970 => 154971)


--- trunk/Source/WebCore/platform/graphics/blackberry/EGLImageLayerWebKitThread.cpp	2013-09-03 07:16:02 UTC (rev 154970)
+++ trunk/Source/WebCore/platform/graphics/blackberry/EGLImageLayerWebKitThread.cpp	2013-09-03 07:29:18 UTC (rev 154971)
@@ -45,7 +45,6 @@
     , m_textureAccessor(0)
 {
     layerCompositingThread()->setClient(m_client.get());
-    setLayerProgram(LayerProgramRGBA);
 }
 
 EGLImageLayerWebKitThread::~EGLImageLayerWebKitThread()

Modified: trunk/Source/WebCore/platform/graphics/blackberry/LayerData.h (154970 => 154971)


--- trunk/Source/WebCore/platform/graphics/blackberry/LayerData.h	2013-09-03 07:16:02 UTC (rev 154970)
+++ trunk/Source/WebCore/platform/graphics/blackberry/LayerData.h	2013-09-03 07:29:18 UTC (rev 154971)
@@ -56,11 +56,6 @@
 public:
     enum LayerType { Layer, TransformLayer, WebGLLayer, CanvasLayer, CustomLayer };
     enum FilterType { Linear, Nearest, Trilinear, Lanczos };
-    enum LayerProgram {
-        LayerProgramRGBA = 0,
-        LayerProgramBGRA,
-        NumberOfLayerPrograms
-    };
 
 #if ENABLE(CSS_FILTERS)
     enum CSSFilterShaders {
@@ -91,7 +86,6 @@
         , m_opacity(1.0)
         , m_anchorPointZ(0.0)
         , m_borderWidth(0.0)
-        , m_layerProgram(LayerProgramBGRA)
         , m_pluginView(0)
 #if ENABLE(VIDEO)
         , m_mediaPlayer(0)
@@ -159,8 +153,6 @@
 
     bool needsTexture() const { return m_layerType == WebGLLayer || m_layerType == CanvasLayer || m_needsTexture; }
 
-    LayerProgram layerProgram() const { return m_layerProgram; }
-
     bool isFixedPosition() const { return m_isFixedPosition; }
     bool hasFixedContainer() const { return m_hasFixedContainer; }
     bool hasFixedAncestorInDOMTree() const { return m_hasFixedAncestorInDOMTree; }
@@ -219,8 +211,6 @@
     float m_anchorPointZ;
     float m_borderWidth;
 
-    LayerProgram m_layerProgram;
-
     PluginView* m_pluginView;
 #if ENABLE(VIDEO)
     MediaPlayer* m_mediaPlayer;

Modified: trunk/Source/WebCore/platform/graphics/blackberry/LayerRenderer.cpp (154970 => 154971)


--- trunk/Source/WebCore/platform/graphics/blackberry/LayerRenderer.cpp	2013-09-03 07:16:02 UTC (rev 154970)
+++ trunk/Source/WebCore/platform/graphics/blackberry/LayerRenderer.cpp	2013-09-03 07:29:18 UTC (rev 154971)
@@ -919,11 +919,9 @@
 
         // Draw the surface onto another surface or screen.
         bool drawSurface = layerAlreadyOnSurface(layer);
-        // The texture format for the surface is RGBA.
-        LayerData::LayerProgram layerProgram = drawSurface ? LayerData::LayerProgramRGBA : layer->layerProgram();
 
         if (!drawSurface) {
-            const GLES2Program& program = useLayerProgram(layerProgram);
+            const GLES2Program& program = useProgram(LayerProgramRGBA);
             layer->drawTextures(program, m_scale, m_visibleRect, clipRect);
         } else {
             // Draw the reflection if it exists.
@@ -935,11 +933,11 @@
                 if (!mask && layer->replicaLayer())
                     mask = layer->replicaLayer()->maskLayer();
 
-                const GLES2Program& program = useLayerProgram(layerProgram, mask);
+                const GLES2Program& program = useProgram(mask ? LayerMaskProgramRGBA : LayerProgramRGBA);
                 layer->drawSurface(program, layer->layerRendererSurface()->replicaDrawTransform(), mask);
             }
 
-            const GLES2Program& program = useLayerProgram(layerProgram, layer->maskLayer());
+            const GLES2Program& program = useProgram(layer->maskLayer() ? LayerMaskProgramRGBA : LayerProgramRGBA);
             layer->drawSurface(program, layer->layerRendererSurface()->drawTransform(), layer->maskLayer());
         }
     }
@@ -1076,15 +1074,6 @@
         "  gl_FragColor = texture2D(s_texture, v_texCoord) * alpha; \n"
         "}                                                          \n";
 
-    const char* fragmentShaderStringBGRA =
-        "varying mediump vec2 v_texCoord;                                \n"
-        "uniform lowp sampler2D s_texture;                               \n"
-        "uniform lowp float alpha;                                       \n"
-        "void main()                                                     \n"
-        "{                                                               \n"
-        "  gl_FragColor = texture2D(s_texture, v_texCoord).bgra * alpha; \n"
-        "}                                                               \n";
-
     const char* fragmentShaderStringMaskRGBA =
         "varying mediump vec2 v_texCoord;                           \n"
         "uniform lowp sampler2D s_texture;                          \n"
@@ -1097,18 +1086,6 @@
         "  gl_FragColor = vec4(texColor.x, texColor.y, texColor.z, texColor.w) * alpha * maskColor.w;           \n"
         "}                                                          \n";
 
-    const char* fragmentShaderStringMaskBGRA =
-        "varying mediump vec2 v_texCoord;                                \n"
-        "uniform lowp sampler2D s_texture;                               \n"
-        "uniform lowp sampler2D s_mask;                                  \n"
-        "uniform lowp float alpha;                                       \n"
-        "void main()                                                     \n"
-        "{                                                               \n"
-        "  lowp vec4 texColor = texture2D(s_texture, v_texCoord).bgra;             \n"
-        "  lowp vec4 maskColor = texture2D(s_mask, v_texCoord).bgra;          \n"
-        "  gl_FragColor = vec4(texColor.x, texColor.y, texColor.z, texColor.w) * alpha * maskColor.w;         \n"
-        "}                                                               \n";
-
     // Shaders for drawing the debug borders around the layers.
     const char* colorVertexShaderString =
         "attribute vec4 a_position;   \n"
@@ -1129,9 +1106,7 @@
 
     switch (program) {
     case LayerProgramRGBA:
-    case LayerProgramBGRA:
     case LayerMaskProgramRGBA:
-    case LayerMaskProgramBGRA:
         vertexShader = vertexShaderString;
         break;
     case ColorProgram:
@@ -1145,15 +1120,9 @@
     case LayerProgramRGBA:
         fragmentShader = fragmentShaderStringRGBA;
         break;
-    case LayerProgramBGRA:
-        fragmentShader = fragmentShaderStringBGRA;
-        break;
     case LayerMaskProgramRGBA:
         fragmentShader = fragmentShaderStringMaskRGBA;
         break;
-    case LayerMaskProgramBGRA:
-        fragmentShader = fragmentShaderStringMaskBGRA;
-        break;
     case ColorProgram:
         fragmentShader = colorFragmentShaderString;
         break;
@@ -1188,15 +1157,13 @@
     // Get locations of uniforms for the layer content shader program.
     m_programs[program].m_locations[GLES2Program::OpacityUniform] = glGetUniformLocation(programObject, "alpha");
     switch (program) {
-    case LayerProgramRGBA:
-    case LayerProgramBGRA: {
+    case LayerProgramRGBA: {
         GLint samplerLocation = glGetUniformLocation(programObject, "s_texture");
         glUseProgram(programObject);
         glUniform1i(samplerLocation, 0);
         break;
     }
-    case LayerMaskProgramRGBA:
-    case LayerMaskProgramBGRA: {
+    case LayerMaskProgramRGBA: {
         GLint maskSamplerLocation = glGetUniformLocation(programObject, "s_texture");
         GLint maskSamplerLocationMask = glGetUniformLocation(programObject, "s_mask");
         glUseProgram(programObject);
@@ -1231,14 +1198,6 @@
     return program;
 }
 
-const GLES2Program& LayerRenderer::useLayerProgram(LayerData::LayerProgram layerProgram, bool isMask /* = false */)
-{
-    int program = layerProgram;
-    if (isMask)
-        program += MaskPrograms;
-    return useProgram(static_cast<ProgramIndex>(program));
-}
-
 void LayerRenderingResults::addDirtyRect(const IntRect& rect)
 {
     IntRect dirtyUnion[NumberOfDirtyRects];

Modified: trunk/Source/WebCore/platform/graphics/blackberry/LayerRenderer.h (154970 => 154971)


--- trunk/Source/WebCore/platform/graphics/blackberry/LayerRenderer.h	2013-09-03 07:16:02 UTC (rev 154970)
+++ trunk/Source/WebCore/platform/graphics/blackberry/LayerRenderer.h	2013-09-03 07:29:18 UTC (rev 154971)
@@ -158,22 +158,14 @@
     bool makeContextCurrent();
 
     enum ProgramIndex {
-        LayerProgramRGBA = LayerData::LayerProgramRGBA,
-        LayerProgramBGRA = LayerData::LayerProgramBGRA,
-
-        MaskPrograms,
-        LayerMaskProgramRGBA = MaskPrograms + LayerData::LayerProgramRGBA,
-        LayerMaskProgramBGRA = MaskPrograms + LayerData::LayerProgramBGRA,
-
-        InternalPrograms,
-        ColorProgram = InternalPrograms,
-
+        LayerProgramRGBA,
+        LayerMaskProgramRGBA,
+        ColorProgram,
         NumberOfPrograms
     };
 
     bool createProgram(ProgramIndex);
     const BlackBerry::Platform::Graphics::GLES2Program& useProgram(ProgramIndex);
-    const BlackBerry::Platform::Graphics::GLES2Program& useLayerProgram(LayerData::LayerProgram, bool isMask = false);
 
     LayerRendererClient* m_client;
 

Modified: trunk/Source/WebCore/platform/graphics/blackberry/LayerWebKitThread.h (154970 => 154971)


--- trunk/Source/WebCore/platform/graphics/blackberry/LayerWebKitThread.h	2013-09-03 07:16:02 UTC (rev 154970)
+++ trunk/Source/WebCore/platform/graphics/blackberry/LayerWebKitThread.h	2013-09-03 07:29:18 UTC (rev 154971)
@@ -221,7 +221,6 @@
     LayerWebKitThread(LayerType, GraphicsLayerBlackBerry* owner);
 
     void setNeedsTexture(bool needsTexture) { m_needsTexture = needsTexture; }
-    void setLayerProgram(LayerData::LayerProgram layerProgram) { m_layerProgram = layerProgram; }
     bool isDrawable() const { return m_isDrawable; }
 
     void updateVisibility();

Modified: trunk/Source/WebCore/platform/graphics/blackberry/PluginLayerWebKitThread.cpp (154970 => 154971)


--- trunk/Source/WebCore/platform/graphics/blackberry/PluginLayerWebKitThread.cpp	2013-09-03 07:16:02 UTC (rev 154970)
+++ trunk/Source/WebCore/platform/graphics/blackberry/PluginLayerWebKitThread.cpp	2013-09-03 07:29:18 UTC (rev 154971)
@@ -41,7 +41,6 @@
 {
     m_pluginView = pluginView;
     setNeedsTexture(isDrawable() && pluginView);
-    setLayerProgram(LayerProgramRGBA);
 
     if (m_pluginView)
         setNeedsDisplay();
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to