Граф коммитов

175 Коммитов

Автор SHA1 Сообщение Дата
Sebastian Hengst 7e404cb4ff Backed out changeset 92d59687d486 (bug 1409871) 2017-10-23 23:43:52 +02:00
Sebastian Hengst 5c130ea67a Backed out changeset d3d5d723a5df (bug 1409871) 2017-10-23 23:43:47 +02:00
Sebastian Hengst 9b3127da10 Backed out changeset 9392889a01d0 (bug 1409871) 2017-10-23 23:43:41 +02:00
Sebastian Hengst 2aaf1b71ad Backed out changeset cce97a15c945 (bug 1409871) 2017-10-23 23:43:30 +02:00
Sebastian Hengst b4aa3847a7 Backed out changeset 0c1485b37ae9 (bug 1409871) 2017-10-23 23:43:24 +02:00
Sebastian Hengst 774b6c4844 Backed out changeset ad4b3448dc2e (bug 1409871) 2017-10-23 23:43:19 +02:00
Sebastian Hengst 7c964d3c5d Backed out changeset 7b7bcdf87539 (bug 1409871) 2017-10-23 23:43:13 +02:00
Sebastian Hengst 12e38cbd80 Backed out changeset 482309a25d13 (bug 1409871) 2017-10-23 23:42:56 +02:00
Ryan Hunt eba630e380 Use a rect instead of a region for UpdateDestinationFrom (bug 1409871 part 15, r=nical)
UpdateDestinationFrom actually only uses a rect, so it's best to not be
misleading and force the clients of it to do the conversion.

MozReview-Commit-ID: EsUv3apqnku

--HG--
extra : rebase_source : 6ee0f7454ac2ea21618a62a9ab906857384d0fdf
2017-10-18 14:35:18 -04:00
Ryan Hunt 6cd0ba94af Kill RotatedContentBuffer (bug 1409871 part 12, r=nical)
This commit is the guts of the refactoring.

This commit removes rotated content buffer, and moves the necessary
functionality to content client. All content clients now do not inherit from
rotated content buffer, but contain a refptr to a rotated buffer.

For the basic content client, this is a DrawTargetRotatedBuffer.
For the remote content client, this is a RemoteRotatedBuffer.
The double buffered content client contains an additional RemoteRotatedBuffer
for the front buffer.

Each derived class of content client only needs to implement a method to
create its own rotated buffer. The rest is handled by the base content
client. The remote content clients still override some additional methods
to sync buffers and do IPC.

MozReview-Commit-ID: B9vcSi8UYhm

--HG--
extra : rebase_source : a727d5548b0167eb12676837b173355eb0dd38a5
2017-10-16 19:45:11 -04:00
Ryan Hunt 2c54579797 Move buffer related decisions into their own function. (bug 1409871 part 11, r=nical)
This commit splits off the part of BeginPaint that makes the decision about
whether to keep the buffer, its surface type, its content type, and the regions
to invalidate or paint.

MozReview-Commit-ID: JcPlv8GiRpA

--HG--
extra : rebase_source : 73c2de46ac9e11437e6a52aadd1da56028a7d3ec
2017-10-12 19:52:29 -04:00
Ryan Hunt 273ecb795e Add RotatedBuffer::AdjustTo. (bug 1409871 part 10, r=nical)
This commit adds a method to rotated buffer to perform the adjusting to the new
destination rect, and potential unrotating that may need to happen. The goal of
this is to simplify and prepare BeginPaint to be moved to content client.

MozReview-Commit-ID: B4qeZqLjORR

--HG--
extra : rebase_source : 8ee7fb96ce8f1207b73027bb1d171dabd5b35788
2017-10-12 18:37:29 -04:00
Ryan Hunt 962f98cab9 Remove PaintState::mDidSelfCopy. (bug 1409871 part 9, r=nical)
Miscellaneous cleanup, PaintState doesn't need to know this as no one uses
this information outside of the content client classes.

MozReview-Commit-ID: 6K8LxEPvp4V

--HG--
extra : rebase_source : 931f7726d2f8f1f5ab32b5cf8f9030aa39a64bff
2017-10-12 17:24:50 -04:00
Ryan Hunt 731b3dc042 Refactor copying from the old buffer to the new buffer to use RotatedBuffer. (bug 1409871 part 7, r=nical)
This commit refactors part of BeginPaint to treat the new and old back buffer's
as rotated buffers. The goal of this is to simplify and prepare this function to
be moved out of rotated content buffer.

