Commit graph

219 commits

Author SHA1 Message Date
Andi-Bogdan Postelnicu
b2d4c86823 Bug 1453795 - GFX - Initialize member fields in classes/ structures. r=nical
--HG--
extra : rebase_source : 56f2cc017632bf27115490ae05254019108c6179
extra : amend_source : 98ea6c3c02a9f7650d2cf65deaf5085cf9a2efa4
2018-06-16 17:42:33 +03:00
Sebastian Hengst
0819f35e51 Backed out 4 changesets (bug 525063) on request from Andi. a=backout
Backed out changeset 516c4fb1e4b8 (bug 525063)
Backed out changeset 6ff8aaef2866 (bug 525063)
Backed out changeset bf13e4103150 (bug 525063)
Backed out changeset d7d2f08e051c (bug 525063)
2018-04-13 16:01:28 +03:00
Tristan Bourvon
a3a77c0312 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Ryan Hunt
e34eeaaa86 Remove DisplayItemLayer and corresponding layers.advanced prefs. (bug 1439960, r=mstange)
MozReview-Commit-ID: FAWTC1Llu31

--HG--
extra : rebase_source : 05bda872389db5cc61e805c3eb48e70eb5d95cbe
2018-02-21 09:29:49 -06:00
Cosmin Sabou
e997286c08 Backed out 3 changesets (bug 1439960) for build bustages on APZInputBridgeChild.cpp and FrameBuilder.cpp. CLOSED TREE
Backed out changeset b8057c06fc4c (bug 1439960)
Backed out changeset c8d6b0fa1447 (bug 1439960)
Backed out changeset e6bd6ebc8597 (bug 1439960)
2018-03-20 23:18:44 +02:00
Ryan Hunt
1fe1a843f9 Remove DisplayItemLayer and corresponding layers.advanced prefs. (bug 1439960, r=mstange)
MozReview-Commit-ID: FAWTC1Llu31

--HG--
extra : rebase_source : 447e835dc664549a8bdbd4097d42773acf523f08
extra : histedit_source : d98b0f0654c2214a368313de84f11160a3fa7030
2018-02-21 09:29:49 -06:00
Milan Sreckovic
099cfc4242 Bug 1423570: Use BaseRect access methods instead of member variables in gfx/ r=bas.schouten
MozReview-Commit-ID: ZGySgc9oP3

--HG--
extra : rebase_source : 23aadc10e9885002290155684b2c495780d979ce
2017-12-19 15:48:39 -05:00
Kartikaya Gupta
00ef028ed3 Bug 1416267 - Update gfxContext matrix functions to avoid flip-flopping between float and double matrices. r=jrmuizel
The core of this change is in gfxContext.*:
- change gfxContext::CurrentMatrix() and gfxContext::SetMatrix() to
  return and take a Matrix respectively, instead of converting to
  and from a gfxMatrix (which uses doubles). These functions therefore
  will now match the native representation of the transform in gfxContext.
- add two new functions CurrentMatrixDouble() and SetMatrixDouble() that
  do what the old CurrentMatrix() and SetMatrix() used to do, i.e.
  convert between the float matrix and the double matrix.

The rest of the change is just updating the call sites to avoid round-
tripping between floats and doubles where possible. Call sites that are
hard to fix are migrated to the new XXXDouble functions which preserves
the existing behaviour.

MozReview-Commit-ID: 5sbBpLUus3U
2017-11-10 21:14:09 -05:00
Daniel Holbert
126bd9e1a4 Bug 1412427 part 8: (automated patch) Switch a bunch of C++ files in gfx to use our standard mode lines. r=jrmuizel
This patch was generated automatically by the "modeline.py" script, available
here: https://github.com/amccreight/moz-source-tools/blob/master/modeline.py

For every file that is modified in this patch, the changes are as follows:
 (1) The patch changes the file to use the exact C++ mode lines from the
     Mozilla coding style guide, available here:
https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Coding_Style#Mode_Line

 (2) The patch deletes any blank lines between the mode line & the MPL
     boilerplate comment.

 (3) If the file previously had the mode lines and MPL boilerplate in a
     single contiguous C++ comment, then the patch splits them into
     separate C++ comments, to match the boilerplate in the coding style.

MozReview-Commit-ID: 77D61xpSmIl

--HG--
extra : rebase_source : c6162fa3cf539a07177a19838324bf368faa162b
2017-10-27 16:10:06 -07:00
cku
f1fd114ae6 Bug 1396489 - Part 3. Use gfxContext::GetClipExtents(false) when clipped rect in device space is needed. r=mstange
MozReview-Commit-ID: YO4JACFK9O

