Jean-Marc Lasgouttes wrote:
"Dov" == Dov Feldstern <[EMAIL PROTECTED]> writes:

Dov> The cause is what Elazar explained: the piece of code which he
Dov> patched is the one moving the cursor to the end of inset, by
Dov> subtracting the inset's width. This subtraction *should* take
Dov> place inside the inset, because inside it we want the cursor
Dov> position to be calculated relative to *left* edge of the inset;

Actually, I do not understand the original code from Martin. I do not
understand why the fact that the character at cursor is an inset
changes anything.

This I also don't fully understand. But this code is necessary (see below). I mean, what's necessary is to know when you're *inside* an inset.

What goes wrong when the code itself is removed?

I just tried it, and the result is as I expected: when you're inside the inset, the cursor appears "inset's width" to the right of where it should be. Again, inside the inset, I guess everything is supposed to be calculated relative to the inset's *left* edge, but in RTL without the patch, it's calculated relative to the inset's *right* edge.

I really do not understand the cursorX code flow.

Neither do I, really...


JMarc



Reply via email to