MozReview-Commit-ID: 5iHeMbCWfpo

--HG--
extra : rebase_source : 232b699ca5d906e4784338914ebddd510730c379
2017-10-12 12:35:37 -04:00
Ryan Hunt fd9427a323 Add a DrawTargetRotatedBuffer. (bug 1409871 part 6, r=nical)
This adds a new implementation of rotated buffer, which is backed by draw
targets. This will be the rotated buffer that basic content clients use.

MozReview-Commit-ID: Knn79yEFnxN

--HG--
extra : rebase_source : 78201bbb31c76e2b8131d912600b55500ba4cbdb
2017-10-11 16:26:10 -04:00
Ryan Hunt bc88ed32b9 Use a RemoteRotatedBuffer for the front buffer of ContentClientDoubleBuffered. (bug 1409871 part 5, r=nical)
The front buffer for a double buffered content client is really just another
rotated buffer, so it can simplify the code to use the class we just added.
The goal is to have the back and the front buffer using remote rotated buffers,
but this is a good first step.

Note: The front buffer is represented as a Maybe<RemoteRotatedBuffer> in this
commit, but in the future it will be a RefPtr. That can't be done yet, because
rotated buffer can't implement refcounting in addition to compositable client.

MozReview-Commit-ID: Czk3otkf1pb

--HG--
extra : rebase_source : b7cc399643295bb63efa86739f3dae29d3375ae6
2017-10-11 15:22:57 -04:00
Ryan Hunt d7d2f8b642 Add a RemoteRotatedBuffer. (bug 1409871 part 4, r=nical)
This adds a new implementation of rotated buffer, which is backed by texture
clients. This will be the rotated buffer that remote content clients use.

MozReview-Commit-ID: 3Y776uk5mFG

--HG--
extra : rebase_source : 40acce3f4150c5f6f51bf73f0b3c7e974ed8fd72
2017-10-11 14:34:41 -04:00
Ryan Hunt cbde30661f Move DrawTo to RotatedBuffer. (bug 1409871 part 3, r=nical)
Similar to the previous patch, more functionality can be moved to rotated
buffer and out of rotated content client.

MozReview-Commit-ID: FNqfonyBBq9

--HG--
extra : rebase_source : fce8c6212321e6e25dc414c517a28e1e3c747c25
2017-10-11 15:31:20 -04:00
Ryan Hunt 568306b4d0 Move UpdateDestinationFrom to RotatedBuffer. (bug 1409871 part 2, r=nical)
UpdateDestinationFrom is a useful method for any rotated buffer. This will be
needed when content clients are no longer rotated buffers.

Note: EnsureBuffer and EnsureBufferOnWhite were moved out of
UpdateDestinationFrom because I'd like to kill those methods, and so the calls
were moved to all users of UpdateDestinationFrom.

MozReview-Commit-ID: 2e3HhUsZ6iw

--HG--
extra : rebase_source : dd8f5a52808924a64ea0eb17359b6b749426b64e
2017-10-11 13:40:16 -04:00
Mason Chang 652642b7da Bug 1399692 - Backed out changeset 46f0b004bdd2 for not cleaning up content client on the right thread. r=bas
MozReview-Commit-ID: 2eocRWGxjzA

--HG--
extra : rebase_source : 6095b77f15e26f44cd8cc127184781f05b040e68
2017-09-20 08:38:30 -07:00
Mason Chang 89e6c162b2 Bug 1399692 - Copy the front buffer to the back buffer on the paint thread with OMTP enabled. r=bas 2017-09-14 15:09:53 -04:00
Bas Schouten 41a643c958 Bug 1396474: When aSetTransform is false, do not rely on the current DT transform when returning the output transform. r=mattwoodrow
MozReview-Commit-ID: 8DbS6dzFVtp
2017-09-05 15:13:40 +02:00
Mason Chang 7620bec375 Bug 1393142 - Don't reset transform if RotatedBuffer didn't set it. r=bas 2017-08-24 11:03:16 -07: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
Mason Chang ce7bf90ba4 Bug 1386965 - Support async painting component-alpha layers. r=dvander 2017-08-09 09:39:07 -07:00
David Anderson 8ac742dba7 Bug 1385101 Part 1 - Create CapturedPaintState in ContentClient rather than ClientPaintedLayer. r=mchang 2017-08-05 11:25:45 -07:00
Mason Chang ab70851265 Bug 1386849 - Always force CompositorBridgeChild::NotifyFinishedAsyncPaint. r=dvander 2017-08-03 22:55:44 -07:00
Mason Chang 7dc5a03ec2 Bug 1386073 Don't set RotatedBuffer's returned DrawTarget transform with omtp. r=dvander 2017-08-03 20:51:30 -07:00
Mason Chang 68b377c1ce Bug 1383916 Prep a DrawTarget to be drawn to on the paint thread. r=dvander 2017-08-03 08:50:32 -07:00
Phil Ringnalda 2ef9ec6589 Backed out changeset 525c6c747a7a (bug 1383916) for Windows 8 reftest failures
CLOSED TREE

