Commit Graph

468 Commits

Author SHA1 Message Date
Benoit Girard
e2452b139d Bug 941095 - Restore subpixelaa on HIDPI. r=backout 2014-01-19 22:31:02 -05:00
Ali Akhtarzada
09cc9a436c Bug 959123 - Implement CairoImage::GetAsSourceSurface. r=nical
Deprecate CairoImage::Data::mSurface and add an mSourceSurface.
Also change all the callers of CairoImage::SetData to set the
SourceSurface as well.

Also change scope of CairoImage::mSource to private
2014-01-17 11:22:09 -05:00
Benoit Jacob
300f4ba3a9 Bug 958375 - 6/9 - Make BackendType and NativeSurfaceType typed enums - r=Bas
Specifically:
  r=Bas for manual changes
  f=Bas for automatic changes
See attachments on the bug for the specific breakdown.
2014-01-10 14:06:16 -05:00
Ms2ger
98586cdbc1 Bug 950143 - Remove the implicit conversion operator from nsIntSize to IntSize; r=roc 2013-12-31 10:06:12 +01:00
Robert O'Callahan
27b4713e01 Bug 945203. Part 8: Add FrameLayerBuilder support for capturing nsDisplayEventRegions data into ThebesLayers. r=mattwoodrow
--HG--
extra : rebase_source : e61c1bcfa700ac88523fb34eab7c6afd470d0d68
2013-12-17 01:16:24 +13:00
Robert O'Callahan
c46b28c567 Bug 945203. Part 7: Add ScaleRegionToOutsidePixels. r=mattwoodrow
--HG--
extra : rebase_source : 1c54863818607c45d04249e5df407b3fb3af40dd
2013-12-17 01:11:59 +13:00
Robert O'Callahan
d66a7ca624 Bug 945203. Part 6: Move ThebesLayerData to the top level so it can be referenced elsewhere .r=mattwoodrow
--HG--
extra : rebase_source : d0df9b439b454a1c6bef1a8f33f2f96754077ff1
2013-12-17 01:11:01 +13:00
Robert O'Callahan
2b289a137f Bug 945203. Part 5: Remove anonymous namespace. r=mattwoodrow
--HG--
extra : rebase_source : c8a35bed286161a339d4d68d4c0d21fb1c391ab2
2013-12-17 01:04:03 +13:00
David Zbarsky
4ff3f38e76 Bug 952977: Switch ScaleAndTranslate to gfx::Matrix r=nical 2013-12-29 18:35:53 -05:00
Timothy Nikkel
aa3d1dc04d Bug 951467. Give scroll layer items the bounds of the scroll port, not the bounds of the display port. r=roc
The bounds of the scroll port match what will actually be drawn on the screen.

The bounds of the contained content (sized to the display port) are still accessible via mList.GetBounds, and similarly the visible rect of the contained content is mList.GetVisibleRect. The external bounds/visible rect are GetBounds and GetVisibleRect on the nsDisplayScrollLayer object itself.

We implement nsDisplayScrollInfoLayer::GetBounds solely so that it continues to return an empty rect because we expect active empty layers to have empty visible rects.

We no longer have to set our mVisibleRect in nsDisplayScrollLayer::ComputeVisibility because nsDisplayList::ComputeVisibilityForSublist now does it correctly for us (like other items).

