Commit Graph

500 Commits

Author SHA1 Message Date
Sotaro Ikeda
0fc240ed8d Bug 1262601 - Handle video content as opaque in PostProcessLayers() r=mattwoodrow 2016-04-10 19:51:21 -07:00
Matt Woodrow
3d7ecde808 Bug 1258313 - Allow snapping of 'pseudo' 3d transforms. r=jrmuizel 2016-04-06 15:29:32 +12:00
Botond Ballo
aa2fd58a6a Bug 1219296 - Split fields not needed for repaints out from FrameMetrics. r=kats
MozReview-Commit-ID: DymHOSI6yYK
2016-03-28 19:14:52 -04:00
Jim Mathies
db0420d938 Bug 1241060 - Skip non-2d sibling layers when calculating plugin window clipping under e10s. r=mstange
MozReview-Commit-ID: 4R5h3DeIU0S
2016-03-21 09:52:21 -05:00
Matt Woodrow
b6d0af7096 Bug 1223736 - Part 1: Set correct effective transform on mask layers. r=thinker 2016-03-22 09:06:58 +13:00
Carsten "Tomcat" Book
9707620c4e Backed out changeset ceb8532131fb (bug 1223736) for reftest failures 2016-03-18 09:58:39 +01:00
Matt Woodrow
55ce22f460 Bug 1223736 - Part 1: Set correct effective transform on mask layers. r=thinker 2016-03-18 18:45:13 +13:00
Matt Woodrow
d0b12ada69 Bug 1250718 - Don't flatten opacity to an intermediate surface when used in the middle of preserve-3d. r=thinker 2016-03-18 09:23:51 +13:00
Matt Woodrow
d710bf12bc Bug 1250718 - Improve layer logging for preserve-3d layers. r=thinker 2016-03-18 09:18:10 +13:00
Jonathan Watt
9f2fb9394c Bug 1253094, part 2 - Stop using DebugOnly for class/struct members in gfx/. r=Bas
MozReview-Commit-ID: 7rDHRqNgQqL
2016-02-26 15:52:07 +00:00
Matthew S
278c60d3fc Bug 1247450 - Rename LayerComposite::GetShadowTransform to GetShadowBaseTransform. r=botond
MozReview-Commit-ID: 4HkKFCDQW4l
2016-02-20 19:05:59 -05:00
kearwood
ccf22e27a5 Bug 1237689 - Enable Oculus hardware latency tester r=daoshengmu
- Generate and pass sequential frame indexes into the ovr_GetTrackingState call and the corresponding call to ovr_SubmitFrame

