Commit Graph

4278 Commits

Author SHA1 Message Date
Matt Woodrow
7ff4b0f6f1 Bug 810302 - Don't try to draw layers with a singular transform on BasicLayers. r=roc 2012-11-30 11:11:04 +13:00
Daniel Holbert
7d3322dcff Bug 808767: Put flex items' borders & backgrounds into the BlockBorderBackgrounds display-list, so that overlapping flex items & their contents will paint in the right order. r=dbaron 2012-11-29 12:46:22 -08:00
Boris Zbarsky
14ec26d993 Bug 815671 part 7. Fixes to layout code to not copy arrays implicitly. r=roc 2012-11-29 11:14:14 -05:00
Matt Woodrow
80ce32fa9d Bug 815593 - Remove unused variable. r=bustage 2012-11-29 19:01:48 +13:00
Robert O'Callahan
f9199a2935 Bug 815593. Don't layerize images that exceed MaxTextureSize. r=mattwoodrow
--HG--
extra : rebase_source : f94300b24b90d063df095324663c9d8fa49e42e9
2012-11-28 15:34:45 +13:00
Robert O'Callahan
428fbe055f Bug 801842. Treat windowless plugins in popups as always visible, since we don't compute proper geometry for them. r=tnikkel
--HG--
extra : rebase_source : a6ad44a8dc4b596f3a83fcd19ba97cda43e4def1
2012-11-28 02:18:39 +13:00
Robert O'Callahan
05743fdf57 Bug 815030. Invalidate cached background images in when a frame gets a visual style change. r=mattwoodrow
--HG--
extra : rebase_source : eef4784ea2d4ef0f88d6dfdbf3258d1b8416f443
2012-11-27 22:05:10 +13:00
Scott Johnson
29f9330bf3 Bug 812372: Rename DocumentViewerImpl to nsDocumentViewer for consistency. [r=ehsan] 2012-11-28 18:26:39 -06:00
Mats Palmgren
d1e667e5f9 Bug 812879. r=fantasai 2012-11-28 19:55:36 +01:00
Josh Matthews
d361f943c1 Bug 788959 - Clear the listener associated with cancelled bullet frame image requests. r=bz 2012-11-28 10:30:05 -05:00
Daniel Holbert
bc6c823465 Bug 815972: Remove unneeded nsDisplayListCollection from nsBlockFrame.cpp's DisplayLine() helper-function. r=roc 2012-11-28 00:08:30 -08:00
Daniel Holbert
fa635b737b (no bug) Capitalize & clean up inline-comments next to nsFlexContainer member-var declarations, to keep them from looking like a single large comment. comment-only, DONTBUILD 2012-11-28 00:08:25 -08:00
Matt Woodrow
0f71885ebe Bug 810592 - Make nsSubDocumentFrames that are actively scrolling build their own layer. r=roc 2012-11-22 18:33:33 +13:00
Nicholas Nethercote
a9de315db1 Bug 814312 - Avoid PL_ArenaPool recycling in the layout engine. r=roc.
--HG--
extra : rebase_source : 7aaa3d745583c595692f1effd933cc70931194ff
2012-11-25 14:40:28 -08:00
Robert O'Callahan
bcaac8cb9e Bug 812517. Part 1: Add nsIScrollableFrame::ScrollToCSSPixelsApproximate. r=mats
--HG--
extra : rebase_source : abf7313cdcf5a2a670dbbbd5b59363d7c60aa3e7
2012-11-23 14:25:23 +13:00
Nicholas Cameron
9fbca42363 Bug 812908; add a debug pref for forcing active layers; r=roc 2012-11-23 12:29:05 +13:00
Ed Morley
eb88be58b6 Backout d30b99cfd933 (bug 802385), 58ce0ddf7611 (bug 810275), 1c96b4a67d38 (bug 810592) for reftest failures 2012-11-22 09:59:23 +00:00
Matt Woodrow
85f86c1ee2 Bug 810592 - Make nsSubDocumentFrames that are actively scrolling build their own layer. r=roc 2012-11-22 18:33:33 +13:00
Boris Zbarsky
abcee77db3 Bug 776443 part 2. Support percent-less calc for internal table element widths. r=dbaron 2012-11-21 11:19:37 -05:00
Boris Zbarsky
6eeb17d512 Bug 776443 part 1. Support percent-less calc for internal table element heights. r=dbaron 2012-11-21 11:19:30 -05:00
Ryan VanderMeulen
4b287535f2 Backed out changesets 1a8b11ae0f4b, e02a02fd1208 (bug 776443), 86a3edf2960d (bug 812392), 26c59f23fd8f, and 288c74d7f87d (bug 812744) for mochitest orange.
CLOSED TREE
2012-11-21 12:47:40 -05:00
Boris Zbarsky
ba3c8f34ef Bug 776443 part 2. Support percent-less calc for internal table element widths. r=dbaron 2012-11-21 11:19:37 -05:00
Boris Zbarsky
84d68be849 Bug 776443 part 1. Support percent-less calc for internal table element heights. r=dbaron 2012-11-21 11:19:30 -05:00
Seth Fowler
c42d3467d8 Bug 812241 - Remove disabled test warnings. r=khuey 2012-11-20 16:13:04 -08:00
Daniel Holbert
59c89ca45d Bug 807897: Make non-auto values for "z-index" turn flex items into stacking contexts, even if they're not positioned. r=dbaron 2012-11-20 17:24:59 -08:00
Matt Woodrow
3ffe9d6965 Bug 811570 - Allow inactive scroll frames to become active when scrolled. r=roc 2012-11-19 17:19:22 +13:00
Matt Woodrow
caced635cb Bug 811927 - Allow conversion of nsDisplayBackgroundImage into ImageLayers. r=roc 2012-11-19 16:28:18 +13:00
Jeff Muizelaar
985473d336 Bug 794957. Use imgLoader instead of imgILoader. r=joe
This makes use of imgLoader instead of imgILoader in more places.

