Bug 149193

Summary: GraphicsContext::drawBidiText()'s BidiResolver should not have isolated runs
Product: WebKit Reporter: Myles C. Maxfield <mmaxfield>
Component: New BugsAssignee: Myles C. Maxfield <mmaxfield>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, esprehn+autocc, glenn, kondapallykalyan, mitz
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 149153    
Attachments:
Description Flags
Patch andersca: review+

Description Myles C. Maxfield 2015-09-15 16:04:40 PDT
GraphicsContext::drawBidiText()'s BidiResolver should not have isolated runs
Comment 1 Myles C. Maxfield 2015-09-15 16:09:42 PDT
Created attachment 261255 [details]
Patch
Comment 2 Anders Carlsson 2015-09-15 16:11:46 PDT
Comment on attachment 261255 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=261255&action=review

> Source/WebCore/platform/text/BidiResolver.h:304
> +class BidiResolver: public BidiResolverBase<Iterator, Run, BidiResolver<Iterator, Run>> {

Space before :

> Source/WebCore/platform/text/BidiResolver.h:309
> +class BidiResolverWithIsolate: public BidiResolverBase<Iterator, Run, BidiResolverWithIsolate<Iterator, Run, IsolateRun>> {

Space before :

> Source/WebCore/rendering/InlineIterator.h:444
> +template <>

No space!

> Source/WebCore/rendering/InlineIterator.h:532
>  template <>

Shouldn't have a space here either.
Comment 3 mitz 2015-09-15 16:12:46 PDT
Aren’t isolated runs needed for supporting explicit directional isolates (LRI, RLI and FSI)? See <http://www.unicode.org/reports/tr9/#Explicit_Directional_Isolates>.
Comment 4 Myles C. Maxfield 2015-09-15 16:50:23 PDT
Mitz: Yep, but we don't honor those currently. I filed a bug about it recently: https://bugs.webkit.org/show_bug.cgi?id=149170
Comment 5 Myles C. Maxfield 2015-09-15 16:52:01 PDT
(In reply to comment #4)
> Mitz: Yep, but we don't honor those currently. I filed a bug about it
> recently: https://bugs.webkit.org/show_bug.cgi?id=149170

At least, I should say that our isolate infrastructure requires isolates to come from RenderElements. (Maybe we generate RenderElements for these codepoints and I've just not seen where we do that).

See constructBidiRunsForSegment().
Comment 6 Myles C. Maxfield 2015-09-15 17:06:12 PDT
Committed r189829: <http://trac.webkit.org/changeset/189829>