Commit Graph

1006 Commits

Author SHA1 Message Date
Markus Stange
b59b3aeaf9 Bug 1241665 - Correctly convert IOSurfaces to SourceSurfaces in MacIOSurfaceTextureSourceBasic and MacIOSurfaceTextureData. r=mattwoodrow
--HG--
extra : rebase_source : 6cbb38cc4bb2338f76b1454e7e823dcb13d42f2d
2016-01-21 23:28:19 +01:00
Lee Salzman
579717eec1 Bug 1241163 - Replace DrawTarget::CreateSourceSurfaceFromNativeSurface(CAIRO_CONTEXT) with Factory::CreateSourceSurfaceForCairoSurface. r=jrmuizel 2016-01-20 13:31:44 -05:00
Nicholas Nethercote
186d3e93ab Bug 1239537 - Remove Compositor::GetWidgetSize(), which is unused. r=mattwoodrow.
Also remove BasicCompositor::mWidgetSize because its only use can be replaced
by a temporary variable.

--HG--
extra : rebase_source : 03b5992445687cd1ec24307da2d42f87d8cc1041
2016-01-13 15:27:34 -08:00
Nicholas Nethercote
7892cfcede Bug 1239530 (part 2) - Use LayoutDevice coordinates in {Start,End}RemoteDrawingInRegion() and related functions. r=kats.
--HG--
extra : rebase_source : b5bd2d6822904a188242efa6e46aaed9f96a15b9
2015-12-02 22:29:54 -08:00
Markus Stange
cff5b29209 Bug 1239137 - Return early from BasicCompositor::DrawQuad if transformBounds is empty. r=mattwoodrow
--HG--
extra : rebase_source : 41045234d2f2890c8178d68d37f3ceffd10402b3
2016-01-13 00:13:20 +01:00
Markus Stange
ebf52b3a75 Bug 1238753 - Don't skip the call to StartRemoteDrawing in from BasicCompositor::BeginFrame if the invalid region is empty. r=mattwoodrow
Sometimes we need a composition even if nothing has changed, for example for window resizes on Mac.
LayerManagerComposite::UpdateAndRender() already has a check that skips the call to BasicCompositor
if it's not necessary.

--HG--
extra : commitid : EFN68WKwWyp
extra : rebase_source : 00d8b063d23500b72a7f0c5fb03f5b726a3d5ac9
2016-01-12 13:27:14 +01:00
Markus Stange
c6fb172a65 Bug 1238753 - Make BasicCompositor respect changes to mInvalidRegion through StartRemoteDrawingWithRegion properly. r=mattwoodrow
--HG--
extra : commitid : 65tZtDLZZYx
extra : rebase_source : 8caf66555fee511daf0c336b9e8986da383f2704
2016-01-12 13:14:42 +01:00
Markus Stange
e69314a2fd Bug 1236282 - Clip color layer drawing in BasicCompositor so that unbounded operators don't erase stuff outside the layer. r=Bas
The same as bug 1077358, but for BasicCompositor.

--HG--
extra : commitid : 2xE66rOGdFx
extra : rebase_source : 4a81bbee35ae342add1bfca742d99b2c6dd73dcc
2016-01-12 12:47:36 +01:00
Nicholas Nethercote
fd022a1ff9 Bug 1236802 (part 2) - Remove a dead CurrentSurface() call. r=mattwoodrow.
--HG--
extra : rebase_source : 73638b86f45432bfe400b145379c996480879390
2016-01-10 14:05:27 -08:00
Nicholas Nethercote
88696a303a Bug 1209812 (part 6) - Convert all gfxImageFormat values to SurfaceFormat equivalents. r=jrmuizel.
This patch:

- Makes the following substitutions (plus necessary namespace qualifiers:

    gfxImageFormat::ARGB32      --> SurfaceFormat::A8R8G8B8_UINT32
    gfxImageFormat::RGB24       --> SurfaceFormat::X8R8G8B8_UINT32
    gfxImageFormat::A8          --> SurfaceFormat::A8
    gfxImageFormat::RGB16_565   --> SurfaceFormat::R5G6B5_UINT16
    gfxImageFormat::Unknown     --> SurfaceFormat::UNKNOWN

- Changes gfxImageFormat to be a typedef to gfx::SurfaceFormat. This will be
  removed soon.

- Removes gfxCairoFormatToImageFormat() and gfxImageFormatToCairoFormat() and
  replace calls to them with CairoFormatToGfxFormat() and
  GfxFormatToCairoFormat().

- Removes ParamTraits<gfxImageFormat>.

- Add namespace qualifiers to SurfaceFormat instances where necessary.

--HG--
extra : rebase_source : f56e92b1593957a9e4e00171100bc7605816e696
2016-01-07 20:57:38 -08:00
Nicholas Nethercote
4b651d870f Bug 1231881 - Remove NativeSurfaceType::CAIRO_SURFACE. r=bas.
We have both NativeSurfaceType::CAIRO_CONTEXT and
NativeSurfaceType::CAIRO_SURFACE. They both refer to DrawTargets with Cairo
backends. The only reason for having both is so you can call GetNativeSurface()
and get either the |cairo_t*| or the underlying |cairo_surface_t*|.

I argue that this convenience confuses things more than it helps. This patch
removes CAIRO_SURFACE, and adds explicit cairo_get_target() calls where
necessary.

--HG--
extra : rebase_source : 6f1701a8131d854c7f623272182029847876754e
2016-01-05 14:24:08 -08:00
Nicholas Nethercote
f447bec986 Bug 1233619 (part 2) - Moz2Dify BeginUpdate() and BeginUpdateBackground() functions. r=roc.
The only non-trivial change is in BasicPaintedLayer::Validate().

--HG--
extra : rebase_source : 7eed0e384d2d856d918ad025b09e29f796017f51
2015-12-17 19:39:10 -08:00
Nicholas Nethercote
67e5c3ea2c Bug 1233619 (part 1) - Remove unneeded gfxContext argument from EndUpdate() and EndUpdateBackground() functions. r=roc.
--HG--
extra : rebase_source : cc16e7a77d8d60706cd0406c859aece88d7b18c3
2015-12-17 19:39:09 -08:00
Bas Schouten
69278658e4 Bug 1227210: Ensure the mask and the surface are in the right space when being blended. r=mattwoodrow 2015-11-26 15:51:49 +01:00
Nicolas Silva
9bc4b1d4e6 Bug 1228952 - Move texture metadata out of the BufferTextureClient/Host's buffer. r=Sotaro 2015-12-16 19:50:58 +01:00
Lee Salzman
b842645aab Bug 1082598 - Part 6: Fix layers for Skia update. r=jrmuizel 2015-12-18 13:53:25 -05:00
Wes Kocher
6ebc8a4b00 Backed out 10 changesets (bug 1082598) for 2d.path.arcTo.shape.curve1.html failures on OSX
Backed out changeset 018c2a3031f4 (bug 1082598)
Backed out changeset 8f60e42aca2e (bug 1082598)
Backed out changeset c4297c82165f (bug 1082598)
Backed out changeset c22c1bfd091a (bug 1082598)
Backed out changeset 8754fd718869 (bug 1082598)
Backed out changeset da976e4cd253 (bug 1082598)
Backed out changeset 3c8f87df8c68 (bug 1082598)
Backed out changeset 3183d30eb549 (bug 1082598)
Backed out changeset c239a7bc6cba (bug 1082598)
Backed out changeset aa3805015270 (bug 1082598)

--HG--
extra : commitid : LJSl0Bo8Hqr
2015-12-17 14:30:50 -08:00
Lee Salzman
1175a5cf53 Bug 1082598 - Part 6: Fix layers for Skia update. r=jrmuizel 2015-12-17 14:45:45 -05:00
Milan Sreckovic
06d79c4606 Bug 1219494 - Part 4. gfx/layers and gfxCrash. r=mchang 2015-12-10 13:01:00 +01:00
Milan Sreckovic
b216c58347 Bug 1200021 - Part 3: Add DrawTarget::IsValid and don't let Cairo version snapshot invalid surface. r=bas 2015-12-04 13:43:00 -05:00
Nicolas Silva
e9b85ee52f Bug 1229577 - Rename NewSurfaceDescriptorGralloc into SurfaceDescriptorGralloc. r=sotaro 2015-12-04 11:23:42 +01:00
Bogdan Postelnicu
8bfe17bd94 Bug 1228510 - initialize 2 more variables. r=bas
--HG--
extra : rebase_source : b5636a87aafcee87444d8dee60804eca453942fa
2015-11-27 00:32:00 +01:00
Nicolas Silva
8baf8f2c04 Bug 1200595 - Consolidate the TextureClient's destruction logic. r=mattwoodrow 2015-11-20 14:25:03 +01:00
Nicolas Silva
ce2636044e Bug 1200595 - Merge TextureClient and ClientTexture back into TextureClient. r=mattwoodrow 2015-11-20 14:25:00 +01:00
Nicolas Silva
48c889335e Bug 1200595 - Gralloc TextureData implementation. r=sotaro 2015-10-15 17:53:37 +02:00
Nicolas Silva
380cf2ea18 Bug 1200595 - Introduce TextureData and implement it for X11. r=mattwoodrow, Bas, sotaro 2015-10-13 18:48:48 +02:00
Sunny Sidhu
cfa8942015 Bug 1220873 - Make Layer::mVisibleRegion a LayerIntRegion. r=botond
--HG--
extra : source : dc46048f7a9e9cc008c97e2d9e0a100944743055
extra : amend_source : 63783bc076e5969ebacdc8c74f9b5194a1891d9e
2015-11-29 02:07:55 -05:00
Phil Ringnalda
44354b6a01 Back out 1b0760c35953 (bug 1227210) for frequent Android R15 shutdown crashes 2015-11-27 22:58:13 -08:00
Bas Schouten
3026d54a89 Bug 1227210: Ensure the mask and the surface are in the right space when being blended. r=mattwoodrow 2015-11-26 15:51:49 +01:00
Wes Kocher
72261b4523 Backed out 12 changesets (bug 1200595) for b2g mochitest crashes in SharedBufferManagerParent CLOSED TREE
Backed out changeset cf8cf1a039dd (bug 1200595)
Backed out changeset 65da564f952c (bug 1200595)
Backed out changeset 7663208f1582 (bug 1200595)
Backed out changeset fc1fbb97c8eb (bug 1200595)
Backed out changeset 3ad5a4c457fe (bug 1200595)
Backed out changeset add3fe9afc0c (bug 1200595)
Backed out changeset 68aba6b39588 (bug 1200595)
Backed out changeset ab326c34f1cf (bug 1200595)
Backed out changeset ed34bc528a1b (bug 1200595)
Backed out changeset 0dc93424546c (bug 1200595)
Backed out changeset 8cc12f12f3d1 (bug 1200595)
Backed out changeset bb84403701b7 (bug 1200595)

--HG--
extra : commitid : AMC6i05xyTh
2015-11-24 10:07:02 -08:00
Nicolas Silva
c89268e8b1 Bug 1200595 - Consolidate the TextureClient's destruction logic. r=mattwoodrow 2015-11-20 14:25:03 +01:00
Nicolas Silva
c1b94d01e8 Bug 1200595 - Merge TextureClient and ClientTexture back into TextureClient. r=mattwoodrow 2015-11-20 14:25:00 +01:00
Nicolas Silva
318de9bd3b Bug 1200595 - Gralloc TextureData implementation. r=sotaro 2015-10-15 17:53:37 +02:00
Nicolas Silva
c3df7801f0 Bug 1200595 - Introduce TextureData and implement it for X11. r=mattwoodrow, Bas, sotaro 2015-10-13 18:48:48 +02:00
Carsten "Tomcat" Book
1a584aca79 Backed out 13 changesets (bug 1200595) for possibly breaking Reftest [TC] Crashtest tc-R on a CLOSED TREE
Backed out changeset e7278af0a484 (bug 1200595)
Backed out changeset c13228f84d85 (bug 1200595)
Backed out changeset 4b88e8a3d8af (bug 1200595)
Backed out changeset e55376bd2cf8 (bug 1200595)
Backed out changeset 9c27c8e2c021 (bug 1200595)
Backed out changeset a369a2983ceb (bug 1200595)
Backed out changeset 09e71ba15ea8 (bug 1200595)
Backed out changeset b555b130d439 (bug 1200595)
Backed out changeset 6819f6d82287 (bug 1200595)
Backed out changeset a8cdfbf443d8 (bug 1200595)
Backed out changeset 0092c9d7a86b (bug 1200595)
Backed out changeset 6dc38a1e6073 (bug 1200595)
Backed out changeset fe2164aa1468 (bug 1200595)
2015-11-20 16:55:26 +01:00
Nicolas Silva
4b5d77112d Bug 1200595 - Consolidate the TextureClient's destruction logic. r=mattwoodrow
* * *
Bug 1200595 - Rebase fixes
2015-11-20 14:25:03 +01:00
Nicolas Silva
25167273f1 Bug 1200595 - Merge TextureClient and ClientTexture back into TextureClient. r=mattwoodrow 2015-11-20 14:25:00 +01:00
Nicolas Silva
94c7acf9ef Bug 1200595 - Gralloc TextureData implementation. r=sotaro 2015-10-15 17:53:37 +02:00
Nicolas Silva
62fdc49f48 Bug 1200595 - Introduce TextureData and implement it for X11. r=mattwoodrow, Bas, sotaro 2015-10-13 18:48:48 +02:00
Bas Schouten
6734f39bff Bug 1225125: If all drawing is just clipped out anyway, just push a regular group, blending mode won't matter. r=jrmuizel 2015-11-17 16:27:17 +01:00
David Anderson
27bfc27d62 Decouple SharedRGBImage and PlanarYCbCrImage from ImageContainer. (bug 1222910, r=mattwoodrow) 2015-11-17 00:09:01 -08:00
Nicholas Nethercote
e48ef7f5e0 Bug 1224482 (part 4) - Make GetClientSize() return a LayoutDeviceIntSize. r=kats.
--HG--
extra : rebase_source : 6364076d0924ed1cd5a952ffa1fcb0543c05c0f7
2015-11-13 01:37:02 -08:00
Nathan Froyd
6fae252680 Bug 1216644 - part 3 - make BufferRecycleBin store UniquePtrs; r=jrmuizel
Changing mRecycledBuffers to store UniquePtrs instead of nsAutoArrayPtrs
opens up the possibility of a reasonable facsimile of ownership in
function signatures.
2015-10-20 13:16:04 -04:00
Nicholas Nethercote
489c83b1dd Bug 1223690 - Remove implicit Rect conversions. r=jrmuizel.
gfxRect can be implicitly constructed from IntRect, which hides a number of
implicit conversion points, makes Moz2Dification harder, and has some
surprising effects.

This patch removes the implicit constructor and replaces it with an explicit
conversion function:

  gfxRect ThebesRect(const IntRect&)

This is the obvious outcome of removing the constructor.

But there is also a second, less obvious outcome: currently we do a number of
IntRect-to-Rect conversions using ToRect(), which (surprisingly) works because
it turns into an implicit IntRect-to-gfxRect conversion (via the implicit
constructor) combined with an explicit gfxRect-to-Rect conversion (via
ToRect()). I.e. we do two conversions, going from a Moz2D type to a Thebes
type and back to a Moz2D type!

So this patch also changes these conversion. It moves this existing function:

  Rect ToRect(const IntRect&)

from gfx2DGlue.h -- where it doesn't really belong because it doesn't involve
any Thebes types -- to gfx/2d/Rect.h, templatifying and renaming it as
IntRectToRect() in the process.

The rest of the patch deals with fall-out from these changes. The call sites
change as follows:

- IntRect-to-gfxRect conversions:
  - old: implicit
  - new: ThebesRect()

- IntRect-to-Rect conversions:
  - old: ToRect()
  - new: IntRectToRect()

--HG--
extra : rebase_source : e4e4c2ad10b36ecad4d57d1630158f3374e403be
2015-11-11 14:23:14 -08:00
Botond Ballo
a592a77364 Bug 1222661 - Replace ToUntyped(obj) calls with obj.ToUnknown*(). r=nical
--HG--
extra : rebase_source : 1cab46638599d8c4e6183c42a6fa9d41702392cb
extra : source : cabc28a2200b9b4e5e137d331ee5b86b3c09f065
2015-11-06 22:13:40 -05:00
Bas Schouten
b8dfcb93d1 Bug 1210560 - Part 5: Convert BasicLayers usecases to PushGroupForBlendBack and temporary surfaces. r=jrmuizel 2015-11-11 16:15:39 +01:00
Jeff Muizelaar
bcf6317ef4 Bug 1217080. Move recycling functionality into RecyclingPlanarYCbCrImage. r=nical
This makes PlanarYCbCrImage abstract and moves the recycling functionality
into RecyclingPlanarYCbCrImage. This decreases the size of
SharedPlanarYCbCrImage and makes it possible for us to do part 3 of bug
1216644.
2015-11-06 13:55:31 -05:00
Wes Kocher
a6029c8941 Backed out changeset 722e121f6ce6 (bug 1217080) for b2g build failures
--HG--
extra : commitid : HdV0UNFbTFn
2015-11-04 15:39:35 -08:00
Jeff Muizelaar
83d63902a7 Bug 1217080. Move recycling functionality into RecyclingPlanarYCbCrImage. r=nical
This makes PlanarYCbCrImage abstract and moves the recycling functionality
into RecyclingPlanarYCbCrImage. This decreases the size of
SharedPlanarYCbCrImage and makes it possible for us to do part 3 of bug
1216644.
2015-11-04 17:40:02 -05:00
Nicolas Silva
1ebb1e2bb7 Bug 1219330 - Handle PlanaYCbCrImage::SetData failure. r=jya, jesup 2015-11-03 12:24:26 +01:00