--HG--
extra : rebase_source : 6b391e5ecc2fd9558516c7493116e7e7852b71b3
2012-11-16 10:24:58 -08:00
Robert O'Callahan
4762b4de2c Bug 810470. Part 8: Limit the BasicLayers background-caching optimization to cases where the destination context has an integer translation only, and snap the image rectangle. r=mattwoodrow
Previous patches in this bug enabled the nsDisplayCanvasBackground
background-caching optimization for the test 402807-1.html. That exposed
an existing bug where we don't snap the background image to pixel
boundaries when drawing through that path. This patch fixes it.
This patch also stops the IsSingleFixedPositionImage path from using
mDestRect, returning the rect as an out-parameter instead.

--HG--
extra : rebase_source : b7a496dfc7584dd8c73cddd0809fc5aa31992d53
2012-11-14 17:35:18 -08:00
Robert O'Callahan
de0ff3cd83 Bug 810470. Part 6: Rename nsDisplayBackground to nsDisplayBackgroundImage. r=mattwoodrow
--HG--
extra : rebase_source : c532ae41706db6c9d5488bc2b7901c3bf0f0fc25
2012-11-09 18:14:59 -05:00
Robert O'Callahan
5e7bbc6525 Bug 810470. Part 4: Make only background-attachment:fixed backgrounds that have propagated to the viewport use a dedicated layer, and refactor how we do that. r=mattwoodrow
--HG--
extra : rebase_source : f1085ce640e50617b687f9902edd83816512f786
2012-11-09 18:14:14 -05:00
Robert O'Callahan
ffbcca0d03 Bug 810470. Part 3: Remove code for invalidating background-attachment:fixed content when scrolling. r=mattwoodrow
New invalidation logic takes care of this automatically.

--HG--
extra : rebase_source : 0112cfe02dbaaabf04e4010823a3cceeb6549fcd
2012-11-09 18:14:14 -05:00
Robert O'Callahan
5387b9f845 Bug 810470. Part 2: Change nsDisplayBackground invalidation to store and compare the background positioning rect. r=mattwoodrow
--HG--
extra : rebase_source : c9141ba46d034fc496a3e9e33efce5b022bec41c
2012-11-08 10:05:32 -05:00
Robert O'Callahan
fd2ab3281a Bug 810470. Part 1: Cache nsStyleBackground pointer in nsDisplayBackground. r=mattwoodrow
--HG--
extra : rebase_source : a104cfa5d8c72e208866b56507c56174e14ef143
2012-11-07 23:08:40 -05:00
Benoit Jacob
5a8b82a1cb Bug 807437 - Eliminate redundant Traverse/Unlink CC macros - part 1: automatic changes - r=mccr8 2012-11-15 02:32:40 -05:00
Robert O'Callahan
64eabc5eba Bug 811301. Part 2: Remove saved state IDs now that the root scroll frame state is captured normally. r=mats 2012-11-14 22:40:17 -08:00
Robert O'Callahan
b37fa487a3 Bug 811301. Part 1: Save and restore state of root scroll frame when reframing the root element, and treat root scroll frame state like any other frame. r=mats 2012-11-14 22:39:58 -08:00
Robert O'Callahan
347a2e59f4 Bug 759993. Make nsIFrame::GetTransformMatrix robust for popup frames. r=tnikkel
* * *
[mq]: tmp
2012-11-11 00:02:56 -08:00
Ryan VanderMeulen
e3d6945c6d Backed out 8 changesets (bug 810470) due OSX reftest failures. 2012-11-14 22:14:44 -05:00
Brendan Dahl
e678d89642 Bug 115199 - CSS2 @page rule rendering support. r=roc 2012-08-31 14:20:56 -07:00
Robert O'Callahan
d58e181207 Bug 810470. Part 8: Limit the BasicLayers background-caching optimization to cases where the destination context has an integer translation only, and snap the image rectangle. r=mattwoodrow
Previous patches in this bug enabled the nsDisplayCanvasBackground
background-caching optimization for the test 402807-1.html. That exposed
an existing bug where we don't snap the background image to pixel
boundaries when drawing through that path. This patch fixes it.
This patch also stops the IsSingleFixedPositionImage path from using
mDestRect, returning the rect as an out-parameter instead.

--HG--
extra : rebase_source : 314cd040d3041b050f9eb1a0c39dfce3c4d6d0e6
2012-11-14 17:35:18 -08:00
Robert O'Callahan
61ea847d06 Bug 810470. Part 6: Rename nsDisplayBackground to nsDisplayBackgroundImage. r=mattwoodrow
--HG--
extra : rebase_source : f1253ac9aeff0384dcbcc319c88744713d3b22a3
2012-11-09 18:14:59 -05:00
Robert O'Callahan
e99834e223 Bug 810470. Part 4: Make only background-attachment:fixed backgrounds that have propagated to the viewport use a dedicated layer, and refactor how we do that. r=mattwoodrow
--HG--
extra : rebase_source : 957eb0d5f45cd756fc121135ff6d8dff483c8bf4
2012-11-09 18:14:14 -05:00
Robert O'Callahan
eea69229e3 Bug 810470. Part 3: Remove code for invalidating background-attachment:fixed content when scrolling. r=mattwoodrow
New invalidation logic takes care of this automatically.

