Commit Graph

277 Commits

Author SHA1 Message Date
Jeff Gilbert
6e032aab6c Bug 716859 - Streaming GLContext buffers (doublebuffering, etc) - r=bjacob,jrmuizel,vlad 2013-02-13 15:26:24 -08:00
Nicholas Cameron
b9dfd6c587 Bug 828531; fix scaling CSS pixels for animations; r=roc
--HG--
extra : rebase_source : 0e24bf2ee472a37b742efe3d142c2c25fef3e572
2013-02-13 10:00:54 +13:00
Nicholas Cameron
b5263b1c6c Bug 836058; remove UseTiledThebes; r=BenWa 2013-01-29 14:38:46 +13:00
Avi Halachmi
e0f25c9274 Bug 826383: cyclic array for frames recording to support concurrent users. r=jmuizelaar,khuey 2013-01-23 20:47:44 +02:00
Oleg Romashin
9ffe6086ee Bug 824428 - Add Environment option which would allow to use Tiled Thebes Layers. r=bgirard 2013-01-14 20:21:02 -08:00
L. David Baron
8ebe5a4445 Bug 827717: Change record of CSS animation start to be before delay so that dynamic changes to animation-delay are honored. r=bzbarsky
This matches the CSS Working Group consensus recorded in
http://lists.w3.org/Archives/Public/www-style/2012Nov/0261.html , though
the spec hasn't yet been updated.
2013-01-10 21:14:51 -08:00
Matt Woodrow
b46981a325 Bug 818575 - Make TransformShadowTree transform all descendant scrollable layers instead of just the first. r=roc 2013-01-10 22:10:20 +13:00
Nicholas Cameron
351f5f0388 Backout bug 818575
--HG--
extra : rebase_source : 0a06e4594a98b17befff7d58cd68faa693f3fd91
2013-01-09 18:06:35 +01:00
Matt Woodrow
8e6457f392 Bug 818575 - Make TransformShadowTree transform all descendant scrollable layers instead of just the first. r=roc
--HG--
extra : rebase_source : 2befc9553af0be20643940e8bf71c0f71d13403e
2013-01-10 22:10:20 +13:00
Ed Morley
aa4b19eee4 Backout 645bf43f8f14 (bug 818575) for crashes on Android on a CLOSED TREE 2013-01-10 13:17:12 +00:00
Matt Woodrow
071028e719 Bug 818575 - Make TransformShadowTree transform all descendant scrollable layers instead of just the first. r=roc 2013-01-10 22:10:20 +13:00
Robert O'Callahan
444ff0d2b5 Bug 828207: Wallpaper over not being able to find a layer manager on the main thread when initializing a remote render frame. That's OK, we'll find one on the compositor thread. r=cjones 2013-01-10 11:02:21 +01:00
Nicholas Cameron
971e0288d5 Bug 824454; use the resolution scale in OMTA transforms. r=cjones; a=blocking-basecamp
--HG--
extra : rebase_source : 8f045dd319418b771c5f31ca2f3477ab5673a5ad
2013-01-08 10:39:12 +01:00
Avi Halachmi
28ffc25c71 Bug 820167 - Tab open/close animation prints performance data to error console when enabled. r=jmuizelaar,dao 2013-01-03 21:53:15 -05:00
Robert O'Callahan
90f9d2a33d Bug 663776. Part 3: Refactor layer transform snapping to distinguish translation-snapping from rect-snapping, and don't snap translation+scale transforms when we don't know all four edges of the rect that needs to be snapped. r=mattwoodrow
This separates SnapTransform into SnapTransformTranslation, which just snaps translations
and nothing else, and SnapTransform, which snaps translation+scale of rectangles.
2012-12-07 12:58:13 +13:00
Dão Gottwald
3e5deace1e Backed out changeset e14c7409ede7 2012-12-18 01:04:30 +01:00
Avi Halachmi
a1d09d0622 Bug 820167: Enable performance measurement of tab animation. r=jmuizelaar 2012-12-17 18:48:01 -05:00
Jeff Walden
120886ca73 Bug 820570 - Move mozilla::DebugOnly into DebugOnly.h to pare down the grab-baggish Util.h. r=Ms2ger 2012-12-14 18:58:45 -05:00
Robert O'Callahan
fae9165b76 Bug 663776. Part 0.5: Mark layers that could have their transforms changed via off-main-thread animations or empty transactions, and treat all ThebesLayerOGL descendants of such layers as potentially resampled so that their buffers are put into the correct state and size. r=mattwoodrow
--HG--
extra : rebase_source : d3c78cc61f1a3d5f12dedb57180371b41b1647f6
2012-12-12 18:21:23 +13:00
Nicholas Cameron
c54f8d4754 Bug 780692; throttle OMTA (rollup patch). r=dbaron,bz
--HG--
extra : rebase_source : 1207275df5c509ac1974e2b9333c738b995f9d5e
2012-12-12 10:12:43 +13:00
Ed Morley
2f3183fde3 Backout 55d5f3cd5c85, d89ae7f40549 & 270391fca858 (bug 663776) for assertions 2012-12-07 12:37:36 +00:00
Robert O'Callahan
ed26918aaa Bug 663776. Part 3: Refactor layer transform snapping to distinguish translation-snapping from rect-snapping, and don't snap translation+scale transforms when we don't know all four edges of the rect that needs to be snapped. r=mattwoodrow
This separates SnapTransform into SnapTransformTranslation, which just snaps translations
and nothing else, and SnapTransform, which snaps translation+scale of rectangles.
2012-12-07 12:58:13 +13:00
Chris Lord
64f87da2cf Bug 814437 - Address review comments that were missed. r=bgirard
In my haste, I forgot to address review comments before pushing. This
corrects indentation in PanningPerf.java, moves GetValidLowPrecisionRegion from
Layer to TiledLayerComposer and corrects checkerboard measurement when there
isn't a low precision buffer and when the display ports don't cover the screen.
2012-11-30 23:11:37 +00:00
Ehsan Akhgari
0419d82de3 Backed out changeset 5368aced79b3 (bug 814437) because it breaks Android builds 2012-11-30 15:41:08 -05:00
Chris Lord
6d77e6f162 Bug 814437 - Address review comments that were missed. r=bgirard
In my haste, I forgot to address review comments before pushing. This
corrects indentation in PanningPerf.java, moves GetValidLowPrecisionRegion from
Layer to TiledLayerComposer and corrects checkerboard measurement when there
isn't a low precision buffer and when the display ports don't cover the screen.
2012-11-30 19:52:17 +00:00
Matt Woodrow
6d2e1e3a69 Bug 810302 - Don't try to draw layers with a singular transform on BasicLayers. r=roc 2012-11-30 11:11:04 +13:00
Boris Zbarsky
9a39de6d40 Bug 815671 part 4. Remove some array copying in gfx code. r=roc 2012-11-29 11:14:13 -05:00
Chris Lord
7d410314ef Bug 814437 - Count low precision rendering 0.5x towards checkerboarding. r=bgirard 2012-11-29 12:03:27 +00:00
Chris Jones
270f8e37db Bug 804852: Support for the hwc implementation of Composer2D. r=mattwoodrow,mwu,roc sr=roc
This is a rollup of the following patches

