Diff
Modified: trunk/Source/Platform/ChangeLog (142781 => 142782)
--- trunk/Source/Platform/ChangeLog 2013-02-13 21:17:00 UTC (rev 142781)
+++ trunk/Source/Platform/ChangeLog 2013-02-13 21:22:55 UTC (rev 142782)
@@ -1,3 +1,17 @@
+2013-02-13 Eberhard Graether <[email protected]>
+
+ chromium: remove CompositorHUDFontAtlas
+ https://bugs.webkit.org/show_bug.cgi?id=109328
+
+ Reviewed by James Robinson.
+
+ After switching the HudLayer to use skia's font rendering the
+ CompositorHUDFontAtlas has become obsolete. This change removes
+ this class and the related WebLayerTreeView API.
+
+ * chromium/public/WebLayerTreeViewClient.h:
+ (WebLayerTreeViewClient):
+
2013-02-13 Tommy Widenflycht <[email protected]>
MediaStream API: Use the source id when creating new tracks
Modified: trunk/Source/Platform/chromium/public/WebLayerTreeViewClient.h (142781 => 142782)
--- trunk/Source/Platform/chromium/public/WebLayerTreeViewClient.h 2013-02-13 21:17:00 UTC (rev 142781)
+++ trunk/Source/Platform/chromium/public/WebLayerTreeViewClient.h 2013-02-13 21:22:55 UTC (rev 142782)
@@ -93,11 +93,6 @@
// internally schedule a compositing pass when needed.
virtual void scheduleComposite() = 0;
- // Creates a font atlas to use for debug visualizations. The atlas is a bitmap
- // containing glyph data, a table of ASCII character values to a subrectangle
- // of the atlas representing the corresponding glyph, and the glyph height.
- virtual void createFontAtlas(SkBitmap&, WebRect asciiToRectTable[128], int& fontHeight) { }
-
protected:
virtual ~WebLayerTreeViewClient() { }
};
Modified: trunk/Source/WebCore/ChangeLog (142781 => 142782)
--- trunk/Source/WebCore/ChangeLog 2013-02-13 21:17:00 UTC (rev 142781)
+++ trunk/Source/WebCore/ChangeLog 2013-02-13 21:22:55 UTC (rev 142782)
@@ -1,3 +1,20 @@
+2013-02-13 Eberhard Graether <[email protected]>
+
+ chromium: remove CompositorHUDFontAtlas
+ https://bugs.webkit.org/show_bug.cgi?id=109328
+
+ Reviewed by James Robinson.
+
+ After switching the HudLayer to use skia's font rendering the
+ CompositorHUDFontAtlas has become obsolete. This change removes
+ this class and the related WebLayerTreeView API.
+
+ No new tests.
+
+ * WebCore.gypi:
+ * platform/graphics/chromium/CompositorHUDFontAtlas.cpp: Removed.
+ * platform/graphics/chromium/CompositorHUDFontAtlas.h: Removed.
+
2013-02-13 Dean Jackson <[email protected]>
Small update to speech bubble for captions menu [Mac]
Modified: trunk/Source/WebCore/WebCore.gypi (142781 => 142782)
--- trunk/Source/WebCore/WebCore.gypi 2013-02-13 21:17:00 UTC (rev 142781)
+++ trunk/Source/WebCore/WebCore.gypi 2013-02-13 21:22:55 UTC (rev 142782)
@@ -3882,8 +3882,6 @@
'platform/graphics/chromium/Canvas2DLayerBridge.h',
'platform/graphics/chromium/Canvas2DLayerManager.cpp',
'platform/graphics/chromium/Canvas2DLayerManager.h',
- 'platform/graphics/chromium/CompositorHUDFontAtlas.cpp',
- 'platform/graphics/chromium/CompositorHUDFontAtlas.h',
'platform/graphics/chromium/CrossProcessFontLoading.h',
'platform/graphics/chromium/CrossProcessFontLoading.mm',
'platform/graphics/chromium/DeferredImageDecoder.cpp',
Deleted: trunk/Source/WebCore/platform/graphics/chromium/CompositorHUDFontAtlas.cpp (142781 => 142782)
--- trunk/Source/WebCore/platform/graphics/chromium/CompositorHUDFontAtlas.cpp 2013-02-13 21:17:00 UTC (rev 142781)
+++ trunk/Source/WebCore/platform/graphics/chromium/CompositorHUDFontAtlas.cpp 2013-02-13 21:22:55 UTC (rev 142782)
@@ -1,131 +0,0 @@
-/*
- * Copyright (C) 2012 Google Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "config.h"
-
-#include "CompositorHUDFontAtlas.h"
-
-#include "Font.h"
-#include "FontCache.h"
-#include "FontDescription.h"
-#include "GraphicsContext.h"
-#include "PlatformContextSkia.h"
-#include "SkCanvas.h"
-#include "SkDevice.h"
-#include "TextRun.h"
-#include "skia/ext/platform_canvas.h"
-
-using WebKit::WebRect;
-
-namespace WebCore {
-
-#define ATLAS_SIZE 128
-
-static void wrapPositionIfNeeded(IntPoint& position, int textWidth, int textHeight)
-{
- if (position.x() + textWidth > ATLAS_SIZE)
- position = IntPoint(0, position.y() + textHeight);
-}
-
-// Paints the font into the atlas, from left-to-right, top-to-bottom, starting at
-// startingPosition. At the same time, it updates the ascii-to-WebRect mapping for
-// each character. By doing things this way, it is possible to support variable-width
-// fonts and multiple fonts on the same atlas.
-SkBitmap CompositorHUDFontAtlas::generateFontAtlas(WebRect asciiToRectTable[128], int& fontHeight)
-{
- fontHeight = 14;
-
- OwnPtr<SkCanvas> canvas = adoptPtr(skia::CreateBitmapCanvas(ATLAS_SIZE, ATLAS_SIZE, false /* opaque */));
-
- PlatformContextSkia platformContext(canvas.get());
- GraphicsContext atlasContext(&platformContext);
- atlasContext.setShouldSmoothFonts(false);
-
- // Clear the entire texture atlas to transparent before drawing fonts.
- atlasContext.setFillColor(Color(0, 0, 0, 0), ColorSpaceDeviceRGB);
- atlasContext.clearRect(FloatRect(0, 0, ATLAS_SIZE, ATLAS_SIZE));
-
- // FIXME: monospace font does not work as expected.
- FontDescription fontDescription;
- fontDescription.setGenericFamily(FontDescription::MonospaceFamily);
- fontDescription.setComputedSize(fontHeight);
-
- FontCachePurgePreventer fontCachePurgePreventer;
-
- int textHeight = fontDescription.computedPixelSize();
- IntPoint position(0, textHeight);
- // This is a dirty little trick to account for overhang letters like g, p, j.
- int inflation = textHeight / 3;
-
- Font font(fontDescription, 0, 0);
- font.update(0);
-
- Color fontColor(255, 0, 0);
- atlasContext.setStrokeColor(fontColor, ColorSpaceDeviceRGB);
- atlasContext.setFillColor(fontColor, ColorSpaceDeviceRGB);
-
- // First, draw a generic rect that will be used for special and unknown characters that have nothing else to render.
- {
- int textWidth = textHeight / 2;
- wrapPositionIfNeeded(position, textWidth, textHeight + inflation);
- atlasContext.strokeRect(FloatRect(FloatPoint(position.x() + 1, position.y() - textHeight + 1 + inflation), FloatSize(textWidth - 2, textHeight - 2 - inflation)), 1);
-
- // Initialize the rect that would be copied when drawing this glyph from the atlas.
- asciiToRectTable[0] = WebRect(position.x(), position.y() - textHeight, textWidth, textHeight + inflation);
-
- // Increment to the position where the next glyph will be placed.
- position.setX(position.x() + textWidth);
- }
-
- // Then, draw the ASCII characters.
- for (LChar i = 1; i < 128; ++i) {
- if (i < 32) {
- // Special characters will simply use the the default glyph.
- asciiToRectTable[i] = asciiToRectTable[0];
- continue;
- }
-
- String str;
- str.append(i);
- TextRun text(str);
-
- int textWidth = round(font.width(text));
- wrapPositionIfNeeded(position, textWidth, textHeight + inflation);
- atlasContext.drawText(font, text, position);
-
- // Initialize the rect that would be copied when drawing this glyph from the atlas.
- asciiToRectTable[i] = WebRect(position.x(), position.y() - textHeight, textWidth, textHeight + inflation);
-
- // Increment to the position where the next glyph will be placed.
- position.setX(position.x() + textWidth);
- }
-
- SkBitmap copy;
- const SkBitmap& source = canvas->getDevice()->accessBitmap(false);
- source.copyTo(©, source.config());
- return copy;
-}
-
-} // namespace WebCore
Deleted: trunk/Source/WebCore/platform/graphics/chromium/CompositorHUDFontAtlas.h (142781 => 142782)
--- trunk/Source/WebCore/platform/graphics/chromium/CompositorHUDFontAtlas.h 2013-02-13 21:17:00 UTC (rev 142781)
+++ trunk/Source/WebCore/platform/graphics/chromium/CompositorHUDFontAtlas.h 2013-02-13 21:22:55 UTC (rev 142782)
@@ -1,45 +0,0 @@
-/*
- * Copyright (C) 2012 Google Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef CompositorHUDFontAtlas_h
-#define CompositorHUDFontAtlas_h
-
-#include "SkBitmap.h"
-#include <public/WebRect.h>
-
-namespace WebCore {
-
-class CompositorHUDFontAtlas {
-public:
- // This is a helper function that can generate a font atlas suitable for the compositor's heads up display.
- // Returns a bitmap containing glyphs and populates asciiToRectTable with the
- // location of each glyph.
- static SkBitmap generateFontAtlas(WebKit::WebRect asciiToRectTable[128], int& fontHeight);
-};
-
-} // namespace WebCore
-
-#endif // CompositorHUDFontAtlas_h
-
Modified: trunk/Source/WebKit/chromium/ChangeLog (142781 => 142782)
--- trunk/Source/WebKit/chromium/ChangeLog 2013-02-13 21:17:00 UTC (rev 142781)
+++ trunk/Source/WebKit/chromium/ChangeLog 2013-02-13 21:22:55 UTC (rev 142782)
@@ -1,3 +1,17 @@
+2013-02-13 Eberhard Graether <[email protected]>
+
+ chromium: remove CompositorHUDFontAtlas
+ https://bugs.webkit.org/show_bug.cgi?id=109328
+
+ Reviewed by James Robinson.
+
+ After switching the HudLayer to use skia's font rendering the
+ CompositorHUDFontAtlas has become obsolete. This change removes
+ this class and the related WebLayerTreeView API.
+
+ * src/WebViewImpl.cpp:
+ * src/WebViewImpl.h:
+
2013-02-13 Sheriff Bot <[email protected]>
Unreviewed. Rolled Chromium DEPS to r182150. Requested by
Modified: trunk/Source/WebKit/chromium/src/WebViewImpl.cpp (142781 => 142782)
--- trunk/Source/WebKit/chromium/src/WebViewImpl.cpp 2013-02-13 21:17:00 UTC (rev 142781)
+++ trunk/Source/WebKit/chromium/src/WebViewImpl.cpp 2013-02-13 21:22:55 UTC (rev 142782)
@@ -41,7 +41,6 @@
#include "Color.h"
#include "ColorSpace.h"
#include "CompositionUnderlineVectorBuilder.h"
-#include "CompositorHUDFontAtlas.h"
#include "ContextFeaturesClientImpl.h"
#include "ContextMenu.h"
#include "ContextMenuController.h"
@@ -4259,12 +4258,6 @@
m_client->scheduleComposite();
}
-void WebViewImpl::createFontAtlas(SkBitmap& bitmap, WebRect asciiToRectTable[128], int& fontHeight)
-{
- TRACE_EVENT0("webkit", "WebViewImpl::loadFontAtlas");
- bitmap = WebCore::CompositorHUDFontAtlas::generateFontAtlas(asciiToRectTable, fontHeight);
-}
-
void WebViewImpl::updateLayerTreeViewport()
{
if (!page() || !m_nonCompositedContentHost || !m_layerTreeView)
Modified: trunk/Source/WebKit/chromium/src/WebViewImpl.h (142781 => 142782)
--- trunk/Source/WebKit/chromium/src/WebViewImpl.h 2013-02-13 21:17:00 UTC (rev 142781)
+++ trunk/Source/WebKit/chromium/src/WebViewImpl.h 2013-02-13 21:22:55 UTC (rev 142782)
@@ -328,7 +328,6 @@
virtual void didCommitAndDrawFrame();
virtual void didCompleteSwapBuffers();
virtual void scheduleComposite();
- virtual void createFontAtlas(SkBitmap&, WebRect[128], int&);
// WebViewImpl