Commit Graph

525 Commits

Author SHA1 Message Date
Ehsan Akhgari
7c4ccc5734 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
73742603fa Bug 757485, remove nsIXBLService and use nsXBLService directly, r=bz 2012-05-23 14:46:04 -04:00
Gervase Markham
cb6a072c2a Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Boris Zbarsky
2e235601df 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
4059fbb586 Bug 740067: Make nsCSSFrameConstructor::CreateNeededTablePseudos return void. r=bz 2012-03-28 12:43:15 -07:00
Daniel Holbert
d332953b4e Bug 738007: Minor code cleanup in nsCSSFrameConstructor::FlushAccumulatedBlock. r=bz 2012-03-22 10:31:19 -07:00
Boris Zbarsky
b0930fe26c 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
47aee00f28 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
abde690b9d Bug 714839 - Make nsCSSFrameConstructor inherit nsFrameManager. r=bz. 2012-02-02 10:06:46 +00:00
Jeff Walden
edbb60f3de Bug 711647 - Add MOZ_DELETE to a bunch of deliberately-not-implemented methods across the tree. r=dbaron 2011-12-16 14:42:07 -05:00
Boris Zbarsky
0b922cf0bc Bug 302566. Show canvas fallback content when script is disabled. r=tnikkel 2011-12-21 16:50:39 -05:00
Boris Zbarsky
2df763e902 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
478ad1a412 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
0fe7772ece Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
Craig Topper
d1acc42088 Bug 654369 - Part 11: Remove OOM checks from layout/base r=bz 2011-04-28 22:02:40 -07:00
Matheus Kerschbaum
78c9ba2f37 Bug 660762 - Remove --disable-mathml support. r=roc 2011-06-02 13:11:33 +02:00
Ed Morley
6e443492c7 Bug 614515 - Remove MOZ_SVG conditions. r=roc 2011-05-30 09:34:50 +02:00
Boris Zbarsky
68f710c38c 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
4c92afd6cc Bug 653129. Remove useless CreateViewForFrame calls that don't do anything anymore. r=roc 2011-04-29 15:51:09 +02:00
Timothy Nikkel
3336a7e645 Bug 653125. Remove misc SVG views. r=roc 2011-04-29 12:36:02 +02:00
Boris Zbarsky
c3a5087e5b 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
ba87ca5c66 Bug 313351. ContentStatesChanged should take only one argument. r=dbaron 2011-03-28 23:32:11 -04:00
Boris Zbarsky
0392bd202d Bug 632907. Use Element more in the frame constructor. r=roc 2011-03-04 10:27:02 -05:00
Boris Zbarsky
f8be723d68 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
aea25dc578 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
9b50b1366a 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
ac3ffbbd48 Bug 595036 (2/2) - Introduce nsEventStates class to represent event states. r+a=bz 2010-10-20 13:26:32 +02:00
Neil Deakin
24497e9d62 Bug 558072. Allow getting of popup position and size from popupshowing event. r=roc,a=blocking 2010-09-06 15:30:17 +12:00
Ms2ger
517ebe645a Bug 562698 - Part c: Pass Elements to AttributeWillChange; r=bzbarsky, a=dbaron 2010-08-24 09:06:20 +02:00
Ms2ger
843b5b637d 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
23c4137568 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
55d2e81812 Backed out changeset 0c4519d63a98 2010-08-12 11:32:21 +12:00
Boris Zbarsky
8c807697b3 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
5b3fed2309 Bug 577309 part 15. Stop using content indices entirely in nsCSSFrameConstructor::ContentRemoved. r=tnikkel 2010-07-15 00:38:24 -04:00
Boris Zbarsky
827cfd24dd Bug 577309 part 14. Stop using content indices entirely in nsCSSFrameConstructor::ContentAppended. r=tnikkel 2010-07-15 00:38:23 -04:00
Boris Zbarsky
f281ff013a Bug 577309 part 13. Stop using content indices entirely in nsCSSFrameConstructor::ContentInserted. r=tnikkel 2010-07-15 00:38:23 -04:00
Boris Zbarsky
9681a3aea1 Bug 577309 part 11. Stop using content indices in AddTextItemIfNeeded. r=roc 2010-07-15 00:38:22 -04:00
Boris Zbarsky
6b8c68e900 Bug 577309 part 10. Stop using content indices in GetRangeInsertionPoint. r=tnikkel 2010-07-15 00:38:22 -04:00
Boris Zbarsky
2e4c147d68 Bug 577309 part 9. Stop using content indices in GetInsertionPrevSibling. r=tnikkel 2010-07-15 00:38:21 -04:00
Boris Zbarsky
b031b4224e 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
a9c08858df Bug 577309 part 5. Change MaybeConstructLazily to not use content indices. r=tnikkel 2010-07-15 00:38:20 -04:00
Boris Zbarsky
eac44c41f6 Bug 577309 part 4. Change MaybeRecreateForFrameset to not use content indices. r=tnikkel 2010-07-15 00:38:20 -04:00
Boris Zbarsky
cf480884e0 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
bf21a41863 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
4f92c20d44 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
e4c01dc054 Bug 479655 part 4. Move handling of eRestyle_LaterSiblings into RestyleTracker. r=dbaron 2010-06-18 12:23:05 -04:00
Boris Zbarsky
302d756481 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
b18acc3ea9 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
c1b2f41ee1 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
3ddaa9e126 Bug 562700 part 2. Change the restyle-event functions to take Element. r=dbaron 2010-05-14 13:04:51 -04:00