RESOLVED FIXED 14684
Hebrew text in Safari chrome is reversed (LTR instead of RTL)
https://bugs.webkit.org/show_bug.cgi?id=14684
Summary Hebrew text in Safari chrome is reversed (LTR instead of RTL)
mitz
Reported 2007-07-20 00:08:41 PDT
Hebrew text in Safari chrome is laid out in left-to-right order instead of right-to-left. This can be seen in window title bars, bookmark menu items, and the address bar and search fields when they are not focused.
Attachments
Test case (228 bytes, text/html)
2007-07-20 00:11 PDT, mitz
no flags
More bidi string rendering tests (and bugs) (1.25 KB, text/html)
2007-07-20 16:21 PDT, mitz
no flags
[WIP] Add GraphicsContext::drawBidiText() and use it in WebCoreTextRenderer.cpp and in form controls (25.25 KB, patch)
2007-07-21 05:54 PDT, mitz
no flags
Add GraphicsContext::drawBidiText() and use it in WebCoreTextRenderer.cpp and in form controls (355.44 KB, patch)
2007-07-22 07:01 PDT, mitz
darin: review+
Add GraphicsContext::drawBidiText() and use it in WebCoreTextRenderer.cpp and in form controls (353.53 KB, patch)
2007-07-23 10:25 PDT, mitz
darin: review+
mitz
Comment 1 2007-07-20 00:11:37 PDT
Created attachment 15591 [details] Test case
mitz
Comment 2 2007-07-20 00:12:07 PDT
Also affected are link drag images and tab titles.
Adam Roben (:aroben)
Comment 3 2007-07-20 00:34:24 PDT
mitz
Comment 4 2007-07-20 16:21:31 PDT
Created attachment 15610 [details] More bidi string rendering tests (and bugs) Reordering characters is not enough, as demonstrated by the way list items render on this test: mirroring and combining marks need to be handled. Since the Font object already knows how to do that for unidirectional runs, I think the bidirectional string drawing routine should not reorder characters and feed one string into Font::drawText, but rather draw separate truly-unidirectional runs.
mitz
Comment 5 2007-07-21 05:54:45 PDT
Created attachment 15611 [details] [WIP] Add GraphicsContext::drawBidiText() and use it in WebCoreTextRenderer.cpp and in form controls
mitz
Comment 6 2007-07-22 07:01:07 PDT
Created attachment 15620 [details] Add GraphicsContext::drawBidiText() and use it in WebCoreTextRenderer.cpp and in form controls
Darin Adler
Comment 7 2007-07-22 08:44:15 PDT
Comment on attachment 15620 [details] Add GraphicsContext::drawBidiText() and use it in WebCoreTextRenderer.cpp and in form controls r=me I would like the change log to explain better why the visual ordering test cases are removed. I think I understand, but I'm not sure.
Adam Roben (:aroben)
Comment 8 2007-07-22 12:23:52 PDT
Comment on attachment 15620 [details] Add GraphicsContext::drawBidiText() and use it in WebCoreTextRenderer.cpp and in form controls Index: WebCore/manual-tests/resources/chrome-bidi-text-window.html =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: WebCore/manual-tests/resources/chrome-bidi-text-window.html ___________________________________________________________________ Name: svn:mime-type + application/octet-stream I don't think this was intentional? Whoever commits this should fix this first!
mitz
Comment 9 2007-07-22 12:47:14 PDT
(In reply to comment #8) > I don't think this was intentional? Whoever commits this should fix this first! That file is encoded as UTF-16. I think it is more readable that way than using entities for all the non-Latin characters.
mitz
Comment 10 2007-07-23 10:25:03 PDT
Created attachment 15650 [details] Add GraphicsContext::drawBidiText() and use it in WebCoreTextRenderer.cpp and in form controls Changed the manual test case to UTF-8 and added info to the change log about why -webkit-rtl-ordering:visual is being ignored.
Darin Adler
Comment 11 2007-07-23 10:29:06 PDT
Comment on attachment 15650 [details] Add GraphicsContext::drawBidiText() and use it in WebCoreTextRenderer.cpp and in form controls r=me
Mark Rowe (bdash)
Comment 12 2007-07-24 02:59:08 PDT
Landed in r24582.
Note You need to log in before you can comment on or make changes to this bug.