MozReview-Commit-ID: LvxYj7DmsGX
2017-08-01 23:07:18 -07:00
Mason Chang 788361e0d9 Bug 1383916. Prep and flush draw targets on the paint thread with OMTP. r=dvander 2017-07-31 20:56:01 -07:00
Nicolas Silva 8d659cbd93 Bug 1378771 - Reduce the minimum painted layer width down to 8 pixels. r=jrmuizel 2017-07-13 13:59:29 +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
Matt Woodrow f148aa27b0 Bug 1325227 - Part 7: Allow locking TextureClients in RotatedBuffer to be fallible. r=nical 2017-02-04 18:53:30 +13:00
Kartikaya Gupta 4d0ec41759 Bug 1333122 - Condition disabling of buffer-rotation on the layer tree rather than a compile-time flag. r=ethlin
MozReview-Commit-ID: LJjRpcxxPsy
2017-01-24 08:03:08 -05:00
Matt Woodrow 4d0b10822d Bug 1308363 - Remove GONK specific code from gfx/. r=jrmuizel,sotaro 2016-10-27 13:17:10 +13:00
George Wright 1ce63ce848 Bug 1297568 - Downgrade buffer creation failures if we're a reasonable size, and never assert r=dvander 2016-10-03 20:18:45 -04:00
Nicholas Nethercote b71747b2ac Bug 1299727 - Rename NS_WARN_IF_FALSE as NS_WARNING_ASSERTION. r=erahm.
The new name makes the sense of the condition much clearer. E.g. compare:

  NS_WARN_IF_FALSE(!rv.Failed());

with:

  NS_WARNING_ASSERTION(!rv.Failed());

The new name also makes it clearer that it only has effect in debug builds,
because that's standard for assertions.

--HG--
extra : rebase_source : 886e57a9e433e0cb6ed635cc075b34b7ebf81853
2016-09-01 15:01:16 +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
Milan Sreckovic 9f800c9f45 Bug 1262681 - Draw target also has to be valid for us to demand a snapshot. r=bas 2016-04-13 09:56:00 +02: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
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
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
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
Nicolas Silva 91b4564002 Bug 1194775 - Paper over a crash in ContentClient. r=Bas 2015-10-27 18:21:58 +01:00
Nathan Froyd 01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Nathan Froyd 583afa0965 Bug 1207245 - part 3 - switch all uses of mozilla::RefPtr<T> to nsRefPtr<T>; r=ehsan
This commit was generated using the following script, executed at the
top level of a typical source code checkout.

 # Don't modify select files in mfbt/ because it's not worth trying to
 # tease out the dependencies currently.
 #
 # Don't modify anything in media/gmp-clearkey/0.1/ because those files
 # use their own RefPtr, defined in their own RefCounted.h.
find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    grep -v 'mfbt/RefPtr.h' | \
    grep -v 'mfbt/nsRefPtr.h' | \
    grep -v 'mfbt/RefCounted.h' | \
    grep -v 'media/gmp-clearkey/0.1/' | \
    xargs perl -p -i -e '
 s/mozilla::RefPtr/nsRefPtr/g; # handle declarations in headers
 s/\bRefPtr</nsRefPtr</g; # handle local variables in functions
 s#mozilla/RefPtr.h#mozilla/nsRefPtr.h#; # handle #includes
 s#mfbt/RefPtr.h#mfbt/nsRefPtr.h#;       # handle strange #includes
'

 # |using mozilla::RefPtr;| is OK; |using nsRefPtr;| is invalid syntax.
find . -name '*.cpp' -o -name '*.mm' | xargs sed -i -e '/using nsRefPtr/d'

 # RefPtr.h used |byRef| for dealing with COM-style outparams.
 # nsRefPtr.h uses |getter_AddRefs|.
 # Fixup that mismatch.
