Commit Graph

263 Commits

Author SHA1 Message Date
Boris Zbarsky
46fe973cde Bug 473390 part 2. Call SetInitialChildList on HTML frames even if the child list is empty, to bring HTML in line with everything else. r+sr=roc 2009-01-19 13:31:31 -05:00
Jeremy Lea
3e1e90f73a Bug 448830. Make nsIntRect/nsIntMargin/nsIntSize/nsIntPoint different types from nsRect/nsMargin/nsSize/nsPoint different types for better compile-type unit checking. r+sr=roc 2009-01-15 16:27:09 +13:00
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
Benjamin Smedberg
991a16d8bc 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
Zack Weinberg
851825146e Bug 416907 - Crash [@ nsHTMLFramesetFrame::Reflow] with frameset in mroot; r+sr=roc 2008-10-30 18:10:19 +01:00
87036333c7 Bug 425551 - "Fix async DOM events from keeping link elements alive past unlink". r+sr=sicking, a=beltzner. 2008-04-11 10:29:06 -07:00
530901270a Backing out due to test failures 2008-04-08 20:20:39 -07:00
230a81ffc6 Bug 425551: Improve script blocker code and use it to prevent async DOM events from keeping link elements alive past CC. Patch by bent. r/sr=sicking 2008-04-08 19:06:27 -07:00
3a9eaf107e Bug 407889. Reduce dynamic memory allocations during event handling by having nested invocations of HitTest share a single buffer for reordering display items; this buffer is an nsAutoTArray so it's mostly stack-allocated. r+sr=mats 2008-01-03 18:08:29 -08:00
da6d55cdc6 Make attribute changes that also cause a state change properly reresolve style
when a selector uses both the state and the attribute.  Bug 315920, r=dbaron,
sr=sicking.
2007-07-12 13:05:45 -07:00
98de634631 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
79eeaa32d0 Cleanup implementations of QueryInterface. b=385750 r+sr=dbaron r+sr=jst 2007-07-03 19:15:31 -07:00
989d0f0a56 Bug 385862: View usage cleanups. r+sr=roc 2007-06-27 09:37:50 -07:00
90c1d5c633 Additional patch for bug 369150, r+sr=bz 2007-04-10 12:08:21 -07:00
e0f90db412 Rename nsIFrame::GetPresContext to nsIFrame::PresContext. Bug 376042, patch byTaras Glek <tglek@mozilla.com>, rs=roc. 2007-03-30 14:11:41 -07:00
2773a30057 Bug 369168, r+sr=roc 2007-03-26 22:30:14 -07:00
7353a3a369 backout Bug 369168 2007-03-23 03:03:25 -07:00
f35b0be284 Bug 369168, r+sr=roc 2007-03-22 17:01:36 -07:00
6d7465ca32 Bug 369150, r+sr=roc 2007-03-22 16:57:55 -07:00
bzbarsky@mit.edu
dfe4bd15b2 Only reframe a <frameset> frame if adding a child <frame> or <frameset>. Bug
370430, r+sr=roc
2007-03-05 00:11:23 +00:00
sharparrow1@yahoo.com
2da748b9c2 Bug 177805: Fix the use of units in Gecko. r+sr=roc 2007-02-07 07:46:44 +00:00
cvshook@sicking.cc
e80f1dba4e Kill remainders of ns(XBL|HTML|XUL|Layout)Atoms. r/sr=jst b=368128 2007-01-30 00:06:41 +00:00
dbaron@dbaron.org
8648581bf7 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
timeless@mozdev.org
f4ef17d178 Bug 355300 There should be only one nsGkAtoms creature
r=dbaron
2006-12-26 17:47:52 +00:00
dbaron@dbaron.org
d21cb374bd 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
sharparrow1@yahoo.com
7e8a65e054 Bug 360227: prevent framesets from taking up an extra blank page when print/print previewing. r+sr=roc. 2006-11-24 08:12:17 +00:00
Olli.Pettay@helsinki.fi
d66d6b82e2 Consolidate NS_MOUSE_***_UP/DOWN/CLICK/DBLCLICK events, r=jst,roc,josh,sergei_d,emaijala,mkaply 2006-11-16 21:35:39 +00:00
Olli.Pettay@helsinki.fi
d1bca50030 Bug 359203, r+sr=bz 2006-11-02 18:34:55 +00:00
mats.palmgren@bredband.net
8c9b400245 Avoid crashing on OOM. b=352335 r+sr=roc 2006-10-07 08:53:06 +00:00
cvshook@sicking.cc
e52bf42d62 Bug 342062: Add nsIMutationObserver which has the ability to get notifications for just mutations happening in a subtree under a given node. r/sr=bz 2006-07-02 07:23:10 +00:00
cvshook@sicking.cc
5df20de104 Bug 335911: Change nsIContent::IsContentOfType to nsINode::IsNodeOfType. r/sr=bz 2006-05-05 06:52:21 +00:00
roc+@cs.cmu.edu
24f6f0ed12 Bug 328926. Remove aPresContext parameter from nsIFrame::Destroy, nsIFrame::SetInitialChildList and nsIFrame::RemovedAsPrimaryFrame. patch by Marc Liddell, r+sr=roc 2006-04-10 00:16:29 +00:00
dbaron@dbaron.org
96634178f2 Remove uses of MOZ_DECL_CTOR_COUNTER, which is always defined to nothing. b=332745 rs=roc,bzbarsky 2006-04-05 00:00:44 +00:00
dbaron@dbaron.org
60eede3c11 Single line comments to describe files (helpful in LXR) 2006-03-29 18:29:03 +00:00
roc+@cs.cmu.edu
54d3415318 Bug 330934. Set a nsIFrame's stylecontext in its constructor, to ensure that there's always one available for GetPresContext() to use even if Init hasn't been called. Patch by Marc Liddell, r+sr=roc 2006-03-26 21:30:36 +00:00
pavlov@pavlov.net
93222d8d4f backing out roc's patch for bug 328926 due to crash running tests on vc8 machines. 2006-03-15 06:43:36 +00:00
roc+@cs.cmu.edu
c92e50faf4 Bug 328926. Remove aPresContext parameter from Destroy and SetInitialChildList. patch by Marc Liddell, r+sr=roc 2006-03-15 03:14:02 +00:00
roc+@cs.cmu.edu
1967e0fe6e Bug 330300. Move mFrame from nsDisplayItem subclasses up to nsDisplayItem itself, and make GetUnderlyingFrame an inline non-virtual function. Patch by Alfred Peng, r+sr=roc 2006-03-14 20:43:18 +00:00
roc+@cs.cmu.edu
79c7894a78 Bug 328926. Remove aPresContext from nsIFrame::Init and nsIFrame::DidSetStyleContext. r+sr=roc, patch by Marc Liddell 2006-03-09 18:55:21 +00:00
bzbarsky@mit.edu
af01a391cf Fix leak bug 324969 -- make sure to call virtual destructors. 2006-01-29 18:48:58 +00:00
roc+@cs.cmu.edu
a1b6a30f14 Bug 317375. Reorganize frame painting and mouse event targeting around frame display lists. Some review from dbaron, lots of testing help from Martijn, Julien and others 2006-01-26 02:29:17 +00:00
cbiesinger@web.de
d556e71b64 Bug 321504 Remove unneeded uses of nsIDocumentLoader
r+sr=bz
2005-12-26 16:45:59 +00:00
dbaron@dbaron.org
cf4fc55190 Use a more accurate test for first reflow (and one that won't go away soon). b=307979 r+sr=roc 2005-12-21 03:32:25 +00:00
bzbarsky@mit.edu
4d02579678 Remove nsIStyledContent. Bug 313968, r=sicking, r=dbaron on nsCSSStyleSheet
changes, sr=jst
2005-11-02 00:41:51 +00:00
roc+@cs.cmu.edu
96e9963c67 Bug 313817. DeCOMtaminate more NS_New*Frame functions. r+sr=roc, patch by Marc Liddell 2005-11-01 20:40:54 +00:00
bzbarsky@mit.edu
d53667675c Pass nsIStyledContent to AttributeChanged() so that consumers don't have to QI
to it.  Bug 313343, r=sicking, sr=jst
2005-10-27 02:25:23 +00:00
roc+@cs.cmu.edu
7875a54822 Bug 313817. DeCOMtaminate a bunch of NS_New*Frame functions. patch by Marc Liddell, r+sr=roc 2005-10-26 21:46:39 +00:00
peterv@propagandism.org
97ce448ce1 Fix for bug 27382 (ownerDocument of orphan text and attr nodes is null). Patch by sicking, updated by peterv, r=bz, sr=peterv. 2005-09-24 18:43:15 +00:00
roc+@cs.cmu.edu
5d1b988569 Bug 108310. Make GetFrameForPoint take frame-relative coordinates, not bogus relative-to-some-view-or-other, and simplify the signature. r+sr=roc, patch by Eli Friedman. 2005-09-19 02:15:54 +00:00