Title: [123323] trunk/Source/WebCore
Revision
123323
Author
[email protected]
Date
2012-07-23 02:58:34 -0700 (Mon, 23 Jul 2012)

Log Message

[WIN] Remove ICU dependencies from UniscribeController
https://bugs.webkit.org/show_bug.cgi?id=91921

Reviewed by Ryosuke Niwa.

Replace ICU specific functions and macros with the corresponding code from WTF::Unicode.
This allows us to use UniscribeController with an other Unicode implementation too.

* platform/graphics/win/UniscribeController.cpp:
(WebCore::UniscribeController::advance):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (123322 => 123323)


--- trunk/Source/WebCore/ChangeLog	2012-07-23 09:47:59 UTC (rev 123322)
+++ trunk/Source/WebCore/ChangeLog	2012-07-23 09:58:34 UTC (rev 123323)
@@ -1,3 +1,16 @@
+2012-07-23  Patrick Gansterer  <[email protected]>
+
+        [WIN] Remove ICU dependencies from UniscribeController
+        https://bugs.webkit.org/show_bug.cgi?id=91921
+
+        Reviewed by Ryosuke Niwa.
+
+        Replace ICU specific functions and macros with the corresponding code from WTF::Unicode.
+        This allows us to use UniscribeController with an other Unicode implementation too.
+
+        * platform/graphics/win/UniscribeController.cpp:
+        (WebCore::UniscribeController::advance):
+
 2012-07-23  Christophe Dumez  <[email protected]>
 
         [EFL] media/controls-styling-strict.html is failing

Modified: trunk/Source/WebCore/platform/graphics/win/UniscribeController.cpp (123322 => 123323)


--- trunk/Source/WebCore/platform/graphics/win/UniscribeController.cpp	2012-07-23 09:47:59 UTC (rev 123322)
+++ trunk/Source/WebCore/platform/graphics/win/UniscribeController.cpp	2012-07-23 09:58:34 UTC (rev 123323)
@@ -31,6 +31,8 @@
 #include "TextRun.h"
 #include <wtf/MathExtras.h>
 
+using namespace WTF;
+using namespace Unicode;
 using namespace std;
 
 namespace WebCore {
@@ -131,7 +133,7 @@
     UChar newC = 0;
 
     bool isSmallCaps;
-    bool nextIsSmallCaps = m_font.isSmallCaps() && !(U_GET_GC_MASK(*curr) & U_GC_M_MASK) && (newC = u_toupper(*curr)) != *curr;
+    bool nextIsSmallCaps = m_font.isSmallCaps() && !(category(*curr) & (Mark_NonSpacing | Mark_Enclosing | Mark_SpacingCombining)) && (newC = toUpper(*curr)) != *curr;
 
     if (nextIsSmallCaps)
         smallCapsBuffer[curr - cp] = newC;
@@ -146,10 +148,10 @@
         int index = curr - cp;
         UChar c = *curr;
 
-        bool forceSmallCaps = isSmallCaps && (U_GET_GC_MASK(c) & U_GC_M_MASK);
+        bool forceSmallCaps = isSmallCaps && (category(c) & (Mark_NonSpacing | Mark_Enclosing | Mark_SpacingCombining));
         nextFontData = m_font.glyphDataForCharacter(*curr, false, forceSmallCaps ? SmallCapsVariant : AutoVariant).fontData;
         if (m_font.isSmallCaps()) {
-            nextIsSmallCaps = forceSmallCaps || (newC = u_toupper(c)) != c;
+            nextIsSmallCaps = forceSmallCaps || (newC = toUpper(c)) != c;
             if (nextIsSmallCaps)
                 smallCapsBuffer[index] = forceSmallCaps ? c : newC;
         }
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to