Commit Graph

434 Commits

Author SHA1 Message Date
Matt Woodrow
6a40d5fd04 Bug 808491 - Force 3d transformed layers to always be active. r=roc 2012-11-13 22:26:29 -08:00
Matt Woodrow
bcdaf96109 Bug 805197 - Compute a region in LayerTreeInvalidation. r=roc 2012-11-12 10:31:15 -08:00
L. David Baron
cbecfc83f0 Bug 809533, patch 1: Make allocation in the frame arena and the display list arena infallible. r=roc 2012-11-07 11:55:53 -08:00
Matt Woodrow
4a08c209ba Bug 805948 - Use the local perspective value instead of trying to retrieve it from the nsStyleDisplay again. r=cjones 2012-11-07 19:56:57 +13:00
Matt Woodrow
a5b3f77bcf Bug 798964 - Add nsDisplayBackground color and make the bounds of nsDisplayBackground match the image. r=roc 2012-10-25 18:32:25 +13:00
Robert O'Callahan
c9803f76aa Bug 805331. Only chrome display items that are leaves should be treated as especially opaque. r=mats 2012-11-03 01:59:03 +13:00
Robert O'Callahan
c71a6efb72 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
e8d5856ece Bug 796452. Add mozpasspointerevents attribute for IFRAMEs in chrome windows. r=mats 2012-11-02 23:42:59 +13:00
Matt Woodrow
85acfcddf9 Bug 800041 - Make nsDisplayWrapList set its own reference frame correctly, and sanity check during ComputeVisibilityForSublist. r=roc 2012-10-25 18:32:25 +13:00
Phil Ringnalda
aad1519dae Back out c95958e3b85d and e8a8bf41e0c4 (bug 798964) for Android reftest-4 failures 2012-10-25 01:19:57 -07:00
Phil Ringnalda
29d12d417c Back out 8bffa268afd8 (bug 800041) for reftest assertions in 745934-1.html 2012-10-24 23:49:39 -07:00
Matt Woodrow
df721374f4 Bug 800041 - Make nsDisplayWrapList set its own reference frame correctly, and sanity check during ComputeVisibilityForSublist. r=roc 2012-10-25 18:32:25 +13:00
Matt Woodrow
19592164ef Bug 798964 - Add nsDisplayBackground color and make the bounds of nsDisplayBackground match the image. r=roc 2012-10-25 18:32:25 +13:00
Matt Woodrow
8e05c0f895 Bug 800041 - Set the correct reference frame for nsDisplayScrollLayer when the frame is transformed. r=roc 2012-10-25 12:04:41 +13:00
Chris Lord
7f25a0bb58 Bug 803826 - Restore the layer builder pointer on return from PaintForFrame. r=mattwoodrow
It's possible for nsDisplayList::PaintForFrame to reset the layer builder
pointer on a layer manager it didn't create. Instead of setting it to null,
store the existing pointer and restore it on return.
2012-10-23 12:01:23 +01:00
Timothy Nikkel
ada10776c7 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
Robert O'Callahan
e7f231d6c8 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
Ed Morley
edeb5cd80c Merge last PGO-green changeset of mozilla-inbound to mozilla-central 2012-10-12 11:59:59 +01:00
Chris Jones
c310927390 Bug 795657: Integrate native viewport configuration better into async pan-zoom code. r=jwir3,roc
This is a rollup of the following patches
 - Change the interpretation of FrameMetrics.mZoom to a "resolution-indepedent zoom", instead of a resolution-depedent scale factor. r=roc
 - Remove mention of "meta" from TabChild. r=roc
 - Remove some useless logging. r=roc
 - Tag FrameMetrics with its composition bounds at paint time. r=roc
 - Add a helper to calculate the render resolution for a FrameMetrics. r=roc
 - Add a helper to compute the approximate CSS dimensions a FrameMetrics will cover during composition. r=roc
 - BrowserElementScrolling doesn't actually care about zoom or resolution. r=roc
 - Accept the viewport that content has calculated, when it's received the latest widget geometry update. r=roc
 - Mechanically separate uses of zoom/resolution based on new definitions. r=roc
 - Convert GetViewportInfo()'s resolution-dependent scale into resolution-indepedent zoom. r=roc
 - Reinterpret defaultZoom == 0.0 as "intrinsic scale". r=jwir3,roc