--HG--
extra : rebase_source : f598635e58390ef868a057e8ea8ab0cf2410b8a9
2012-11-09 18:14:14 -05:00
Robert O'Callahan
efef937562 Bug 810470. Part 2: Change nsDisplayBackground invalidation to store and compare the background positioning rect. r=mattwoodrow
--HG--
extra : rebase_source : 2a4f44b98000d52301053c685e50f81e251e7e8c
2012-11-08 10:05:32 -05:00
Robert O'Callahan
19adfe0baf Bug 810470. Part 1: Cache nsStyleBackground pointer in nsDisplayBackground. r=mattwoodrow
--HG--
rename : browser/components/privatebrowsing/test/browser/perwindow/browser_privatebrowsing_openLocationLastURL.js => browser/components/privatebrowsing/test/browser/global/browser_privatebrowsing_openLocationLastURL.js
rename : browser/components/privatebrowsing/test/browser/perwindow/browser_privatebrowsing_popupblocker.js => browser/components/privatebrowsing/test/browser/global/browser_privatebrowsing_popupblocker.js
rename : browser/components/privatebrowsing/test/browser/perwindow/popup.html => browser/components/privatebrowsing/test/browser/global/popup.html
extra : rebase_source : cddca78450149e80131208f76b4cebd96b7526a1
2012-11-07 23:08:40 -05:00
Boris Zbarsky
b3d79ce6da Bug 810876. Don't double-count the size of our placeholder when determining the overflow area for an image frame. r=mattwoodrow 2012-11-14 10:05:41 -08:00
Ehsan Akhgari
27d839024f Bug 810355 - Convert nsDidReflowStatus into an enum class; r=dholbert 2012-11-13 22:47:33 -08:00
Matt Woodrow
ad06108ba9 Bug 811570 - Make the root content scroll frame inactive initially if it is overflow hidden. r=roc 2012-11-13 22:26:33 -08:00
Robert O'Callahan
1457b7574f Bug 811173. Part 2: Add other cases for nsDisplayItems that snap their bounds. r=mattwoodrow
--HG--
extra : rebase_source : 716ea707140907ccbed6d739ef81db1256a7b51b
2012-11-13 11:56:47 -08:00
Ryan VanderMeulen
b4426aaaa0 Backed out changesets 0b6b3d2856a4 and 30776e402787 (bug 115199) for reftest failures. 2012-11-13 20:19:18 -05:00
Brendan Dahl
3b71cbe23b Bug 115199 - CSS2 @page rule rendering support. r=roc 2012-08-31 14:20:56 -07:00
Peter Van der Beken
7afaf1353b Fix for bug 810597 (crash in GetPrintCanvasElementsInFrame). r=bz 2012-11-12 17:48:49 -05:00
Daniel Holbert
289e1d9c00 Bug 804089: Call DidReflow() after "measuring" reflow of flex item, to clear any intermediate state before our *real* ReflowChild() call. r=dbaron 2012-11-11 10:53:57 -08:00
Vivien Nicolas
2321dface7 Bug 808724 - Application with embed-apps permission can not use the mozpasspointerevents attribute. r=roc 2012-11-09 22:46:28 +01:00
Peter Van der Beken
ce50619032 Fix for bug 804991 (Make FromContent expect a non-null pointer and add FromContentOrNull). r=bz.
--HG--
extra : rebase_source : 52e1c9171d05ba034971cfa16741e12061e7335d
2012-09-26 16:17:51 +02:00
Jonathan Kew
ee53a4beec bug 774560 pt 2 - implement text-transform:full-width. r=smontagu 2012-11-09 09:43:48 +00:00
Daniel Holbert
2d1bac67b4 Bug 806002: Convert nsDidReflowStatus into an enum. r=dbaron 2012-11-08 17:27:48 -08:00
Mats Palmgren
cfa16446bf Bug 798867 - Use the content offset that GetFrameForNodeOffset returns. r=roc 2012-11-08 17:09:38 +01:00
Mats Palmgren
78355598f6 Bug 685012 - Implement page-break-inside:avoid in layout. r=fantasai,sr=roc 2012-11-08 17:09:38 +01:00
Ehsan Akhgari
35cb5e8126 Bug 775350 - Update the overflow areas of the lines containing floats based on the overflow areas of the floats in the containing block; r=dbaron 2012-11-06 12:11:50 -05:00
Karl Tomlinson
8defed4f3d b=807925 revert to calling GetImageContainer() before NotifyPaintWaiter() to check for null instance first r=roc
--HG--
extra : transplant_source : %FF%24%B7%29%DB%F7%88%F4%60%AEg-%26%EF%1Bd%A6%FF8%0E
2012-11-08 10:15:27 +13:00
L. David Baron
7c9e487c8c Bug 809533, patch 2: Don't null-check inside NS_New*Frame. r=roc 2012-11-07 11:55:53 -08:00
Matt Woodrow
1e525216af Bug 807563 - Update the overflow areas of all preserve-3d children when the transform changes. r=roc 2012-11-05 12:12:05 +13:00
Mats Palmgren
38b217c872 Bug 806755 - Don't call scroll methods on the pres shell after the Selection was disconnected. r=roc 2012-11-04 07:41:42 +01:00
Seth Fowler
f5d66e49dc Bug 807556 - Remove imgIRequest::loadImage's aRequest argument. r=joe 2012-11-03 23:04:07 -04:00
Robert O'Callahan
45f55abd96 Bug 805331. Part 1: Refactor nsDisplayList::GetList
Renames GetList to GetSameCoordinateSystemChildren, and adds an assertion
to verify that the children have the same reference frame as the parent.
Adds nsDisplayList::GetChildren to return whatever children there are.
Obsoletes nsDisplayTransform::GetStoredList.
2012-11-03 01:59:03 +13:00
Robert O'Callahan
ea96212e03 Bug 796452. Add mozpasspointerevents attribute for IFRAMEs in chrome windows. r=mats 2012-11-02 23:42:59 +13:00
Mats Palmgren
ee2b02a432 Bug 806056 - Add a frame bit that says if a frame is allowed to have abs/fixed pos. children when the style so indicates (position/transform usually). Copy the bit to next-in-flows. Don't call MarkAsAbsoluteContainingBlock for style changes on an existing frame unless that bit is set (style changes that recreates the frame resets it of course). Assert in MarkAs[Not]AbsoluteContainingBlock() that the bit is set. r=bz 2012-11-02 01:52:59 +01:00
Mats Palmgren
01cc61dab4 Bug 806056 - Make nsContainerFrame destroy abs/fixed pos. child frames unless a derived class already did so. Assert that there are no abs/fixed pos. child frames in nsFrame::DestroyFrom(). r=roc 2012-11-02 01:52:59 +01:00
Matt Woodrow
d5fb2dbc2d Bug 806256 - Improve WrapPreserve3DList's behaviour by walking through nsDisplayWrapList without flushing the temp list. r=roc 2012-11-01 14:25:45 +13:00
Matt Woodrow
991b83669e Bug 806256 - Only recompute preserve-3d/perspective children overflow areas if the frame size changed. r=roc 2012-11-01 14:25:45 +13:00
Matt Woodrow
c18032c434 Bug 806256 - Don't clobber the cached initial overflow. r=roc 2012-11-01 14:25:45 +13:00
Matt Woodrow
9087b06246 Bug 806256 - Don't invalidate frames when the overflow area changes, DLBI will handle it. r=roc 2012-11-01 14:25:44 +13:00
Matt Woodrow
20ea8a7f1c Bug 805696 - Always invalidate nsImageFrames when we change to a new image request. r=joe 2012-11-01 14:25:44 +13:00
Karl Tomlinson
823669b04f b=797568 only GetImageContainer in BuildLayer if the container will be used r=roc
--HG--
extra : transplant_source : %F3%C3%E4%AC%28%D3_%1C%A0%EB%19%EE%0E%F6Z%D8%EF%AE%94%F0
2012-10-31 15:54:06 +13:00
Karl Tomlinson
1a1d1335ab b=797568 don't try to get non-existant ImageContainer with in-process Mac plugins r=BenWa
--HG--
extra : transplant_source : %3F%06%DF%B3%90g%F7if%D4%DC%E4%B2x%C6a%C1%1C%E6Z
2012-10-31 15:54:05 +13:00
Karl Tomlinson
064e00d431 b=797568 remove obsolete nsObjectFrame::GetImageContainer() r=roc
--HG--
extra : transplant_source : h%CB%86%8A%E4%9B%1A%7DqS9%AC6%93s%0D%099%0A%B2
2012-10-31 15:53:37 +13:00
Jet Villegas
677bf3dda3 Bug 806068 part 2: Change in-tree usage of -moz-initial to initial. r=dholbert 2012-10-30 16:57:36 +01:00
Nathan Froyd
f9b2a74082 Bug 806618 - rewrite PR_NewLogModule calls to not generate static initializers; r=ehsan 2012-10-29 19:32:10 -04:00
Jacek Szpot
bea8356b2c Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
Mats Palmgren
7bafc7a356 Bug 804486 - s/fontHeight/increment/ to make some code less confusing. r=roc 2012-10-29 06:44:31 +01:00
Mats Palmgren
8ad31a0bc8 Bug 804486 - Add toolkit.scrollbox.horizontalScrollDistance pref, default 5. Change horizontal scroll increment from 10px to horizontalScrollDistance * GetLineScrollAmount().width(). Make GetLineScrollAmount() use the font's AveCharWidth() for the horizontal amount rather than MaxHeight(). r=roc 2012-10-29 06:44:31 +01:00
Robert O'Callahan
9814ab968b Bug 805697. There is no point in checking for the existence of a caret in the presshell --- it will always have one, and it wouldn't matter if it didn't. r=mats
--HG--
extra : rebase_source : 1ab91d2d60db433da09acead53853bfec351f574
2012-10-29 17:31:45 +13:00
Robert O'Callahan
c78fa977de Bug 805697. Remove StCaretHider since it's not needed anymore. r=mats
--HG--
extra : rebase_source : c2c8652585958ddaeb9e01ed1fe47a391339c2ec
2012-10-29 17:31:26 +13:00
Jonathan Watt
4e6d525676 Fix typo; no bug; DONTBUILD 2012-10-26 12:03:07 +01:00
Jonathan Watt
2a46ad0735 Bug 795592 - Stop calling nsIFrame::FinishAndStoreOverflow on NS_STATE_SVG_NONDISPLAY_CHILD frames. r=mattwoodrow. 2012-10-26 11:56:48 +01:00
Robert O'Callahan
39e909adb2 Bug 804323. Mark newly-transformed frames as abs-pos containers (or not). r=bzbarsky 2012-10-26 22:11:24 +13:00
Andrew Quartey
6eb0ddf707 Bug 792581 - part 22: Replace LL_ZERO and LL_Zero() macros with 0. r=ehsan 2012-10-25 19:25:59 -04:00
Scott Johnson
f9e3245129 Bug 802311: Make max line box width adjustment API compute right edge of line boxes correctly to fix reflow-on-zoom issues. [r=dbaron] 2012-10-25 16:38:54 -05:00
Ryan VanderMeulen
0a11a998a5 Backout 1ebc3b1b8feb, 205c1c846d70 (bug 801488), and e4367fd2043f (bug 804323) due to b-c crashes. 2012-10-25 07:53:36 -04:00
Robert O'Callahan
c83b18cd3f Bug 804323. Mark newly-transformed frames as abs-pos containers (or not). r=bzbarsky 2012-10-25 00:35:29 +13:00
Mats Palmgren
9b604ab906 Bug 804641 - Work around Android armv6 compiler bug (again). r=roc 2012-10-24 01:34:54 +02:00
Robert O'Callahan
e62533e7a7 Bug 802457. Ensure that positioned children of intrinsic-height viewports are reflowed with the correct container height. r=mats
--HG--
extra : rebase_source : 389b5916de9b7a7bd4232f2c541ae0db7500ba2e
2012-10-23 14:48:12 +13:00
Robert O'Callahan
4f8d6f3962 Bug 703241. Part 3: nsLayoutUtils::GetTransformToAncestor should handle the case where aAncestor == aFrame. r=matspal 2012-10-17 16:13:24 +13:00
Robert O'Callahan
7027f42f5d Bug 703241. PresShell::DoScrollContentIntoView and PresShell::ScrollFrameRectIntoView should take transforms into account. r=matspal
--HG--
extra : rebase_source : e1a16f9a19e78ea71044ee78af9fdbf00ec48c0b
2012-06-22 17:06:49 +12:00
Robert O'Callahan
1584d41fa2 Bug 801763. Don't try to update geometry for plugin widgets with no parent. r=mats
--HG--
extra : rebase_source : d7d0f7c5536adc2cd0ad77c2b3169410f237d206
2012-10-17 17:51:57 +13:00
Timothy Nikkel
31bcc858c2 Bug 642257. If there are no plugins in the display list skip a potentially expensive compute visibility pass with accurate visible regions to determine plugin geometry because it is not needed. r=roc
If there is a plugin in a background tab and a complex scene in a foreground tab the accurate visible regions can cause us to bog down, for no good reason.
2012-10-18 00:34:58 -05:00
Matt Woodrow
dd83f2b21f Bug 801784 - Only add invalidate children state flags up to the nearest display root. r=roc 2012-10-17 21:00:00 +13:00
Daniel Holbert
695056ee8a Bug 799207: Reduce severity of assertion that checks baseline of flex item against sentinel value. r=dbaron 2012-10-16 19:04:33 -07:00
Daniel Holbert
cc6c460ffb Bug 798666: Constrain cross size of auto-sized flex containers to be within min/max range. r=dbaron 2012-10-16 19:04:30 -07:00
Daniel Holbert
4695d22cd2 Bug 798235: For flex items in a vertical flex container, treat enumerated values for flex-basis as "auto". r=dbaron 2012-10-16 19:04:29 -07:00
Daniel Holbert
2fb62bd547 Bug 798020: Reduce severity of fatal assert about unconstrained-width flexbox, since gigantic widths in web content can reach our "unconstrained" sentinel value, and it's not actually dangerous. r=dbaron 2012-10-16 19:04:23 -07:00
Steven Michaud
5a116d7578 bug 794038 pt 3 - plugins support for resolution change. r=bgirard 2012-10-16 20:41:21 +01:00
Daniel Holbert
651180579f Bug 801098: Unprefix flexbox properties & keywords (still preffed off by default). r=dbaron 2012-10-15 12:42:43 -07:00
David Zbarsky
e584460f90 Backout bug 779684 for topcrash 2012-10-15 14:35:50 -04:00
Trevor Saunders
31db47e358 bug 542039 - accessible object types r=surkov, roc 2012-09-28 17:53:44 -04:00
Josh Aas
c23d372216 Bug 598397: Remove support for Carbon NPAPI. r=smichaud 2012-10-15 08:38:34 -04:00
Robert O'Callahan
94b052ee0c Bug 786740. When destroying all the frames in a line list, keep the line list and frame list valid at each step in case someone tries to walk the frame tree during frame destruction. r=mats
--HG--
extra : rebase_source : 7045daffc35fdaca02a74caa52a93a270c94cf74
2012-10-15 14:34:23 +13:00
David Zbarsky
b1c274a0b4 Bug 799407: Turn on FAIL_ON_WARNINGS under layout/generic r=roc 2012-10-14 21:28:23 -04:00
David Zbarsky
9ca45780a1 Bug 799407: Fix warnings under layout/generic, r=roc 2012-10-14 16:56:03 -04:00
Ehsan Akhgari
92678e0cd1 Remove nsSelectionIterator::mType because it is unused, no bug 2012-10-13 17:37:09 -04:00
Robert O'Callahan
8aec82ec43 Bug 626245. Part 4: Compute plugin widget geometry updates via the refresh driver's painting, and defer actual widget updates until we've just composited the window. r=mats
Updating plugin widget geometry every time we paint means we don't have to
explicitly request plugin geometry updates.
This patch stops us from flushing plugin geometry changes in
FlushPendingNotifications(Flush_Layout). There are too many Flush_Layouts and
flushing plugin geometry changes on them produces frequent
desynchronization of the plugin geometry with the rendered window contents.
There is some Web compatibility risk there --- it means we have to change
our tests, for one thing --- but hopefully it's OK.

