Closed Bug 75011 Opened 23 years ago Closed 17 years ago

Selecting text at a ligature boundary causes the ligatures to be broken

Categories

(Core :: Layout: Text and Fonts, defect, P4)

defect

Tracking

()

RESOLVED FIXED
Future

People

(Reporter: mrous, Assigned: smontagu)

References

Details

(Keywords: intl)

Attachments

(1 file)

From Bugzilla Helper:
User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows 98)
BuildID:    00000000 - Bidi build dated 20010404

Arabic text during selection with mouse shifts a bit.

Reproducible: Always
Steps to Reproduce:
1.Open file testutf8.htm
2.Select encoding to be Unicode UTF-8
3. try to select part of a sentence


Actual Results:  Arabic text being selected shifts a bit.

Expected Results:  try same scenario on IE5 for correct results
Attached file Arabic Unicode file
we are focusing on landing IBMBIDI withoug breaking Latin/CJK. move this bidi 
functional bug to moz1.0
Target Milestone: --- → mozilla1.0
erik resign. reassign all his bug to ftang for now.
Assignee: erik → ftang
mark it as assign
Status: NEW → ASSIGNED
remove moz1.0
Target Milestone: mozilla1.0 → ---
reassign to simon@softel.co.il
Assignee: ftang → simon
Status: ASSIGNED → NEW
Changing QA contact to mahar@eg.ibm.com.
QA Contact: andreasb → mahar
Keywords: intl
Component: Internationalization → BiDi Hebrew & Arabic
Keywords: nsbeta1
Mass-move all BiDi Hebrew and Arabic qa to me, zach@zachlipton.com. 
Thank you Gilad for your service to this component, and best of luck to you 
in the future.

Sholom. 
QA Contact: mahar → zach
QA back to mahar.
QA Contact: zach → mahar
Blocks: 104166
Blocks: 115713
This bug does not only affect Arabic but probably all complex scripts.  That is,
those where rendering involves ligature substitution.  I've seen the same problem
on Mac with Arabic and with Devanagari/Hindi.  It seems selecting text at a
ligature boundary causes the ligatures to be broken and the non-ligated
characters in the glyph to be rendered separately on the left and rights sides
of the selection boundary.

Instead, the selection colour block may need to be
rendered over the top of the rendered text.

Hindi test page is at:
http://www.unicode.org/unicode/standard/translations/hindi.html
Status: NEW → ASSIGNED
While making a testcase for another bug, I noticed that the arabic text doesn’t
move if align justify is set.

Try selecting some text at:
http://bugzilla.mozilla.org/attachment.cgi?id=109394&action=view
Depends on: 192919
Kindly be informed that Ahmad A. Abu-Taha (ahtaha@eg.ibm.com) from IBM Egypt is 
replacing Maha Abou El-Rous (mahar@eg.ibm.com | mrous@hotmail.com) in 
monitoring and receiving notifications of Mozilla bugs regarding Arabic.
Priority: -- → P4
Target Milestone: --- → Future
*** Bug 215796 has been marked as a duplicate of this bug. ***
Changing summary and moving component.
Component: BiDi Hebrew & Arabic → Layout: Fonts and Text
Summary: Bidi: during selection with mouse, text moves a bit → Selecting text at a ligature boundary causes the ligatures to be broken
Adding some CTL people to CC because it's not only about BIDI but also about
complex scripts in general. 
OS: Windows 98 → All
Hardware: PC → All
I don't want to split hairs, but the summary could be more informative. 

The bug appears to relate to combining character boundaries and arabic joining
properties as well as ligature boundaries.

How about: Text selections ending inside graphemes or between joining arabic
characters cause characters to be displayed independently
*** Bug 224066 has been marked as a duplicate of this bug. ***
*** Bug 237932 has been marked as a duplicate of this bug. ***
Depends on: grapheme-breaker
I can't reproduce Bug 75011 (Moz1.5 on WinXPSP1)
screenshot: http://www.byteshift.de/msg/div/bugzilla/75011.png
I can no longer reproduce the bug on mozila 1.6 in linux
I can't reproduce it with the attached test case, but
http://www.unicode.org/unicode/standard/translations/hindi.html _seems_ to show
the bug still, on a Windows Firefox 0.9 installation.
I definitely CAN reproduce this (with the testcase) with Firefox 0.9 and the
latest suite on WinXP.
Thanks to the input from Mike and his Hindi findings, there is some good news 
and some bad news. The bad news is that this bug likely occurs in all complex 
scripts i.e., Arabic, Indic, Thai, etc. I found it also in:
http://www.unicode.org/standard/translations/thai.html
If there were some rendered complex text Khmer, Lao or other HTML examples (I'm 
looking), we would see this bug reproduce there as well. I'm sure that Mozilla 
tracks both visual and logical representations for the purpose of text 
selection, but it is trying to display logical information rather than visual. 
Could someone let me know is Mozilla using the ICU renderer for this? I'm 
guessing not given the bad behaviors we see, but that code might help us find a 
solution for this bug.

