Commit Graph

1771 Commits

Author SHA1 Message Date
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
Daniel Holbert
2dde075af9 Bug 816885: Guard GetDisplayportCoverage() in LayerManagerOGL.cpp with #ifdef MOZ_ANDROID_OMTC, since it's only used in #ifdef-guarded code. r=Cwiiis 2012-11-30 09:59:00 -08:00
Michael Wu
cdd4879e5b Bug 774458 - Only send clicks on confirmed single taps, r=cjones 2012-11-29 21:26:11 -05: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
774deb4cea 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
10015d52a1 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
Chris Lord
53958037df Bug 814437 - Fix checkerboard measurement when using a critical displayport. r=bgirard
The checkerboard measurement depended on the displayport coverage of the
viewport, which was calculated in LayerRenderer. When using a critical
displayport, this value changes, but this was not being accounted for.

We have all the context we need for this Gecko-side, so move this code into
LayerManagerOGL::ComputeRenderIntegrity and account for displayport coverage
correctly.
2012-11-29 12:03:38 +00:00
Chris Lord
7d410314ef Bug 814437 - Count low precision rendering 0.5x towards checkerboarding. r=bgirard 2012-11-29 12:03:27 +00:00
Benjamin Chen
261e6627b6 Bug 804985 - [browser] don't try to zoom out wider than the page width r=cjones
1. bring the zoom factor into BrowserElementScrollng.js
2. fix the zoom ratio in AsyncPanZoomController::ZoomToRect
3. fix the relation between _isRectZoomedIn and AsyncPanZoomController::ZoomToRect
4. zoom it out if the rect reach the device maximal zoom ratio
2012-11-28 17:18:12 +08:00
Cervantes Yu
1203283ade Bug 806596 - Don't fire double tap if the delayed task to timeout the 1st tap fails to run in time. r=roc 2012-11-28 22:46:50 -05:00
Jeff Gilbert
601bff1c6f Bug 811958 - Fix and move ShateType type - r=bgirard 2012-11-26 14:23:27 -08:00
Jeff Gilbert
65a2d009d3 Bug 811958 - Pull GLContext out of Cocoa stuff - r=bgirard 2012-11-26 14:23:27 -08:00
Jeff Gilbert
1039582660 Backed out csets 807f2c3df974, 1637c39b4ed6, ec29e09a270e (bug 811958) for burning android 2012-11-26 13:48:20 -08:00
Jeff Gilbert
f8b6d7d465 Bug 811958 - Fix and move ShareType type - r=bgirard 2012-11-26 12:51:57 -08:00
Jeff Gilbert
8695ebcda9 Bug 811958 - Pull GLContext out of Cocoa stuff - r=bgirard 2012-11-26 12:51:57 -08:00
Oleg Romashin
13c706ad44 Bug 814979 - Fennec build fails with Mer SDK: invalid inclusion of GLXLibrary.h. r=glandium,mattwoodrow 2012-11-26 00:08:22 -08:00
Chris Pearce
4e9ee5bd7e Bug 814541 - Silence warnings in gfx/layers/d3d9/Nv3DVUtils.cpp. r=Bas 2012-11-23 15:21:20 +13:00
David Zbarsky ext:(%2C%20David%20Baron%20%3Cdbaron%40dbaron.org%3E%2C%20Chris%20Jones%20%3Cjones.chris.g%40gmail.com%3E)
49219cce40 Bug 788409: When the compositor runs past the end of an animation, just fill forwards until the main thread catches up. r=dbaron a=blocking-basecamp 2012-11-22 15:49:06 -08:00
Andrea Marchesini
e1aa912c8f Bug 808266 - Add memory reporter for GrallocBufferActor. r=cjones 2012-11-22 08:39:56 -05:00
Chris Lord
ba78c1a393 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
236ebe5411 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
63545be6bc 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
d85f10cccd 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
17b0c18452 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
beb61c6567 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
f08ea7da39 Bug 783368 - Disable ReusableTileStoreOGL by default. r=blassey
Add layers.reuse-invalid-tiles to control use of the reusable tile store and
disable it by default.
2012-11-21 22:34:19 +00:00
Chris Lord
919f718011 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
f1ccd55d96 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
Chris Lord
3bdec04a47 Bug 783368 - Add critical display port content property. r=roc
Add a property to represent a sub-rectangle of the display port that is
considered 'critical' to render correctly.
2012-11-21 22:34:18 +00:00
Ehsan Akhgari
f90938a237 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
86af4e1c99 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
ea1f724d0e 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
fa9cf633f0 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
5f7ade4071 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
f81ec133cd 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
f38c6a6a8c 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
5c9a4aaab2 Bug 783368 - Disable ReusableTileStoreOGL by default. r=blassey
Add layers.reuse-invalid-tiles to control use of the reusable tile store and
disable it by default.
2012-11-21 19:16:52 +00:00
Chris Lord
7117aa6079 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
5321d3f0d8 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
Chris Lord
a231be5912 Bug 783368 - Add critical display port content property. r=roc
Add a property to represent a sub-rectangle of the display port that is
considered 'critical' to render correctly.
2012-11-21 19:16:51 +00:00
Jonathan Watt
ae1c92d135 Bug 802440 - Some elements are invalidated when other elements are scrolled off the screen. r=roc. 2012-11-21 02:23:57 +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
Nicolas Silva
898bf5f30f b=811115 - remove MOZ_EGL_XRENDER_COMPOSITE dead code. r=jgilbert 2012-11-18 16:47:57 +01:00
Nicolas Silva
b196ace209 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
Daniel Holbert
950d579a4d (no bug) fix typo in header comment for AsyncPanZoomController::CalculateIntrinsicScale(). DONTBUILD (comment-only) 2012-11-15 09:16:03 -08:00
Jeff Muizelaar
cfce24e060 Bug 801918. OpenGL: Avoid doing extra invalidation when unrotating a buffer. r=mwoodrow
This approach ends up calling BlitTextureImage three extra times instead of
changing BlitTextureImage to support rotated buffers.