part 0: Add a dynamic cast to ColorLayer*

part 1: Add a Composer2D interface to enable implementations to more efficiently compose layer trees

part 2: Let widgets expose Composer2Ds, if they have them

part 3: Expose a layers ogl "friend" API that Composer2D will consume

part 4: Hook Composer2D into the LayerManagerOGL rendering pipeline

part 5: Implement all the goop to let widget/gonk use a Composer2D (HwcComposer2D)
2012-11-19 09:58:38 -08:00
Chris Jones
18843b20e1 Bug 806029: Have remote content drop their buffers when they're hidden. r=mattwoodrow sr=roc 2012-11-07 19:51:55 -08:00
Chris Jones
061dec3e69 Bug 807142: Make containers for DisplayRemote behave like leaf layers when we're resolution-scaling. r=mattwoodrow 2012-11-02 00:13:08 -07:00
Jeff Muizelaar
ddf572c122 Bug 800031. Include paint time int tab switch telemetry. r=ehsan,dao,bjcaob
This adds a new FX_TAB_SWITCH_TOTAL_MS that should more accurately represent
the user experience of tab switch time than FX_TAB_SWITCH_UPDATE_MS.
FX_TAB_SWITCH_UPDATE_MS is being kept because it gives a good indication of how
much time is being spent in the front end parts vs the painting parts.