Also, in general, BiDi shaping and layout go hand-in-hand as major facets for 
BiDi support. That this bug now assumes a much broader scope/impact, it should 
have both a higher severity and priority. I'm not sure I can change those 
values, but someone should.
Note that this bug depends on bug 229896. 
*** Bug 252716 has been marked as a duplicate of this bug. ***
Is this fixed in Firefox 1.0? I'm definitely not reproducing it in the test
attachment or on other pages (like
http://annevankesteren.nl/archives/2004/05/unicode).
No. It is still a bug -- even in Firefox 1.0. I can reproduce it with a number
of languages and test cases -- including the Hindi in the test URL with the last
comment. Not sure why you are not able to reproduce it. Feel free to write me
individually and we can compare bug reproduction steps. The text should
literally jump out at you when you change the selection area size -- with the
characters themselves changing shape or representative glyphs.
Never mind, I see it at home but not at school, both WinXP, Firefox 1.0. I bet
it has something to do with the fonts installed. I'll look into it when I can
get back to the school computers.
Maybe one of the computers has support for complex text installed and the other
does not? See Control Panel | Regional and Language Options -- is the checkbox
"Install files for complex script and right-to-left-languages" checked?
I have complex text settings properly configured. Running a test with FireFox
1.0 browser reveales interesting results. I put the URLs here for you and hope
they're clickable. The language of test pages is Persian.

http://www.unicode.org/standard/translations/persian.html (The bug is reproducible)

http://shabah.org  (the bug is NOT reproducible)
(In reply to comment #30)
> http://shabah.org  (the bug is NOT reproducible)

That's because it has "text-align: justify", as noted in comment 11.

*** Bug 278183 has been marked as a duplicate of this bug. ***
*** Bug 280810 has been marked as a duplicate of this bug. ***
I cannot reproduce it on Firefox 1.5 on Ehad (Mandriva 2006) Linux, downloaded from Mozilla's FTP. Worksframe?

User Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8) Gecko/20051111 Firefox/1.5
Can't reproduce this one either in any of the testcases... calling worksforme.
if anyone else calls worksforme please mark the bug resolved.

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8) Gecko/20051111 Firefox/1.5
This bug only appears on certain combinations of OS, build options and system options. The fact that not everybody can reproduce it does not make it WORKSFORME.
(In reply to comment #36)
> This bug only appears on certain combinations of OS, build options and system
> options. The fact that not everybody can reproduce it does not make it
> WORKSFORME.
> 

But I could reproduce it in version 1.0.7. Can someone reproduce it in 1.5?
(In reply to comment #37)
> (In reply to comment #36)
> > This bug only appears on certain combinations of OS, build options and system
> > options. The fact that not everybody can reproduce it does not make it
> > WORKSFORME.
> > 
> 
> But I could reproduce it in version 1.0.7. Can someone reproduce it in 1.5?

I bet your 1.0.7 was built with pango *disabled* while your copy of 1.5 was built with pango *enabled*. Type 'about:buildconfig' in the url bar and see which of two has  '--enable-pango' and which doesn't.  


(In reply to comment #38)
> I bet your 1.0.7 was built with pango *disabled* while your copy of 1.5 was
> built with pango *enabled*. Type 'about:buildconfig' in the url bar and see
> which of two has  '--enable-pango' and which doesn't.  

I've already uninstalled Firefox 1.0.7, but in Firefox 1.5 I don't see any reference to "pango" at all. This is the whole page in Firefox 1.5:

about:buildconfig

Build platform
target
i686-pc-linux-gnu

Build tools
Compiler 	Version 	Compiler flags
gcc 	gcc version 3.3.2 20031022 (Red Hat Linux 3.3.2-1) 	-Wall -W -Wno-unused -Wpointer-arith -Wcast-align -Wno-long-long -pedantic -pthread -pipe
c++ 	gcc version 3.3.2 20031022 (Red Hat Linux 3.3.2-1) 	-fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Wcast-align -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wno-long-long -pedantic -fshort-wchar -pthread -pipe -I/usr/X11R6/include

Configure arguments
--enable-application=browser --enable-update-channel=release --enable-update-packaging --disable-debug '--enable-optimize=-Os -freorder-blocks -fno-reorder-functions -gstabs+' --disable-tests --enable-official-branding --enable-default-toolkit=gtk2 --enable-xft --disable-freetype2 --enable-svg --enable-canvas --enable-static --disable-shared 
Firefox 2 beta 1 (Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1b1) Gecko/20060710 Firefox/2.0b1) doesn't seem to be affected by this bug.  Is it fixed?
I also can't reproduce using Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9a7pre) Gecko/2007080204 Minefield/3.0a7pre. Build parameters:

--enable-application=browser --enable-update-channel=nightly --enable-optimize --disable-debug --disable-tests --enable-update-packaging
(In reply to comment #41)
> I also can't reproduce using Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US;
> rv:1.9a7pre) Gecko/2007080204 Minefield/3.0a7pre. Build parameters:
> 
> --enable-application=browser --enable-update-channel=nightly --enable-optimize
> --disable-debug --disable-tests --enable-update-packaging
> 

Same here on the following build as well:

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a8pre) Gecko/2007081602 Minefield/3.0a8pre

about:buildconfig

Build platform
target
i686-pc-cygwin

Build tools
Compiler 	Version 	Compiler flags
$(CYGWIN_WRAPPER) cl 	14.00.50727 	-TC -nologo -W3 -Gy -Fd$(PDBFILE)
$(CYGWIN_WRAPPER) cl 	14.00.50727 	-GR- -TP -nologo -Zc:wchar_t- -W3 -Gy -Fd$(PDBFILE) -I/usr/X11R6/include

Configure arguments
--enable-application=browser --enable-application=browser --disable-debug --enable-optimize --enable-canvas --enable-svg --enable-xpctools --enable-places --enable-places-bookmarks --enable-storage --enable-safe-browsing --enable-url-classifier --enable-strip --disable-javaxpcom 
This is fixed on all platforms by the new text frame code. If there are any remaining issues, please file new bugs.
Status: ASSIGNED → RESOLVED
Closed: 17 years ago
Depends on: 367177
Resolution: --- → FIXED
Flags: in-testsuite?
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: