150 Commits

Author SHA1 Message Date
roc+%cs.cmu.edu
410a9698d9 Bug 385423. Refactor textrun cache so that all textrun clients use a single global word-based cache. Responsibility for stripping out problematic characters (e.g. newlines) is given to the word cache. r=vlad,smontagu
git-svn-id: svn://10.0.0.236/trunk@229305 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-04 03:39:03 +00:00
flamingice%sourmilk.net
d50cf837b0 Bug 386012, Crash [@ nsTextFrameUtils::TransformText] loading png as HTML, Patch by Karl Tomlinson, r+sr=roc
git-svn-id: svn://10.0.0.236/trunk@229211 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-03 00:46:05 +00:00
roc+%cs.cmu.edu
02c47d48da Bug 386548. Remove nsTextTransformer. r+sr=mats
git-svn-id: svn://10.0.0.236/trunk@229199 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-02 23:37:00 +00:00
roc+%cs.cmu.edu
202f04e5eb Bug 386122. Allow text runs to end at preformatted newlines. Speeds up loading of plain-text files a lot because we don't have to have a textrun for the entire file. r=smontagu
git-svn-id: svn://10.0.0.236/trunk@229117 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-02 01:20:43 +00:00
roc+%cs.cmu.edu
31ed8bd2ef Bug 9101. Fix various soft-hyphen bugs, primarily related to detecting when hyphenation is needed during a second-pass break-forcing line reflow. r=smontagu
git-svn-id: svn://10.0.0.236/trunk@229114 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-02 01:14:27 +00:00
roc+%cs.cmu.edu
f0fcbb6539 Bug 384836. Relanding fix to pass around gfxContexts a bit more instead of hanging on to one in nsTransformedTextRun. r=smontagu,pavlov
git-svn-id: svn://10.0.0.236/trunk@228811 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-27 04:22:21 +00:00
roc+%cs.cmu.edu
6b537fb3ad Bug 385293. Silence warnings about textrun recreation that aren't really problems, just informational. r=smontagu
git-svn-id: svn://10.0.0.236/trunk@228805 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-27 02:21:34 +00:00
dbaron%dbaron.org
7e2eab50b7 Back out bug 384836 to diagnose Tp/Tp2 regression bug 385957.
git-svn-id: svn://10.0.0.236/trunk@228778 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-26 22:16:35 +00:00
roc+%cs.cmu.edu
fb4e268f6f Bug 384836. Avoid using a stale gfxContext, by not holding onto one in nsTransformedTextRun, passing in a gfxContext when required instead. r=pavlov,smontagu
git-svn-id: svn://10.0.0.236/trunk@228740 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-26 04:25:01 +00:00
roc+%cs.cmu.edu
3158edcc6d Bug 385344. Always reconstruct textruns for next-in-flows of firstline/firstletter frames. Also, be more careful looping over text in AddInlinePrefWidthForFlow. r=smontagu
git-svn-id: svn://10.0.0.236/trunk@228666 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-25 03:41:07 +00:00
roc+%cs.cmu.edu
82c06fab3c Bug 385234. Iterate through textframe continuations properly in AddInlinePref/MinWidth. r=smontagu
git-svn-id: svn://10.0.0.236/trunk@228561 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-22 00:17:30 +00:00
roc+%cs.cmu.edu
f174142813 Bug 382105. Clean up PeekOffsetWord to exit early without setting *aOffset if there is nowhere to go in the requested direction. Also, ignore *aSawBeforeType when we're checking for punctuation. r=smontagu
git-svn-id: svn://10.0.0.236/trunk@228560 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-22 00:13:05 +00:00
dbaron%dbaron.org
cd6e9c2d37 Make text-indent contribute to intrinsic widths, and handle negative text-indent and negative margin properly by distinguishing forced and optional breaks when accumulating minimum widths. b=368155 r+sr=roc
git-svn-id: svn://10.0.0.236/trunk@228548 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-21 22:33:10 +00:00
roc+%cs.cmu.edu
b34fb6b766 Bug 382105. Yet another word caret movement fix to ensure we stop at punctuation.
git-svn-id: svn://10.0.0.236/trunk@228109 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-15 05:37:08 +00:00
roc+%cs.cmu.edu
0235ebf43c Not part of the build (barely). Don't allow PeekOffsetWord to break before the first cluster. Avoids a fencepost error in ClusterIterator where going backwards we might try to look at one past the end of mWordBreaks.
git-svn-id: svn://10.0.0.236/trunk@227993 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-13 18:25:14 +00:00
roc+%cs.cmu.edu
e44d46c9e3 Not part of the build (barely). Fix intrinsic-min-widths properly for preformatted white-space... the previous checkin messed up the check for newline characters.
git-svn-id: svn://10.0.0.236/trunk@227959 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-13 10:58:44 +00:00
roc+%cs.cmu.edu
74b18bc016 Not Part Of The Build (barely). Clean up function names and comments. Also fix an unreported regression where we failed to take preformatted newlines into account when computing text intrinsic-min-width.
git-svn-id: svn://10.0.0.236/trunk@227956 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-13 09:06:28 +00:00
roc+%cs.cmu.edu
cc6c87fe7c Landing textframe updates: Use word-based textrun cache; rewritten PeekOffsetWord; adjust textframe content-offsets and content-lengths when CharacterDataChanged fires; search backwards for textrun scanning/creation start point, instead of all the way back to the start of the block; ensure that we pass the correct start iterator to PropertyProvider in TrimTrailingWhiteSpace.
git-svn-id: svn://10.0.0.236/trunk@227903 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-12 21:01:12 +00:00
smontagu%smontagu.org
b435fce1d2 Clear textruns during bidi resolution. Not Part of the Build. Bug 382429, r+sr=roc
git-svn-id: svn://10.0.0.236/trunk@227421 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-03 06:53:10 +00:00
roc+%cs.cmu.edu
06b20ed603 Bug 382279. Disable ligatures when letter-spacing is in effect. Also, avoid adding space inside ligatures if the gfx backend doesn't respect our disabling of ligatures. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@227312 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-31 05:01:57 +00:00
roc+%cs.cmu.edu
7a5518f06a Not part of the build. Change nsLineBreaker so that breaks at element boundaries are always governed by the white-space property on the element that's the nearest common ancestor of the DOM nodes on each side of the break point --- fixes bug 382289. Also, pass NBSP through to textruns so that whitespace trimming doesn't trim NBSP. Also, count trimmed spaces correctly when updating mClusterCount.
git-svn-id: svn://10.0.0.236/trunk@227294 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-30 22:27:28 +00:00
roc+%cs.cmu.edu
2186b49ba4 Not part of the build. Don't trim whitespace if wrapping is disabled --- in min-width and pref-width calculations.
git-svn-id: svn://10.0.0.236/trunk@227094 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-28 02:38:21 +00:00
roc+%cs.cmu.edu
0fa63b69a3 Not part of the build. Don't trim whitespace if wrapping is disabled. Don't compress a space that's preceded by an incompressible space.
git-svn-id: svn://10.0.0.236/trunk@227093 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-28 02:20:58 +00:00
roc+%cs.cmu.edu
9c129ee094 Not part Of The Build. Bug 381228. Fix handling of case where the text is not part of a block.
git-svn-id: svn://10.0.0.236/trunk@226934 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-24 03:06:37 +00:00
roc+%cs.cmu.edu
26dc3b7da6 Bug 380625. (Not Part Of The Build). Fix cluster count for trimmed spaces.
git-svn-id: svn://10.0.0.236/trunk@226864 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-23 09:36:16 +00:00
roc+%cs.cmu.edu
e2bd8901bc Not Part Of The Build (new textframe). IsInBounds uses incorrect logic and produces spurious warnings.
git-svn-id: svn://10.0.0.236/trunk@226853 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-23 04:08:38 +00:00
roc+%cs.cmu.edu
c678b3f6e5 Not Part Of The Build. Update nsTextFrameThebes whitespace handling; allow line breaking only at the end of a run of whitespace.
git-svn-id: svn://10.0.0.236/trunk@226827 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-22 23:45:47 +00:00
dbaron%dbaron.org
4c4eee1f57 Don't propagate line layout in reflow state when we're not in the line. b=320502 r+sr=roc
git-svn-id: svn://10.0.0.236/trunk@226608 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-18 06:04:04 +00:00
mats.palmgren%bredband.net
d3ccb57da7 NPOTB. Add missing rendering context null-checks. b=380502 r+sr=roc
git-svn-id: svn://10.0.0.236/trunk@226571 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-17 10:52:20 +00:00
roc+%cs.cmu.edu
aea782973d Not Part Of The Build. 1) Round font underline/overline/strikeout offsets and sizes to device pixels to try to ensure consistent visual offsets and sizes even when the baseline point is not pixel-aligned. 2) snap the text baseline y coordinate to the nearest pixel, because the decoration lines will be snapped themselves and we need the gaps to remain consistent. 3) fix bug in selection-decoration x coordinate which was forgetting to include the frame x-offset.
git-svn-id: svn://10.0.0.236/trunk@226505 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-16 05:21:41 +00:00
roc+%cs.cmu.edu
c3efcf148b Not Part Of The Build. Fix underline/strikeout positioning in new text frame --- simple appunits/pixels confusion.
git-svn-id: svn://10.0.0.236/trunk@226491 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-15 23:41:41 +00:00
roc+%cs.cmu.edu
68e11bba0d NPOTB, new-text-frame. Fix mouse events targeting after the end of a textframe.
git-svn-id: svn://10.0.0.236/trunk@226421 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-15 05:23:19 +00:00
roc+%cs.cmu.edu
1b45e462ab Bug 380692. Change gfxTextRun API so the textrun copies text, if necessary, instead of the caller having to do it. r=vlad
git-svn-id: svn://10.0.0.236/trunk@226413 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-15 03:56:48 +00:00
roc+%cs.cmu.edu
1504c4d95a Not part of the build. Fix off-by-one error in selected-text painting in new text frame.
git-svn-id: svn://10.0.0.236/trunk@226320 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-11 22:54:51 +00:00
roc+%cs.cmu.edu
0a4a83f725 Fix const issue. Not Part Of The Build
git-svn-id: svn://10.0.0.236/trunk@226254 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-10 14:42:56 +00:00
roc+%cs.cmu.edu
9140c4c01a Not part of the build. Update new text frame for textrun API changes. Also implements a textrun cache for the new text frame
git-svn-id: svn://10.0.0.236/trunk@226214 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-09 22:04:56 +00:00
smontagu%smontagu.org
e303ba944f Uneven justification with new textframe. Bug 380062, r+sr=roc
git-svn-id: svn://10.0.0.236/trunk@226197 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-09 18:09:32 +00:00
smontagu%smontagu.org
d3b6866d7e Clear mTextRun on a style change reflow. Bug 379969, r+sr=roc
git-svn-id: svn://10.0.0.236/trunk@226119 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-08 14:33:09 +00:00
bzbarsky%mit.edu
ba5badedcb Change the FrameNeedsReflow API to pass the dirty flags to be added directly to
the method, instead of setting them before calling the method.  That way we can
avoid reflowing the ancestor of a reflow root which is not itself dirty but has
dirty children.  This also makes it harder to set dirty bits inconsistently
with the FrameNeedsReflow call.  Bug 378784, r+sr=dbaron, pending rbs' review
on the mathml parts.