--HG--
extra : rebase_source : 87adde45795ea2cab362ed9df54e62c5cc97e16c
2012-10-07 02:03:23 +13:00
David Zbarsky
a759821ae1 Backed out changeset 3884ab03451d (bug Bug 799407) because new warnings have
been added.
2012-10-13 14:49:35 -04:00
David Zbarsky
fdfb2183aa Bug 799407: Fix warnings under layout/generic, r=roc 2012-10-13 14:31:19 -04:00
Andrew Quartey
b50ced0c60 Bug 792581 - part 19: Replace LL_I2L macro with int64_t cast. r=ehsan 2012-10-12 13:29:11 -04:00
Josh Matthews
e5b76c73ef Bug 505385 - Part 18: Reduce number of notifications - START_REQUEST/START_CONTAINER -> SIZE_AVAILABLE, remove START_DECODE and START_FRAME. Rename remaining ones for clarity. r=joe 2012-10-12 12:11:23 -04:00
Josh Matthews
e9be8ac74c Bug 505385 - Part 13: Remove OnStopContainer and make OnStopDecode a true decode notification. r=joe 2012-10-12 12:11:22 -04:00
Josh Matthews
31e9ef66cd Bug 505385 - Part 11: Create a new imgINotificationObserver interface to replace all uses of imgIContainerObserver and imgIDecoderObserver outside of image/. r=joe 2012-10-12 12:11:22 -04:00
Josh Matthews
b358502bb7 Merge backout. 2012-10-11 21:58:41 -04:00
Josh Matthews
e82f309179 Back out bug 585385 for build bustage. 2012-10-11 21:58:24 -04:00
Daniel Holbert
c9e80c7e5c Bug 799647 part 1: Use style-context parent instead of frame parent when resolving "align-self:auto" on a flex item. r=dbaron 2012-10-11 18:41:05 -07:00
Josh Matthews
d64a2c9b5a Bug 505385 - Part 18: Reduce number of notifications - START_REQUEST/START_CONTAINER -> SIZE_AVAILABLE, remove START_DECODE and START_FRAME. Rename remaining ones for clarity. r=joe 2012-10-11 21:34:24 -04:00
Josh Matthews
db4200e616 Bug 505385 - Part 13: Remove OnStopContainer and make OnStopDecode a true decode notification. r=joe 2012-10-11 21:34:23 -04:00
Josh Matthews
d09d8af2a1 Bug 505385 - Part 11: Create a new imgINotificationObserver interface to replace all uses of imgIContainerObserver and imgIDecoderObserver outside of image/. r=joe 2012-10-11 21:34:23 -04:00
Trevor Saunders
e2db6e1941 bug 798595 - remove useless prmem.h includes r=ehsan 2012-10-04 02:14:06 -04:00
Daniel Holbert
41c917c25a Bug 800535: Switch var to unsigned in nsSimplePageSequenceFrame::PrePrintNextPage, to fix signed/unsigned-comparison build warning. r=bdahl 2012-10-11 14:33:25 -07:00
Ehsan Akhgari
1b5ab09074 Remove some unused variables, no bug 2012-10-11 09:19:35 -04:00
Matt Woodrow
02c9d9c3ae Bug 797295 - Add support for the layer attribute to nsImageBoxFrame. r=roc 2012-10-11 18:44:59 +13:00
David Zbarsky
d70685476e [Bug 799407] Fix build warnings in layout r=roc 2012-10-10 01:00:05 -04:00
Daniel Holbert
6275701898 Bug 799199: Use IndentBy() instead of looped "fputs" in nsHTMLFramesetBlankFrame's and nsLineBox's List() methods. r=bz 2012-10-08 13:06:04 -07:00
Daniel Holbert
234c143d3a Bug 799196: Update signature for nsHTMLFramesetBlankFrame::List(). r=bz 2012-10-08 12:58:54 -07:00
Ed Morley
b0c7c030c3 Bug 752786 - Disable one part of test_bug469613.xul for too many intermittent failures 2012-10-08 14:10:54 +01:00
Masayuki Nakano
3df6480630 Bug 795785 part.2 Scroll editor when caret is moved even if it's specified overflow: hidden; r=smaug 2012-10-08 03:45:51 +09:00
Masayuki Nakano
5ac763afdd Bug 795785 part.1 Editor should scroll the selection into view after edit even when the editor is specified overflow: hidden; r=ehsan,smaug, sr=smaug 2012-10-08 03:45:51 +09:00
Andrew Quartey
52003ca06d Bug 792581 - part 12: Replace LL_DIV with division operator. r=ehsan 2012-10-05 01:05:28 -04:00
Andrew Quartey
1839819e70 Bug 792581 - part 10: Replace LL_SUB macro with mathematical minus operator. r=ehsan 2012-10-05 01:05:27 -04:00
Robert O'Callahan
b2f146a271 Bug 794709. Don't bother trying to compute an intelligent dirty rect when building display lists for nsSimplePageSequence and nsPageContentFrame children; it's nontrivial due to the transforms they introduce, and it doesn't matter anyway. r=mattwoodrow
--HG--
extra : rebase_source : 6e51ff9514f66e24765bae74a6348afc65367d76
2012-10-05 15:29:56 +13:00
Nathan Froyd
5375444878 Bug 796129 - remove prtypes #includes in layout/ 2012-10-01 17:12:57 -04:00
Ed Morley
0748a2405b Backout a5c50066ecbb (bug 787947), ee9f796b8416 (bug 794709) for crashtest/reftest assertions 2012-10-04 13:15:00 +01:00
Robert O'Callahan
2a7363af3b Bug 794709. Don't bother trying to compute an intelligent dirty rect when building display lists for nsSimplePageSequence and nsPageContentFrame children; it's nontrivial due to the transforms they introduce, and it doesn't matter anyway. r=mattwoodrow 2012-10-04 23:02:17 +13:00
Chris Jones
a734561c9e Bug 790505, part 4: If we're just updating the transform of a prerendered layer, then schedule an empty transaction to skip unnecessary display-list overhead. r=mattwoodrow,roc 2012-10-02 22:55:52 -07:00
Chris Jones
6a8aa4b23b Bug 790505, part 2: Add a GetLayerTransformForFrame() helper for computing a frame's layer transform outside a proper transaction, and mark frames that have been fully prerendered. r=roc 2012-10-02 22:55:50 -07:00
Ryan VanderMeulen
c7df9c8a33 Backout 0cd12dcf7f8f, 5ff5e81e6de6, and 0ae09da96f63 (bug 740580) due to bug 797391. 2012-10-03 22:13:14 -04:00
Chris Jones
263dc7d01e Back out bug 790505 for leaking 2012-10-03 00:21:08 -07:00
Chris Jones
6ed6eba931 Bug 790505, part 4: If we're just updating the transform of a prerendered layer, then schedule an empty transaction to skip unnecessary display-list overhead. r=roc 2012-10-02 22:55:52 -07:00
Chris Jones
a03ca9170e Bug 790505, part 3: Add a GetLayerTransformForFrame() helper for computing a frame's layer transform outside a proper transaction, and mark frames that have been fully prerendered. r=roc 2012-10-02 22:55:50 -07:00
Brendan Dahl
9ddfd8b66c Bug 789507 - Add watchdog for mozPrintCallbacks. r=smaug 2012-10-02 10:42:21 -07:00
Anthony Jones
5383d578e4 Bug 740580 - Add Azure support to nsCanvasFrame. r=roc 2012-10-02 22:09:12 -04:00
Steven Michaud
8650a61e2a Bug 785667 - Make plugins work with HiDPI mode on the Mac. r=bgirard 2012-10-02 14:48:05 -05:00
Matt Woodrow
adcd47a275 Bug 795796 - Fix empty transactions. r=cjones 2012-10-01 17:29:02 +13:00
Kyle Huey
1ccfbe810b Bug 760331: Coalesce data for inline style across nodes. r=bz
This patch enables sharing of an nsAttrValue's MiscContainer between nodes for style rules.  MiscContainers of type eCSSStyleRule are now refcounted (with some clever struct packing to ensure that the amount of memory allocated for MiscContainer remains unchanged on 32 and 64 bit).  This infrastructure can be used to share most MiscContainer types in the future if we find advantages to sharing other types than just eCSSStyleRuley.  A cache mapping strings to MiscContainers has been added to nsHTMLCSSStyleSheet.  MiscContainers can be shared between nsAttrValues when one nsAttrValue is SetTo another nsAttrValue or when there is a cache hit in this cache.  This patch also adds the ability to tell a style rule that it belongs to an nsHTMLCSSStyleSheet, with appropriate accessor functions to separate that from the existing case of belonging to an nsCSSStyleSheet.

