Commit Graph

637 Commits

Author SHA1 Message Date
Boris Zbarsky
7a05beecbe Bug 400226. Do text redisplay as soon as it's safe, not after a trip to the event loop. r+sr=mats 2009-02-17 22:27:25 -05: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
L. David Baron
ad036e3dae Stop using nsAreaFrame for anything other than xul:label, which is the only thing for which it does anything different from nsBlockFrame, and rename it accordingly. (Bug 471356) r+sr=roc 2008-12-29 10:07:38 -05:00
Robert O'Callahan
bee2844b64 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
Taras Glek
c61f5f5c50 bug 450777:deCOMtaminate nsNodeInfoManager::GetNodeInfo r+sr=jst 2008-09-12 15:32:18 -07:00
Robert O'Callahan
e87222a463 Bug 376662. Make nsIFrame::GetOffsetTo not explicitly use views. r+sr=bzbarsky 2008-09-04 09:35:52 +12:00
a8af65e4a0 b=431081; native selection box frame missing in fx3 - vista content only; r+sr=roc,a=beltzner 2008-04-28 20:55:07 -07:00
983863edf4 Landing fix for bug 419716. Make us consistently deal how we're pass param tags to object tags when parsing XHTML. Patch by mrbkap@gmail.com and bent.mozilla@gmail.com, r+sr=jonas@sicking.cc, a=beltzner 2008-04-17 15:30:51 -07:00
81fd20f5b1 Bug 425253. Propagate reflow-depth tracking through XUL box layout. r+sr=dbaron,a=damon 2008-04-09 21:39:41 -07:00
945f8bd434 Bug 394114 Interfaces missing from various QI implementations. r=jag sr=jag a=dsicore 2008-04-06 05:28:34 -07:00
46f0a1f41c reverting, wrong patch, missing AMBIGUOUS 2008-03-19 14:55:22 -07:00
56b16d9b10 Bug 394114 Interfaces missing from various QI implementations. r=jag sr=jag a=dsicore 2008-03-19 14:19:35 -07:00
28f610779c Bug 408772: Replace nscoord_MAX-unsafe arithmetic with safe call to NSCoordSaturatingSubtract, in nsComboboxControlFrame::GetIntrinsicWidth. r+sr=bzbarsky a=mtschrep 2007-12-18 11:26:35 -08:00
da8ae79238 Bug 401627, better way of handling click to close menu so that it doesn't reopen the menu again, r+sr=roc 2007-12-03 08:33:42 -08:00
f5a7f12999 Don't do arithmetic with unconstrained widths when reflowing comboboxes. Bug 363858, r+sr=dbaron 2007-12-02 22:41:38 -08:00
ae6398de0c Bug 402198 - Use async version of Invalidate() to avoid flushing pending notifications [p=mats.palmgren@bredband.net (Mats Palmgren) r+sr=roc a1.9=schrep] 2007-11-13 08:44:48 -08:00
192499a8d7 Backing out relevant part of bug 402198 to see if it fixes Orange on Windows Tinderbox... 2007-11-09 20:23:26 -08:00
24ed1d9b42 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
e54d0c7b68 When selectedIndex is set, make sure to display the corresponding text in the display area. Bug 330554, r+sr=mats, a=dbaron 2007-08-21 20:25:42 -07:00
d0829b5bfc Make sure to process style updates before reflow, and both before painting. Bug 375436, r+sr=roc, a=dbaron 2007-08-21 19:57:06 -07:00
3a2e55fe48 Bug 390420, select dropdowns appearing in the wrong place in some cases, r+bz,a=dbaron 2007-08-10 05:42:06 -07:00
368c29ae32 Introduce a setter for nsHTMLReflowState::mComputedHeight so that we're sure to
update the resize flags properly.  Bug 388084, r+sr+a=dbaron
2007-08-02 11:08:05 -07:00
e3742c090c 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
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
82a9cab943 Fix parent style context warnings by being consistent about parent contexts.
Bug 380116, r+sr=dbaron
2007-06-15 22:11:20 -07:00
8d32888c40 don't let comboboxes render their labels over the native combobox button on Mac OS X. b=382043 r/sr=roc 2007-05-28 22:31:04 -07:00
87c4fd7713 don't add scrollbar width to getPrefWidth in nsComboboxControlFrame if the themed widget has set the internal button width to 0. b=381669 r/sr=roc 2007-05-23 12:16:27 -07:00
879ad6ff64 Don't paint the background for the text frame in comboboxes if the combobox is themed. b=381268 r/sr=roc 2007-05-22 12:42:01 -07:00
ed92108758 don't put a dropmarker in comboboxes if nsITheme says not to. b=370282 r/sr=roc 2007-05-17 20:04:04 -07:00
d3ff75a6f1 Protect against frame destruction during event handling and document when that can occur. b=378670 r+sr=bzbarsky 2007-05-17 04:12:30 -07:00
70e37b2ff0 Bug 363089, Remove nsIDOMEventReceiver (this time passes mochitest), r+sr=jst 2007-05-14 02:11:38 -07:00
0f958609c2 backout Bug 363089 2007-05-11 06:34:05 -07:00
833e8c64f1 Bug 363089, Remove nsIDOMEventReceiver, r+sr=jst 2007-05-11 04:15:11 -07:00
cdb5b22b87 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
533a4a3abb Fixing build bustage 2007-05-04 23:37:05 -07:00
742cd68f3a Don't cut off the right-hand side of empty comboboxes. Bug 364510, r+sr=dbaron 2007-05-04 23:20:10 -07:00
6a3a9ef366 Make assertion reflect reality better. Bug 357044, r+sr=roc 2007-04-25 18:17:05 -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
e073f6094d remove app-specific code from tier-9 code. add a pref to handle native popup windows on Mac OS X instead. b=323062 r=smorgan sr=bsmedberg 2007-03-30 12:51:51 -07:00
7e4e3ec68f 375196, r+sr=roc 2007-03-25 22:38:22 -07:00
bzbarsky@mit.edu
2aca10004d Make the display frame resize correctly when the <select>'s width changes. Bug
370422, r+sr=dbaron
2007-02-28 03:04:38 +00:00
dbaron@dbaron.org
a4cc40910e Clean up IsFrameOfType methods to call their base class IsFrameOfType methods reliably. b=341326 r+sr=roc 2007-02-24 18:33:33 +00:00
bzbarsky@mit.edu
7228aea249 Make blocks whose ancestors are not blocks have the NS_BLOCK_MARGIN_ROOT and
NS_BLOCK_SPACE_MGR bits as necessary.  Bug 354600, r+sr=roc
2007-02-18 23:53:25 +00:00
asqueella@gmail.com
49c82b0ca8 bug 257868 - remove the nsIPresShell::SetAnonymousContentFor() API, make the frames store strong refs to the anonymous content instead. Decomtaminate nsIAnonymousContentCreator.
r+sr=roc
2007-02-18 17:34:09 +00:00
joshmoz@gmail.com
44db63b2b9 extend nsITheme to support native focus drawing. b=370549 r=dbaron sr=roc 2007-02-16 01:53:43 +00:00
sharparrow1@yahoo.com
03f4fc3a17 Bug 370303: Cleanup in layout/forms. r+sr=roc. 2007-02-15 10:58:31 +00:00
smontagu@smontagu.org
ddbb8e4924 Remove obsolete state bit NS_BLOCK_SHRINK_WRAP. Bug 369243, r=bz, sr=dbaron 2007-02-15 05:07:57 +00:00