Boris Zbarsky
db6ff446ab
Bug 504221 part 5. Switch from GetFirstChild to GetChildList (returning an nsFrameList). For now, keep a GetFirstChild shim so callers don't have to be updated. r=fantasai, r+sr=roc
2009-07-28 08:51:09 -04:00
Boris Zbarsky
58ab0561e4
Bug 504221 part 1. Introduce framelist slice and enumerator classes and make the framelist versions of nsFrameList::AppendFrames/InsertFrames return a slice for the new frames. r=fantasai, r+sr=roc
2009-07-28 08:51:08 -04:00
Boris Zbarsky
34df7918a4
Bug 496823. Blocks can implement GetLastChild() much faster than by just getting first child and iterating its siblings. r=roc
2009-07-26 21:27:32 -04:00
Robert O'Callahan
14dbcb0874
Bug 371839. Simplify SetSelected signature and semantics, and reimplement it in nsTextFrame much more efficiently. r=bzbarsky
...
--HG--
extra : rebase_source : 18c390e3ebd09de82b1a23699c56b741f928ca37
2009-07-27 10:05:41 +12:00
Boris Zbarsky
fa8b53c57c
Bug 505482. Make sure to not leave frames on overflow lists when we interrupt reflow. Also fixes bug 478527 and bug 496742. r=roc
2009-07-24 09:32:32 -04:00
Robert O'Callahan
41b0dc9d84
Bug 339548. Part 9: Create nsRootPresContext::UpdatePluginGeometry, and use it. Make nsObjectFrame manage its widget directly.
2009-07-22 12:45:00 +12:00
Robert O'Callahan
b47de0a11e
Bug 500632. Suppress invalidation caused by parts inside collapsed scrollbars. r=dbaron
2009-07-22 12:44:49 +12:00
Jonathan Kew
bdab93a7ca
Bug 475968. Eliminate NS_FRAME_OUTSIDE_CHILDREN flag, store small overflow areas cheaply within the frame. r+sr=roc
2009-04-06 12:31:50 +12:00
Robert O'Callahan
2739cdda29
Bug 476062. Don't suppress box-shadows on elements with -moz-appearance in chrome documents. r+sr=dbaron
2009-04-06 11:35:53 +12:00
Mats Palmgren
f0978053f2
Keep track of the line container and forget the current line if it's for a different container. b=444027 r+sr=roc
2009-02-10 10:23:05 +01:00
Arpad Borsos
829f9f024a
Bug 474369 - get rid of nsVoidArray; layout part; r+sr=roc
2009-02-03 15:42:18 +01:00
Benjamin Smedberg
24e7cb1f78
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
50621e4f9f
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
d0b948876f
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
Markus Stange
c15f2b9d7f
Forgot to add the braces in changeset 58f409bbc149 (bug 391984)
2008-12-15 14:43:31 +01:00
Markus Stange
975559338c
Bug 391984 - [10.5] Add roundness to context menus, r=josh sr=roc
2008-12-11 15:37:38 +01:00
Jeff Walden
4180ce8eae
imported patch nsIFrame.patch
2008-11-19 20:42:55 -08:00
Benjamin Smedberg
9696613a50
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
4214b72dd5
Backed out changeset d4c9a0776667 (deCOM nsILineEnumerator) due to regression from it or bug 461212
2008-10-28 02:49:14 -04:00
Benjamin Smedberg
dd4c950cff
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
082b4cffdb
2 try
2008-10-26 12:21:47 +01:00
Bernd
6777c42861
bug 258377, make border collapsed tables to listen for dynamic border style changes r/sr=bzbarsky
2008-10-26 11:11:34 +01:00
Robert O'Callahan
85ea5a3965
Bug 460240. Need to repaint the overflow area if the overflow area changes, the frame has effects/outline/box-shadow, and the frame size has not changed. r+sr=bzbarsky
2008-10-21 20:42:28 +13:00
L. David Baron
9d7714304c
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
Robert O'Callahan
09cfc5fa8c
Bug 455984. Rework gradient and pattern code to use nsReferencedElement and nsSVGRenderingObservers, so they observe changes to the ID-element-map properly and propagate invalidations correctly (and with simpler code too). r=longsonr,sr=mats
2008-10-01 13:51:05 +13:00
Robert O'Callahan
337c852320
Backing out bug 455984 to see if it fixed Tp crashes
2008-10-01 00:28:20 +13:00
Robert O'Callahan
0a5a34cbab
Bug 455984. Rework gradient and pattern code to use nsReferencedElement and nsSVGRenderingObservers, so they observe changes to the ID-element-map properly and propagate invalidations correctly (and with simpler code too). r=longsonr,sr=mats
2008-09-30 21:47:20 +13:00
Robert O'Callahan
f79290bb0e
Bug 450930. Fire a DOM event when painting so that content and chrome can track what's being repainted. r=smaug,sr=dbaron
2008-09-18 21:47:21 +12:00
Robert O'Callahan
be33d80a1a
Bug 455280. Distinguish pre-transform overflow area from post-transform overflow area and have nsDisplaySVGEffects use the pre-transform area. r=kschwarz,sr=dbaron
2008-09-16 13:51:52 +12:00
Arpad Borsos
eef0edf9d5
Bug 454766 - Add suggested parentheses to layout/; r+sr=roc; (with nits by sgautherie)
2008-09-15 17:40:25 +02:00
Keith Schwarz
dc907e1ec7
Bug 435293. Implement CSS transforms. r=dbaron,r+sr=roc
2008-09-13 21:42:11 +12:00
Graeme McCutcheon
b6ce570b3c
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
be904c4d3d
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
ca15953a6e
Backing out changeset 1bdd5da49865 (for bug 376662) due to regression bug 453661
2008-09-05 15:40:06 +12:00
Robert O'Callahan
1eeada5faa
Bug 376662. Make nsIFrame::GetOffsetTo not explicitly use views. r+sr=bzbarsky
2008-09-04 09:35:52 +12:00
Boris Zbarsky
d9344bb542
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
Robert O'Callahan
4042320c9c
Bug 441418. Instead of guessing when frame broke at a first-letter boundary, explicitly record that in a reflow status bit. r+sr=dbaron
2008-08-06 12:31:25 +12:00
Boris Zbarsky
36ff184856
Bug 430356. Don't return negative pref and min intrinsic widths for XUL boxes/ r+sr=dbaron
2008-07-28 23:07:28 -07:00
Robert O'Callahan
7e15def36c
Bug 444688. Use an IsFrameOfType check instead of a frame state bit to detect whether a frame excludes ignorable whitespace children. r+sr=dbaronlayout
2008-07-14 10:41:18 +12:00
Michael Ventnor
8d8eda2eae
Bug 212633 - "Add support for CSS3 box-shadow" (rendering support) [p=ventnor.bugzilla@gmail.com (Michael Ventnor) r+sr=roc]
2008-07-07 19:57:47 -05:00
Benjamin Smedberg
34d11c2d91
Bug 442729 - Annotate stack-only classes in layout, r+sr=roc
2008-07-01 15:16:45 -04:00
Kai Liu
ad9edcfa7d
Bug 422607: avoid unneeded pixel/twip conversions to fix bookmarks menu aligment issues, r=enndeakin, sr=roc
2008-06-15 21:26:41 -04:00
roc+@cs.cmu.edu
45ac0e7ce6
Bug 398332. Merge reflow statuses from out-of-flow frames more carefully so that we don't lose information about the primary reflow. r=fantasai,r+sr=dbaron,a=shaver
2008-05-28 06:39:41 -07:00
fantasai.cvs@inkedblade.net
b093864cba
consider relevant overflow when balancing columns (fixes various crashes and hangs) b=404215 r+sr=roc a=beltzner
2008-04-18 00:40:35 -07:00
roc+@cs.cmu.edu
cfdcd1fbe2
Bug 392809. Fix word-based caret movement around punctuation and whitespace. r=smontagu,a=beltzner
2008-03-03 00:37:34 -08:00
dbaron@dbaron.org
bef42eb600
Prevent margin expansion from interfering with table caption position. Based on patch by Mats Palmgren. b=363248 r+sr=roc a=blocking1.9+
2008-02-26 18:02:50 -08:00
reed@reedloden.com
40b710e021
Bug 391559 - "Incorrect ordered-list numbering within -moz-column-* (and/or numbering changes when clicked)" [p=craig.topper@gmail.com (Craig Topper) r+sr=roc a1.9=beltzner]
2008-02-23 23:31:29 -08:00
fantasai.cvs@inkedblade.net
d4dc37580f
switch GetOverflowAreaProperty callers to GetOverflowRect b=417116 r+sr=roc a=roc
2008-02-19 23:08:55 -08:00
bzbarsky@mit.edu
8b8a07f4a7
Fix bug 416073: invalidate more things as needed during table reflow to prevent glitches. r+sr=roc
2008-02-08 01:36:32 -08:00
dbaron@dbaron.org
b6cd4ed827
Push scrollframes, tables, and other blocks that don't participate in float formatting down when they don't fit next to floats. b=134706,349255 r+sr=roc a=blocking1.9+
2008-01-28 23:40:05 -08:00
fantasai.cvs@inkedblade.net
b81577fea9
handle dynamic insertion with overflow containers properly, b=403369 r=bzbarsky sr=roc
2008-01-27 00:13:19 -08:00
dwitte@stanford.edu
48b1fc2eb4
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
bf79c23ed9
Bug 404146. Advancing through nsContainerFrame next-in-flows can make our InlineData->line invalid, so just null it out if it might have become invalid. r+sr=dbaron
2008-01-09 19:18:44 -08:00
roc+@cs.cmu.edu
cba1d47793
Bug 405380. Bidi reordering moves frames around so we can't trust pfd->mBounds in nsLineLayout::RelativePositionFrames. r+sr=dbaron
2007-12-11 16:42:20 -08:00
roc+@cs.cmu.edu
991719200d
Bug 407155. Backing out 392809 to fix regressions. a=schrep
2007-12-07 01:35:44 -08:00
roc+@cs.cmu.edu
ea37d818bc
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
1a6bd11ee8
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
2976ce8f18
Bug 368760, r=mats, sr=roc, a=blocking1.9+
2007-11-22 12:47:33 -08:00
jwatt@jwatt.org
4d976af81a
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
enndeakin@sympatico.ca
f3dee7a7ae
Bug 394600, address bz's additional popup reworking comments, add tests for removing popups, r+sr=bz,a=beltzner
2007-11-17 07:47:38 -08:00
mats.palmgren@bredband.net
6ff9f4a686
Use async version of Invalidate() to avoid flushing pending notifications. Also, document this aspect of the Invalidate() API. b=402198 r+sr=roc a=mtschrep
2007-11-09 16:51:02 -08:00
reed@reedloden.com
00ceaa5363
Bug 391584 - Pass around a context string so we can detect word breaks at the beginning or end of frames [p=roc r=smontagu a=blocking1.9+]
2007-11-07 20:33:28 -08:00
roc+@cs.cmu.edu
32b36ae07b
Bug 397518. Wrap inline non-MathML children of MathML frames in anonymous blocks. r+sr=bzbarsky
2007-10-12 01:30:54 -07:00
tglek@mozilla.com
fdf793303e
Clean up prbool misuse in layout. bug 398312, r+sr+a=dbaron
2007-10-09 17:00:05 -07:00
roc+@cs.cmu.edu
5d758d9550
Bug 385607. Ensure that whitespace is collapsed across text-run boundaries across incremental updates like adding/removing frames in the middle of the textrun. r+sr+a=dbaron
2007-09-17 20:00:16 -07:00
roc+@cs.cmu.edu
f467e1f991
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
48c8d7714f
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
roc+@cs.cmu.edu
2c483f5105
Backing out fix for bug 385607 due to bustage and Tp regressions
2007-08-09 21:41:00 -07:00
roc+@cs.cmu.edu
6aa69c7773
Bug 385607. Force re-evaluation of textruns when block descendants are deleted or added.
2007-08-09 19:49:28 -07:00
aaronleventhal@moonset.net
2561c55575
bug 348901. Remove extra whitespace from source when exposing accessible text. r+sr=roc, r=surkov. a=dbaron
2007-08-03 18:12:24 -07:00
roc+@cs.cmu.edu
61373b8418
Bug 379349. Add support for 'overflow containers' --- special frame continuations that do not map any content of their own, but serve only as containers for laying out children that overflowed their parents' content height. patch by fantasai, r+sr=eli,roc
2007-07-25 21:03:29 -07:00
asqueella@gmail.com
cb307ac952
fix bug 388709 - "ASSERTION: Please remove this from the document properly: '!IsInDoc()'" with :after, floating :first-letter
...
Store the generated content as a nsCOMArray<nsIContent>* property on frames to make its clean-up on frame destruction less fragile.
r+sr=roc
2007-07-23 16:31:11 -07:00
jwalden@mit.edu
3dd0a48e8f
Rename one of the bits on frames with a meaningful name, rs/r+sr=dbaron
2007-07-20 17:34:36 -07:00
jwalden@mit.edu
072a5d24ae
Bug 386142 - fix up some comments on nsIFrame::Init. Patchby fantasai <fantasai.bugs@inkedblade.net>, r+sr=roc
2007-07-20 12:00:36 -07:00
neil@parkwaycc.co.uk
11ed13d71f
Followup to bug 348748 to fix the alignment of trailing backslashes in macros
...
[xxx_cast<foo*>(bar) is three characters shorter than NS_XXX_CAST(foo*, bar)]
2007-07-11 01:46:44 -07:00
jwalden@mit.edu
e3c4baccae
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
sharparrow1@yahoo.com
8801788a06
Bug 386141: Switch NS_FRAME_IS_BOX to use IsFrameOfType. Patch by fantasai, r+sr=roc.
2007-07-03 15:11:28 -07:00
dbaron@dbaron.org
ad3d506605
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
2007-06-21 15:32:47 -07:00
jwalden@mit.edu
48ddf6ad09
C++ and/or gcc sucks for not allowing commas at the end of enums; this compiled in Visual Studio.
2007-06-19 22:24:09 -07:00
jwalden@mit.edu
8d353cbe72
Move frame bit #defines into an anonymous enum, to aid debuggers in determining their values, since the two I've used can't do so, at least not with the default build options. rs=roc
2007-06-19 22:12:35 -07:00
dbaron@dbaron.org
9e2fef4c30
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
dbaron@dbaron.org
93042a4e45
Don't propagate line layout in reflow state when we're not in the line. b=320502 r+sr=roc
2007-05-17 23:04:04 -07:00
bzbarsky@mit.edu
3cb4bc9240
Change the FrameNeedsReflow API to pass the dirty flags to be added directly tothe method, instead of setting them before calling the method. That way we canavoid reflowing the ancestor of a reflow root which is not itself dirty but hasdirty children. This also makes it harder to set dirty bits inconsistentlywith the FrameNeedsReflow call. Bug 378784, r+sr=dbaron, pending rbs' reviewon the mathml parts.
2007-05-06 12:16:51 -07:00
roc+@cs.cmu.edu
b90ebbbc6c
Bug 370439 (sort of). GetAbsPosClipRect needs to take the new frame size as a parameter, because the current frame size may be invalid when we are called by FinishAndStoreOverflow. r+sr=dbaron
2007-04-10 22:04:09 -07:00
bzbarsky@mit.edu
2fd17c94d8
Rename nsIFrame::GetPresContext to nsIFrame::PresContext. Bug 376042, patch byTaras Glek <tglek@mozilla.com>, rs=roc.
2007-03-30 14:11:41 -07:00
sharparrow1@yahoo.com
6fdcc6c041
Bug 372037: CSS clip property should clip the overflow rect as well as the paint rect; r+sr=roc.
2007-03-26 20:58:17 -07:00
hg@mozilla.com
465265d0d4
Free the (distributed) Lizard! Automatic merge from CVS: Module mozilla: tag HG_REPO_INITIAL_IMPORT at 22 Mar 2007 10:30 PDT,
2007-03-22 10:30:00 -07:00