The primary use case is to reduce memory use for pages that have lots of inline style attributes with the same value.  This can happen easily with large pages that are automatically generated.  An (admittedly pathological) testcase in Bug 686975 sees over 250 MB of memory savings with this change.  Reusing the same MiscContainer for multiple nodes saves the overhead of maintaining separate copies of the string containing the serialized value of the style attribute and of creating separate style rules for each node.  Eliminating duplicate style rules enables further savings in layout through style context sharing.  The testcase sees the amount of memory used by style contexts go from over 250 MB to 10 KB.

Because the cache is based on the text value of the style attribute, it will not handle attributes that have different text values but are parsed into identical style rules.  We also do not attempt to share MiscContainers when the node's base URI differs from the document URI.  The effect of these limitations is expected to be low.
2012-09-30 09:40:24 -07:00
Mounir Lamouri
a103215fb8 Merge m-i inm-c. 2012-09-30 13:19:15 +01:00
Daniel Holbert
6649dbc51c Bug 666041 patch 8: Add special handling for "min-width: auto" value on flex items. r=dbaron 2012-09-29 23:38:46 -07:00
Daniel Holbert
9edb0fa952 Bug 666041 patch 7: implementation of flex container class for CSS3 flexbox. r=dbaron 2012-09-29 23:38:46 -07:00
Daniel Holbert
959680664c Bug 666041 patch 6.5: Add flag to nsHTMLReflowState & ComputeSize for measuring auto height. r=dbaron 2012-09-29 23:38:46 -07:00
Matt Woodrow
3a3192fe2c Bug 795611 - Call virtual InvalidateFrame from InvalidateFrameSubtree since nsTable*Frame overloads it. r=cjones 2012-09-30 19:20:25 +13:00
Matt Woodrow
ca71a58ed9 Bug 795576 - Correctly add the NS_FRAME_UPDATE_LAYER_TREE when invalidating inside a popup. r=cjones 2012-09-30 19:20:24 +13:00
Scott Johnson
fea453f734 Bug 795313: Modify order of conditionals in UpdateFontInflationDataWidthFor() for performance enhancements. [r=dbaron] 2012-09-28 14:38:33 -05:00
Isaac Aggrey
0cc4b12d36 Bug 791906: Replace NSPR integer limit constants with stdint ones; r=ehsan 2012-09-28 01:57:33 -05:00
Ed Morley
1c98ca1665 Bug 752786 - Disable one part of test_bug469613.xul on OS X 10.8 for too many intermittent failures 2012-09-28 15:45:29 +01:00
Robert O'Callahan
89111a8568 Bug 539356. Make PruneDisplayListForExtraPage prune print preview properly. r=mattwoodrow
PruneDisplayListForExtraPage wasn't pruning properly in print preview. It
was pruning to the RootReferenceFrame, which is per-page when printing normally,
but is the ancestor of all pages in print preview, so it wasn't doing anything in
print preview.
So, pass in the nsPageFrame we want to prune to. This prevents bogus
entirely-clipped-out display items appearing in the display list for the page.
2012-09-28 23:19:39 +12:00
Matt Woodrow
5b541f16bf Bug 781053 - Part 2 - Trigger empty transactions when an animated image in an ImageLayer changes frame. r=roc 2012-09-25 08:31:30 +12:00
Matt Woodrow
f4e72f1dd0 Bug 781053 - Part 1 - Allow conversion of nsImageBoxFrame to an ImageLayer. r=roc 2012-09-25 08:29:14 +12:00
Matt Woodrow
b393ee686c Bug 539356 - Avoid some causes of unnecessary painting. r=roc 2012-09-26 11:59:56 +12:00
Matt Woodrow
82f400d981 Bug 539356 - Correctly invalidate SVG observers. r=roc 2012-08-29 17:49:16 +12:00
Matt Woodrow
de918ca279 Bug 539356 - Make the table code use rect invalidation to avoid over invalidation. r=roc 2012-08-29 17:48:45 +12:00
Matt Woodrow
967a15e46e Bug 539356 - Add an option for frames to invalid just a rect instead of the frame bounds. r=roc 2012-08-29 17:48:45 +12:00
Robert O'Callahan
8243f6c21c Bug 770058. InvalidateFrame doesn't need flags, we can just avoid calling ScheduleRepaint if we find any ancestor frame with a descendant that needs invalidation. r=mattwoodrow 2012-08-29 17:48:44 +12:00
Matt Woodrow
dcab94e36a Bug 769922 - Implement nsDisplayAltFeedback, since it can draw outside of the frame's overflow rect. r=roc 2012-08-29 17:48:44 +12:00
Matt Woodrow
a3f71d5ce2 Bug 539356 - Part 27 - Make nsImageFrame's overflow include the AltFeedback image if it will use one. r=roc 2012-08-29 17:48:44 +12:00
Matt Woodrow
722d9c982d Bug 539356 - Part 26 - Send invalidations for hidden documents. r=roc 2012-08-29 17:48:44 +12:00
Matt Woodrow
026c09c663 Bug 539356 - Part 18 - Mark frames with only invalid children as an optimization to use when invalidating further frames. r=roc 2012-08-29 17:48:43 +12:00
Matt Woodrow
e195484e72 Bug 539356 - Part 11 - Reimplement empty transactions. r=roc 2012-08-29 17:48:15 +12:00
Matt Woodrow
e79b288e75 Bug 539356 - Part 10 - Test changes required for DLBI. r=roc
* * *
[mq]: test-fixes
2012-08-29 17:48:13 +12:00
Matt Woodrow
12901c44ef Bug 539356 - Part 9f - Compute the invalid area of the layer tree and pass this to the widget. r=roc 2012-08-29 17:47:18 +12:00
Matt Woodrow
e6baaac399 Bug 539356 - Part 9e - FrameLayerBuilder changes for display list invalidation. r=roc
* * *
imported patch move-by-correctly
2012-08-29 17:47:15 +12:00
Matt Woodrow
1d675c61d6 Bug 539356 - Part 9c - Remove old invalidation code. r=bz 2012-08-29 17:39:31 +12:00
Matt Woodrow
cc33f42c8a Bug 539356 - Part 9b - Add new frame invalidation API. r=roc 2012-08-29 17:39:01 +12:00
Matt Woodrow
c900597192 Bug 539356 - Part 9a - Add new display list invalidation API to nsDisplayItem and implement it. r=roc 2012-08-29 17:39:01 +12:00
Leonard Camacho
15def26c27 Bug 524025 - Remove LL_* constants in nsLineLayout with separate booleans with field widths. r=dbaron 2012-09-27 21:26:40 -04:30
Ed Morley
5a3b322459 Revert mozilla-inbound to e4dd1fa6d222 for crashes and test failures on a CLOSED TREE 2012-09-27 16:34:46 +01:00
Robert O'Callahan
1ac633331c Bug 539356. Make PruneDisplayListForExtraPage prune print preview properly. r=mattwoodrow
PruneDisplayListForExtraPage wasn't pruning properly in print preview. It
was pruning to the RootReferenceFrame, which is per-page when printing normally,
but is the ancestor of all pages in print preview, so it wasn't doing anything in
print preview.
So, pass in the nsPageFrame we want to prune to. This prevents bogus
entirely-clipped-out display items appearing in the display list for the page.
2012-09-28 01:07:40 +12:00
Matt Woodrow
2d16b9b765 Bug 781053 - Part 2 - Trigger empty transactions when an animated image in an ImageLayer changes frame. r=roc 2012-09-25 08:31:30 +12:00
Matt Woodrow
6daf7f245c Bug 781053 - Part 1 - Allow conversion of nsImageBoxFrame to an ImageLayer. r=roc 2012-09-25 08:29:14 +12:00
Matt Woodrow
3dbcaaf211 Bug 539356 - Avoid some causes of unnecessary painting. r=roc 2012-09-26 11:59:56 +12:00
Matt Woodrow
11dba48580 Bug 539356 - Correctly invalidate SVG observers. r=roc 2012-08-29 17:49:16 +12:00
Matt Woodrow
9a9168f55a Bug 539356 - Make the table code use rect invalidation to avoid over invalidation. r=roc 2012-08-29 17:48:45 +12:00
Matt Woodrow
5eaaebce0e Bug 539356 - Add an option for frames to invalid just a rect instead of the frame bounds. r=roc 2012-08-29 17:48:45 +12:00
Robert O'Callahan
685876852c Bug 770058. InvalidateFrame doesn't need flags, we can just avoid calling ScheduleRepaint if we find any ancestor frame with a descendant that needs invalidation. r=mattwoodrow 2012-08-29 17:48:44 +12:00
Matt Woodrow
2b22c734f5 Bug 769922 - Implement nsDisplayAltFeedback, since it can draw outside of the frame's overflow rect. r=roc 2012-08-29 17:48:44 +12:00
Matt Woodrow
7b249bb8e5 Bug 539356 - Part 27 - Make nsImageFrame's overflow include the AltFeedback image if it will use one. r=roc 2012-08-29 17:48:44 +12:00
Matt Woodrow
4efdb99b18 Bug 539356 - Part 26 - Send invalidations for hidden documents. r=roc 2012-08-29 17:48:44 +12:00
Matt Woodrow
65b521fe41 Bug 539356 - Part 18 - Mark frames with only invalid children as an optimization to use when invalidating further frames. r=roc 2012-08-29 17:48:43 +12:00
Matt Woodrow
1534837d0c Bug 539356 - Part 11 - Reimplement empty transactions. r=roc 2012-08-29 17:48:15 +12:00
Matt Woodrow
6bcc0bc124 Bug 539356 - Part 10 - Test changes required for DLBI. r=roc
* * *
[mq]: test-fixes
2012-08-29 17:48:13 +12:00
Matt Woodrow
49d4c24594 Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-08-29 17:38:58 +12:00
David Zbarsky
a1f09eb38a Bug 790508: bustage fix r=me 2012-09-26 17:55:38 -04:00
David Zbarsky
ea68aaa45e Bug 790508: Make sure we only create nsDisplayOpacity and nsDisplayTransform for the primary frame when content has async animations r=roc 2012-09-26 17:35:29 -04:00
David Zbarsky
715930c55a Fix virtual dtor warning, no bug, blanket r=bz 2012-09-26 14:30:34 -04:00