--HG--
extra : rebase_source : 068eb69d634cfc5150d7cb864c366e719a025859
2017-09-04 14:04:17 +08:00
Phil Ringnalda
e761d397b7 Backed out 3 changesets (bug 1396489) for unexpected assertion failures
Backed out changeset 75ffa3ed13d5 (bug 1396489)
Backed out changeset fc779b639aeb (bug 1396489)
Backed out changeset dcfd73044bba (bug 1396489)

MozReview-Commit-ID: DvGlDLZF2nO
2017-09-04 21:09:04 -07:00
cku
afd9919b06 Bug 1396489 - Part 3. Use gfxContext::GetClipExtents(false) when clipped rect in device space is needed. r=mstange
MozReview-Commit-ID: YO4JACFK9O

--HG--
extra : rebase_source : afd9cb051e35856070e3451215e4bba79396af7e
2017-09-04 14:04:17 +08:00
Milan Sreckovic
e3cd0a3157 Bug 1387514: Upgrade BaseRect (derived classes) width and height direct member variable use to instead use Width()/SetWidth() and Height()/SetHeight() in .cpp files in gfx/*. r=milan
MozReview-Commit-ID: 1jESowJKdyp

--HG--
extra : rebase_source : 3839cdea46729a9af05c777215cffcb9f42a2018
2017-08-14 08:29:28 -04:00
JerryShih
309a5411d4 Bug 1374548 - Implement the frame selection in BasicImageLayer. r=mattwoodrow a=relanding
The BasicImageLayer always picks the first frame in image container which is not desired for video playback.

MozReview-Commit-ID: q4QkBT2a7w
2017-06-30 11:57:14 -07:00
Wes Kocher
3483bcf612 Backed out changeset 85099e5d1e2a (bug 1374548) for being the likely cause of the spike in crashes from bug 1370089 a=backout 2017-06-30 10:45:51 -07:00
JerryShih
56f5339e5a Bug 1374548 - Implement the frame selection in BasicImageLayer. r=mattwoodrow
The BasicImageLayer always picks the first frame in image container which is not desired for video playback.

MozReview-Commit-ID: q4QkBT2a7w

--HG--
extra : rebase_source : 732f61eb5ca64a051fc928a1e22706011800d8fb
2017-06-22 21:03:00 +02:00
Nicholas Nethercote
58786e1ea7 Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.

--HG--
extra : rebase_source : 318d1bc6fc1425a94aacbf489dd46e4f83211de4
2017-06-22 17:08:53 +10:00
Ehsan Akhgari
3b93e5ad89 Bug 1354412 - Remove nsIDOMWindowUtils.beginTabSwitch(); r=jrmuizel 2017-04-12 23:31:39 -04:00
Mason Chang
e08bd7cbdb Bug 1351114 Properly track display item layers in layer managers. r=mattwoodrow 2017-03-28 22:37:11 -07:00
Mason Chang
ef3d9a921c Bug 1337130 - Create a DisplayItemLayer type. r=mattwoodrow 2017-02-14 13:49:27 -08:00
Miko Mynttinen
c0b2cd5b45 Bug 1274673 - Use binary space partitioning for sorting/drawing layers - Part 3: Use BSPTree for layer sorting r=jrmuizel,mattwoodrow
MozReview-Commit-ID: 3Hy4IRDFgaP

--HG--
extra : rebase_source : ec31672ba66a81537cd21356466c8774023edd60
2016-12-06 13:39:01 -10:00
David Anderson
ecf530eb6f Do not paint if a BeginTransaction fails. (bug 1313770 part 1, r=mattwoodrow)
--HG--
extra : rebase_source : 482b24f52da24de87dd459ac6d003b286206e54e
2016-10-28 15:48:34 -07:00
Nicolas Silva
79bb9f5c0e Bug 1284837 - Disallow implicit conversions from float to integer when creating. r=botond 2016-09-16 17:49:39 +02:00
Nicolas Silva
48805c9b3e Bug 1284837 - Disallow implicit conversions from float to integer when creating IntPoint and IntSize objects. r=botond 2016-07-26 16:48:30 +02:00
Kevin Wern
0e41fdd181 Bug 1283236 - don't use ForEachNode() in ApplyDoubleBuffering() r=botond
We found that the use of TreeTraversal.h library here (where the root
node is treated as a special case) does not help readability, so revert
to the previous plain implementation

MozReview-Commit-ID: Dp7isl4lNvL

--HG--
extra : rebase_source : c8f77c59e5b81b32a8b4c0fc79e98e027fd432cf
2016-07-06 23:14:02 -04:00
JerryShih
5135b01ace Bug 1276062 - obtain the group creation result from PushGroupForLayer(). r=bas 2016-07-04 20:14:00 +02:00
Jonathan Watt
7972d9d526 Bug 1279966 - Stop using gfxContext device offsets on the temporary gfxContext in BasicLayerManager::PaintLayer. r=mattwoodrow 2016-06-15 10:06:11 +01:00
Jonathan Watt
b15368cfcb Bug 1279451 - Remove a lot of unnecessary includes of nsAutoPtr.h. rs=sparky 2016-06-07 21:10:18 +01:00
Nicholas Nethercote
4e8f3b6d6e Bug 1276824 (part 2) - Fix up checks for calls to gfxContext::Create{,PreservingTransform}OrNull(). r=milan.
--HG--
extra : rebase_source : 80644c1a6658da553c13ae1ab3b8d03e916ee6e7
2016-06-07 11:17:48 +10:00
Nicholas Nethercote
a02611e830 Bug 1276824 (part 1) - Rename gfxContext::ForDrawTarget{,WithTransform}(). r=milan.
The new names Create{,PreservingTransform}OrNull() better communicate that
these functions (a) do object creation, and (b) are fallible.

--HG--
extra : rebase_source : a36bd9a2bcdfae281868959403f811f2bc690ad4
2016-06-07 09:39:56 +10:00
Jonathan Watt
03036022ec Bug 1277862, part 2 - Rename Moz2D's Filter to SamplingFilter in the rest of gfx/. r=Bas 2016-05-25 17:01:18 +01:00
Kevin Wern
7ae5cf1e52 Bug 1227231: Use generic tree traversal algorithms for loops over Layer trees. r=botond
Create an Iterator type with classes ForwardIterator and ReverseIterator,
having GetFirstChild/GetNextSibling and GetLastChild/GetPrevSibling
methods, respectively. Specify the iterator type for each call to
ForEachNode. With this, we can support trees with forward and reverse
sibling structures.

Additionally, apply these algorithms to all Layer recursive traversals,
where applicable. Update tests to ensure both directions yield expected
results.

MozReview-Commit-ID: iYpX22XHTa

--HG--
extra : rebase_source : 016d3c37e0679df7037dacd3366d3fa7748d0703
extra : amend_source : 089c4a62bd4716be087669742bb542c39a9f97c6
2016-03-10 01:20:40 -08:00
bd339
1f362e61d3 Bug 1258758 - rename GetEffectiveClipRect to GetLocalClipRect. r=kats
MozReview-Commit-ID: HNErexDE1Xo
2016-05-02 17:27:35 +02:00
Lee Salzman
ad13359d88 Bug 1266380 - fix offset of untransformed surface when 3d transforming in BasicLayerManager. r=jrmuizel 2016-04-23 21:07:41 -04:00
Milan Sreckovic
e0b2b9e425 Bug 1259513: Make gfxContext constructor private, use a utility function that can return nullptr. r=bas,lsalzman
MozReview-Commit-ID: rHhLEDZEQt

--HG--
extra : rebase_source : 4988f3f488c19dd35a9979e96f78a5511ee8f3d2
2016-04-12 15:18:11 -04:00
Lee Salzman
ca8c96a592 Bug 1252324 - add DrawTarget API for 3D transforms for use in layers. r=jrmuizel 2016-03-23 01:03:10 -04:00
Michelangelo De Simone
ebffe910b0 Bug 1247445 - Rename Layer::GetEffectiveVisibleRegion GetLocalVisibleRegion. r=botond
--HG--
extra : amend_source : 375eedb2c6f3e7aec206071a0be0e5fbc0367e76
2016-02-13 16:50:51 -08:00
Bas Schouten
dae57ec4b3 Bug 1245870: When concluding there is nothing to draw inside the clip be sure to balance the Save() since it won't be balanced in PopGroupForlayer. r=jrmuizel
--HG--
extra : commitid : Ra5uaA0wki
2016-02-05 13:53:45 +01:00
Birunthan Mohanathas
d7371d07d0 Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Phil Ringnalda
d381b4bca6 Back out 7 changesets (bug 1235261) for cpptest failures in TestTArray
CLOSED TREE

Backed out changeset d66c3f19a210 (bug 1235261)
Backed out changeset 467d945426bb (bug 1235261)
Backed out changeset 32b61df13142 (bug 1235261)
Backed out changeset c50bb8ed4196 (bug 1235261)
Backed out changeset 0ff0fa6fe81f (bug 1235261)
Backed out changeset df70e89669da (bug 1235261)
Backed out changeset 064969357fc9 (bug 1235261)
2016-01-31 10:10:57 -08:00
Birunthan Mohanathas
373593275e Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Nicholas Nethercote
702fb54dd6 Bug 1239864 (part 5) - Use the new rect iterators in gfx/. r=nical.
--HG--
extra : rebase_source : bed24467918b4a12837e37d6f7f15c42f20b0b6a
2016-01-18 17:20:58 -08: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
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
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
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