git-svn-id: svn://10.0.0.236/trunk@226007 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-06 19:16:52 +00:00
roc+%cs.cmu.edu
503cd0ab2b Not part of the build. Fix new textframe issues with mixed-direction text and textrun reconstruction.
git-svn-id: svn://10.0.0.236/trunk@224512 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-13 22:57:54 +00:00
roc+%cs.cmu.edu
d8bf3ee89e Not part of the build --- update GetPresContext to PresContext in a few not-built places.
git-svn-id: svn://10.0.0.236/trunk@224049 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-03 03:56:55 +00:00
roc+%cs.cmu.edu
5e93ba056e Not part of the build (well, gfxSkipChars is built but not used): fix bugs in gfxSkipChars, and new textframe fixes for soft hyphens, justification, and caret movement (PeekOffset*) among other things
git-svn-id: svn://10.0.0.236/trunk@222568 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-28 23:54:32 +00:00
roc+%cs.cmu.edu
d2c8f69a4d No bug. A variety of fixes to fix various reftest failures. Not Part Of The Build.
git-svn-id: svn://10.0.0.236/trunk@222315 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-24 11:07:36 +00:00
roc+%cs.cmu.edu
d69b531ce7 Bug 333659. Major new-textframe update. You can really browse the Web with it now, although major bugs remain.
git-svn-id: svn://10.0.0.236/trunk@222211 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-22 23:13:12 +00:00
dbaron%dbaron.org
32d54152c9 Clean up IsFrameOfType methods to call their base class IsFrameOfType methods reliably. b=341326 r+sr=roc
git-svn-id: svn://10.0.0.236/trunk@220874 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-24 18:33:33 +00:00
sharparrow1%yahoo.com
4e50607a9e Bug 370185: clean up view header includes (trivial). rs=bzbarsky.
git-svn-id: svn://10.0.0.236/trunk@219987 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-12 19:17:33 +00:00
roc+%cs.cmu.edu
1032d67911 Make new textframe build again after units landing and other changes. The gfxSkipChars and gfxPangoTextRun changes only affect the new textframe.
git-svn-id: svn://10.0.0.236/trunk@219838 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-09 04:20:17 +00:00
cvshook%sicking.cc
ccd1d6884d Kill remainders of ns(XBL|HTML|XUL|Layout)Atoms. r/sr=jst b=368128
git-svn-id: svn://10.0.0.236/trunk@219151 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-30 00:06:41 +00:00
dbaron%dbaron.org
103e95ab15 Change the bulk of ascent (baseline) computation to happen on a virtual method on nsIFrame, and remove the redundant descent member from nsHTMLReflowMetrics, primarily to support having both first-line and last-line baselines. b=367332 r+sr=roc
git-svn-id: svn://10.0.0.236/trunk@218785 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-23 04:06:56 +00:00
roc+%cs.cmu.edu
e2373f9a14 Bug 333659. Landing new text interfaces, new gfxPangoTextRun (enabled), new textframe code (disabled). r+sr=dbaron for the part-of-the-build layout parts,r=stuart for the part-of-the-build gfx parts
git-svn-id: svn://10.0.0.236/trunk@218447 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-16 20:51:52 +00:00