Commit Graph

582 Commits

Author SHA1 Message Date
Benoit Girard
6ed333dbb5 Bug 851611 - Part 3: Rename headers. r=jrmuizel
--HG--
rename : tools/profiler/sampler.h => tools/profiler/GeckoProfiler.h
rename : tools/profiler/sps_sampler.h => tools/profiler/GeckoProfilerImpl.h
extra : rebase_source : 6ea7c660764a4390cdd8dd91561fff1d7bad6035
2013-03-18 15:25:50 +01:00
Benoit Girard
bbe4c3065e Bug 851611 - Part 2: Update profiler calls. r=jrmuizel
--HG--
extra : rebase_source : f76accc3d3dd86c75cb3e9750734f23ec9c29941
2013-03-16 00:47:02 -04:00
James Willcox
c5cc1a2876 Bug 829747 - Update WebGL canvases asynchronously r=bgirard,jgilbert 2013-03-22 15:22:20 -04:00
Ed Morley
260f849645 Backed out changeset b43bbab312e7 (bug 829747) for ABORTs on Android 2.2; CLOSED TREE 2013-03-22 19:10:24 +00:00
James Willcox
7f1add90db Bug 829747 - Update WebGL canvases asynchronously r=bgirard,jgilbert
--HG--
extra : rebase_source : ba0f95badd9b5d7e537b3c83e0057665bd5ced86
2013-03-22 12:13:21 -04:00
Matt Woodrow
be7f863146 Bug 831313 - Bail out from rendering rather than aborting if we fail to allocate shared memory for a layers surface. r=roc 2013-03-21 15:33:00 +13:00
Robert O'Callahan
2149a71033 Bug 843618. When reading back the results of clayer ompositing to draw them to a non-deefault rendering context, don't depend on the size of the rendering context's target surface --- it could be anything. r=jrmuizel 2013-03-21 00:22:58 +13:00
Ed Morley
4a0f5f39ca Backed out changeset c75481a07302 (bug 851611) 2013-03-18 14:10:35 +00:00
Ed Morley
47bc17c5f5 Backed out changeset d195190adc48 (bug 851611)
--HG--
rename : tools/profiler/GeckoProfiler.h => tools/profiler/sampler.h
rename : tools/profiler/GeckoProfilerImpl.h => tools/profiler/sps_sampler.h
2013-03-18 14:10:30 +00:00
Benoit Girard
90f13c7e56 Bug 851611 - Part 3: Rename headers. r=jrmuizel
--HG--
rename : tools/profiler/sampler.h => tools/profiler/GeckoProfiler.h
rename : tools/profiler/sps_sampler.h => tools/profiler/GeckoProfilerImpl.h
extra : rebase_source : 552fe1d3ff61d15b264aaf86f7c8cb4f4eff69d1
2013-03-18 14:41:02 +01:00
Benoit Girard
95a5b4c35f Bug 851611 - Part 2: Update profiler calls. r=jrmuizel
--HG--
extra : rebase_source : 3032aaf7e50cdf9c350da688ec34e50a695fc7ca
2013-03-16 00:47:02 -04:00
Chris Lord
f6386d803e Bug 850396 - Disable single-tile paint path in BasicTiledThebesLayer. r=bgirard
This code-path has always had issues, but the fix in bug 842389 causes them
to be exposed more frequently.
2013-03-13 18:31:01 +00:00
Jeff Walden
59e9a3888e Bug 847480 - Convert DeprecatedAbs uses that can relatively obviously be changd to Abs, to Abs. r=Ms2ger 2013-03-05 15:43:53 -08:00
Jeff Walden
000d820503 Bug 847480 - Blindly convert all existing mozilla::Abs users to mozilla::DeprecatedAbs. Individualized conversions to the reformed mozilla::Abs will continue until mozilla::DeprecatedAbs is unused, at which point it will be removed. r=Ms2ger 2013-03-05 15:43:30 -08:00
Nicholas Cameron
9b252f936b Bug 842389 - return the right thing from ProgressiveUpdate; r=cwiiis 2013-03-07 15:02:06 +00:00
Jeff Walden
72eca3f9c1 Bug 835542 - Implement mozilla::Abs. r=Ms2ger
--HG--
extra : rebase_source : a3e62ff76365d27cc4cb10e4fee942ddb8b10b79
2013-02-15 19:55:36 -08:00
Ed Morley
caab8e796b Backed out changeset cacb9f3ee44d (bug 840693) 2013-03-04 14:37:43 +00:00
Anthony Jones
bce8f8e813 Bug 840693 - Change to using gfx:: types in AsyncPanZoomController; r=cjones 2013-03-04 13:25:26 +13:00
Benoit Girard
35297ef120 backout 9f044f9e981a (Bug 842389) due to page correctness regression bug 843997. 2013-02-22 13:32:58 -05:00
Jeff Gilbert
78f00c0f31 Bug 716859 - Streaming GLContext buffers (doublebuffering, etc) - r=bjacob,jrmuizel,vlad
--HG--
extra : rebase_source : 3fb4230127df8a265d930fb779bdc93e05626c8b
2013-02-13 15:26:24 -08:00
Ed Morley
23a70898de Backed out changeset 82747d694e7a (bug 716859) for android reftest-2 timeouts 2013-02-21 19:54:25 +00:00
Jeff Gilbert
197c718e7b Bug 716859 - Streaming GLContext buffers (doublebuffering, etc) - r=bjacob,jrmuizel,vlad
--HG--
extra : rebase_source : 5dad29809733a54a19cd3e5030498f00597d1dc8
2013-02-13 15:26:24 -08:00
Ryan VanderMeulen
b891b80fa0 Backed out changeset b46c006a7696 (bug 716859) and changeset 6a14e4c15aa6 (bug 841836) for B2G test failures on a CLOSED TREE. 2013-02-20 10:01:20 -05:00
Jeff Gilbert
2187525c49 Bug 716859 - Streaming GLContext buffers (doublebuffering, etc) - r=bjacob,jrmuizel,vlad 2013-02-13 15:26:24 -08:00
Nicholas Cameron
87d332a258 Bug 842389 - return the right thing from ProgressiveUpdate; r=BenWa,cwiiis 2013-02-20 09:01:34 +13:00
Chris Jones
6c35700be5 Bug 840372: Don't let valid regions grow beyond 8 rects. r=roc 2013-02-12 13:13:16 -08:00
Nicholas Cameron
c1b2e92063 Bug 836058; remove UseTiledThebes; r=BenWa 2013-01-29 14:38:46 +13:00
Paul Adenot
63641e4448 Bug 825325 - ImageContainer::NotifyPaintedImage is not called on android. r=nical 2013-01-18 16:57:17 +01:00
Ed Morley
3de1bf91c3 Backout b3a8618f901c (bug 829042), 34a9ef8f929d (bug 822933), 4c1215cefbab (bug 826349), 70bb7f775178 (bug 825325), e9c8447fb197 (bug 828713), eb6ebf01eafe (bug 828901), f1f3ef647920 (bug 825329), f9d7b5722d4f (bug 825329), 5add564d4546 (bug 819377), 55e93d1fa972 (bug 804875), f14639a3461e (bug 804875), 23456fc21052 (bug 814308) for Windows pgo-only mochitest-1 media test timeouts on a CLOSED TREE 2013-01-16 15:16:23 +00:00
Paul Adenot
66b6a9aeda Bug 825325 - ImageContainer::NotifyPaintedImage is not called on android. r=nical 2013-01-15 19:57:04 +01:00
Oleg Romashin
dd18565bbe Bug 824428 - Add Environment option which would allow to use Tiled Thebes Layers. r=bgirard 2013-01-14 20:21:02 -08:00
Robert O'Callahan
f8012aaeca 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
Ms2ger
aea685a0e8 Bug 805939 followup: include Hal.h correctly. 2012-12-23 14:48:07 +01:00
Chiajung Hung
34d6df648e Bug 805939: Wait for shadow trees to update orientation before recompositing. r=cjones 2012-11-22 10:40:57 +08:00
Mark Hammond
a2e03cff14 Backout cf585138ff25 (bug 805939) for Windows build bustage on a CLOSED TREE 2012-12-21 15:30:02 +11:00
Chiajung Hung
9c8179f70a Bug 805939: Wait for shadow trees to update orientation before recompositing. r=cjones 2012-11-22 10:40:57 +08:00
Oleg Romashin
20a9a6a166 Bug 822115 - nglayout.debug.widget_update_flashing pref cache is not thread safe. r=mattwoodrow 2012-12-16 11:25:04 -08:00
Jeff Walden
e0523203c9 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
0a7d1f4614 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
Ed Morley
4255844db7 Backout 55d5f3cd5c85, d89ae7f40549 & 270391fca858 (bug 663776) for assertions 2012-12-07 12:37:36 +00:00
Robert O'Callahan
a2b231d839 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
742c5a38d7 Bug 818169 - Add a pref to configure resolution of low precision buffer. r=bgirard 2012-12-05 17:10:41 +00:00
Chris Lord
a961c59e8b Bug 818025 - Fix BasicTiledThebesLayer fast path. r=bgirard
When disabling low precision and progressive rendering, BasicTiledThebesLayer
takes a fast path that avoids a lot of region operations, transformation and
iterations. Unfortunately, it also forgets to check if the mask layer exists
before trying to draw it, which causes an immediate crash in most cases.
2012-12-04 15:24:24 +00:00
Mats Palmgren
e6ad33709d Bug 817574 - Replace NS_ABS with std::abs. r=roc 2012-12-04 13:33:33 +01:00
Matt Woodrow
7ff4b0f6f1 Bug 810302 - Don't try to draw layers with a singular transform on BasicLayers. r=roc 2012-11-30 11:11:04 +13:00
Chris Lord
e0d69bfa1b Bug 814864 - Reconcile frame resolution difference in layer rendering. r=bgirard
Reconcile the difference when rendering a buffer that has a different frame
resolution to the primary buffer. This is handy for low precision buffers that
are updated at a different rate to primary buffers.
2012-11-29 13:08:41 +00:00
Chris Lord
6f781344f3 Bug 814864 - Do high precision updates before low precision updates. r=bgirard
Rather than interleaving high and low precision updates, do low after high.
This patch also refactors the code somewhat so that we don't needlessly
recalculate the values required for repeated transactions.
2012-11-29 13:08:40 +00:00
Jeff Gilbert
f0fdb0504f Bug 811958 - Fix and move ShateType type - r=bgirard 2012-11-26 14:23:27 -08:00
Jeff Gilbert
31671553a5 Backed out csets 807f2c3df974, 1637c39b4ed6, ec29e09a270e (bug 811958) for burning android 2012-11-26 13:48:20 -08:00
Jeff Gilbert
08572e4b8e Bug 811958 - Fix and move ShareType type - r=bgirard 2012-11-26 12:51:57 -08:00
Chris Lord
fba6244af3 Bug 783368 - Add a pref to control low precision tile rendering. r=bgirard
Add pref 'layers.low-precision-buffer', enabled on mobile/android.
2012-11-21 22:34:20 +00:00
Chris Lord
f15533b7e5 Bug 783368 - Uncouple low precision updates from standard. r=bgirard
Allow low precision updates to happen regardless of the state of the unscaled
tile buffer.
2012-11-21 22:34:20 +00:00
Chris Lord
8b4fb00720 Bug 783368 - Fix progressive tile update coherency issues. r=bgirard
Fix some progressive tile updating coherency issues caused by aborting at
inopportune times and tile draw ordering.
2012-11-21 22:34:19 +00:00
Chris Lord
b85091b04e Bug 783368 - Send the correct display port when rendering low precision. r=kats,bgirard
When doing a low precision update, send the display-port instead of the
critical display port so that more appropriate cancelling decisions can be
made.
2012-11-21 22:34:19 +00:00
Chris Lord
a50634bd4c Bug 783368 - Don't duplicate high precision rendering in low precision region. r=bgirard
Don't render valid high precision region in the low precision buffer.
2012-11-21 22:34:19 +00:00
Chris Lord
26ab25e0a5 Bug 783368 - Add a low precision buffer to tiled thebes layers. r=bgirard,kats
If there is a critical display port set, render the area outside it into a
lower precision buffer.
2012-11-21 22:34:19 +00:00
Chris Lord
e4979bfca9 Bug 783368 - Add resolution to TiledLayerBuffer. r=bgirard
Add the concept of resolution to TiledLayerBuffer and add support for it in
BasicTiledThebesLayer and TiledThebesLayerOGL.
2012-11-21 22:34:18 +00:00
Chris Lord
f3fe8a5a5d Bug 783368 - Prefer the critical display port, when set, in basic tiled layers. r=bgirard
If a critical display port is set, only validate content within it when using
basic tiled layers.
2012-11-21 22:34:18 +00:00
Ehsan Akhgari
a1ca146c7c Backed out 11 changesets (bug 783368) because of build bustage on a CLOSED TREE
Backed out changeset 2bc4310263c4 (bug 783368)
Backed out changeset a35c83a8d99d (bug 783368)
Backed out changeset afb9b2a661ba (bug 783368)
Backed out changeset 3926f510f9be (bug 783368)
Backed out changeset 9d1fe200ff87 (bug 783368)
Backed out changeset b6e4f88f5730 (bug 783368)
Backed out changeset bc53f7dba7c6 (bug 783368)
Backed out changeset 1948fa2fccc1 (bug 783368)
Backed out changeset 9af163388fd1 (bug 783368)
Backed out changeset 7a2256e1aa7c (bug 783368)
Backed out changeset 4da1958a9885 (bug 783368)
2012-11-21 14:57:02 -05:00
Chris Lord
d51cbc3aac Bug 783368 - Add a pref to control low precision tile rendering. r=bgirard
Add pref 'layers.low-precision-buffer', enabled on mobile/android.
2012-11-21 19:16:53 +00:00
Chris Lord
561141a84b Bug 783368 - Uncouple low precision updates from standard. r=bgirard
Allow low precision updates to happen regardless of the state of the unscaled
tile buffer.
2012-11-21 19:16:53 +00:00
Chris Lord
960993b01b Bug 783368 - Fix progressive tile update coherency issues. r=bgirard
Fix some progressive tile updating coherency issues caused by aborting at
inopportune times and tile draw ordering.
2012-11-21 19:16:52 +00:00
Chris Lord
9dafa73eb6 Bug 783368 - Send the correct display port when rendering low precision. r=kats,bgirard
When doing a low precision update, send the display-port instead of the
critical display port so that more appropriate cancelling decisions can be
made.
2012-11-21 19:16:52 +00:00
Chris Lord
2016290103 Bug 783368 - Don't duplicate high precision rendering in low precision region. r=bgirard
Don't render valid high precision region in the low precision buffer.
2012-11-21 19:16:52 +00:00
Chris Lord
a66bf654b5 Bug 783368 - Add a low precision buffer to tiled thebes layers. r=bgirard,kats
If there is a critical display port set, render the area outside it into a
lower precision buffer.
2012-11-21 19:16:52 +00:00
Chris Lord
d5ad57cd7c Bug 783368 - Add resolution to TiledLayerBuffer. r=bgirard
Add the concept of resolution to TiledLayerBuffer and add support for it in
BasicTiledThebesLayer and TiledThebesLayerOGL.
2012-11-21 19:16:51 +00:00
Chris Lord
7a7a8a8ebd Bug 783368 - Prefer the critical display port, when set, in basic tiled layers. r=bgirard
If a critical display port is set, only validate content within it when using
basic tiled layers.
2012-11-21 19:16:51 +00:00
Nicolas Silva
499651a424 b=811115 - remove MOZ_EGL_XRENDER_COMPOSITE dead code. r=jgilbert 2012-11-18 16:47:57 +01:00
Nicolas Silva
e4f96fc0f6 Bug 806428 - Do not abort when a ThebesLayer's size changes when previous size was (0,0). r=BenWa 2012-11-15 07:23:13 +01:00
Benoit Girard
06cb6800a0 Bug 794337 - Properly alias canvas image data when using Quartz compositing. r=jrmuizel
--HG--
extra : rebase_source : fb4c0e1a9bac0ac1cf54ddc23c66756060bbfdab
2012-11-02 16:24:37 -04:00
Chris Jones
3b6afccf0e Bug 806029: Have remote content drop their buffers when they're hidden. r=mattwoodrow sr=roc 2012-11-07 19:51:55 -08:00
Matt Woodrow
f0fabd4a39 Bug 807408 - Cache the temporary surface used when drawing ThebesLayers with BasicLayers. r=jrmuizel 2012-11-07 11:39:35 +13:00
Phil Ringnalda
30fad36dc1 Back out 0d4e09ade336 (bug 808746) for Android reftest bustage 2012-11-05 22:35:59 -08:00
Benoit Girard
8d660d9bcc Bug 808746 - Properly calculate the tile's origin when avoiding SinglePaintBuffer. r=bjacob 2012-11-05 23:41:58 -05:00
Matt Joras
cb9f8ae9e7 Bug 798033 - Removes "using namespace" directive from gfx headers - r=jmuizelaar 2012-10-25 16:12:59 -04:00
Chris Lord
2bdabb168c Bug 805014 - Disable progressive tiles when a shadow target is set. r=bgirard
The testing framework doesn't react well to paints not coming in synchronously.
Disable progressive tile painting when a shadow target is set on the layer
manager for now.
2012-10-25 17:27:08 +01:00
Chris Lord
e22cbeea8a Bug 803013 - Update valid region progressively with tiles. r=bgirard
When updating tiles progressively, make sure the valid region is also updated
progressively to avoid flickering.
2012-10-24 15:49:03 +01:00
Phil Ringnalda
d6c4126193 Backout 8cc37887f621 and b6bd9f564650 (bug 795259) and 8b9c7bf80449 (bug 803013) to investigate the effect on Android reftest-1 and -4 permaorange 2012-10-23 23:35:13 -07:00
Benoit Girard
6d8362a8e3 Bug 804724 - Add an abort painting marker. r=ehsan
--HG--
extra : rebase_source : 10f327e91b15d673303eb607a361c1c4d14a1e92
2012-10-23 17:18:37 -04:00
Chris Lord
ec28ea4248 Bug 803013 - Update valid region progressively with tiles. r=bgirard
When updating tiles progressively, make sure the valid region is also updated
progressively to avoid flickering.
2012-10-23 19:30:35 +01:00
Chris Lord
92a8e8eb5b Bug 803013 - Maintain coherency when progressively updating visible areas. r=bgirard
When rendering progressively, make sure that any previously visible area that
is still visible is updated at the same time. This helps maintain visual
coherency on pages that invalidate previously visible areas while scrolling,
and when losing layers between updates.

This supersedes the previous method of only doing progressive updates while
scrolling.
2012-10-22 20:18:14 +01:00
Nicholas Cameron
ae19046b6a Bug 802518; add Painted() to BasicShadowableCanvasLayer::Paint; r=jgilbert DONTBUILD 2012-10-18 21:40:32 +13:00
Nicholas Cameron
c6451f58a1 Back out changeset db4fd6efba17 for wrong bug number r=me 2012-10-18 21:39:15 +13:00
Nicholas Cameron
40b388f762 Bug 803518; add Painted() to BasicShadowableCanvasLayer::Paint; r=jgilbert
--HG--
extra : rebase_source : 2cad76436370ec2bf1d52208a732e638e62435d5
2012-10-18 11:17:32 +13:00
Benoit Girard
6fc234d810 Back out d5496f32f2e4 for mochitest failures
--HG--
extra : rebase_source : 1e0caa0ae6d2c1bec971fde75c348f69e6cc63fe
2012-10-15 16:57:06 -04:00
Benoit Girard
7278b49e9c Bug 796117 - Keep tiles cached when changing resolution. r=Cwiiis
--HG--
extra : rebase_source : fdc4bb831c367d2d33dadb75c6d1f9784b97d44d
2012-10-15 15:08:45 -04:00
Benoit Jacob
c78c87a1ca back out 621cfd13ceaf for build failures 2012-10-15 13:34:42 -04:00
Matt Joras
db700742e9 Bug 798033 - Removes "using namespace" directive from gfx headers - r=jmuizelaar 2012-10-15 13:02:21 -04:00
Chris Lord
dca6278f92 Bug 749063 - Improve progressive tile update draw order. r=bgirard
Now that the region can be more complicated due to tile prioritisation, the
previous code for draw order doesn't work as intended. Robustify/simplify the
code by making it region-based.
2012-10-15 09:33:56 +01:00
Chris Lord
dba95137af Bug 749063 - Prioritise visible tiles when progressively updating. r=bgirard
When progressively updating tiles, prioritise tiles that intersect with the
current viewport before off-screen tiles. New content is still prioritised
over stale content.
2012-10-15 09:33:48 +01:00
Chris Lord
5bf1712318 Bug 749063 - Replace shouldAbort with generic callback for progressive updates. r=bgirard
Replace ShouldAbortProgressiveUpdate with ProgressiveUpdateCallback, that
provides more contextual information about how the update will get used.
2012-10-15 09:33:34 +01:00
Matt Woodrow
fcce8cbd82 Bug 799956 - Mark BasicLayerManagers that don't retain content as supporting component alpha layers. r=roc 2012-10-15 17:53:37 +13:00
Jeff Muizelaar
07b8aa36d6 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 Lord
cea8d6a6c4 Bug 794130 - Abort drawing if appropriate when using progressive tile updates. r=bgirard,blassey
Add a function to BasicLayerManager to check if it's appropriate to abort an
ongoing progressive update, and add an Android-specific implementation in
mobile/android/base/gfx/GeckoLayerClient.java.

--HG--
extra : rebase_source : edbd20acb53660340d52265591849aacafd179c4
2012-10-04 14:45:16 -04:00
Nicholas Cameron
56e57fe121 Bug 796182; fix invalidation on Mac with OMTC; r=cjones 2012-10-04 20:45:48 +13:00
Chris Jones
461d5e2250 Bug 780920, part 3: The ultimate compositor has to draw to the readback surface; shadow layers doesn't have access to all the needed rendering state. r=roc 2012-10-04 00:05:24 -07:00
Chris Jones
1e2b3a8245 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
Ryan VanderMeulen
5a509f3cc7 Merge m-c to inbound. 2012-10-03 22:24:20 -04:00
Ryan VanderMeulen
c7df9c8a33 Backout 0cd12dcf7f8f, 5ff5e81e6de6, and 0ae09da96f63 (bug 740580) due to bug 797391. 2012-10-03 22:13:14 -04:00
Benoit Girard
4ac759dafb Bug 797359 - Increase size of tile debug overlay. r=Cwiiis 2012-10-03 10:56:41 -04:00