Commit Graph

366 Commits

Author SHA1 Message Date
Jan Küchler
8774547613 Bug 266236 part 3: Mechanical rename of nsIRenderingContext and nsThebesRenderingContext to nsRenderingContext. Mechanical substitution of nsRefPtr<nsRenderingContext> for nsCOMPtr<nsRenderingContext>. 2011-04-07 18:04:40 -07:00
Jan Küchler
ed48629385 Bug 266236 part 1: Preliminary API cleanup on nsIRenderingContext. 2011-04-07 18:04:39 -07:00
Simon Montagu
d03542b94f Make all nsBidiPresUtils methods static. Bug 624798, r=roc 2011-04-13 12:23:49 +03:00
Simon Montagu
37b6b162bb Tweak to the patch for bug 263359 to prevent regressing bug 644768, r=roc 2011-04-11 11:00:33 +03:00
Simon Montagu
3acd82a1c3 Bug 263359 part 4: resolve paragraph on encountering line breaks in preformatted elements. r=roc 2011-04-11 11:00:28 +03:00
Simon Montagu
841c2cbe92 Bug 263359/Bug 229367: resolve paragraph on encountering <br> or embedded block elements. r=roc 2011-04-11 10:59:30 +03:00
Simon Montagu
274f1b1ba6 Bug 263359 part 2: split nsBidiPresUtils::Resolve into Resolve and ResolveParagraph. r=roc 2011-04-11 10:59:30 +03:00
Simon Montagu
99336185a9 Bug 263359 part 1.5: remove nsDirectionalFrame. r=roc 2011-04-11 10:59:30 +03:00
Simon Montagu
a732bacc99 Bug 263359 part 1: refactor bidi resolution code, combining InitLogicalArray and CreateBlockBuffer. r=roc 2011-04-11 10:59:30 +03:00
Simon Montagu
090c1c5c3a Debugging code for Bidi resolution. NPOTDB 2011-04-11 10:59:29 +03:00
Ehsan Akhgari
df343e97b9 Back out bug 263359 because it has caused bug 645119 2011-03-25 18:15:29 -04:00
Simon Montagu
511e0f395c Bug 263359 part 5: optimization -- don't do bidi resolution if the text is monodirectional. r=roc 2011-03-24 11:28:45 +02:00
Simon Montagu
0aee59fcec Bug 263359 part 4: resolve paragraph on encountering line breaks in preformatted elements 2011-03-24 11:28:45 +02:00
Simon Montagu
68ea1b55f1 Bug 263359 part 3: resolve paragraph on encountering <br> or embedded block elements 2011-03-24 11:28:44 +02:00
Simon Montagu
0d9429ea4e Bug 263359 part 2: split nsBidiPresUtils::Resolve into Resolve and ResolveParagraph. r=roc 2011-03-24 11:28:44 +02:00
Simon Montagu
784fb0f475 Bug 263359 part 1.5: remove nsDirectionalFrame. 2011-03-24 11:28:44 +02:00
Simon Montagu
ef2498ffef Bug 263359 part 1: refactor bidi resolution code, combining InitLogicalArray and CreateBlockBuffer. r=roc 2011-03-24 11:28:44 +02:00
Simon Montagu
a6a686a9b6 Debugging code for Bidi resolution. NPOTDB 2011-03-24 11:28:44 +02:00
Robert O'Callahan
f28af721a8 Bug 613696. Always use the presshell's reference rendering context to create textruns when we draw text via nsIThebesFontMetrics::DrawString, to be consistent with the textruns we measure during reflow. r=dbaron,a=blocking 2011-01-17 09:23:33 +13:00
Peter Van der Beken
d6c09bd461 Fix for bug 624722 (nsBidiPresUtils should participate in CC).; r=ehsan a=roc 2011-01-11 14:19:00 -05:00
Simon Montagu
adc68b89df Basic bidi support for SVG. Bug 620446, r=roc, a=roc 2011-01-04 00:52:17 -08:00
Simon Montagu
f8079e461c Don't include floats in bidi resolution and reordering, unless they are first-letters. Bug 588739, r+a=roc 2010-09-06 17:33:18 +03:00
Simon Montagu
960c6a6675 Check that frame offsets are within content. Bug 579655, r=roc, blocking2.0=dsicore 2010-08-10 10:08:59 +03:00
Simon Montagu
fd90fab914 Don't make bidi continuations out of empty text frames. Bug 572582, r=roc 2010-06-20 22:33:34 -07:00
Simon Montagu
ca10ad8060 When bidi resolving makes a frame's continuations non-fluid, make sure that its parents also have non-fluid continuations. Bub 534367, r=roc 2010-06-13 20:16:55 -07:00
Vladimir Vukicevic
72a0025709 b=566447; add presshell memory reporter; r=bz 2010-05-31 19:19:35 -07:00
Simon Montagu
c7ccb0110b Don't split frames in bidi resolution that have the same resolved directionality but different character types. Bug 399850, r=ehsan, roc 2010-05-10 23:14:05 -07:00
Simon Montagu
8fc30916db Force logical ordering in XUL elements on visual bidi pages. Bug 558403, r=roc 2010-04-25 15:15:17 +03:00
Ehren Metcalfe
97778d4898 Bug 556446: Remove dead code in layout. r=roc,bz 2010-04-03 07:36:19 -04:00
Robert O'Callahan
a81de51fc9 Bug 551660. Switch layout code from using nsPropertyTable to FramePropertyTable. r=mats,sr=dbaron 2010-03-29 14:46:55 +13:00
Timothy Nikkel
7bd0a1433a Bug 534768. Also special case creation of continuations inside of floating first letter frames while reflowing them. r=roc,smontagu 2010-03-17 12:30:30 -05:00
Simon Montagu
6bda80b604 Call AdjustOffsetsForBidi on a new continuation frame immediately after creating it. Bug 536963, r=roc 2010-01-03 00:46:19 -08:00
Simon Montagu
ec77f9a409 Drill down through placeholder frames to the real frames in bidi reordering. Bug 525740, r=roc 2009-11-08 09:40:46 -08:00
Boris Zbarsky
9d09792cd4 Bug 501847 part 2. Make various consumers deal with more than 2 inlines in an {ib} split. r=tn, sr=roc 2009-09-18 14:00:21 -04:00
Timothy Nikkel
1d256d8070 Bug 491547. Special case creating a bidi continuation inside a floating first letter frame. r=roc,smontagu 2009-10-27 21:00:57 -05:00
Simon Montagu
1345c043c9 Ensure that continuation frames after the end of a directional run are non-fluid. Bug 490559, r+sr=roc 2009-10-07 21:53:50 -07:00
Mats Palmgren
f85d73c25c Bug 233463, patch 5 - Remove nsFrameList(nsIFrame*) ctor. r=bzbarsky 2009-09-18 13:09:36 +02:00
Mats Palmgren
6247c7c4c6 Bug 233463, patch 0 - Use nsFrameList methods instead of nsIFrame::SetNextSibling. r=bzbarsky 2009-09-18 13:09:35 +02:00
Mats Palmgren
f82eedba5a Replace PR_MIN/PR_MAX with NS_MIN/NS_MAX. b=512106 r=roc 2009-09-16 17:01:36 +02:00
Boris Zbarsky
23db8f4fa3 Bug 281387. Make nsIFrame::Append/InsertFrames use nsFrameList. r=bernd,roc, sr=dbaron 2009-07-30 13:23:32 -04:00
Simon Montagu
e3d0d597ee Make fluid continuations between adjacent text frames with the same directionality. Bug 499538, r+sr=roc 2009-07-01 00:16:26 -07:00
Simon Montagu
d65df19707 Empty inlines can get misplaced during incremental reflow in bidi pages. Bug 496006, r+sr=roc (regression from bug 332655) 2009-06-08 01:59:39 -07:00
Boris Zbarsky
3f790e3d67 Bug 480452. Make {ib} splits behave the same way with regard to margins, borders, and padding as inline frames that just have a line-break happening inside them do. r+sr=dbaron 2009-05-11 22:04:58 -04:00
Simon Montagu
acc8653b61 Set baseLevel and paraLevel properties on empty frames. Bug 489887, r+sr=roc 2009-04-28 02:23:53 -07:00
Simon Montagu
c4f050a474 Bug 332655 - Don't join up text frames with the same content in Bidi resolution. r=uriber, sr=roc 2009-04-19 01:19:27 -07:00
Ehsan Akhgari
c3ab1445c0 Bug 404149 - Underline width doesn't correspond to character width in Arabic/Persian script; r=roc,smontagu sr=roc 2009-03-21 12:08:14 +03:30
Arpad Borsos
af5c52fa8a Bug 474369 - get rid of nsVoidArray; layout part; r+sr=roc 2009-02-03 15:42:18 +01:00
Ehsan Akhgari
a1b3c77ffa Bug 467672 - need additional bidi.numerals setting for Persian (eastern Arabic-Indic) numerals; r=roc,jfkthame sr=roc 2009-01-30 11:43:17 +03:30
Benjamin Smedberg
0f95227641 Bug 396185 - Make nsIFrame derivatives and helper abstract classes use a different dynamic-cast system than nsISupports:
* we know all types frames may be cast to at compile time, so instead of extensible GUID IIDs, use a big enum (see nsQueryFrame::FrameIID)
* eliminate all vestiges of refcounting, since frames aren't refcounted

Some frames (SVG frames in particular) still implement nsISupports-derived interfaces, for example nsISVGValue. There is a FrameIID for nsISVGValue that lets you go from a frame to the XPCOM interface, but you can't query back.

r+sr=roc

nsITextControlFrame didn't have an IID the first time around, but this wasn't a compile error because nsITextControlFrame::kFrameIID inherited from nsIFormControlFrame::kFrameIID. I've added a static analysis pass to verify the correct behavior, since I can't figure out a way to make the compiler do it.
2009-01-12 14:20:59 -05:00
Benjamin Smedberg
7a084ac404 Backed out changeset 4c4df6ed1b41 - Bug 396185 - Make nsIFrame not inherit from nsISupports due to mochitest failures... these appear to be crashes in nsGenericHTMLElement::GetEditorInternal. 2009-01-09 11:35:24 -05:00