[Webkit-unassigned] [Bug 24168] RTL: Home/End key does not behave correctly in mixed bidi text in RTL document

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Apr 10 15:10:27 PDT 2009


https://bugs.webkit.org/show_bug.cgi?id=24168


xji at chromium.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #29402|                            |review?
               Flag|                            |




------- Comment #8 from xji at chromium.org  2009-04-10 15:10 PDT -------
Created an attachment (id=29402)
 --> (https://bugs.webkit.org/attachment.cgi?id=29402&action=view)
patch w/ Layout test

Hi Mitz,

Thanks for your inputs on previous patch. They are very helpful!

I changed to reconstruct the logic order from line boxes by reversing L2 phase
in Unicode Bidi algorithm.

I am reconstructing the logic order of leave boxes only. I think that should be
enough.

But I still have 3 questions:
1. I am implementing the logic "home/end' key functionality in "move" +
"right"/"left", but I think it should be done in "move" + "forward"/"backward".

2. The reconstruction is done in editing per home/end operation.
I am not sure whether it should be done in rendering code, after the whole
structure of a line is fully constructed? and in-validate it if line structure
changed? So it could save some performance overhead.

3. I am caching the logic chain in InlineBox because:
a) I need the chain (at least the 'next') for continuing reverse boxes during
reconstruct logic order from low bidi level to high bidi level.
b) I need the chain to get the 'next' (or 'prev') line box if the
startBox->renderer()->node() == NULL (or the endBox->renderer()->node() ==
NULL) in getLogicStartBoxAndNode() (or getLogicEndBoxAndNode()). 


-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the webkit-unassigned mailing list