find . -name '*.cpp' -o -name '*.h'| \
    xargs perl -p -i -e 's/byRef/getter_AddRefs/g'
2015-10-18 00:40:10 -04:00
Jamie Nicol 3e0de12cde Bug 1187619 - Only optmimize FrameLayerBuilder visibility calculations if correct. r=mattwoodrow
Bug 1176077 introduced the parameter aDirtyRegion to
DrawPaintedLayerCallback, which allows the callback to recompute the
visibility of all items to be painted in that transaction in a single
go. However, this parameter can not always be determined correctly
when using RotatedBuffer, and using an incorrect value was causing
graphical glitches.

Make the parameter optional, and on null values do not perform the
optimisation. Pass null from ClientPaintedLayer, which uses
RotatedBuffer and was causing problems, but continue to pass the
correct value from other Layer implementations. This optimisation was
most important for tiled layers using progressive paint, so this is
okay.
2015-08-03 04:07:00 -04:00
Jamie Nicol 5044fbd3c9 Bug 1176077 - Only recompute PaintedLayer item visibility when display list has changed. r=mattwoodrow
FrameLayerManager::RecomputeItemsVisibility() was being called on every
call to FrameLayerBuilder::DrawPaintedLayer(), each time for the region
to be painted by that paint call. This is inefficient when progressive
paint is enabled. Change it so that we compute the visibility of all the
layer's items within the total region to be painted, but only on the
first paint after the display list has been modified.
2015-07-21 09:19:25 +01:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Nathan Froyd 974d8120f2 Bug 1161627 - part 2 - machine-convert TemporaryRef<T> to already_AddRefed<T>; r=ehsan
This conversion was done with the script:

  find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl' | \
    egrep -v 'cairo-win32-refptr.h|RefPtr.h|TestRefPtr.cpp' | \
    xargs sed -i -e 's/mozilla::TemporaryRef</already_AddRefed</g' \
                 -e 's/TemporaryRef</already_AddRefed</g'

Manual fixups were performed in the following instances:

- We handled mfbt/RefPtr.h manually so as to not convert TemporaryRef itself
  into already_AddRefed.

- The following files had explicit Move() calls added to make up for the lack
  of a copy constructor on already_AddRefed:

  dom/base/ImageEncoder.cpp
  dom/media/MediaTaskQueue.{h,cpp}
  dom/media/webaudio/PannerNode.cpp

- A redundant overload for MediaTaskQueue::Dispatch was deleted.

- A few manual fixups were required in mfbt/tests/TestRefPtr.cpp.

- Comments, using declarations, and forward declarations relating to
  TemporaryRef in dom/canvas/ and gfx/layers/ were changed to refer to
  already_AddRefed.
2015-06-17 10:00:52 -04:00
Markus Stange dc2a5c02ef Bug 1169331 - Always clip rotated buffer quadrant drawing to the fill rect. r=jrmuizel
--HG--
extra : rebase_source : 6277eb60b2ee59903ff7a96bc9fa5a6ae379e20e
2015-06-15 16:57:30 -04:00
Amanda Sambath 376d6d03c3 Bug 1158120 - Replace nsIntSize by mozilla::gfx::IntSize in gfx/layers. r=nical 2015-06-03 13:45:24 +02:00
Amanda Sambath e5ab8210f6 Bug 1158120 - Edit include and comments that contained gfxIntSize and nsIntSize. r=nical 2015-05-29 17:01:46 +02:00
Nathan Froyd db188ea282 Bug 1160485 - remove implicit conversion from RefPtr<T> to TemporaryRef<T>; r=ehsan
Having this implicit conversion means that we can silently do extra
refcounting when it's completely unnecessary.  It's also an obstacle to
making RefPtr more nsRefPtr-like, so let's get rid of it.
2015-05-01 09:14:16 -04:00
Nicolas Silva cfff5e52c5 Bug 1155621 - Make nsIntRect and nsIntPoint typedefs of mozilla::gfx::IntRect and mozilla::gfx::IntPoint. r=Bas 2015-04-21 17:04:57 +02:00
Milan Sreckovic 62b9185477 Bug 1153724 - Only assert if the size was reasonable to start. r=mchang
--HG--
extra : rebase_source : eabc5cc3d3b749b7afd4fdf689c7a36a7231ce2f
2015-04-13 17:07:01 -04:00
Milan Sreckovic 9ebbadf44d Bug 1081911 - Null pointer check (wallpaper) for destDTBufferOnWhite. r=mattwoodrow 2015-02-02 17:46:22 -05:00
David Anderson 3237410cc8 Don't clear the rotated buffer if we incorrectly assume content will be COLOR_ALPHA. (bug 1126045 part 3, r=mattwoodrow) 2015-01-28 15:34:45 -08:00
Milan Sreckovic 5c1754eb7a Bug 1088833 - A bit of a clean up of warnings, and catch bad draw target in the d3d11 canvas case. r=bschouten 2015-01-20 12:47:29 -05:00
Nicolas Silva a491a3acfe Bug 1102895 - Remove unused TextureFlags. r=sotaro 2014-11-25 20:19:04 +01:00
Nicolas Silva cc878d2bd9 Bug 1086670 - Add some gfxCriticalError logs around DrawTarget creation. r=Bas 2014-11-20 15:48:07 +01:00
Nicolas Silva f16d501785 Bug 1016540 - GrallocTextureSource::DeallocateDeviceData must assert that it has a compositor, rather than a gl context. r=sotaro 2014-10-07 10:45:04 +02:00
Nicolas Silva 5be89d1497 Bug 1076825 - Don't crash release builds if allocating the buffer on white failed in RotatedBuffer.cpp. r=Bas 2014-10-06 14:37:57 +02:00
Jeff Muizelaar a6e2d3180f Bug 1074615. Remove DRAW_SNAPPED. r=mwoodrow
This doesn't seem to be necessary and doesn't really make sense to me. This
will help us moving region clipping into Moz2D