Supporting rotated buffers in BlitTextureImage is somewhat tricky because of
TiledTextureImage, and calling it three more times shouldn't be too bad (it
should be better than having to repaint)

Unfortunately, the rectangle manipulation code is a bit hairy.

--HG--
extra : rebase_source : a1018a22932675b154b76533f403a1328aa29cb5
2012-11-13 15:09:31 -08:00
Matt Woodrow
5fbd933167 Bug 805197 - Compute a region in LayerTreeInvalidation. r=roc 2012-11-12 10:31:15 -08:00
Nicholas Cameron
fe12cc1084 Bug 782311; put back D3D10_RESOURCE_MISC_GDI_COMPATIBLE. r=Bas 2012-11-10 11:14:13 -08:00
Ryan VanderMeulen
655117d4ff Backed out changeset b5c86318a3ee (bug 801918) for various regressions. 2012-11-10 12:09:50 -05:00
Andrea Marchesini
8dde3fc959 Bug 796275 - Context menu fires on wrong target out of process. r=cjones 2012-11-08 14:35:02 -05:00
Benoit Girard
dc5c406e03 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
Edwin Flores
d8cb7f5d9b Bug 809904 - Create gralloc images in ImageContainerChild::CreateImage r=nical 2012-11-09 06:44:11 +13:00
Benoit Girard
9599013340 Bug 809493 - Restore the blend equation state after drawing the underlay. r=joe 2012-11-08 10:10:51 -05:00
Edwin Flores
09399621e1 Bug 798448 - Add YVU420SP to RGB565 conversion function r=gal 2012-11-08 17:24:02 +13:00
Edwin Flores
9646e6b313 Bug 804906 - Plug leak in GonkIOSurfaceImage::GetAsSurface r=doublec 2012-11-08 17:24:01 +13: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
Jeff Muizelaar
ebb2c3ae41 Bug 801918. OpenGL: Avoid doing extra invalidation when unrotating a buffer. r=mwoodrow
This approach ends up calling BlitTextureImage three extra times instead of
changing BlitTextureImage to support rotated buffers.