We also have to teach ContainerState::ProcessDisplayItems to not set the visible region for scroll layers because it has the external visible region, not the larger internal display port sized visible region. We instead let BuildContainerLayer set the visible region of the layer.
2013-12-17 23:02:56 -06:00
Matt Woodrow
3eb05a2e5c Bug 948848 - Fold transform scale factors down to leaf layers even for temporary layer managers since it can make a difference for clips that are snapped to pixel boundaries. r=roc 2013-12-16 18:37:47 +13:00
Benoit Girard
f335da97be Bug 941095 - Part 2: Disable subpixelaa + component alpha. r=mattwoodrow
--HG--
extra : rebase_source : 7e3a0d3710fb29b47615cc0254135d3b44637ed8
2013-12-13 13:53:18 -05:00
Robert O'Callahan
ef28de860d Bug 945634. The fixed-pos anchor point should be in the layer's coordinate system, whose 0,0 is the top-left of the fixed-pos frame. r=mattwoodrow 2013-12-13 01:33:02 +13:00
Brad Lassey
6420e3c893 Bug 915673 - Only use tiled layers for scrollable layers on b2g. r=tn,bgirard
Introduce a constructor for thebes layers that can take a hint about what the
layer will be used for, and use that hint to only create tiled layers when
the layer represents scrollable content.
2013-09-17 13:55:09 -04:00
Matt Woodrow
b1c9be82b5 Bug 941050 - Don't assume fixed position layers are only created for ContainerLayers owned by the ViewportFrame. r=tn 2013-11-29 18:17:53 +13:00
Benoit Girard
74c90d1629 Bug 942483 - Port paint-dumping to android/b2g. r=gal 2013-11-23 17:44:18 -05:00
Robert O'Callahan
3044512b73 Bug 919144. Part 10: Fold nsDisplayFixedPosition into nsDisplayStickyPosition. r=mattwoodrow
--HG--
extra : rebase_source : 597e2a178762509421a32d53be6242cd588c7995
2013-09-27 18:02:03 +12:00
Robert O'Callahan
e65856150c Bug 919144. Part 9: Move FrameLayerBuilder::ContainerParameters to mozilla::ContainerLayerParameters. r=mattwoodrow
This is to avoid having to #include FrameLayerBuilder.h in nsLayoutUtils.h in the next patch.

--HG--
extra : rebase_source : 5f3c3ae2785267949766ae094414781133d4ce44
2013-09-27 18:01:16 +12:00
Robert O'Callahan
9123cf9bb8 Bug 919144. Part 7: Make fixed-pos frames with displayports animated geometry roots, and make FrameLayerBuilder responsible for setting fixed-pos layer parameters instead of nsDisplayFixedPosition. r=mattwoodrow
This patch also makes FrameLayerBuilder responsible for setting the visible region
of a fixed-pos layer to the displayport intersected with the draw-region of
the layer. This will let us remove some displaylist code in later patches.
We add special handling to GetAnimatedGeometryRootFor for nsDisplayScrollLayers,
to match what nsDisplayList::IsFixedItem does.

--HG--
extra : rebase_source : f9258243fe666d5dee33c13a88e596bbed8e2c1c
2013-09-27 18:01:16 +12:00
Robert O'Callahan
5c4d418146 Bug 919144. Part 5: Add ThebesLayerData::mReferenceFrame. r=mattwoodrow
--HG--
extra : rebase_source : f569d1712be8e43aeff31ca2f045a4b87bbd1de6
2013-09-27 18:01:15 +12:00
Robert O'Callahan
3d6d117d48 Bug 919144. Part 1: Rename identifiers from 'active scroll(ed) root' to 'animated geometry root'. r=mattwoodrow
Also sneaks in a couple of other refactorings:

--HG--
extra : rebase_source : 8b0e0729f26231d98ed069b54dd4f7c1e51b10b5
2013-09-26 09:07:26 +12:00
Nicholas Cameron
3c6ecb65c4 No bug. Fix an ifdef in FrameLayerBuilder. r=mattwoodrow 2013-11-18 09:33:21 +13:00
Matt Woodrow
4638668752 Bug 934860 - Followup to fix build on a CLOSED TREE 2013-11-17 17:24:53 +13:00
Matt Woodrow
9e676ce785 Bug 934860 - Part 6: Add a pref to disable single rect painting and disable it for now for causing TART regressions. r=jrmuziel 2013-11-14 13:46:19 +13:00
Matt Woodrow
34be370713 Bug 880031 - Make animated transforms force all above content to be in a separate ThebesLayer. r=roc 2013-11-08 19:04:12 +13:00
Matt Woodrow
283a6132ca Bug 934860 - Don't paint display items that don't intersect the current invalid rects. r=roc 2013-11-07 08:10:50 +13:00
Matt Woodrow
192437517d Bug 934860 - Draw each rect of the invalid region separately on Direct2D. r=roc 2013-11-07 08:10:50 +13:00
Matt Woodrow
61dcbad0a4 Bug 934860 - Move paint region clipping into DrawThebesLayer. r=roc 2013-11-07 08:10:50 +13:00
Matt Woodrow
db1a40695b Bug 934860 - Move some parts of FrameLayerBuilder::DrawThebesLayer into helper functions. r=roc 2013-11-07 08:10:49 +13:00
Matt Woodrow
92bb1048c7 Bug 934860 - Start and finish transactions with temporary layer managers each time we use them to ensure that these are paired. r=roc 2013-11-07 08:10:49 +13:00
Robert O'Callahan
a999a450cf Bug 911889. Part 2: Refactor MarkLayersActive code into its own class and be much more explicit about what it does. r=mattwoodrow
This also changes the functionality a little bit to track independent
per-property mutation counts and independent "content active" status.
2013-09-04 23:30:57 +12:00
Phil Ringnalda
b679ae2f4c Back out 0a88dee3b92b:dc5cc7d7b84d (bug 911889) for beaucoup unexpected assertions
--HG--
extra : rebase_source : a2a13633b6028c99a3c732dbbafe8c800bc32071
2013-10-28 23:38:02 -07:00
Robert O'Callahan
c2cf6c85d0 Bug 911889. Part 2: Refactor MarkLayersActive code into its own class and be much more explicit about what it does. r=mattwoodrow
This also changes the functionality a little bit to track independent
per-property mutation counts and independent "content active" status.

--HG--
extra : rebase_source : e69b8e7a95d36720bd38d74f0789ede603e58a09
2013-09-04 23:30:57 +12:00
Birunthan Mohanathas
b823b8896b Bug 784739 - Switch from NULL to nullptr in layout/; r=ehsan
--HG--
extra : rebase_source : 0d0d9e11be9d39e4457bddd0bac7e19a50b91b0b
2013-10-08 14:47:21 -04:00
Nicolas Silva
1df67b87cd Bug 922202 - Make PlanarYCbCrImage::Data forward-declarable and remove some header includes. r=bjacob 2013-10-01 17:57:50 -07:00
Benoit Jacob
0f90257361 Bug 913872 - Take nested enums out of gfxASurface - 1/3 : automatic changes - r=jrmuizel
Generated by these regexes:

find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/gfx[A-Za-z0-9_]*Surface\:\:[a-z]*\(\(ImageFormat\|SurfaceType\|ContentType\|MemoryLocation\)[0-9A-Za-z_]*\)/gfx\1/g'

find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/gfx[A-Za-z0-9_]*Surface\:\:[a-z]*\(\(CONTENT_\|MEMORY_\)[0-9A-Za-z_]*\)/GFX_\1/g'

find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)\(CONTENT_COLOR\|CONTENT_ALPHA\|CONTENT_COLOR_ALPHA\|CONTENT_SENTINEL\|MEMORY_IN_PROCESS_HEAP\|MEMORY_IN_PROCESS_NONHEAP\|MEMORY_OUT_OF_PROCESS\)\($\|[^A-Za-z0-9_]\)/\1GFX_\2\3/g'

