Diff
Modified: trunk/Source/Platform/ChangeLog (127622 => 127623)
--- trunk/Source/Platform/ChangeLog 2012-09-05 19:03:24 UTC (rev 127622)
+++ trunk/Source/Platform/ChangeLog 2012-09-05 19:04:08 UTC (rev 127623)
@@ -1,3 +1,19 @@
+2012-09-05 Mark Pilgrim <pilg...@chromium.org>
+
+ [Chromium] Remove getRenderStyleForStrike from PlatformSupport
+ https://bugs.webkit.org/show_bug.cgi?id=95363
+
+ Reviewed by Adam Barth.
+
+ Part of a refactoring series. See tracking bug 82948.
+
+ * Platform.gypi:
+ * chromium/public/linux/WebFontInfo.h: Added.
+ (WebKit):
+ (WebFontInfo):
+ * chromium/public/linux/WebFontRenderStyle.h: Added.
+ (WebKit):
+
2012-09-05 Tommy Widenflycht <tom...@google.com>
MediaStream API: Add the local and remote description functionality to RTCPeerConnection
Modified: trunk/Source/Platform/Platform.gypi (127622 => 127623)
--- trunk/Source/Platform/Platform.gypi 2012-09-05 19:03:24 UTC (rev 127622)
+++ trunk/Source/Platform/Platform.gypi 2012-09-05 19:04:08 UTC (rev 127623)
@@ -149,6 +149,8 @@
'chromium/public/WebWorkerRunLoop.h',
'chromium/public/android/WebSandboxSupport.h',
'chromium/public/android/WebThemeEngine.h',
+ 'chromium/public/linux/WebFontInfo.h',
+ 'chromium/public/linux/WebFontRenderStyle.h',
'chromium/public/linux/WebSandboxSupport.h',
'chromium/public/linux/WebThemeEngine.h',
'chromium/public/mac/WebSandboxSupport.h',
Copied: trunk/Source/Platform/chromium/public/linux/WebFontInfo.h (from rev 127620, trunk/Source/WebKit/chromium/public/linux/WebFontInfo.h) (0 => 127623)
--- trunk/Source/Platform/chromium/public/linux/WebFontInfo.h (rev 0)
+++ trunk/Source/Platform/chromium/public/linux/WebFontInfo.h 2012-09-05 19:04:08 UTC (rev 127623)
@@ -0,0 +1,78 @@
+/*
+ * Copyright (C) 2009 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:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * 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.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+ * OWNER OR 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 WebFontInfo_h
+#define WebFontInfo_h
+
+#include "../WebCString.h"
+#include "WebFontFamily.h"
+#include "WebFontRenderStyle.h"
+
+#include <string.h>
+#include <unistd.h>
+
+namespace WebKit {
+
+class WebFontInfo {
+public:
+ // Set a global preference describing whether renderStyleForStrike() should
+ // enable subpixel positioning or not. FontConfig doesn't currently provide
+ // a parameter for controlling this.
+ WEBKIT_EXPORT static void setSubpixelPositioning(bool);
+
+ // Return a font family which provides glyphs for the Unicode code points
+ // specified by |utf16|
+ // characters: a native-endian UTF16 string
+ // numCharacters: the number of 16-bit words in |utf16|
+ // preferredLocale: preferred locale identifier for the |characters|
+ // (e.g. "en", "ja", "zh-CN")
+ //
+ // Returns: the font family or an empty string if the request could not be
+ // satisfied.
+ // Returns: the font family instance. The instance has an empty font name if the request could not be satisfied.
+ WEBKIT_EXPORT static void familyForChars(const WebUChar* characters, size_t numCharacters, const char* preferredLocale, WebFontFamily*);
+
+ // Fill out the given WebFontRenderStyle with the user's preferences for
+ // rendering the given font at the given size (in pixels).
+ // family: i.e. "Times New Roman"
+ // sizeAndStyle:
+ // 3322222222221111111111
+ // 10987654321098765432109876543210
+ // +--------------------------------+
+ // |..............Size............IB|
+ // +--------------------------------+
+ // I: italic flag
+ // B: bold flag
+ WEBKIT_EXPORT static void renderStyleForStrike(const char* family, int sizeAndStyle, WebFontRenderStyle* result);
+};
+
+} // namespace WebKit
+
+#endif
Copied: trunk/Source/Platform/chromium/public/linux/WebFontRenderStyle.h (from rev 127620, trunk/Source/WebKit/chromium/public/linux/WebFontRenderStyle.h) (0 => 127623)
--- trunk/Source/Platform/chromium/public/linux/WebFontRenderStyle.h (rev 0)
+++ trunk/Source/Platform/chromium/public/linux/WebFontRenderStyle.h 2012-09-05 19:04:08 UTC (rev 127623)
@@ -0,0 +1,63 @@
+/*
+ * Copyright (C) 2010 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:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * 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.
+ * * Neither the name of Google Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 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 THE COPYRIGHT
+ * OWNER OR 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 WebFontRenderStyle_h
+#define WebFontRenderStyle_h
+
+#include "../WebCommon.h"
+
+namespace WebCore { struct FontRenderStyle; }
+
+namespace WebKit {
+
+struct WEBKIT_EXPORT WebFontRenderStyle {
+ // Each of the use* members below can take one of three values:
+ // 0: off
+ // 1: on
+ // 2: no preference expressed
+ char useBitmaps; // use embedded bitmap strike if possible
+ char useAutoHint; // use 'auto' hinting (FreeType specific)
+ char useHinting; // hint glyphs to the pixel grid
+ char hintStyle; // level of hinting, 0..3
+ char useAntiAlias; // antialias glyph shapes
+ char useSubpixelRendering; // use subpixel rendering (partially-filled pixels)
+ char useSubpixelPositioning; // use subpixel positioning (fractional X positions for glyphs)
+
+#if WEBKIT_IMPLEMENTATION
+ // Translates the members of this struct to a FontRenderStyle
+ void toFontRenderStyle(WebCore::FontRenderStyle*);
+#endif
+
+ void setDefaults();
+};
+
+} // namespace WebKit
+
+#endif // WebFontRenderStyle_h
Modified: trunk/Source/WebCore/ChangeLog (127622 => 127623)
--- trunk/Source/WebCore/ChangeLog 2012-09-05 19:03:24 UTC (rev 127622)
+++ trunk/Source/WebCore/ChangeLog 2012-09-05 19:04:08 UTC (rev 127623)
@@ -1,3 +1,22 @@
+2012-09-05 Mark Pilgrim <pilg...@chromium.org>
+
+ [Chromium] Remove getRenderStyleForStrike from PlatformSupport
+ https://bugs.webkit.org/show_bug.cgi?id=95363
+
+ Reviewed by Adam Barth.
+
+ Part of a refactoring series. See tracking bug 82948.
+
+ * platform/chromium/PlatformSupport.h:
+ (PlatformSupport):
+ * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp:
+ (WebCore::FontPlatformData::operator==):
+ (WebCore::FontPlatformData::getRenderStyleForStrike):
+ (WebCore):
+ (WebCore::FontPlatformData::querySystemForRenderStyle):
+ * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h:
+ (FontPlatformData):
+
2012-09-05 Sami Kyostila <skyos...@google.com>
Enable/disable composited scrolling based on overflow
Modified: trunk/Source/WebCore/platform/chromium/PlatformSupport.h (127622 => 127623)
--- trunk/Source/WebCore/platform/chromium/PlatformSupport.h 2012-09-05 19:03:24 UTC (rev 127622)
+++ trunk/Source/WebCore/platform/chromium/PlatformSupport.h 2012-09-05 19:04:08 UTC (rev 127623)
@@ -103,7 +103,6 @@
#if OS(DARWIN)
static bool loadFont(NSFont* srcFont, CGFontRef*, uint32_t* fontID);
#elif OS(UNIX)
- static void getRenderStyleForStrike(const char* family, int sizeAndStyle, FontRenderStyle* result);
struct FontFamily {
String name;
bool isBold;
Modified: trunk/Source/WebCore/platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp (127622 => 127623)
--- trunk/Source/WebCore/platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp 2012-09-05 19:03:24 UTC (rev 127622)
+++ trunk/Source/WebCore/platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp 2012-09-05 19:04:08 UTC (rev 127623)
@@ -1,10 +1,10 @@
/*
* Copyright (c) 2006, 2007, 2008, 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:
- *
+ *
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
* * Neither the name of Google Inc. nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
- *
+ *
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -29,25 +29,27 @@
*/
#include "config.h"
-#include "FontPlatformData.h"
+#include "FontPlatformDataHarfBuzz.h"
#include "NotImplemented.h"
#include "PlatformString.h"
-#include "PlatformSupport.h"
-
#include "SkAdvancedTypefaceMetrics.h"
#include "SkFontHost.h"
#include "SkPaint.h"
#include "SkTypeface.h"
-#include <wtf/text/StringImpl.h>
-
#if USE(HARFBUZZ_NG)
#include "HarfBuzzNGFace.h"
#else
#include "HarfBuzzSkia.h"
#endif
+#include <public/linux/WebFontInfo.h>
+#include <public/linux/WebFontRenderStyle.h>
+#include <public/linux/WebSandboxSupport.h>
+#include <public/Platform.h>
+#include <wtf/text/StringImpl.h>
+
namespace WebCore {
static SkPaint::Hinting skiaHinting = SkPaint::kNormal_Hinting;
@@ -248,7 +250,7 @@
else
typefacesEqual = SkTypeface::Equal(m_typeface, a.m_typeface);
- return typefacesEqual
+ return typefacesEqual
&& m_textSize == a.m_textSize
&& m_fakeBold == a.m_fakeBold
&& m_fakeItalic == a.m_fakeItalic
@@ -296,9 +298,27 @@
}
#endif
+void FontPlatformData::getRenderStyleForStrike(const char* font, int sizeAndStyle)
+{
+ WebKit::WebFontRenderStyle style;
+
+#if OS(ANDROID)
+ style.setDefaults();
+#else
+ if (!font || !*font)
+ style.setDefaults(); // It's probably a webfont. Take the system defaults.
+ else if (WebKit::Platform::current()->sandboxSupport())
+ WebKit::Platform::current()->sandboxSupport()->getRenderStyleForStrike(font, sizeAndStyle, &style);
+ else
+ WebKit::WebFontInfo::renderStyleForStrike(font, sizeAndStyle, &style);
+#endif
+
+ style.toFontRenderStyle(&m_style);
+}
+
void FontPlatformData::querySystemForRenderStyle()
{
- PlatformSupport::getRenderStyleForStrike(m_family.data(), (((int)m_textSize) << 2) | (m_typeface->style() & 3), &m_style);
+ getRenderStyleForStrike(m_family.data(), (((int)m_textSize) << 2) | (m_typeface->style() & 3));
// Fix FontRenderStyle::NoPreference to actual styles.
if (m_style.useAntiAlias == FontRenderStyle::NoPreference)
Modified: trunk/Source/WebCore/platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h (127622 => 127623)
--- trunk/Source/WebCore/platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h 2012-09-05 19:03:24 UTC (rev 127622)
+++ trunk/Source/WebCore/platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h 2012-09-05 19:04:08 UTC (rev 127623)
@@ -1,10 +1,10 @@
/*
* Copyright (c) 2006, 2007, 2008, 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:
- *
+ *
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above
@@ -14,7 +14,7 @@
* * Neither the name of Google Inc. nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
- *
+ *
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
@@ -126,6 +126,7 @@
static void setSubpixelPositioning(bool);
private:
+ void getRenderStyleForStrike(const char*, int);
void querySystemForRenderStyle();
// FIXME: Could SkAutoUnref be used here?
Modified: trunk/Source/WebKit/chromium/ChangeLog (127622 => 127623)
--- trunk/Source/WebKit/chromium/ChangeLog 2012-09-05 19:03:24 UTC (rev 127622)
+++ trunk/Source/WebKit/chromium/ChangeLog 2012-09-05 19:04:08 UTC (rev 127623)
@@ -1,3 +1,17 @@
+2012-09-05 Mark Pilgrim <pilg...@chromium.org>
+
+ [Chromium] Remove getRenderStyleForStrike from PlatformSupport
+ https://bugs.webkit.org/show_bug.cgi?id=95363
+
+ Reviewed by Adam Barth.
+
+ Part of a refactoring series. See tracking bug 82948.
+
+ * public/linux/WebFontInfo.h:
+ * public/linux/WebFontRenderStyle.h:
+ * src/PlatformSupport.cpp:
+ (WebCore):
+
2012-09-05 Ilya Tikhonovsky <loi...@chromium.org>
Unreviewed: WebInspector: remove accidentally committed speed test.
Modified: trunk/Source/WebKit/chromium/public/linux/WebFontInfo.h (127622 => 127623)
--- trunk/Source/WebKit/chromium/public/linux/WebFontInfo.h 2012-09-05 19:03:24 UTC (rev 127622)
+++ trunk/Source/WebKit/chromium/public/linux/WebFontInfo.h 2012-09-05 19:04:08 UTC (rev 127623)
@@ -28,51 +28,4 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef WebFontInfo_h
-#define WebFontInfo_h
-
-#include "../linux/WebFontRenderStyle.h"
-#include "../platform/WebCString.h"
-#include "../platform/linux/WebFontFamily.h"
-
-#include <string.h>
-#include <unistd.h>
-
-namespace WebKit {
-
-class WebFontInfo {
-public:
- // Set a global preference describing whether renderStyleForStrike() should
- // enable subpixel positioning or not. FontConfig doesn't currently provide
- // a parameter for controlling this.
- WEBKIT_EXPORT static void setSubpixelPositioning(bool);
-
- // Return a font family which provides glyphs for the Unicode code points
- // specified by |utf16|
- // characters: a native-endian UTF16 string
- // numCharacters: the number of 16-bit words in |utf16|
- // preferredLocale: preferred locale identifier for the |characters|
- // (e.g. "en", "ja", "zh-CN")
- //
- // Returns: the font family or an empty string if the request could not be
- // satisfied.
- // Returns: the font family instance. The instance has an empty font name if the request could not be satisfied.
- WEBKIT_EXPORT static void familyForChars(const WebUChar* characters, size_t numCharacters, const char* preferredLocale, WebFontFamily*);
-
- // Fill out the given WebFontRenderStyle with the user's preferences for
- // rendering the given font at the given size (in pixels).
- // family: i.e. "Times New Roman"
- // sizeAndStyle:
- // 3322222222221111111111
- // 10987654321098765432109876543210
- // +--------------------------------+
- // |..............Size............IB|
- // +--------------------------------+
- // I: italic flag
- // B: bold flag
- WEBKIT_EXPORT static void renderStyleForStrike(const char* family, int sizeAndStyle, WebFontRenderStyle* result);
-};
-
-} // namespace WebKit
-
-#endif
+#include "../../../../Platform/chromium/public/linux/WebFontInfo.h"
Modified: trunk/Source/WebKit/chromium/public/linux/WebFontRenderStyle.h (127622 => 127623)
--- trunk/Source/WebKit/chromium/public/linux/WebFontRenderStyle.h 2012-09-05 19:03:24 UTC (rev 127622)
+++ trunk/Source/WebKit/chromium/public/linux/WebFontRenderStyle.h 2012-09-05 19:04:08 UTC (rev 127623)
@@ -28,36 +28,4 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef WebFontRenderStyle_h
-#define WebFontRenderStyle_h
-
-#include "../platform/WebCommon.h"
-
-namespace WebCore { struct FontRenderStyle; }
-
-namespace WebKit {
-
-struct WEBKIT_EXPORT WebFontRenderStyle {
- // Each of the use* members below can take one of three values:
- // 0: off
- // 1: on
- // 2: no preference expressed
- char useBitmaps; // use embedded bitmap strike if possible
- char useAutoHint; // use 'auto' hinting (FreeType specific)
- char useHinting; // hint glyphs to the pixel grid
- char hintStyle; // level of hinting, 0..3
- char useAntiAlias; // antialias glyph shapes
- char useSubpixelRendering; // use subpixel rendering (partially-filled pixels)
- char useSubpixelPositioning; // use subpixel positioning (fractional X positions for glyphs)
-
-#if WEBKIT_IMPLEMENTATION
- // Translates the members of this struct to a FontRenderStyle
- void toFontRenderStyle(WebCore::FontRenderStyle*);
-#endif
-
- void setDefaults();
-};
-
-} // namespace WebKit
-
-#endif // WebFontRenderStyle_h
+#include "../../../../Platform/chromium/public/linux/WebFontRenderStyle.h"
Modified: trunk/Source/WebKit/chromium/src/PlatformSupport.cpp (127622 => 127623)
--- trunk/Source/WebKit/chromium/src/PlatformSupport.cpp 2012-09-05 19:03:24 UTC (rev 127622)
+++ trunk/Source/WebKit/chromium/src/PlatformSupport.cpp 2012-09-05 19:04:08 UTC (rev 127623)
@@ -253,25 +253,8 @@
#endif
}
-void PlatformSupport::getRenderStyleForStrike(const char* font, int sizeAndStyle, FontRenderStyle* result)
-{
- WebFontRenderStyle style;
-
-#if OS(ANDROID)
- style.setDefaults();
-#else
- if (!font || !*font)
- style.setDefaults(); // It's probably a webfont. Take the system defaults.
- else if (WebKit::Platform::current()->sandboxSupport())
- WebKit::Platform::current()->sandboxSupport()->getRenderStyleForStrike(font, sizeAndStyle, &style);
- else
- WebFontInfo::renderStyleForStrike(font, sizeAndStyle, &style);
#endif
- style.toFontRenderStyle(result);
-}
-#endif
-
// Indexed Database -----------------------------------------------------------
PassRefPtr<IDBFactoryBackendInterface> PlatformSupport::idbFactory()