MozReview-Commit-ID: 5tJl5YJt7Eo
2016-01-08 18:50:10 -08:00
Botond Ballo
cf3eefd9e4 Bug 1247452 - Use the effective visible region rather than the visible region where appropriate in the compositor. r=mattwoodrow
MozReview-Commit-ID: 6wbe0kUWh9h
2016-02-12 20:24:38 -05:00
Michelangelo De Simone
3c44cb010c Bug 1247445 - Rename Layer::GetEffectiveVisibleRegion GetLocalVisibleRegion. r=botond 2016-02-13 16:50:51 -08:00
Matt Woodrow
5f57f1aaf4 Bug 1229317 - Allow preserve-3d and opacity to be combined on the root element of a preserve-3d chain. r=roc 2016-02-07 23:51:11 +13:00
Phil Ringnalda
b42e5c6dd4 Back out e751d638ab4b (bug 1229317) for reftest "Assertion failure: oldState < kReadMax" and crashes
CLOSED TREE
2016-02-05 22:42:55 -08:00
Matt Woodrow
5ed8180d76 Bug 1229317 - Allow preserve-3d and opacity to be combined on the root element of a preserve-3d chain. r=roc 2016-02-06 17:57:34 +13:00
Birunthan Mohanathas
bfee0fb40c Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Hiroyuki Ikezoe
1bbc6e0c4e Bug 1216842 - Part 2: Add LayerAnimationUtils. r=cam
This is also for compositor side.
we need a new class to share the function which converts TimingFunction
to ComputedTimingFunction for either keyframe's timing function or keyframe
effect's timing function.
2016-01-29 14:44:00 +01:00
Phil Ringnalda
d871b9515f 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
245cd6a02f Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Nicholas Nethercote
241b89e77e Bug 1239864 (part 4) - Use the new rect iterators in gfx/. r=nical. 2016-01-18 17:20:58 -08:00
Jeff Muizelaar
a7813522cf Bug 1228641. Add a initializer_list constructor to nsTArray. r=froydnj
This also adds a couple of users of the new pattern.
2016-01-17 22:11:25 -05:00
Botond Ballo
4cd217e380 Bug 1236750 - Add typed getters for layer transform matrices. r=kats 2016-01-06 18:56:58 -05:00
Nicholas Nethercote
6a634f5d75 Bug 1237151 (part 3) - Remove ignored qualifiers in all remaining code. r=froydnj. 2016-01-05 17:08:45 -08:00
Bas Schouten
2ad97d694d Bug 1220629 - Part 4: Allow gfxContext to use the native pushlayer implementations based on a pref. r=jrmuizel 2016-01-06 00:04:42 +01:00
Kearwood (Kip) Gilbert
2773eeacb8 Bug 1182048 - Part 2: Implement e10s support for WebVR,r=vlad 2015-09-17 14:23:13 -07:00
Sunny Sidhu
2ba69faae0 Bug 1220873 - Make Layer::mVisibleRegion a LayerIntRegion. r=botond 2015-11-29 02:07:55 -05:00
Matt Woodrow
8a960d1c72 Bug 1168263 - Add a flags parameter to GetResultingTransformMatrix instead of using bools. r=roc 2015-11-26 22:32:35 +13:00
Botond Ballo
e26ba97449 Bug 1168263 - Annotate layers with a perspective transform. r=mattwoodrow 2015-11-02 17:38:08 -05:00
Kartikaya Gupta
ee94aac396 Bug 1214267 - Followup to fix missing propagation of 'fixedPositionSides' to the compositor, and add it to the layers dump. r=mattwoodrow
DONTBUILD because this is a backout/reland to fix bug number.
2015-11-13 09:38:57 -05:00
Kartikaya Gupta
85e1877b24 Back out cset 7529d41e6f1b for landing with an incorrect bug number. r=me 2015-11-13 09:37:53 -05:00
Kartikaya Gupta
69f5a2b7d9 Bug 1224209 - Fix missing propagation of 'fixedPositionSides' to the compositor, and add it to the layers dump. r=mattwoodrow 2015-11-13 09:35:40 -05:00
Botond Ballo
0b673c5e79 Bug 1222661 - Replace ToUnknown(obj) and FromUnknown(obj) with obj.ToUnknown*() and FromUnknown*(obj). r=nical 2015-11-09 17:49:46 -05:00
Botond Ballo
db5d15db66 Bug 1222661 - Replace ToUntyped(obj) calls with obj.ToUnknown*(). r=nical 2015-11-06 22:13:40 -05:00
Nicholas Nethercote
47614279a7 Bug 1223215 (part 4) - Remove a ToSize() call. r=jrmuizel. 2015-11-08 21:04:42 -08:00
Thinker K.F. Li
31d944f459 Bug 1211360 - Don't snap for non-translation 3D transform. r=roc 2015-10-25 22:05:00 -04:00
Nicholas Nethercote
4980c57e44 Bug 1219476 (part 3) - Replace PRLogModuleInfo usage with LazyLogModule in gfx/. r=erahm. 2015-10-29 15:44:31 -07:00
Markus Stange
eb4d35b052 Bug 1217168 - Respect layer clip rects during plugin visibility computation. r=jimm 2015-10-27 21:06:57 +01:00
Milan Sreckovic
8feec0d950 Bug 1214802 - gfxEnv - consolidate environment variables used by the graphics code in one place. r=botond 2015-10-28 14:31:00 +01:00
Nathan Froyd
d67e8ef562 Bug 1217662 - part 4 - move {LayerManager,Layer}::RemoveUserData out-of-line; r=mattwoodrow
Having these out-of-line means that we don't have to have
LayerUserData's destructor in scope for the destruction of the local
nsAutoPtr.  This change will enable us to forward-declare LayerUserData
in Layers.h and thereby encourage people to use the correct header for
LayerUserData.
2015-10-22 16:57:29 -04:00
Nathan Froyd
56087bfff0 Bug 1217662 - part 1 - make LayerManagerUserDataDestroy a static function of LayerManager; r=mattwoodrow
LayerManagerUserDataDestroy is a static function in Layers.h that we
only ever take a pointer to, to use it as a destruction function for
gfx::UserData.  It's *possible* the compiler is smart enough to call it
directly, rather than through the function pointer stored in
gfx::UserData, but that seems highly unlikely.  And
LayerManagerUserDataDestroy does a virtual call anyway, so it's not as
though it being inlined is particularly important.

All of this is to say that we don't need to define
LayerManagerUserDataDestroy in Layers.h; defining it out-of-line will be
just as effective.  Defining it out-of-line also means that we don't
need the definition of LayerUserData anywhere in Layers.h, and we can
move LayerUserData to a separate header.
2015-10-22 15:39:30 -04:00
Nathan Froyd
4e6d8f6705 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
2015-10-18 01:24:48 -04:00
Nathan Froyd
bf7f6dda03 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
Morris Tseng
8ce8403338 Bug 709490 - Part 7: If layer is not available, fallback to BasicCanvasLayer. r=roc 2015-10-12 11:21:03 +08:00
Morris Tseng
5d262e4409 Bug 709490 - Part 1: Let ImageBridge transfer CanvasClient async. r=nical
Thanks Jon Morton [:jmorton] (jonanin@gmail.com) for polishing patches.
2015-10-12 11:21:02 +08:00
Nicholas Nethercote
69ab754504 Bug 1211324 (part 5) - Remove GraphicsFilter and gfxGraphicsFilter. r=mattwoodrow. 2015-10-05 17:18:10 -07:00
Nicholas Nethercote
e04159e24b Bug 1211324 (part 4) - Replace GraphicsFilter constants with gfx::Filter equivalents. r=mattwoodrow.
The conversion is as follows:

- GraphicsFilter::FILTER_NEAREST == gfx::Filter::POINT
- GraphicsFilter::FILTER_GOOD    == gfx::Filter::GOOD
- GraphicsFilter::FILTER_BEST    == gfx::Filter::LINEAR

Also typedef GraphicsFilter to gfx::Filter; this will be removed in the next
patch.

These changes mean ToFilter() and ThebesFilter() are no longer needed.
2015-10-05 17:12:46 -07:00
Nicholas Nethercote
0fe83f7ab7 Bug 1211324 (part 3) - Remove GraphicsFilter::FILTER_FAST and replace it with FILTER_BEST. r=mattwoodrow.
This may sound like an odd change but it's what the current code effectively
already does due to the way ToFilter() and ThebesFilter() are defined.
2015-10-05 16:59:32 -07:00
Nicholas Nethercote
989be11d81 Bug 1211324 (part 1) - Remove BILINEAR and GAUSSIAN filter constants.
These aren't used meaningfully.
2015-10-04 20:05:28 -07:00