Граф коммитов

296 Коммитов

Автор SHA1 Сообщение Дата
L. David Baron cb6012ec82 Remove nsStyleContext::DumpRegressionData, code that uses it, and code that exists only for it. (Bug 477522) r+sr=bzbarsky 2009-02-09 20:36:54 -08:00
Benjamin Smedberg 3498a5f86e 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.

--HG--
extra : rebase_source : 4894a2ca0278e2ab92f27459db77165f8348cf41
2009-01-12 14:20:59 -05:00
Benjamin Smedberg 73a6fab34b 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
Benjamin Smedberg 802d1a10c7 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

This patch locally causes two REFTEST-UNEXPECTED-PASS for Bidi stuff. It's possible that I accidentally fixed a bug, but I'm not sure, so I'm going to wait for the tinderboxes to confirm my local results.
2008-11-05 14:25:30 -05:00
Benjamin Smedberg ae14b3d6aa Relanding bug 461410 - nsILineIterator is never used outside of layout - set nsresults to replicate the existing code more correctly, which fixes the mochitest failures, r+sr=roc with nits noted by Mats Palmgren 2008-10-30 12:17:59 -07:00
Benjamin Smedberg 292d44b1a8 Backed out changeset d4c9a0776667 (deCOM nsILineEnumerator) due to regression from it or bug 461212 2008-10-28 02:49:14 -04:00
Benjamin Smedberg 87c2e7ef23 Bug 461410 - nsILineIterator is never used outside of layout, and doesn't need to be refcounted: the callers can just destroy it when they're done with it. We can't do this with a virtual destructor, however, because nsTableRowGroupFrame implements the interface directly, while nsLineIterator is a separately-allocated class. So clients are expected to call DisposeLineIterator when they're done with it.
Instead of accessing nsILineIterator using QueryInterface, we add a nsIFrame::GetLineIterator API, which is cleaner and more efficient all at the same time!

