Commit Graph

71 Commits

Author SHA1 Message Date
Jeff Muizelaar
78533845be Bug 744901 - Store the page size in FrameMetrics in CSS pixels in addition to device pixels. r=cjones
--HG--
extra : rebase_source : ac38e2ff9dda55bd5dc44d757b67cb1550da1eaa
2012-04-12 15:55:26 -04:00
Robert O'Callahan
d0dd680745 Bug 733607. Restructure logic to compute snapped bounds of display items in layer coordinates. Moves responsibility for computing snapped bounds from within the display items to callers of GetBounds/GetOpaqueRegion. r=tnikkel
Previously we snapped the results of nsDisplayItem::GetBounds and
nsDisplayItem::GetOpaqueRegion internally. By tracking which display items were
inside transforms, we disabled snapping quite conservatively whenever an ancestor
had a transform, which is undesirable.

With this patch, we don't snap inside GetBounds or GetOpaqueRegion, but just return
a boolean flag indicating whether the item will draw with snapping or not. This flag
is conservative so that "true" means we will snap (if the graphics context has a transform
that allows snapping), but "false" means we might or might not snap (so it's always safe
to return false).

FrameLayerBuilder takes over responsibility for snapping item bounds. When it converts
display item bounds to layer pixel coordinates, it checks the snap flag returned from
the display item and checks whether the transform when we draw into the layer will be
a known scale (the ContainerParameters scale factors) plus integer translation. If both
are true, we snap the item bounds when converting to layer pixel coordinates. With
this approach, we can snap item bounds even when the items have ancestors with active
transforms.
2012-04-10 23:24:18 +12:00
Ali Juma
06826ece22 Bug 732091 - Part 3: Pass on the isFirstPaint flag from the PresShell to the compositor via the layer manager. r=tnikkel,bgirard 2012-03-12 11:50:15 -04:00
Benoit Girard ext:(%2C%20Ali%20Juma%20%3Cajuma%40mozilla.com%3E)
3a24e71200 Bug 711168 - Implement the compositor protocol for OMTC. r=cjones 2012-01-19 09:45:37 -05:00
Boris Zbarsky
3b713f03ab Bug 704171 part 1. Stop using the no-argument form of mozRequestAnimationFrame in our chrome. r=roc,gavin 2011-11-28 07:49:44 -05:00
Oleg Romashin
55788c9195 Bug 702656 - Fennec zoomed shadow layers scrolling is incorrect. r=roc 2011-11-17 15:52:29 -08:00
Oleg Romashin
b12a692cb2 Bug 694706 - Get rid of checkerboard for remote viewport. r=cjones 2011-10-20 15:17:09 -07:00
Olli Pettay
a86b1a4d43 Bug 682420 - Rename nsINode::GetOwnerDoc to nsINode::OwnerDoc, part 1, r=jst
--HG--
extra : rebase_source : baf1a25cdea68d499a7673fdf96e27b5a12dc83c
2011-10-18 13:53:36 +03: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
Chris Jones
f326f8bb65 Bug 689366: Don't ask our frame loader for its layer manager after Destroy(). r=bz 2011-09-27 11:35:23 -07:00
Oleg Romashin
07304af851 Bug 686513 - RenderFrameParent::BuildDisplayList crash when shadow root layer is null; r=roc 2011-09-14 08:51:24 +01:00
Matt Woodrow
f9d4b0bc4e Bug 505115 - Part 15 - Add 4D Vectors, Quaternions and gfx3DMatrix functions. r=derf 2011-08-27 12:06:03 +12:00
Oleg Romashin
1ceb95b1fb Bug 668698 - Fixed position layers has been broken in 637852 r=stechz 2011-07-28 14:18:00 -04:00
Chris Jones
02362cc047 Bug 648484, part E: Hook d3d9 shadow layers up to new system. r=BenWa 2011-07-06 13:29:27 -04:00
Chris Jones
6c5f00de9a Bug 648484, part D: Allow PuppetWidgets to create D3D10 layer managers (for the time being). r=roc 2011-08-09 12:38:27 -07:00
Chris Jones
a3317162ef Bug 648484, parts 3, 3.1, and 3.2: Allow passing a "backend hint" to GetLayerManager() to request a non-default layer manager backend. Deal with failure to hook up shadow layers. sr=roc 2011-08-09 12:38:26 -07:00
Chris Jones
a3429c0d75 Bug 648484, part 0: Fix test-ipcbrowser. 2011-08-09 12:38:26 -07:00
Marco Castelluccio
71a9782576 Bug 672172 - Remove nsIDOMWindowUtils_MOZILLA_2_0_BRANCH remnant from test-ipcbrowser-content.js. r=jdm 2011-07-20 10:39:27 +02:00
Benjamin Stover
e2377d2b80 Bug 626792 Content view contentWidth/Height do not update immediately after scaling r=roc r=mbrubeck 2011-07-18 11:04:47 -07:00
Benjamin Stover
2e869982a2 Bug 668633 Elements with scrollable overflow are cut off when panning r=roc 2011-07-18 11:04:44 -07:00
Chris Jones
24f027292c Back out bug 648484 2011-07-15 11:35:55 -07:00
Chris Jones
d827503aa5 Bug 648484, part E: Hook d3d9 shadow layers up to new system. r=BenWa 2011-07-06 13:29:27 -04:00
Chris Jones
5f3842d907 Bug 648484, part D: Allow PuppetWidgets to create D3D10 layer managers (for the time being). r=roc 2011-07-13 22:43:43 -07:00
Chris Jones
289ccdf1c6 Bug 648484, part 3 and part 3.1: Allow passing a "backend hint" to GetLayerManager() to request a non-default layer manager backend. Deal with failure to hook up shadow layers. sr=roc 2011-07-13 22:43:43 -07:00
Chris Jones
078137f394 Bug 648484, part 0: Fix test-ipcbrowser. 2011-07-13 22:43:43 -07:00
Benoit Girard
dd61f3a2ea Bug 648480 - Add shadow-layer support to d3d9 backend. r=cjones 2011-07-04 09:15:05 -04:00
Benoit Girard
069dc7b333 Backout 627489bb6288. 2011-07-01 18:05:54 -04:00
Benoit Girard
c83b82cbd1 Bug 648480 - Add shadow-layer support to d3d9 backend. r=cjones 2011-07-01 16:57:15 -04:00
Robert O'Callahan
9f293f9979 Bug 637852. Part 27: Fix RenderFrameParent rendering to handle transforms on the root layer, and fix bugs with parameters being modified. r=stechz 2011-06-23 00:11:29 +12:00
Robert O'Callahan
93793566d0 Bug 637852: Part 5: Create ContainerParameters structure to carry resolution scale factors through layer creation. r=tnikkel
This patch shouldn't change any behavior. It just passes the ContainerParameters around, which will contain scale factors that should have been
applied when BuildLayer returns a ContainerLayer.