This works by measuring the time between beginTabSwitch() and the first call to
LayerManager::PostPresent().
2012-10-11 13:54:27 -04:00
Chris Jones
3211a0327d Bug 790505, part 3: Add API for scheduling a shadowable-layer mutation to be applied at the next layers transaction. r=mattwoodrow,roc 2012-10-02 22:55:50 -07:00
Chris Jones
38cde694be Back out bug 790505 for leaking 2012-10-03 00:21:08 -07:00
Chris Jones
769ed664e0 Bug 790505, part 2: Add API for scheduling a shadowable-layer mutation to be applied at the next layers transaction. r=mattwoodrow,roc 2012-10-02 22:55:50 -07:00
Matt Woodrow
202bc0e49e Bug 770617 - Always mark inactive CanvasLayers as being dirty. r=cjones 2012-09-30 19:20:25 +13:00
Isaac Aggrey
481e7dfb0b Bug 791906: Replace NSPR integer limit constants with stdint ones; r=ehsan 2012-09-28 01:57:33 -05:00
Oleg Romashin
c633561323 Bug 539356 - Part 20 - Simplify regions to avoid excessive region calculation. r=roc 2012-08-29 17:48:43 +12:00
Matt Woodrow
0bcc3bdfe2 Bug 539356 - Part 12 - Remove unnecessary LayerManagerLayerBuilder indirection. r=roc 2012-08-29 17:48:15 +12:00
Matt Woodrow
5730a3f4b2 Bug 539356 - Part 9f - Compute the invalid area of the layer tree and pass this to the widget. r=roc 2012-08-29 17:47:18 +12:00
Ed Morley
aba3a8f5ef Revert mozilla-inbound to e4dd1fa6d222 for crashes and test failures on a CLOSED TREE 2012-09-27 16:34:46 +01:00
Oleg Romashin
9ec3691460 Bug 539356 - Part 20 - Simplify regions to avoid excessive region calculation. r=roc 2012-08-29 17:48:43 +12:00
Matt Woodrow
c7595046d1 Bug 539356 - Part 12 - Remove unnecessary LayerManagerLayerBuilder indirection. r=roc 2012-08-29 17:48:15 +12:00
Matt Woodrow
4d096475d2 Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-08-29 17:38:58 +12:00
Chris Lord
b1531c3725 Bug 794200 - Progressive draw tiles in the direction of scrolling. r=bgirard
When scrolling downwards, make sure to fill in tiles from the top, upwards
from the bottom, left from the right and right from the left.
2012-09-26 21:41:56 +01:00
Robert O'Callahan
60f5afa85b Bug 777194. Part 1: Use an epsilon tolerance value when comparing residual translations. r=tnikkel 2012-08-17 11:38:59 +12:00
Chris Lord
7874452a54 Bug 785333 - Add ContainerLayer::RepositionChild. r=bas
Add a function that can be used to quickly reposition a layer child, rather
than forcing removal/insertion and the extra work that can involve.
2012-08-29 11:52:55 +01:00
Ehsan Akhgari
e368dc9c85 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
David Zbarsky
3154e1b535 Bug 784004 - Don't include Layers.h everywhere Part 3 r=nical 2012-08-21 00:06:46 -04:00
David Zbarsky
15b5fb7346 Bug 776401 Part 2: Add animation to the layer and then add segments directly to it r=roc 2012-08-20 09:35:42 -04:00
Matt Woodrow
8fc24c5bdf Bug 778036 - Only mark Layers as Mutated if the property values are different. r=roc 2012-08-07 15:00:41 +12:00
Matt Woodrow
95deb3d01d Bug 778036 - Retain RefLayers instead of creating them every frame. r=roc 2012-08-07 15:00:41 +12:00
Joe Drew
022bcccbfb Bug 781679 - Assert that we're not in the middle of a transaction when we switch layer managers. r=mattwoodrow 2012-08-15 17:55:38 -04:00
Matt Woodrow
2ebb996f8c Bug 539356 - Part 8b - Move painting of retained layers to the view manager flush, and only composite on the paint event. r=roc
* * *
Fix Empty transactions with the new paint timing
2012-08-13 22:10:10 +12:00
Matt Woodrow
8e8f866f65 Bug 539356 - Part 8a - Add END_NO_COMPOSITE to EndTransactionFlags and implement in for all LayerManagers. r=roc 2012-08-13 22:10:10 +12:00
Chris Lord
e7e6823aa8 Bug 775431 - Make MOZ_DUMP_PAINT_LIST output terminal-friendly. r=mattwoodrow
Only output in HTML if we're dumping to a file, otherwise output as it did
before the HTML output change was made.
2012-08-07 18:57:26 +01:00
Matt Woodrow
3276a711dc Bug 778036 - Add Has function to gfx::UserData and use it in Layers to correctly check for existance of user data. r=roc 2012-08-03 17:38:44 -07:00
David Zbarsky
aaa7d5ced9 Bug 706179 Part 3: Turn on the use of scaling for layers in FrameLayerBuilder r=mattwoodrow 2012-08-03 14:29:22 -07:00
David Zbarsky
c88b41986f Bug 706179 Part 1: Add support for animations to the Layers API r=roc, dbaron, cjones 2012-07-31 10:28:20 -07:00
David Zbarsky
c83e9b7631 Bug 706179 Part 2: Add a BaseTransform and scaling to layers, r=roc, cjones 2012-07-30 19:20:00 -07:00
David Zbarsky
c6b51c42c1 Bug 778519 - Don't include Layers.h everywhere Part 2 r=cjones 2012-07-30 17:42:26 -07:00
Mark Finkle
ecceaf8977 Backout 169ff207ed19, a34baed70c1b, f9ccdd490bd7, 39550ed860e6, 2194a2dd66b2, 908eb2e26843, a76e0a267f26 due to mobile viewport bustage (bug 778580) 2012-07-30 14:36:12 -04:00
Aryeh Gregor
d0ad5a7d0c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
David Zbarsky
f8268417e9 Bug 778496 - Layer should store ComputedTimingFunction directly rather than as a pointer r=roc 2012-07-29 18:59:26 -07:00
David Zbarsky
3a15cfbf6b Bug 706179 Part 2: Add a BaseTransform to layers r=roc 2012-07-27 13:23:45 -07:00
David Zbarsky
687786c2e9 Bug 706179: Add support for animations to the Layers API r=roc, dbaron, cjones 2012-07-27 13:23:44 -07:00
Ed Morley
3ed23376d4 Backout 1244b8a8e57a (bug 755084), 32d16d0f87c9 (bug 706179), 8548e016d4a9 (bug 768440), 697f5b87eae9 (bug 768440), 808fc2bd4e8c (bug 755084), 54b1484cd125 (bug 755084), 876726b632c0 (bug 706179) for xul android R3 failures 2012-07-25 16:37:04 +01:00
David Zbarsky
6b4c02cd9f Bug 706179 Part 2: Add a BaseTransform to layers to return the layer's transform without scaling applied r=roc 2012-07-25 01:48:10 -07:00
David Zbarsky
ced60d55d3 Bug 706179: Add support for animations to the Layers API r=roc, dbaron, cjones 2012-07-25 01:48:09 -07:00
Matt Brubeck
90029e0bf6 Back out f4f5189b1d0c, 3b4f0606c547, b8a5a1ab8a5f, 5078933d6954, 7e0260c45de9 (bug 768440, bug 755084, bug 706179) because of reftest failures 2012-07-23 20:25:51 -07:00
David Zbarsky
33710a6b6d Bug 706179: Add support for animations to the Layers API r=roc, dbaron, cjones 2012-07-23 17:34:22 -07:00
Matt Woodrow
1a5c93fd0e Bug 741682 - Flatten component alpha layers into their parent layer with BasicLayers. r=roc 2012-07-23 15:00:36 +12:00
David Zbarsky
9a61d96c70 [Bug 774505] Don't include Layers.h everywhere r=cjones 2012-07-18 12:31:40 -04:00
Chris Jones
f86571551f Bug 745148, part 7: Create a RefLayer type to temporarily contain a foreign layer subtree during composition. r=BenWa sr=roc 2012-07-17 16:59:45 -07:00
Chris Jones
791fa8f037 Bug 745148, part 6: Allow layer trees to be given IDs so that the referent can be used in another context. r=ajuma sr=roc 2012-07-17 16:59:45 -07:00
Matt Woodrow
dab82349ce Bug 539356 - Part 2 - Add new API to BasicLayers. r=roc 2012-07-17 13:03:51 -04:00
Matt Woodrow
b095ec8407 Bug 539356 - Part 1 - Allow LayerManagers to have multiple user data objects. r=roc 2012-07-17 13:03:50 -04:00
Nicolas Silva
966f3cd0b1 Bug 598868: Add support for pushing video frames directly to the compositor thread, bypassing the content thread. r=cjones 2012-07-13 15:38:09 -04:00
Ehsan Akhgari
78b833f61a Backout changeset 89f35d1fea6c (bug 539356) because of performance and correctness regressions 2012-07-03 20:32:33 -04:00
Ehsan Akhgari
3c74e1a1e2 Backout changeset 75419010ac02 (bug 539356) because of performance and correctness regressions 2012-07-03 20:31:54 -04:00
Ehsan Akhgari
658ec4eb81 Backout changeset d97bd4246317 (bug 539356) because of performance and correctness regressions 2012-07-03 20:26:18 -04:00
Ehsan Akhgari
94344ff460 Backout changeset bd0a91621ea9 (bug 539356) because of performance and correctness regressions 2012-07-03 20:25:57 -04:00
Ehsan Akhgari
cf18ee9122 Backout changeset f568fc280fb0 (bug 539356) because of performance and correctness regressions 2012-07-03 20:24:55 -04:00
Ehsan Akhgari
12c6e3a4cf Backout changeset 65410094add4 (bug 539356) because of performance and correctness regressions 2012-07-03 20:19:18 -04:00
Ehsan Akhgari
8b3c1f653a Backout changeset cb1ac88bedc2 (bug 539356) because of performance and correctness regressions 2012-07-03 20:14:11 -04:00
Oleg Romashin
5cbefb95a7 Bug 539356 - Part 20 - Simplify regions to avoid excessive region calculation. r=roc 2012-06-30 15:06:13 +12:00
Matt Woodrow
f4ee9e6284 Bug 741682 - Disable component alpha layers with BasicLayers. r=roc 2012-06-30 15:06:12 +12:00
Matt Woodrow
31125260ee Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt 2012-06-30 15:06:11 +12:00
Matt Woodrow
46e6f3d27b Bug 539356 - Part 8b - Move painting of retained layers to the view manager flush, and only composite on the paint event. r=roc 2012-06-30 15:06:10 +12:00
Matt Woodrow
7aaf9816cd Bug 539356 - Part 8a - Add END_NO_COMPOSITE to EndTransactionFlags and implement in for all LayerManagers. r=roc 2012-06-30 15:06:10 +12:00
Matt Woodrow
2c1238be89 Bug 539356 - Part 2 - Add new API to BasicLayers. r=roc 2012-06-30 15:06:09 +12:00
Matt Woodrow
f03cf41652 Bug 539356 - Part 1 - Allow LayerManagers to have multiple user data objects. r=roc 2012-06-30 15:06:09 +12:00
Chris Lord
737f39fdfa Bug 758620 - Force fixed-position frames to have their own layers. r=roc
Introduce a new display-list item 'nsDisplayFixedPosition' that represents
fixed-position elements. This item cannot be merged, which forces fixed
position elements to have their own layer, and has a BuildLayer implementation
that sets the necessary metadata on a Layer to be able to maintain its
position correctly during composition when asynchronously panning and zooming.
2012-06-27 16:43:57 +01:00
Ed Morley
46f74afdf1 Backout de70e79ced32, ddd519d0767e, 9b952d924953 & 03efce585669 (bug 758620) for reftest failures 2012-06-26 16:13:33 +01:00
Chris Lord
d68b636b06 Bug 758620 - Force fixed-position frames to have their own layers. r=roc
Introduce a new display-list item 'nsDisplayFixedPosition' that represents
fixed-position elements. This item cannot be merged, which forces fixed
position elements to have their own layer, and has a BuildLayer implementation
that sets the necessary metadata on a Layer to be able to maintain its
position correctly during composition when asynchronously panning and zooming.
2012-06-26 14:43:11 +01:00
Nicholas Cameron
162bac1537 Bug 757346; mask image format stuff - use A8 textures (except DX10) and some small, misc fixes. r=roc 2012-06-26 14:43:31 +12:00
Nicholas Cameron
f1e0596d58 Bug 757347; Add a shutdown hook and remove MaskImageFormat(). r=roc 2012-06-26 14:43:30 +12:00
Nicholas Cameron
1a825cc2d4 Back out bug 757346
--HG--
extra : rebase_source : 8a07c2c56ca9dbc165012b679d421435cc886c2c
2012-06-26 10:54:05 +12:00
Nicholas Cameron
eabed73236 Bug 757346; mask image format stuff - use A8 textures (except DX10) and some small, misc fixes. r=roc 2012-06-26 09:44:41 +12:00
Nicholas Cameron
841c20e037 Bug 757347; Add a shutdown hook and remove MaskImageFormat(). r=roc 2012-06-26 09:44:41 +12:00