Closed Bug 324870 Opened 19 years ago Closed 17 years ago

RTL text moves when selecting in text with text-align: justify (Cairo builds)

Categories

(Core :: Graphics, defect)

defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME
mozilla1.9alpha6

People

(Reporter: martijn.martijn, Assigned: masayuki)

References

Details

(Keywords: regression, rtl, testcase)

Attachments

(3 files, 2 obsolete files)

See upcoming testcase.
All the lines in the testcase should look identical (except for the parts that are selected).
Summary: Text moves when selectiing in text with text-align: justify (Cairo builds) → Text moves when selecting in text with text-align: justify (Cairo builds)
Attached file testcase (obsolete) —
Whiteboard: cairo
Blocks: 327184
Other way around -- fixing 327184 should fix this as well.
No longer blocks: 327184
Depends on: 327184
It appears from this test case:
https://bugzilla.mozilla.org/attachment.cgi?id=197187&action=view
that text doesn't get justified in cairo builds.
This also occurs under Linux: OS should be set to All.
OS: Windows XP → All
*** Bug 323697 has been marked as a duplicate of this bug. ***
Depends on: 334512
Blocks: 334512
No longer depends on: 334512
Blocks: 334737
No longer blocks: 334512
Flags: blocking1.9a1?
this is fixed on windows
OS: All → Linux
Fixed on linux, too. Sometime between 06-19 and 06-26, but I don't feel like downloading more builds to check. 

A quick trip through bonsai shows a checkin
2006-06-21 07:13  Bug 327184 CSS property letter-spacing rendered incorrectly r=pavlov 

So I'd put my money on that.
-> WORKSFORME since we don't know what fixed this.
Status: NEW → RESOLVED
Closed: 18 years ago
Flags: blocking1.9a1?
OS: Linux → All
Hardware: PC → All
Resolution: --- → WORKSFORME
Whiteboard: cairo
-> REOPEN.

This a large part is fixed by bug 327184. But some Linux environments, I have a report this bug.
Status: RESOLVED → REOPENED
Resolution: WORKSFORME → ---
Assignee: nobody → masayuki
Status: REOPENED → NEW
Status: NEW → ASSIGNED
Attached file Testcase (Hebrew)
The original testcase (attachment 209763 [details]) seems OK to me, on Windows.
In this testcase, there are some Hebrew words and it still buggy.
(In reply to comment #10)
> The original testcase (attachment 209763 [details] [edit]) seems OK to me, on Windows.
> In this testcase, there are some Hebrew words and it still buggy.

I confirm, also selecting seem to go wrong.
I.e. select from the first letter to the 3rd line: selection seem to get inverted.

I confirmed the RTL problem on Linux too. I have an idea for fix it. I'll work on it.
(In reply to comment #11)
> I confirm, also selecting seem to go wrong.
> I.e. select from the first letter to the 3rd line: selection seem to get
> inverted.

The selection "inverting" is correct behavior for RTL characters as far as I can tell, the bug is that the text shifts around a few pixels this way and that as you change the selection.
The only problem I can see in the second testcase is that the text moves a bit when selecting the text.
The first letter in RTL languages is always at the right edge. 
(In reply to comment #13)
> The selection "inverting" is correct behavior for RTL characters as far as I
> can tell

Of course, I forgot that Hebrew is written from right to left. My bad. 

Attached patch test patch #1Splinter Review
This patch doesn't work fine. I think that we should align the RTL text to right edge of the text frame. But this patch cannot do it. I have no idea what is wrong...

Note that currently, we are drawing following process.

1. draw right segment to left segment.
   i.e., if there are following segment:
     [Hebrew non-selected(C)][Hebrew selected(B)][Hebrew non-selected(A)]
   we draw A -> B -> C.

2. fix the spacing left to right in each segment. the base position of the spacing is left side of the segment.
Attachment #231133 - Flags: review-
I find a bug of RTL justification code in nsTextFrame. See bug 346417 But it is not all.
Keywords: regression
Flags: blocking1.9?
Depends on: 361728
No longer depends on: 361728
Attached file testcase (obsolete) —
found that today...I'm not shure if that has anything to do with this bug or if I sould open a new one.
(In reply to comment #19)
> Created an attachment (id=250175) [details]
> testcase
> 
> found that today...I'm not shure if that has anything to do with this bug or if
> I sould open a new one.
> 

if you use mac, see bug 361581
(In reply to comment #20)
> (In reply to comment #19)
> > Created an attachment (id=250175) [details] [details]
> > testcase
> > 
> > found that today...I'm not shure if that has anything to do with this bug or if
> > I sould open a new one.
> > 
> 
> if you use mac, see bug 361581
> 
i use linux, Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9a2pre) Gecko/20070102 Minefield/3.0a2pre

The strange thing is that sometimes it goes away if you open new tabs and firefox needs to be reopened to reproduce it...
Attachment #230740 - Attachment mime type: text/html → text/html; charset=windows-1255
Attachment #231127 - Attachment mime type: text/html → text/html; charset=windows-1255
Attachment #250175 - Attachment is obsolete: true
Attachment #209763 - Attachment is obsolete: true
O.K. This bug is only opened for RTL text selection bug. Please file a new bug.
Summary: Text moves when selecting in text with text-align: justify (Cairo builds) → RTL text moves when selecting in text with text-align: justify (Cairo builds)
opened bug 365715
Flags: blocking1.9? → blocking1.9+
Target Milestone: --- → mozilla1.9alpha6
-> WFM

this should be fixed by new textframe.
Status: ASSIGNED → RESOLVED
Closed: 18 years ago17 years ago
Resolution: --- → WORKSFORME
Mass-assigning the new rtl keyword to RTL-related (see bug 349193).
Keywords: rtl
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: