Commit graph

1062 commits

Author SHA1 Message Date
Robert O'Callahan
e3acf6c50d Bug 1098266. Set correct visible rect on nsDisplayOpacity items that are shuffled around during preserve-3d display list wrapping. r=tn 2014-11-24 14:03:49 +13:00
Ryan VanderMeulen
dacb431abe Merge m-c to b2g-inbound. a=merge 2014-11-25 17:01:49 -05:00
Kartikaya Gupta
8aafbd8234 Bug 1104099 - Exclude non-visible frames from the LayerEventRegions. r=mstange,tn 2014-11-25 15:26:48 -05:00
Kartikaya Gupta
3b921e945e Bug 1104266 - Add logging of nsDisplayLayerEventRegions fields in the display list dump. r=mattwoodrow 2014-11-25 08:45:20 -05:00
Kartikaya Gupta
4a94a25a0d Bug 1104266 - Avoid needless temporary nsACString. r=mattwoodrow 2014-11-25 08:45:19 -05:00
Jonathan Watt
9910919cdd Bug 1103623 - Port most remaining gfxContext::Fill() calls to Moz2D. r=mattwoodrow 2014-11-24 00:04:33 +00:00
Botond Ballo
e52ed096aa Bug 1099298 - Revert the temporary fix in bug 1099104. r=tn 2014-11-21 13:52:49 -05:00
Botond Ballo
41baa473b8 Bug 1099298 - Add the pres shell resolution to the container layer parameters in nsDisplaySubDocument::ComputeFrameMetrics(). r=tn 2014-11-21 13:50:41 -05:00
Vladimir Vukicevic
200399e6f3 Bug 1036602 - add generic gfx/layers functionality for VR rendering; r=nical 2014-07-09 12:26:18 -07:00
Vladimir Vukicevic
01202baa97 Bug 1036604 - add VR display item and VR frame state bit; r=roc 2014-07-09 12:25:31 -07:00
David Anderson
0965889407 Cache the current animated geometry root in nsDisplayListBuilder. (bug 1101260 part 1, r=roc) 2014-11-20 16:58:18 -08:00
Mats Palmgren
debd2f3e4d Bug 907396 - Replace GetParentStyleContextFrame with GetParentStyleContext which can return frame-less display:contents style contexts. r=bzbarsky 2014-11-20 18:24:10 +00:00
David Anderson
397b1a3520 Add inactive subframes to the dispatch-to-content region. (bug 1082594, r=tn,kats) 2014-11-19 20:24:15 -08:00
David Anderson
028b163679 Add APZ handling for desktop scroll wheel events. (bug 1086162 part 1, r=kats) 2014-11-17 20:56:18 -08:00
Brian Birtles
d5678b7ad6 Bug 1073336 part 14b - Make ElementRestyler detect changes to the animation generation; r=dbaron
For some kinds of changes we need to update the layer tree even though there is
no change to style. For example, if an animation is paused via the Web
Animations API, we need to remove the animation from the layer even though the
style will not change.

This patch detects such changes by making ElementRestyler check for an
out-of-date animation generation on layers. This is complicated by the fact that
we currently maintain *two* animation generation numbers: one for the set of
animations and one for the set of transitions, but we only have *one* animation
generation number on each layer. This is a known issue (bug 847286).

As a result, until bug 847286 is fixed, we need to be careful to compare against
the greater of the two numbers.
2014-11-17 13:46:00 +09:00
Botond Ballo
8692d54447 Bug 1099104 - Temporary fix for a rendering regression caused by bug 1076163. r=kats 2014-11-14 14:08:02 -05:00
Botond Ballo
1c1e4448a5 Bug 1055741 - Unify the 'local Screen' and 'ParentLayer' coordinate systems. r=kats 2014-11-10 14:35:11 -05:00
Botond Ballo
751e400ea4 Bug 1076163 - Clean up the resolution-related fields and methods in FrameMetrics. r=kats 2014-10-20 17:12:35 -04:00
Botond Ballo
c854025367 Bug 1076163 - Basic APZ support for css-driven resolution. r=kats,tn
This makes APZ behave nicely with most uses of a css transform:scale.

Summary of changes:
  - FrameMetrics::mCumulativeResolution now includes the css-driven resolution
    in addition to the pres-shell resolution.
  - Displayports are now stored in Screen pixels rather than Layer pixels.
    This is what we want anyways (as we'd like the displayport size to remain
    constant as a fraction of the screen size), but it was necessary to make
    this change as part of this patch because continuing to store them in
    Layer pixels in the presence of a css-driven resolution would have
    required a bunch of infrastructure to implement correctly.

Remaining work:
  - Layout painting a scrollable layer at a resolution different from the
    scale induced by the css transform causes problems. These will go away
    with bug 1076192.
  - Different resolutions on the x and y axes are not supported. This is
    tracked by bug 1039967.
2014-10-24 15:49:38 -04:00
Carsten "Tomcat" Book
8894f4319e Backed out changeset fbb9dc943109 (bug 1076163) for Android 4.0 Crashes on a CLOSED TREE 2014-11-13 11:47:57 +01:00
Carsten "Tomcat" Book
c247fdb775 Backed out changeset 71fe4233208a (bug 1076163) 2014-11-13 11:47:35 +01:00
Carsten "Tomcat" Book
4b4108a4a9 Backed out changeset a96930f1e26b (bug 1055741) 2014-11-13 11:47:31 +01:00
Botond Ballo
d766d4ca14 Bug 1055741 - Unify the 'local Screen' and 'ParentLayer' coordinate systems. r=kats
--HG--
extra : rebase_source : af7323668fb54079e121755660da2121bec3d76b
2014-11-10 14:35:11 -05:00
Botond Ballo
98ceb86b05 Bug 1076163 - Clean up the resolution-related fields and methods in FrameMetrics. r=kats 2014-10-20 17:12:35 -04:00
Botond Ballo
57adf459d4 Bug 1076163 - Basic APZ support for css-driven resolution. r=kats,tn
This makes APZ behave nicely with most uses of a css transform:scale.

Summary of changes:
  - FrameMetrics::mCumulativeResolution now includes the css-driven resolution
    in addition to the pres-shell resolution.
  - Displayports are now stored in Screen pixels rather than Layer pixels.
    This is what we want anyways (as we'd like the displayport size to remain
    constant as a fraction of the screen size), but it was necessary to make
    this change as part of this patch because continuing to store them in
    Layer pixels in the presence of a css-driven resolution would have
    required a bunch of infrastructure to implement correctly.

Remaining work:
  - Layout painting a scrollable layer at a resolution different from the
    scale induced by the css transform causes problems. These will go away
    with bug 1076192.
  - Different resolutions on the x and y axes are not supported. This is
    tracked by bug 1039967.
2014-10-24 15:49:38 -04:00
Robert O'Callahan
9484467be5 Bug 1092842. When setting cliprects on background color display items, don't shrink them to exclude opaque borders (unless there's nonzero border-radius). r=mattwoodrow
By not excluding opaque borders from the display item cliprects, we produce
a larger opaque area for opaque background items.