This patch also adds an aTransform parameter to BuildContainerLayerFor, which nsDisplayTransform uses to set the
transform for the ContainerLayer. This way BuildContainerLayerFor knows what the container's transform is going to be
before constructing the children, which in the next patch will let us construct the children with the right resolution.
2011-06-23 00:11:27 +12:00
Florian Hänel
8e0d9ab286 Bug 628566 - Implement basic tiling of ImageLayerOGL. r=joe 2011-05-19 12:53:02 +02:00
Robert O'Callahan
73b97e72c4 Bug 641426. Part 2: Remove a bunch of direct gfxRect::pos/size usage. r=joe 2011-04-19 15:07:21 +12:00
Benjamin Stover
3dc5b1f7a2 Bug 642246 Don't build ThebesLayers for elements with no displayports r=roc 2011-04-11 13:53:01 -07:00
L. David Baron
ad4318958b Back out 1edfae12015b (Bug 642246) due to mobile unittest orange. 2011-04-09 18:21:27 -07:00
Benjamin Stover
3270dd31cd Bug 642246 Don't build ThebesLayers for elements with no displayports r=roc 2011-04-09 12:38:28 -07:00
Oleg Romashin
e58096f576 Bug 607417 - Part 2: Reverse translation for fixed shadow layers. r=stechz
--HG--
extra : rebase_source : d390fd6440ccb93b3652cbd431e5f6484643114e
2011-04-08 09:35:13 -07:00
Benjamin Smedberg
61f9c6a63e Bug 617539 - Fold in nsIFrameLoader_MOZILLA_2_0_BRANCH, r=bz 2011-03-25 11:03:35 -04:00
Benjamin Stover
a646bb5913 Bug 618975 Followup: bitrot and remove mDisplayport from nsDisplayScrollLayer r=cjones r=tn a=blocking-fennec 2011-03-09 13:35:27 -08:00
Benjamin Stover
e9b77710b0 Bug 618975 Pan overflow elements in parent process r=cjones r=tn sr=roc a=blocking-fennec 2011-03-15 16:20:19 -07:00
Chris Jones
07f1b97335 Bug 635014: Don't draw a checkerboard behind undefined <browser remote> content in sync mode. r=tn a=a 2011-02-23 11:45:09 -06:00
Robert O'Callahan
20b9397753 Bug 630835. Make BuildLayer responsible for setting a visible region on the layer, and let FrameLayerBuilder only reduce it. r=tnikkel,a=blocking
This avoids problems with FrameLayerBuilder making the visible region bigger than we expected, invalidating CONTENT_OPAQUE flags set on the layer.
In particular, we had been using TransformBounds to compute the new visible region, and for non-axis-aligned transforms this gives us a visible
region which contains areas not actually painted by the layer contents.
2011-02-23 18:38:09 +13:00
Mark Finkle
3714a4d2b3 Bug 629475 - Regression: displayport takes longer to refresh [r=cjones a=blocking-fennec] 2011-02-14 17:49:34 -05:00
Chris Jones
d5e0476347 Fix test-ipcbrowser bug, as part of bug 593310 why not. a=b 2011-01-26 00:26:37 -06:00
Chris Jones
1618d4ba77 Bug 593310: Add initial support for drawing a moving, default background where shadow-layer content is undefined (as efficiently as possible). r=stechz,roc 2011-01-26 00:26:37 -06:00
Benjamin Stover
fcfc7df843 Bug 626855 Crash: trying to scroll HTML page with frameset r=cjones a=blocking-fennec 2011-01-19 08:56:22 -08:00
Benjamin Stover
16daa8513e Bug 605618 Part 9: Fix test-ipcbrowser and crash r=cjones a=blocking-fennec 2011-01-13 09:45:31 -08:00
Benjamin Stover
bd474a4f0f Bug 605618 Part 7: Include viewport and content size in API r=cjones sr=roc 2011-01-13 09:45:14 -08:00
Benjamin Stover
3dcc00f08c Bug 605618 Part 6: Use viewports to allow scrolling and build display lists r=cjones r=tn 2011-01-13 09:45:14 -08:00
Benjamin Stover
c3976a78cf Bug 605618 Part 4: Map for storing views r=cjones 2011-01-13 09:45:14 -08:00