r+sr=roc
2008-10-28 00:47:19 -04:00
Bernd 867fdf2cb0 bug 258377, make border collapsed tables to listen for dynamic border style changes r/sr=bzbarsky 2008-10-26 11:11:34 +01:00
Uri Bernstein 269b19b637 Bug 415707 - multiple text selection improvement doesn't work with double-click "word-by-word" or triple-click "paragraph" modes. r+sr=roc. 2008-10-17 21:46:33 +02:00
L. David Baron da3721ca17 Make sure DidSetStyleContext methods call the base class DidSetStyleContext, and change the signature to return void. (Bug 459649) r+sr=bzbarsky 2008-10-13 18:03:28 -04:00
Uri Bernstein 385520e48e Bug 449076: hang with 100% CPU on keyboard arrow trough text field. r+sr=roc. 2008-10-09 12:22:30 +02:00
Graeme McCutcheon bc94c13609 Bug 451252 - "Highlight All" find selection not visible in elements that have -moz-user-select: none set; r+sr=roc 2008-09-07 16:12:50 +02:00
Robert O'Callahan c04d96c610 Bug 376662. Convert nsIFrame::GetOffsetTo to not use views. We need to ensure that for popups and scrollframes, views and frames are kept in sync at *all* times. Also fixes bugs in tests for NS_FRAME_NO_MOVE_FRAME. r+sr=bzbarsky 2008-09-06 20:52:56 +12:00
Robert O'Callahan 8d8390a5b5 Backing out changeset 1bdd5da49865 (for bug 376662) due to regression bug 453661 2008-09-05 15:40:06 +12:00
Robert O'Callahan 82aa805186 Bug 376662. Make nsIFrame::GetOffsetTo not explicitly use views. r+sr=bzbarsky 2008-09-04 09:35:52 +12:00
Boris Zbarsky bd67eb6f6f Bug 449362 - "Table border is rendered incorrectly when the table cell size changes due to javascript." [r+sr=roc] 2008-08-20 01:45:29 -05:00
roc+@cs.cmu.edu f270904496 Bug 392809. Fix word-based caret movement around punctuation and whitespace. r=smontagu,a=beltzner 2008-03-03 00:37:34 -08:00
bzbarsky@mit.edu 48cd9701f5 Relanding bug 412679. r+sr=dbaron 2008-01-27 12:24:06 -08:00
myk@mozilla.org 7d62e26ef5 backing out fix for bug 412679 because it regressed a reftest 2008-01-25 15:02:23 -08:00
bzbarsky@mit.edu 697beca453 Make leaf frames follow the CSS2.1 rules on height sizing for abs-pos replaced elements. Bug 412679, r+sr=dbaron, a=schrep 2008-01-25 13:34:12 -08:00
dwitte@stanford.edu 7e454eebf6 get rid of nsStyleStruct base type. b=408933, r+sr=dbaron, a=beltzner 2008-01-10 12:56:49 -08:00
roc+@cs.cmu.edu 350892fb62 Bug 407155. Backing out 392809 to fix regressions. a=schrep 2007-12-07 01:35:44 -08:00
roc+@cs.cmu.edu fed73e9f6a Bug 392809. Break between whitespace and following punctuation even when stop_at_punctuation is false. Don't stop between punctuation and following non-punctuatino if the preceding punctuation follows white-space. r=smontagu 2007-12-04 18:11:17 -08:00
roc+@cs.cmu.edu efa3189859 Bug 399531. Rework TrimTrailingWhitespace so that we recompute the overflow area for trimmed textframes and so that soft hyphens in otherwise-empty textframes are activated. r+sr=dbaron 2007-12-01 01:24:24 -08:00
Olli.Pettay@helsinki.fi a0a74f16e7 Bug 368760, r=mats, sr=roc, a=blocking1.9+ 2007-11-22 12:47:33 -08:00
jwatt@jwatt.org d308285bb4 Fixing bug 294086. <svg> should be a replaced element. r+sr=dbaron@mozilla.com blocking1.9=tor@acm.org 2007-11-18 04:09:03 -08:00
roc+@cs.cmu.edu 036806699a Bug 397518. Wrap inline non-MathML children of MathML frames in anonymous blocks. r+sr=bzbarsky 2007-10-12 01:30:54 -07:00
roc+@cs.cmu.edu bbc848d48f Bug 389421. Rework word selection, in particular so that layout.word_select.stop_at_punctuation is applied to boundaries between punctuation and non-punctuation, and all Unicode punctuation is treated as punctuation. 2007-08-29 20:10:19 -07:00
philringnalda@gmail.com 42675246db Bug 390423 - Simplify the signature of nsIFrame::GetPointFromOffset, patch by Ben Karel <web+moz@eschew.org>, r=aaronlev/elif, sr=roc, a1.9=dbaron 2007-08-16 20:43:00 -07:00
jwalden@mit.edu 6d7584839a Bug 348748 - Replace all instances of NS_STATIC_CAST and friends with C++ casts (and simultaneously bitrot nearly every patch in existence). r=bsmedberg on the script that did this. Tune in next time for Macro Wars: Episode II: Attack on the LL_* Macros. 2007-07-08 00:08:04 -07:00
dbaron@dbaron.org c8e15fecde Back out patch to make mousethrough attribute apply to all elements. b=380094 a=roc 2007-06-18 16:22:46 -07:00
dbaron@dbaron.org 0235059d11 Implement correct intrinsic width calculation (for container) for elements with specified height properties and an intrinsic ratio. b=364066 r+sr=bzbarsky 2007-06-12 11:27:09 -07:00
asqueella@gmail.com 9c28a8c384 Bug 380094 - make mousethrough more generally usefulp=toshok@hungry.comr+sr=roc 2007-05-13 09:00:00 -07:00
bzbarsky@mit.edu 073d7a78a6 Make computed style handle eStyleUnit_Chars. Bug 371043, r+sr=dbaron 2007-05-04 23:09:50 -07:00
benjamin@smedbergs.us baab01ada6 Bug 376636 - Building with gcc 4.3 and -pendatic fails due to extra semicolons, patch by Art Haas <ahaas@airmail.net>, rs=me 2007-04-23 07:21:53 -07:00
bzbarsky@mit.edu b82e527dc9 Change the way we determine the style context parent frame to skip css anonboxes unless we're determining the style context parent for something that isitself a css anon box (and is not a non-element frame). Fixes bug 323656(which is where the patch is), bug 85872, bug 280610. As far as I can tell,also fixes bug 317876, bug 372376, bug 374297. r+sr=dbaron 2007-04-15 16:14:26 -07:00
Olli.Pettay%helsinki.fi b3361bf8f9 Bug 243370, deCOMtaminate parts of nsIFrame that come from nsIBox, part 2, p=anlan@lange.cx, r+sr=roc 2007-01-31 16:02:42 +00:00
dbaron%dbaron.org f6245f0ed9 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 2007-01-23 04:06:56 +00:00
bzbarsky%mit.edu 5bb5b8f623 deCOMtaminate nsIFrame::GetMinSize/GetPrefSize/GetMaxSize. Bug 243370, patch
by Andreas Lange <anlan@lange.cx>, r+sr=roc
2007-01-08 02:57:59 +00:00
mats.palmgren%bredband.net 79090c0f4b Rename IsSplittable() to GetSplittableType(). b=349973 r+sr=bzbarsky 2006-12-20 03:52:34 +00:00
mats.palmgren%bredband.net 6ee857d0b7 Make the CSS 'ch' length unit work in most cases. b=363573 r+sr=dbaron 2006-12-17 14:06:42 +00:00
dbaron%dbaron.org d5af630c22 Better API for used padding/border/margin: remove deprecated Calc*For on nsStyleStructs and add GetUsed* to nsIFrame. b=332922 r+sr=roc 2006-12-13 23:04:57 +00:00
dbaron%dbaron.org 31f1898810 Bug 300030: Move intrinsic width computation out of nsIFrame::Reflow and into its own methods on nsIFrame. Replace reflow reasons, types, and commands with dirty bits/notifications. Thanks to bzbarsky for almost all of the HTML form controls (mozilla/layout/forms) changes, and many others for help testing and patching. For detailed commit logs, see REFLOW_YYYYMMDD_BRANCH, where YYYYMMDD is one of 20061031, 20060830, 20060603, 20060302, 20060119, 20051011, 20050804, 20050429, 20050315, 20050111, and 20041213. 2006-12-08 05:38:33 +00:00
roc+%cs.cmu.edu cef42d026c Bug 350148. Fix gmail scrolling speed by not creating nsDisplayBorder items for zero-width borders. r+sr=dbaron 2006-09-19 21:46:01 +00:00
roc+%cs.cmu.edu 383028dfd0 Bug 351268. Remove nsIFrame::AdjustFrameSize, it's unused. r=smontagu,sr=rbs 2006-09-19 21:04:06 +00:00
uriber%gmail.com 38c1e056e9 Refactor nsIFrame::PeekOfset to use iteration instead of recursion, plus some more related refactoring. bug=300131 r+sr=roc 2006-09-11 20:43:01 +00:00
uriber%gmail.com 0fa608ce5e Backing out bug 300131 until I figure out how to deal with the bustage. 2006-09-11 08:03:28 +00:00
uriber%gmail.com 95b377fc13 Refactor nsIFrame::PeekOfset to use iteration instead of recursion, and some related refactoring. bug=300131 r+sr=roc 2006-09-11 06:39:56 +00:00
uriber%gmail.com 97d95c3f78 Refactored nsSelection::GetPrevNextBidiLevels to use GetFrameFromDirection; moved GetFrameFromDirection from nsFrame to nsIFrame and made it nonvirtual. bug=333883 r=smontagu sr=roc 2006-08-07 10:54:56 +00:00
mrbkap%gmail.com 75ca976432 Avoid a crash in nsAutoScrollTimer by keeping a reference to the content instead of the view. bug 322084, patch by jpl24 <jlurz24@gmail.com>, r+sr=roc 2006-06-16 01:54:31 +00:00