Commit Graph

60 Commits

Author SHA1 Message Date
Simon Montagu
5a201aafa0 Add a mParagraphDepth member to BidiParagraphData and cache it on frames to track nested bidi-isolated paragraphs. Use mParagraphDepth (* 2 + isRTL in order to keep LTR even and RTL odd) as the initial paragraph embedding level instead of pushing a stack of embedding codes. Pass the <bdi> frame instead of its first-child to BidiParagraphData::Reset and save a call to GetParent(). Split inline ancestors before and after bidi-isolated paragraphs, in the same way that we currently do between runs in different directions. This required also adding code to SplitInlineAncestors to handle situations where the parent frame is being split before its first child or after its last child. In JoinInlineAncestors, prevent frames that belong to paragraphs isolated from one another from being rejoined. Bug 712600, r=ehsan, roc 2012-01-11 21:26:02 +02:00
Simon Montagu
47421feaee Test the containing frame for continuations, not the child. Bug 698706, r=roc 2011-11-07 16:26:50 +02:00
Simon Montagu
8920dd6e82 Implement unicode-bidi: -moz-isolate in layout. Bug 613149, r=roc 2011-10-18 14:51:57 +02:00
Michael Wu
d2b70213ac Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Simon Montagu
c5979d144a Make all nsBidiPresUtils methods static. Bug 624798, r=roc 2011-04-13 12:23:49 +03:00
Simon Montagu
e5fa7e72ec Include continuations of frames with no newline. Bug 582181, r=roc 2011-06-15 10:45:57 +03:00
Simon Montagu
bd31151e86 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
03eab42cad Bug 263359 part 2.5: cache lines per frame in TraverseFrames. r=roc 2011-06-09 09:29:08 +03:00
Simon Montagu
8a9c0b3f06 Bug 263359 part 2: split nsBidiPresUtils::Resolve into Resolve and ResolveParagraph. r=roc 2011-04-11 10:59:30 +03:00
Simon Montagu
5deaf7deba Bug 263359 part 1: refactor bidi resolution code, combining InitLogicalArray and CreateBlockBuffer. r=roc 2011-04-11 10:59:30 +03:00
Simon Montagu
f213cf876f Back out bug 263359 and bug 624798 because of performance regressions (bug 650189) 2011-04-27 11:47:18 +03:00
Jan Küchler
c510bc3046 Bug 266236 part 3: Mechanical rename of nsIRenderingContext and nsThebesRenderingContext to nsRenderingContext. Mechanical substitution of nsRefPtr<nsRenderingContext> for nsCOMPtr<nsRenderingContext>.
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
extra : rebase_source : 34884bfcafd885feaf73300bc7246cd192062a48
2011-04-07 18:04:40 -07:00
Simon Montagu
c808d636dc Make all nsBidiPresUtils methods static. Bug 624798, r=roc 2011-04-13 12:23:49 +03:00
Simon Montagu
c112e2354d 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
8e3b653b0c Bug 263359 part 2: split nsBidiPresUtils::Resolve into Resolve and ResolveParagraph. r=roc 2011-04-11 10:59:30 +03:00
Simon Montagu
90fff54b37 Bug 263359 part 1: refactor bidi resolution code, combining InitLogicalArray and CreateBlockBuffer. r=roc 2011-04-11 10:59:30 +03:00
Ehsan Akhgari
119ec44c6b Back out bug 263359 because it has caused bug 645119 2011-03-25 18:15:29 -04:00
Simon Montagu
ec7706761d Bug 263359 part 3: resolve paragraph on encountering <br> or embedded block elements 2011-03-24 11:28:44 +02:00
Simon Montagu
0fc4771947 Bug 263359 part 2: split nsBidiPresUtils::Resolve into Resolve and ResolveParagraph. r=roc 2011-03-24 11:28:44 +02:00
Simon Montagu
bfef246b4b Bug 263359 part 1: refactor bidi resolution code, combining InitLogicalArray and CreateBlockBuffer. r=roc 2011-03-24 11:28:44 +02:00
Robert O'Callahan
fc3314bc13 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
a5d2efc280 Fix for bug 624722 (nsBidiPresUtils should participate in CC).; r=ehsan a=roc 2011-01-11 14:19:00 -05:00
Simon Montagu
3bd533614c Basic bidi support for SVG. Bug 620446, r=roc, a=roc 2011-01-04 00:52:17 -08:00
Honza Bambas
01ec63785a Bug 571380, e10s: build problem in content/canvas/src/nsCanvasRenderingContext2D.cpp(2653), r=roc 2010-06-12 13:37:59 +02:00
Vladimir Vukicevic
73cbd73f4a b=566447; add presshell memory reporter; r=bz 2010-05-31 19:19:35 -07:00
Simon Montagu
5a1b8e74ab Force logical ordering in XUL elements on visual bidi pages. Bug 558403, r=roc 2010-04-25 15:15:17 +03:00
Ehren Metcalfe
a791e19cc4 Bug 556446: Remove dead code in layout. r=roc,bz 2010-04-03 07:36:19 -04:00
Simon Montagu
5a01d8048f 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
7c682159d0 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
c0f2dadc80 Bug 474369 - get rid of nsVoidArray; layout part; r+sr=roc 2009-02-03 15:42:18 +01:00
Simon Montagu
0d19165bc2 Bug 449577. Remove GetHints(), r+sr=roc 2008-08-11 18:19:01 +03:00
Eric Butler
47e45f54c6 Canvas routines draw right-to-left text backwards - bug 402276 r=smontagu sr=roc 2008-07-18 11:29:06 -07:00
reed@reedloden.com
40cb0f8516 Bug 423676 - "weirdness with layout and selection of mixed-direction text" [p=uriber@gmail.com (Uri Bernstein) r=smontagu sr=roc a1.9b5=schrep] 2008-03-24 00:30:49 -07:00
smontagu@smontagu.org
8dedafee62 When creating a bidi continuation for a frame with fluid continuations, set the length of all the frames in the continuation chain to zero except the last one. Bug 409375, r+sr+blocking1.9=roc 2008-01-29 20:13:06 -08:00
smontagu@smontagu.org
742f271840 Collect frames from all block continuations in the buffer for bidi resolution. Bug 408292. r+sr=roc, a=schrep 2007-12-20 02:06:14 -08:00
smontagu@smontagu.org
352518a027 Remove cruft from nsBidiPresUtils. Bug 393962, r+sr+a=roc 2007-08-29 02:19:16 -07:00
smontagu%smontagu.org
b21d2d6a35 Bug 369236: Move IsBidiFormControl from nsHTMLReflowState to nsBlockFrame. r+sr=roc 2007-02-11 07:19:09 +00:00
roc+%cs.cmu.edu
a08ac4ca97 Bug 367930. Introduce an nsIRenderingContext::GetHints flag (temporarily) that tells us whether new-text-runs are being used underneath. When new text runs are in use, never reverse text manually, we can be sure that the platform textrun will do it. 2007-01-25 01:58:55 +00:00
roc+%cs.cmu.edu
fa1e88771c Bug 333659. Land layout changes to pass only single-direction textruns to nsIRenderingContext string methods. r=dbaron 2007-01-23 02:58:55 +00:00
uriber%gmail.com
ab53025882 Bug 328168: Horizontal paddings, borders and margins on multi-frame bidi inlines appear in the wrong places. Patch by Haamed Gheibi <gheibi@gmail.com>. r=roc+uriber, sr=roc. 2006-06-15 08:16:23 +00:00
uriber%gmail.com
7d6d83cbd0 Mark lines for which bidi continuations were created or removed dirty, instead of marking everything dirty when continuations removed. bug=330373 r=roc sr=bzbarsky 2006-03-15 20:52:02 +00:00
uriber%gmail.com
0f22e434f2 In EnsureBidiContinuation, leave fluid continuations alone, and only re-use non-fluid continuations as bidi continuations. bug=329878 r=smontagu sr=bzbarsky 2006-03-12 22:09:28 +00:00
uriber%gmail.com
1003ca6dd4 Do away with geometry in nsFrameList::GetPrev[Next]VisualFor() and nsLineIterator::CheckLineOrder(). Instead use new helper methods in nsBidiPresUtils for determining visual order of the top level of frames in a line. bug=303884 r=smontagu sr=roc 2006-03-12 09:49:48 +00:00
uriber%gmail.com
01ef33157a Change RemoveBidiContinuation() to convert bidi continuations into in-flows instead of actually remove them, in attempt to impreove performance. bug=319930 r=smontagu sr=bzbarsky 2006-03-08 09:02:42 +00:00
uriber%gmail.com
c7032d59bb Bug 299065: Bidi resolution needs to split inlines in addition to text frames. r+sr=dbaron 2006-02-21 21:33:47 +00:00
bugzilla%arlen.demon.co.uk
e88339585d Bug 162081 Wrong letter is underlined as accesskey / mnemonic when widget direction is RTL
p=mozilla-bugzilla@future.shiny.co.il r/sr=bzbarsky
2004-10-29 12:28:19 +00:00
bryner%brianryner.com
5c02a6978c Change nsIPresContext to nsPresContext globally, follow-up to bug 253470. rs=roc 2004-07-31 23:15:21 +00:00
gerv%gerv.net
708b56cff4 Bug 236613: change to MPL/LGPL/GPL tri-license. 2004-04-18 14:30:37 +00:00
smontagu%netscape.com
573892c784 Use a hashtable instead of searching an array, to make RemoveBidiContinuation() not be O(n^2). Bug 212827, r+sr=bzbarsky. 2003-07-24 18:33:50 +00:00
smontagu%netscape.com
d63551e2ff Fix regression with form controls on visual bidi pages. Bug 142233, r=jkeiser, sr=kin 2002-07-10 00:52:17 +00:00