[Texmap] Move surface management from TextureMapperNode to TextureMapper
https://bugs.webkit.org/show_bug.cgi?id=75779

Instead of a TextureMapperSurfaceManager class inside of TextureMapperNode.cpp, we now
maintain that surface pool inside of the TextureMapper class. This will later allow us to
allocate intermediate surface from within TextureMapperGL, a functionality we need for
filters.

Also, surfaces are not automatically created with the viewport size, but rather with the
size passed as a parameter. The surface from the pool is the smallest texture that is
larger than the required size, or any texture if such texture is not yet allocated.

Reviewed by Kenneth Rohde Christiansen.

Tests in LayoutTests/compositing already cover this.

* GNUmakefile.list.am: Added TextureMapper.cpp to the build.
* Target.pri: Added TextureMapper.cpp to the build.
* WebCore.gypi: Added TextureMapper.cpp to the build.
* platform/graphics/texmap/TextureMapper.cpp: Added.
* platform/graphics/texmap/TextureMapper.h:
* platform/graphics/texmap/TextureMapperNode.cpp:
(WebCore::TextureMapperNode::paint):
(WebCore::TextureMapperNode::paintReflection):
(WebCore::TextureMapperNode::paintRecursive):
* platform/graphics/texmap/TextureMapperNode.h:
(WebCore::TextureMapperNode::TextureMapperNode):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@104447 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/WebCore/GNUmakefile.list.am b/Source/WebCore/GNUmakefile.list.am
index 4cb8a4e..6d7ea21 100644
--- a/Source/WebCore/GNUmakefile.list.am
+++ b/Source/WebCore/GNUmakefile.list.am
@@ -5656,6 +5656,7 @@
 webcore_sources += \
 	Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp \
 	Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h \
+	Source/WebCore/platform/graphics/texmap/TextureMapper.cpp \
 	Source/WebCore/platform/graphics/texmap/TextureMapper.h \
 	Source/WebCore/platform/graphics/texmap/TextureMapperNode.cpp \
 	Source/WebCore/platform/graphics/texmap/TextureMapperNode.h \
@@ -5671,6 +5672,7 @@
 	Source/WebCore/platform/graphics/opengl/TextureMapperGL.h \
 	Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp \
 	Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h \
+	Source/WebCore/platform/graphics/texmap/TextureMapper.cpp \
 	Source/WebCore/platform/graphics/texmap/TextureMapper.h \
 	Source/WebCore/platform/graphics/texmap/TextureMapperNode.cpp \
 	Source/WebCore/platform/graphics/texmap/TextureMapperNode.h \