find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)\(ImageFormatARGB32\|ImageFormatRGB24\|ImageFormatA8\|ImageFormatA1\|ImageFormatRGB16_565\|ImageFormatUnknown\|SurfaceTypeImage\|SurfaceTypePDF\|SurfaceTypePS\|SurfaceTypeXlib\|SurfaceTypeXcb\|SurfaceTypeGlitz\|SurfaceTypeQuartz\|SurfaceTypeWin32\|SurfaceTypeBeOS\|SurfaceTypeDirectFB\|SurfaceTypeSVG\|SurfaceTypeOS2\|SurfaceTypeWin32Printing\|SurfaceTypeQuartzImage\|SurfaceTypeScript\|SurfaceTypeQPainter\|SurfaceTypeRecording\|SurfaceTypeVG\|SurfaceTypeGL\|SurfaceTypeDRM\|SurfaceTypeTee\|SurfaceTypeXML\|SurfaceTypeSkia\|SurfaceTypeSubsurface\|SurfaceTypeD2D\|SurfaceTypeMax\)\($\|[^A-Za-z0-9_]\)/\1gfx\2\3/g'
2013-09-24 16:45:13 -04:00
Matt Woodrow
bec09ce09b Bug 907926 - Try avoid having multiple path objects around since this is slow with DrawTargetCairo. r=Bas 2013-09-19 17:23:30 +12:00
Wes Kocher
b03b0b7668 Backed out 5 changesets (bug 907926, bug 911393, bug 917703) due to OSX reftest bustage during an unrelated CLOSED TREE
Backed out changeset 94a6733b01dc (bug 907926)
Backed out changeset 44108fb6f7cc (bug 917703)
Backed out changeset f2dd2a27af69 (bug 911393)
Backed out changeset fdb0d1053128 (bug 907926)
Backed out changeset b3616b786e8f (bug 907926)
2013-09-19 17:56:18 -07:00
Matt Woodrow
989c6f730f Bug 907926 - Try avoid having multiple path objects around since this is slow with DrawTargetCairo. r=Bas 2013-09-19 17:23:30 +12:00
Markus Stange
6ebf300a4f Bug 912953 - Use consistent rounding for the scroll offset transform. r=roc 2013-09-06 11:28:34 +02:00
Markus Stange
f6f7290494 Bug 912953 - Apply the scroll offset transform to inactive layer managers for LAYER_SVG_EFFECTS, too. r=roc 2013-09-06 11:28:02 +02:00
Robert O'Callahan
8ca63f18ef Bug 910989. Remove nsTHashtable::Init, fallible allocation, and MT hashtables. r=ehsan,bsmedberg
--HG--
extra : rebase_source : 0787130b1814c74bfb38dc178de94022f0b2e64e
2013-09-02 20:41:57 +12:00
Ehsan Akhgari
c2ce7e67ab Bug 906790 - Minimize layout/base #includes; r=roc 2013-08-19 18:55:18 -04:00
Markus Stange
a16556961c Bug 904541 - Don't #include Layers.h in nsPresContext.h. r=roc 2013-08-14 13:33:03 +02:00
Nicholas Cameron
5c3ac83aa6 Bug 899884. Take into account the app unit to dev pixel ratio when reusing mask layers. r=roc 2013-08-09 21:42:05 +12:00
Benoit Girard
5d7998f39f Bug 873378 - Add a limit on mobile of 20 layers per container layer. r=roc 2013-07-16 16:17:18 -04:00
Nicolas Silva
f46dc128f3 Bug 899583 - Disallow BigImage with YCbCr compositing. r=BenWa 2013-08-02 01:02:06 +02:00
David Zbarsky
f6bba95714 Backout 4c89002460da (Bug 873378) for breaking the settings app on B2G 2013-07-26 13:20:23 -07:00
Milan Sreckovic
700cdb0c5b Bug 895003 - Introduce a second preference to control the chrome paint flashing - nglayout.debug.paint_flashing_chrome. r=roc
The original pref still controls content and chrome when set. The preference is now live, for content and chrome, the change will be seen on the next refresh. The cached value is now in nsPresContext, rather than nsRefreshDriver.
2013-07-22 11:51:38 -04:00
Benoit Girard
9cca89434d Bug 873378 - Add a limit on mobile of 20 layers per container layer. r=roc 2013-07-16 16:17:18 -04:00