Supporting rotated buffers in BlitTextureImage is somewhat tricky because of
TiledTextureImage, and calling it three more times shouldn't be too bad (it
should be better than having to repaint)

Unfortunately, the rectangle manipulation code is a bit hairy.

--HG--
extra : rebase_source : a1018a22932675b154b76533f403a1328aa29cb5
2012-11-07 21:35:54 -05:00
Matt Woodrow
07869c9c29 Bug 808469 - Use gfxQuartzSurface for OMTC drawing on mac. r=cjones 2012-11-07 19:56:56 +13:00
Matt Woodrow
f0004b2afd Bug 807408 - Cache the temporary surface used when drawing ThebesLayers with BasicLayers. r=jrmuizel 2012-11-07 11:39:35 +13:00
Nicolas Silva
d3ba646030 Bug 797893 - Fix trivial warning in ImageBridgeParent.cpp. r=dholbert 2012-10-05 22:46:01 +02:00
Phil Ringnalda
a2030265e5 Back out 0d4e09ade336 (bug 808746) for Android reftest bustage 2012-11-05 22:35:59 -08:00
Benoit Girard
702e24d2c3 Bug 808746 - Properly calculate the tile's origin when avoiding SinglePaintBuffer. r=bjacob 2012-11-05 23:41:58 -05:00
Nicolas Silva
3953edb7c4 Bug Bug 773440 - Remove unnecessary frame copies with async-video by stroring video frames in shared memory earlier in the pipeline. r=roc 2012-11-05 11:38:03 +01: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
230002819a Bug 805689. Don't copy when we don't need subpixel AA. r=mwoodrow
Avoid copying the background for subpixel AA when we aren't using
subpixel AA rendering.
2012-10-31 22:12:26 -04:00
Alexandre Lissy
7bbfdb495d Bug 787812 - Add Nexus S pixels constants. r=kchen 2012-10-27 12:48:18 +02:00
Benoit Girard
b384d6568b Bug 800944 - Use fuzzy float equal to prevent harvesting tiles causing assertion. r=Cwiiis
--HG--
extra : rebase_source : 6878c7d6b4b345feaf46a58a0a61037ab57290c2
2012-10-30 12:08:22 -04:00
Masayuki Nakano
19f3259090 Bug 805761 Fix warning in layers::FrameMetrics::GetScrollOffsetInLayerPixels() r=drs 2012-10-30 10:58:29 +09:00
Chris Lord
7859590c51 Bug 796117 - Fix ReusableTileStoreOGL. r=bgirard
Changes to FrameMetrics and progressive tiling caused ReusableTileStoreOGL
to basically not work anymore. Refactor to provide the same function as it did
previously taking into account the platform changes.
2012-10-29 22:46:54 +00:00
Benoit Girard
41441be0a4 Bug 805792 - Avoid another extra copie when calling RenderTile. r=Cwiiis
* * *
Bug 805907 - Handle memory pressure notification in the TileStore. r=Cwiiis,ehsan