--HG--
extra : rebase_source : 4e27157c2b60d1a0386a4db681dd8f1e741b61fd
2014-11-12 20:53:03 +13:00
Robert O'Callahan
8151ed239b Bug 1083635. Part 4: Return LayerManager from nsDisplayList::PaintRoot, and dump its contents in nsLayoutUtils::PaintFrame. r=mattwoodrow
--HG--
extra : rebase_source : 8c39aebedb275b56eda4a740b63ae4e00523c206
2014-10-21 10:32:10 +13:00
Robert O'Callahan
050aec01b4 Bug 1083635. Part 2: Inline nsDisplayList::PaintForFrame into PaintRoot. r=mattwoodrow
--HG--
extra : rebase_source : 1d313b18a2b0cc5894924299f421966a1f428799
2014-10-21 10:32:09 +13:00
Robert O'Callahan
2229b67428 Bug 1083635. Part 1: Remove nsDisplayZoom::Paint since it's dead code. r=mattwoodrow
--HG--
extra : rebase_source : bb053e5abb7f5a8ae17ab59af542db292ba35543
2014-10-21 10:32:09 +13:00
Jonathan Watt
bd8ce02037 Bug 1091321, part 6 - Convert nsSVGUtils::PaintFrameWithEffects and related code from nsRenderingContext to gfxContext. r=longsonr 2014-10-31 20:08:54 +00:00
Jonathan Watt
bfe784d925 Bug 1090611 - Make nsCaret::PaintCaret take a Moz2D DrawTarget instead of nsRenderingContext. r=Bas 2014-10-29 17:07:11 +00:00
Gijs Kruitbosch
a64f8dab5f Bug 1075653 - Make tooltips use vibrancy on Yosemite. r=smichaud 2014-09-12 14:10:09 +01:00
Markus Stange
defd3c048d Bug 1055634 - Propagate font smoothing background colors to layers. r=roc 2014-10-24 18:32:23 +02:00
Himanshu Singh
5a4e5dca23 BUG 1087478 - Transition mMayHaveTouchListener to be private. r=kats 2014-10-23 09:10:47 -04:00
Ryan VanderMeulen
45b8ddd73b Merge b2g-inbound to m-c. a=merge 2014-10-22 16:03:57 -04:00
Himanshu Singh
858cf2c9d4 Bug 1058614 - Transition mMayHaveTouchCaret to be private. r=kats 2014-10-22 13:40:20 -04:00
Mats Palmgren
f2d23931c0 Bug 1085701 - Report the allocation size to the OOM abort. r=roc 2014-10-21 15:42:24 +00:00
Jonathan Watt
884793d6d9 Bug 1085160 - Port the code that uses nsRenderingContext::IntersectClip() to Moz2D. r=mattwoodrow
--HG--
extra : rebase_source : 54226509a1b16efdc76f92f202cc2be07cf43ab4
2014-10-20 10:55:48 +01:00
Brian Birtles
0decc8d175 Bug 1078122 part 2 - Encapsulate mIsRunningOnCompositor in AnimationPlayer; r=dholbert 2014-10-20 13:55:46 +09:00
Jonathan Watt
b8b833765e Bug 1083753, part 2 - Port the code that uses nsRenderingContext::FillRect(nsRect) to Moz2D. r=mattwoodrow 2014-10-19 13:22:22 +01:00
Jonathan Watt
09f54bbbb9 Bug 1086708 - Rename the snapping variant of NSRectToRect to NSRectToSnappedRect. r=mattwoodrow 2014-10-22 12:29:06 +01:00
Robert O'Callahan
2d4b87dc16 Bug 1073290. Don't render with displayports if we're not painting to the window. r=mattwoodrow
--HG--
extra : rebase_source : 088b2156069248ac920d1a525d069b9a7330f980
2014-10-21 10:32:11 +13:00
Benoit Girard
1eda179306 Bug 961871 - Part 4: Fix budget calculation by adding Maybe prerenderer and animate. r=roc 2014-10-21 21:55:55 -04:00
Benoit Girard
584ac95d49 Bug 961871 - Part 3: Implement will-change budgeting. r=roc 2014-10-21 21:54:32 -04:00
Markus Stange
7d5a3be591 Bug 1073103 - Rename ThebesLayer to PaintedLayer. r=roc
--HG--
rename : gfx/layers/basic/BasicThebesLayer.cpp => gfx/layers/basic/BasicPaintedLayer.cpp
rename : gfx/layers/basic/BasicThebesLayer.h => gfx/layers/basic/BasicPaintedLayer.h
rename : gfx/layers/client/ClientThebesLayer.cpp => gfx/layers/client/ClientPaintedLayer.cpp
rename : gfx/layers/client/ClientThebesLayer.h => gfx/layers/client/ClientPaintedLayer.h
rename : gfx/layers/client/ClientTiledThebesLayer.cpp => gfx/layers/client/ClientTiledPaintedLayer.cpp
rename : gfx/layers/client/ClientTiledThebesLayer.h => gfx/layers/client/ClientTiledPaintedLayer.h
rename : gfx/layers/composite/ThebesLayerComposite.cpp => gfx/layers/composite/PaintedLayerComposite.cpp
rename : gfx/layers/composite/ThebesLayerComposite.h => gfx/layers/composite/PaintedLayerComposite.h
rename : gfx/layers/d3d10/ThebesLayerD3D10.cpp => gfx/layers/d3d10/PaintedLayerD3D10.cpp
rename : gfx/layers/d3d10/ThebesLayerD3D10.h => gfx/layers/d3d10/PaintedLayerD3D10.h
rename : gfx/layers/d3d9/ThebesLayerD3D9.cpp => gfx/layers/d3d9/PaintedLayerD3D9.cpp
rename : gfx/layers/d3d9/ThebesLayerD3D9.h => gfx/layers/d3d9/PaintedLayerD3D9.h
2014-09-26 13:06:08 -04:00
Kartikaya Gupta
c34ad0fe01 Bug 1071367 - Fix the composition bounds for the root content document on OS X. r=tn
According to roc the content viewer position doesn't mean much; only the size is
set to anything meaningful. Therefore using the position from the content viewer
bounds is not a good idea, and we should use the position from the frame bounds
instead. This patch also changes GetContentViewerBounds to GetContentViewerSize
so that it's harder to accidentally use the position in other places.
2014-09-23 12:17:36 -04:00
Markus Stange
9035319790 Bug 944836 - Build a draggable region for the window based on the -moz-window-dragging property. r=roc 2014-09-18 10:52:27 +02:00
Milan Sreckovic
963b8b7b03 Bug 1060431 - Mention in the async disabled message that the visual > max could also be the cause. r=tn 2014-09-15 12:44:21 -04:00
Daniel Holbert
f322edf2d9 Bug 1065646: Use GetContentRectRelativeToSelf() instead of GetContentRect() - GetPosition(), in layout code. r=tn 2014-09-11 14:29:59 -07:00
Jonathan Watt
e7cd8ba247 Bug 1064082 - Get rid of nsRenderingContext's PushState and PopState methods. r=Bas 2014-09-11 07:48:10 +01:00