2012-10-11 22:46:24 -07:00
Matt Woodrow
d6769ad8b7 Bug 795674 - Refactor DisplayItemData storage in FrameLayerBuilder. r=roc 2012-10-12 12:38:24 +13:00
Chris Lord
3f8854bee2 Bug 795674 - Reinstate underlying frame swap when merging nsDisplayScrollLayer. r=roc
This swap was removed with the work in Bug 785333, as layers were associated
with merged frames as well as their underlying frames. Since DLBI, this is no
longer the case, so reinstate this temporary fix for a very common case of
the underlying frame of a display-item changing.
2012-10-05 10:56:49 +01:00
Chris Jones
ca55cb45de 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
c78629f9f8 Bug 790505, part 1: Have prerendered transform frames pretend that they don't have an opaque region so that we can move them around more efficiently. r=mattwoodrow 2012-10-02 22:55:50 -07:00
Chris Jones
17867c12a8 Back out bug 790505 for leaking 2012-10-03 00:21:08 -07:00
Chris Jones
4f1e40ca75 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
dd55277c3e Bug 790505, part 1: Have prerendered transform frames pretend that they don't have an opaque region so that we can move them around more efficiently. r=mattwoodrow 2012-10-02 22:55:50 -07:00
Doug Sherk
c0e08ee726 Bug 784908: Part 1: Change names of FrameMetrics variables to be more descriptive, add documentation, change some coordinate spaces. r=roc 2012-09-28 22:16:34 -04:00
Oleg Romashin
67b104cbd1 Bug 539356 - Part 20 - Simplify regions to avoid excessive region calculation. r=roc 2012-08-29 17:48:43 +12:00
Matt Woodrow
9de7f5c346 Bug 539356 - Part 14 - Handle multiple widget layer managers retaining data for the same frame. r=roc 2012-08-29 17:48:41 +12:00
Matt Woodrow
5a14809d04 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
4e75c1edde 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
f4205ce848 Bug 539356 - Part 9b - Add new frame invalidation API. r=roc 2012-08-29 17:39:01 +12:00
Matt Woodrow
cdbc43ed27 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
Ed Morley
c863356300 Revert mozilla-inbound to e4dd1fa6d222 for crashes and test failures on a CLOSED TREE 2012-09-27 16:34:46 +01:00
Oleg Romashin
13a2856362 Bug 539356 - Part 20 - Simplify regions to avoid excessive region calculation. r=roc 2012-08-29 17:48:43 +12:00
Matt Woodrow
05068168cf Bug 539356 - Part 14 - Handle multiple widget layer managers retaining data for the same frame. r=roc 2012-08-29 17:48:41 +12:00
Matt Woodrow
c73c0db2f1 Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-08-29 17:38:58 +12:00
Matt Woodrow
b01a10cd1c Bug 793132 - Make sure that only display lists get the reference frame adjusted transform. r=roc 2012-09-26 10:47:41 +12:00
Matt Woodrow
944b66cc36 Bug 792314 - Make nsDisplayTransform support untransformed frames. r=roc 2012-09-20 11:14:07 +12:00
Matt Woodrow
891faaf4e5 Bug 788044 - Make transformed frames the reference frame for their display list tree. r=roc 2012-09-16 22:32:59 +12:00
Matt Woodrow
77745de1bf Bug 788044 - Make various functions take const parameters. r=roc 2012-09-13 12:32:53 +12:00
Chris Lord
b3a668dd2a Bug 786502 - Fix background-attachment:fixed scrolling with page. r=roc
Fix the size check in nsDisplayBackground::ShouldFixToViewport so that async
scrolling of fixed backgrounds works correctly when zoomed in on Firefox
Mobile. Also make IsFixedItem in nsDisplayList public and use it in
FrameLayerBuilder, so that fixed items are determined and treated consistently.
2012-09-13 11:34:34 +01:00
Chris Lord
6b2dc34a0b Bug 786502 - Separate background layers into separate items. r=roc
Separate out background layers into separate display-list items, so that
backgrounds that are a mix of fixed and non-fixed layers will be treated
individually.
2012-09-13 11:34:23 +01:00
Chris Lord
9e0e5d24bf Bug 785333 - Store container layers against merged frames. r=roc
As well as storing the container layer against the underlying frame of the
container item, store it against its merged frames as well. In addition, check
for old container layers against merged frames when building a container layer.

This protects against losing the layer when the underlying frame of a container
item changes to either a new frame or an existing, merged frame.
2012-08-29 11:53:20 +01:00
Gavin Sharp
f99257a9f5 Back out bug 785333 (revisions 79345542f853 and a1756976e61d) to fix crasher bug 785626 2012-08-27 16:41:19 -07:00
David Zbarsky
5b8ee4d5ca Fix 2 logging calls I added today to also log the element and it's id, no bug, r=me 2012-08-26 00:14:31 -04:00
David Zbarsky
e0fe5ae49b Bug 785657 - Enable async animations in content processes r=cjones 2012-08-25 21:27:28 -04:00
David Zbarsky
6a9972f334 Bug 785648 - Improve OMTA logging r=cjones 2012-08-25 21:27:28 -04:00
Chris Lord
db96f622c9 Bug 785333 - Store container layers against merged frames. r=roc
As well as storing the container layer against the underlying frame of the
container item, store it against its merged frames as well. In addition, check
for old container layers against merged frames when building a container layer.

This protects against losing the layer when the underlying frame of a container
item changes to either a new frame or an existing, merged frame.
2012-08-24 16:17:22 +01:00
David Zbarsky
6b65174cd9 Bug 784846 - The ShouldPrerender check for async animations is wrong r=mattwoodrow 2012-08-23 02:05:27 -04:00