--HG--
extra : rebase_source : 976deda3ab13c2e178f9a6922b7c17c294175fad
2012-10-29 18:10:45 -04:00
Nicolas Silva
15561dd107 Bug 792252 - Clean up ImageContainerChild (before implementing SharedPlanarYCbCrImage to remove the extra video frame copy). r=kanru 2012-10-29 16:08:06 +01:00
Benoit Girard
09de587ee4 Bug 805792 - Avoid another extra copie when calling RenderTile. r=Cwiiis
--HG--
rename : layout/style/test/test_viewport_units.html => layout/style/test/test_rem_unit.html
extra : rebase_source : 3b18b7c42691b655264b615044e28cb448fde7a6
2012-10-26 10:44:48 -04:00
Benoit Girard
efee4c428e Bug 805792 - Avoid extra copies when calling RenderTile. r=Cwiiis
--HG--
rename : toolkit/components/passwordmgr/test/auth2/authenticate.sjs => toolkit/components/passwordmgr/test/authenticate.sjs
extra : rebase_source : 30755a7e578743530c51f6f1953ca25bf5c0e149
2012-10-26 09:38:44 -04:00
Matt Joras
aae7d1c44d Bug 798033 - Removes "using namespace" directive from gfx headers - r=jmuizelaar 2012-10-25 16:12:59 -04:00
Chris Lord
a90397b263 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
0206c993d6 Bug 805028 - Add LayerManagerOGL::ComputeRenderIntegrity. r=bgirard
Add a function to LayerManagerOGL that can compute how much of the last
rendered area was incomplete (i.e. is pending update when progressive tile
drawing is enabled).
2012-10-25 17:23:42 +01:00
Markus Stange
19e24f8f1c Bug 805002 - Flush accelerated Quartz canvas before GL composition. r=BenWa 2012-10-24 18:17:00 +02:00
Chris Lord
2f34d4e618 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
Doug Sherk
652bd75bad Bug 804949: Change the way panning works. r=cjones a=blocking-basecamp 2012-10-24 01:37:53 -07:00
Phil Ringnalda
88595db498 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
952ce640c7 Bug 804724 - Add an abort painting marker. r=ehsan
--HG--
extra : rebase_source : 10f327e91b15d673303eb607a361c1c4d14a1e92
2012-10-23 17:18:37 -04:00
Chris Lord
805b9fc752 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
13bc605c08 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
Kan-Ru Chen (陳侃如)
e86eff5cd3 Bug 791711 - Invalidate again if the SharedImageID was removed. r=nical 2012-10-20 08:18:31 +08:00
Chris Lord
775e317e62 Bug 802143 - Clarify coordinate spaces in ReusableTileStoreOGL::DrawTiles. r=bgirard 2012-10-18 12:59:17 +01:00
Chris Lord
b774e1aa45 Bug 802143 - Fix calculation of content bounds in ReusableTileStoreOGL. r=bgirard
FrameMetrics changed at some point so that the content rect and scroll offset
are stored pre-multiplied by the render resolution. The display-port calculation
in this function appears to have always been wrong(?)
2012-10-18 12:53:33 +01:00
Nicholas Cameron
3a351d99c3 Bug 802518; add Painted() to BasicShadowableCanvasLayer::Paint; r=jgilbert DONTBUILD 2012-10-18 21:40:32 +13:00
Nicholas Cameron
ceb65c08d3 Back out changeset db4fd6efba17 for wrong bug number r=me 2012-10-18 21:39:15 +13:00
Chris Jones
f79f5f15fd Bug 799644: Need to clear areas of rgba buffers we're about to repaint. r=mattwoodrow 2012-10-17 22:44:26 -07:00
Nicholas Cameron
865ffca289 Bug 803518; add Painted() to BasicShadowableCanvasLayer::Paint; r=jgilbert
--HG--
extra : rebase_source : 2cad76436370ec2bf1d52208a732e638e62435d5
2012-10-18 11:17:32 +13:00
Matt Woodrow
ebd7c262da Bug 802321 - Use FuzzyEquals to compare matrices in LayerTreeInvalidation. r=roc 2012-10-17 21:00:00 +13:00
Benoit Girard
98ca10d456 Back out b7f31a736800 for mochitest failures
--HG--
extra : rebase_source : 9f77f07db004fe11a20533c0ad017cef825a1a8b
2012-10-15 16:57:43 -04:00
Benoit Girard
68cffeeeea Back out d5496f32f2e4 for mochitest failures
--HG--
extra : rebase_source : 1e0caa0ae6d2c1bec971fde75c348f69e6cc63fe
2012-10-15 16:57:06 -04:00
Benoit Girard
dba6881f18 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
96865bc6d7 back out 621cfd13ceaf for build failures 2012-10-15 13:34:42 -04:00
Matt Joras
243e78c48b Bug 798033 - Removes "using namespace" directive from gfx headers - r=jmuizelaar 2012-10-15 13:02:21 -04:00
Benoit Girard
2d402ab95f Bug 796117 - New Mobile tilestore tiles will now replace equivalent tiles. r=Cwiiis 2012-10-12 17:50:08 -04:00
Oleg Romashin
7b68e36201 Bug 801460 - IDXGIFactory2 not declared build errors with --enable-metro. r=bas.schouten 2012-10-14 23:19:13 -07:00