Fix for 3513067, spaces being lost when RTL text is rendered. Make sure not to...
authorhyatt <hyatt@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 20 Jan 2005 00:05:14 +0000 (00:05 +0000)
committerhyatt <hyatt@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 20 Jan 2005 00:05:14 +0000 (00:05 +0000)
in the margin.

        Reviewed by john

        * WebCoreSupport.subproj/WebTextRenderer.m:
        (-[WebTextRenderer _createATSUTextLayoutForRun:style:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@8406 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebKit/ChangeLog
WebKit/WebCoreSupport.subproj/WebTextRenderer.m

index 696a523f9ecfc948d17dc3075d66103b70ae5b40..02f38d71171c650f74de7b7f93e8e926e120b41a 100644 (file)
@@ -1,3 +1,13 @@
+2005-01-19  David Hyatt  <hyatt@apple.com>
+
+       Fix for 3513067, spaces being lost when RTL text is rendered.  Make sure not to allow hangers or spaces
+       in the margin.
+       
+        Reviewed by john
+       
+        * WebCoreSupport.subproj/WebTextRenderer.m:
+        (-[WebTextRenderer _createATSUTextLayoutForRun:style:]):
+
 2005-01-19  Darin Adler <darin@apple.com>
 
         Reviewed by vicki
 2005-01-19  Darin Adler <darin@apple.com>
 
         Reviewed by vicki
index 6670ef3c8441f61b53863d128fad79c969d94b34..dadef17d03871d7e44937e16dff888804ea79d05 100644 (file)
@@ -1472,7 +1472,8 @@ static const char *joiningNames[] = {
         FATAL_ALWAYS ("ATSUCreateTextLayoutWithTextPtr failed(%d)", status);
 
     CGContextRef cgContext = (CGContextRef)[[NSGraphicsContext currentContext] graphicsPort];
         FATAL_ALWAYS ("ATSUCreateTextLayoutWithTextPtr failed(%d)", status);
 
     CGContextRef cgContext = (CGContextRef)[[NSGraphicsContext currentContext] graphicsPort];
-    ATSLineLayoutOptions lineLayoutOptions = (kATSLineFractDisable | kATSLineDisableAutoAdjustDisplayPos | kATSLineUseDeviceMetrics);
+    ATSLineLayoutOptions lineLayoutOptions = (kATSLineFractDisable | kATSLineDisableAutoAdjustDisplayPos | kATSLineUseDeviceMetrics |
+                                              kATSLineKeepSpacesOutOfMargin | kATSLineHasNoHangers);
     Boolean rtl = style->rtl;
     ATSUAttributeTag tags[] = { kATSUCGContextTag, kATSULineLayoutOptionsTag, kATSULineDirectionTag };
     ByteCount sizes[] = { sizeof(CGContextRef), sizeof(ATSLineLayoutOptions), sizeof(Boolean)  };
     Boolean rtl = style->rtl;
     ATSUAttributeTag tags[] = { kATSUCGContextTag, kATSULineLayoutOptionsTag, kATSULineDirectionTag };
     ByteCount sizes[] = { sizeof(CGContextRef), sizeof(ATSLineLayoutOptions), sizeof(Boolean)  };