Commit Graph

204 Commits

Author SHA1 Message Date
Ehsan Akhgari
d54aaab73b Bug 157681 - Part 2: Optimize positioned frame offset changes by moving the frame as opposed to reflowing it in case we know that the size of the frame will not change; r=dbaron
This patch adds a change hint to signal that one of the offsets on a
frame has been changed.  When processing the hint, we do one of the
following things based on the position property of the frame.

* For static frames, we ignore the offset changes completely, as they
  will not change the layout.
* For relative positioned frames, this patch refactors the
  nsHTMLReflowState::ComputeRelativeOffsets function so that it can be
  used from other callers, and it uses that to compute the new relative
  offsets, and uses the offsets computed previously to compute the new
  position of the frame.
* For absolute positioned frames, we set up a fake parent reflow state
  object, and then we create a new reflow state object for the frame in
  question.  This setup is similar to what nsFrame::BoxReflow does.
  Once we have the new reflow state object, we use it to compute the
  absolute offsets, and then we use the computed offsets to set the new
  position of the frame.  The offset computation is similar to what
  nsAbsoluteContainingBlock::ReflowAbsoluteFrame does.  In some cases
  where it is possible for the dimensions of the frame to change based
  on the offset changes, we fall back to a full reflow.
2012-06-06 00:53:48 -04:00
Neil Deakin
994d3d4070 Bug 757485, remove nsIXBLService and use nsXBLService directly, r=bz 2012-05-23 14:46:04 -04:00
Gervase Markham
87620f5676 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Boris Zbarsky
15639de868 Bug 751012. When saving frame state, make sure to walk through placeholders so we save the state of out-of-flow descendants properly. Also make sure to walk the continuations and special siblings of the root frame that we're saving state for. r=roc 2012-05-09 21:27:47 -04:00
Daniel Holbert
5f9dc21353 Bug 740067: Make nsCSSFrameConstructor::CreateNeededTablePseudos return void. r=bz 2012-03-28 12:43:15 -07:00
Daniel Holbert
a41e5d0dfb Bug 738007: Minor code cleanup in nsCSSFrameConstructor::FlushAccumulatedBlock. r=bz 2012-03-22 10:31:19 -07:00
Boris Zbarsky
42379a0010 Bug 537624. Don't set up undisplayed entries until we're sure we're creating frames from the relevant FrameConstructionItemList. r=roc 2012-03-19 18:22:02 -04:00
Boris Zbarsky
3361b1a265 Bug 728516. Refactor frame construction for things that want to wrap kids in a block. r=roc 2012-02-21 18:01:40 -05:00
Jonathan Watt
15b82e8416 Bug 714839 - Make nsCSSFrameConstructor inherit nsFrameManager. r=bz.
--HG--
extra : rebase_source : 23c36617c5088884b7e1ecea48e6c09aa8757690
2012-02-02 10:06:46 +00:00
Jeff Walden
5d0d2b2e73 Bug 711647 - Add MOZ_DELETE to a bunch of deliberately-not-implemented methods across the tree. r=dbaron
--HG--
extra : rebase_source : 507006c0f099da6851b585d2062267d285978ad7
2011-12-16 14:42:07 -05:00
Boris Zbarsky
26c6c71812 Bug 302566. Show canvas fallback content when script is disabled. r=tnikkel 2011-12-21 16:50:39 -05:00
Boris Zbarsky
74aef0d2d5 Bug 709256 part 3. Skip calling PresShell::FlushPendingNotifications altogether if there might not be anything to flush. r=roc 2011-12-14 23:42:15 -05:00
Ehsan Akhgari
2a602a5685 Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
Michael Wu
d8e503c38b Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Craig Topper
cfe91e4f31 Bug 654369 - Part 11: Remove OOM checks from layout/base r=bz
--HG--
extra : rebase_source : a725d78f3e128d6d4ca1eb48eec1cfc78f7762bf
2011-04-28 22:02:40 -07:00
Matheus Kerschbaum
7406ce377f Bug 660762 - Remove --disable-mathml support. r=roc 2011-06-02 13:11:33 +02:00
Ed Morley
9e71e5b9ac Bug 614515 - Remove MOZ_SVG conditions. r=roc 2011-05-30 09:34:50 +02:00
Boris Zbarsky
447ee74d8c Bug 654989 part 1. Allow handing out both an nsIContent and an nsStyleContext from CreateAnonymousContent. r=roc 2011-05-06 16:04:44 -04:00
Timothy Nikkel
f739336f73 Bug 653129. Remove useless CreateViewForFrame calls that don't do anything anymore. r=roc 2011-04-29 15:51:09 +02:00
Timothy Nikkel
baa16dc247 Bug 653125. Remove misc SVG views. r=roc 2011-04-29 12:36:02 +02:00
Boris Zbarsky
8a877093bc Bug 598832 part 16. Use a single TreeMatchContext for all the style resolution that the frame constructor does as part of a single frame construction batch. r=dbaron 2011-03-29 13:29:21 -04:00
Boris Zbarsky
0a7e20bbec Bug 313351. ContentStatesChanged should take only one argument. r=dbaron 2011-03-28 23:32:11 -04:00
Boris Zbarsky
1782b07550 Bug 632907. Use Element more in the frame constructor. r=roc 2011-03-04 10:27:02 -05:00
Boris Zbarsky
b0c658578e Bug 609272. Make sure to not apply clipping of overflow when printing to the root element, because it doesn't really make use of its overflow style itself. r=dbaron 2010-11-30 13:19:57 -05:00
Dave Townsend
7a0e0a5cd9 Backing out bug 614058, bug 609272, bug 478445, bug 499628, bug 605296, bug 608914 and bug 614724 due to potentially causing bug 615736 CLOSED TREE. a=backout 2010-12-01 11:01:56 -08:00
Boris Zbarsky
f5eba2ae67 Bug 609272. Make sure to not apply clipping of overflow when printing to the root element, because it doesn't really make use of its overflow style itself. r=dbaron 2010-11-30 13:19:57 -05:00
Mounir Lamouri
66067bcb7b Bug 595036 (2/2) - Introduce nsEventStates class to represent event states. r+a=bz 2010-10-20 13:26:32 +02:00
Neil Deakin
b753ff6479 Bug 558072. Allow getting of popup position and size from popupshowing event. r=roc,a=blocking
--HG--
extra : rebase_source : 0589fbc0410548f8f7ee748d59e70721c5fcc29b
2010-09-06 15:30:17 +12:00
Ms2ger
0cf7a5d525 Bug 562698 - Part c: Pass Elements to AttributeWillChange; r=bzbarsky, a=dbaron 2010-08-24 09:06:20 +02:00
Ms2ger
27271a8a8f Bug 562698 - Part a: Pass Elements to nsIMutationObserver::AttributeChanged and nsCSSFrameConstructor::AttributeChanged; r=bzbarsky, a=dbaron 2010-08-24 09:05:56 +02:00
Boris Zbarsky
b2753641df Bug 577607 part 2. Teach the refresh driver to flush restyles and reflow on more than one presshell. r=roc 2010-08-11 17:05:27 -04:00
Robert O'Callahan
254458b52a Backed out changeset 0c4519d63a98 2010-08-12 11:32:21 +12:00
Boris Zbarsky
657e764de8 Bug 577607 part 2. Teach the refresh driver to flush restyles and reflow on more than one presshell. r=roc 2010-08-11 17:05:27 -04:00
Boris Zbarsky
59286dcbf7 Bug 577309 part 15. Stop using content indices entirely in nsCSSFrameConstructor::ContentRemoved. r=tnikkel 2010-07-15 00:38:24 -04:00
Boris Zbarsky
29800a9621 Bug 577309 part 14. Stop using content indices entirely in nsCSSFrameConstructor::ContentAppended. r=tnikkel 2010-07-15 00:38:23 -04:00
Boris Zbarsky
e7c8d97165 Bug 577309 part 13. Stop using content indices entirely in nsCSSFrameConstructor::ContentInserted. r=tnikkel 2010-07-15 00:38:23 -04:00
Boris Zbarsky
5db355713c Bug 577309 part 11. Stop using content indices in AddTextItemIfNeeded. r=roc 2010-07-15 00:38:22 -04:00
Boris Zbarsky
d2c8f30717 Bug 577309 part 10. Stop using content indices in GetRangeInsertionPoint. r=tnikkel 2010-07-15 00:38:22 -04:00
Boris Zbarsky
e5bac765ac Bug 577309 part 9. Stop using content indices in GetInsertionPrevSibling. r=tnikkel 2010-07-15 00:38:21 -04:00
Boris Zbarsky
ad541421fe Bug 577309 part 7. Stop using content indices in determining whether to suppress whitespace frames. r=roc 2010-07-15 00:38:21 -04:00
Boris Zbarsky
8e3b4bda8e Bug 577309 part 5. Change MaybeConstructLazily to not use content indices. r=tnikkel 2010-07-15 00:38:20 -04:00
Boris Zbarsky
a3e715c327 Bug 577309 part 4. Change MaybeRecreateForFrameset to not use content indices. r=tnikkel 2010-07-15 00:38:20 -04:00
Boris Zbarsky
3f0ad685c1 Bug 577309 part 2. Change the ContentRangeInserted signature to take the end child in addition to the start child. r=tnikkel 2010-07-15 00:38:20 -04:00
Boris Zbarsky
e81230c9bb Bug 494117 part 2. Don't force selector matching on the whole subtree rooted at an element when the element's style changes. r=dbaron 2010-06-18 12:23:05 -04:00
Boris Zbarsky
f8d9da8e92 Bug 479655 part 5. Pass the relevant restyle tracker through to style reresolution. r=dbaron 2010-06-18 12:23:05 -04:00
Boris Zbarsky
c459ccbab5 Bug 479655 part 4. Move handling of eRestyle_LaterSiblings into RestyleTracker. r=dbaron 2010-06-18 12:23:05 -04:00
Boris Zbarsky
37a217faf3 Bug 479655 part 3. Refactor restyle processing into a new RestyleTracker class. r=dbaron 2010-06-18 12:23:04 -04:00
L. David Baron
a464130609 Additional restyling is needed for :empty + E and :empty ~ E selectors. (Bug 534804) r=bzbarsky 2010-05-14 22:01:45 -07:00
Boris Zbarsky
1e17a7151a Bug 562700 part 3. Store Element in the restyle table and pass it to the actual restyling functions. r=dbaron 2010-05-14 13:04:51 -04:00
Boris Zbarsky
ecc1fd2ec3 Bug 562700 part 2. Change the restyle-event functions to take Element. r=dbaron 2010-05-14 13:04:51 -04:00