--HG--
extra : rebase_source : 4a5987ce2a95eaba44a69233d1b7f461f5ec16ea
2014-10-01 01:25:25 -04:00
Jeff Muizelaar 673f3a21d4 Bug 1073086. Remove broken snapping code. r=mwoodrow
We generate a Rect from integers and then round them to do the snapping.

-      Rect rect(r->x, r->y, r->width, r->height);
-
-      rect.Round();

This accomplishes nothing.

Just rip it out.

--HG--
extra : rebase_source : 3194652ca83f2e66ae1cbd02573ab86c444bd2fb
2014-09-25 14:01:10 -04:00
Ed Morley fad1e475af Backed out changeset 318fa507832d (bug 1073086) 2014-09-29 17:42:34 +01:00
Jeff Muizelaar 5e0dbe7d22 Bug 1073086. Remove broken snapping code. r=mwoodrow
We generate a Rect from integers and then round them to do the snapping.

-      Rect rect(r->x, r->y, r->width, r->height);
-
-      rect.Round();

This accomplishes nothing.

Just rip it out.

--HG--
extra : rebase_source : 620d4c9b4e6951e42441db336de2badb69c4a39c
2014-09-25 14:01:10 -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
Bas Schouten 27762727a0 Bug 1066417: Add Direct2D 1.1 to the list op backends that don't like OP_SOURCE. r=mattwoodrow 2014-09-14 23:51:28 +02:00
Jonathan Watt 423fda249a Bug 1065031, part 2 - Changes to Moz2D consuming code to update callers of Moz2D Matrix's Translate, Scale and Rotate methods to use these methods' new names. r=Bas 2014-09-10 18:29:35 +01:00
Jonathan Watt 62cd61e1b7 Bug 1065127 - Avoid Matrix().Translate()/Scale()/Rotate() multiplication in lots of places. r=Bas 2014-09-10 14:26:12 +01:00
Carsten "Tomcat" Book 31ab875e26 Backed out changeset e6b766d8a815 (bug 1065127) for bustage 2014-09-10 14:30:36 +02:00
Jonathan Watt ee916d4351 Bug 1065127 - Avoid Matrix().Translate()/Scale()/Rotate() multiplication in lots of places. r=Bas
--HG--
extra : rebase_source : ef075258c31973c4943b9b3a9229685a9bb83917
2014-09-10 11:45:42 +01:00
Bas Schouten ea68147759 Bug 947781 - Part 1: Refactor RotatedBuffer to easily be re-usable for any rotated buffer drawing. r=mattwoodrow 2014-07-30 15:38:46 +02:00
Ed Morley aa8e34c9db Backed out changeset 6bc1a62eb443 (bug 947781) for build failures 2014-07-30 14:54:28 +01:00
Bas Schouten 0e8d1581fa Bug 947781 - Part 1: Refactor RotatedBuffer to easily be re-usable for any rotated buffer drawing. r=mattwoodrow 2014-07-30 15:38:46 +02:00
Matt Woodrow 5aa300e397 Bug 1039145 - Part 2: Fully remove component alpha/background copying support from BasicCompositor. r=roc 2014-07-18 18:48:23 +12:00
Carsten "Tomcat" Book 9522edcc50 Backed out changeset 49c713f92304 (bug 1039145) 2014-07-18 10:45:20 +02:00
Matt Woodrow e8878fb125 Bug 1039145 - Part 2: Fully remove component alpha/background copying support from BasicCompositor. r=roc 2014-07-18 18:48:23 +12:00
Jonathan Watt 6586dcffb2 Bug 1027763, part 2 - Make non-Moz2D callers of DrawTarget::GetType() call DrawTarget::GetBackendType() instead. r=Bas 2014-06-19 21:35:33 +01:00
Nicolas Silva 81fe3788ce Bug 1023350 - Rename TextureClient::GetAsDrawTarget into TextureClient::BorrowDrawTarget and fix TextureClientX11. r=bjacob 2014-06-11 14:57:58 -04:00
Victor Porof 9ce7e9c089 Bug 1007203 - Always add categories when pushing to the pseudostack, r=djvj 2014-05-23 17:12:29 -04:00
Matt Woodrow a209bb45ac Bug 1013759 - Simplify invalid region for Direct2D when using OMTC to avoid hitting expensive drawing paths for complex regions. r=jrmuizel 2014-05-23 09:08:21 +12:00
Matt Woodrow 2f69378b9b Bug 950312 - Part 1: Copy mix-blend-mode proprties to the compositor layer tree. r=roc 2014-05-09 21:41:56 +12:00
Bas Schouten ab81497596 Bug 996745: Do not try to FinalizeFrame when there is no buffer. r=mattwoodrow 2014-04-29 22:33:11 +02:00
Nicolas Silva 2f082d5876 Bug 990871 - Move TextureClientDrawTarget into TextureClient. r=mattwoodrow 2014-04-10 10:14:28 +02:00
Carsten "Tomcat" Book e135bfb80b Backed out changeset 3747c80a1cde (bug 990871) for bustage on a CLOSED TREE 2014-04-10 13:15:47 +02:00
Nicolas Silva 8e5bb9bcd2 Bug 990871 - Move TextureClientDrawTarget into TextureClient. r=mattwoodrow 2014-04-10 10:14:28 +02:00
Matt Woodrow 58ba18a382 Bug 992486 - Part 5: Fix copying the front buffer to back buffer. r=roc 2014-04-10 20:42:29 +12:00
Carsten "Tomcat" Book b2265fd931 Backed out changeset e6126e815061 (bug 992486) windows bustage 2014-04-10 10:09:25 +02:00
Matt Woodrow e38f4a6963 Bug 992486 - Part 5: Fix copying the front buffer to back buffer. r=roc 2014-04-10 19:44:10 +12:00
Matt Woodrow ae7d007ed8 Bug 993784 - Part 1: Use Moz2D mask data for BasicThebesLayer drawing. r=roc 2014-04-09 21:15:19 +12:00
Matt Woodrow 2b85e9dc18 Bug 991513 - Part 1: Don't lock ContentClientDoubleBuffered's texture until we need the buffers. r=nrc 2014-04-09 21:15:18 +12:00
Matt Woodrow 2d862e153f Bug 992486 - Part 1: Add API to RotatedContentBuffer for drawing in multiple passes. r=roc 2014-04-09 21:15:17 +12:00
Nicolas Silva 1c3e5f7d5d Bug 989904 - Remove some of the deprecated backend-independent textures. r=mattwoodrow 2014-04-01 14:28:23 +08:00
Matt Woodrow 34ea3f441f Bug 971720 - Adjust the source pattern transform when masking with RotatedBuffer to take the mask transform into account. r=roc 2014-03-01 08:51:17 +13:00
Phil Ringnalda 46aa0c9eda Merge m-c to m-i 2014-02-26 21:28:10 -08:00
Ryan VanderMeulen 8d98e3613b Backed out changeset 0569a8a2f83d (bug 958727) for causing performance regressions. 2014-02-26 20:48:41 -05:00
Milan Sreckovic 710bd9d8f9 Bug 971942: 3. layers.bufferrotation.enabled, layers.componentalpha.enabled, layers.scroll-graph, layers.acceleration.disabled, layers.acceleration.force-enabled moved to gfxPrefs. r=clord 2014-02-26 21:53:27 -05:00