Commit Graph

597 Commits

Author SHA1 Message Date
Chris Lord
c03d30e218 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
0997087f82 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
3d5740023e Bug 814437 - Count low precision rendering 0.5x towards checkerboarding. r=bgirard 2012-11-29 12:03:27 +00:00
Jeff Gilbert
5ea164ca57 Bug 811958 - Fix and move ShateType type - r=bgirard 2012-11-26 14:23:27 -08:00
Jeff Gilbert
9c9ac2fca3 Bug 811958 - Pull GLContext out of Cocoa stuff - r=bgirard 2012-11-26 14:23:27 -08:00
Jeff Gilbert
144687e59c Backed out csets 807f2c3df974, 1637c39b4ed6, ec29e09a270e (bug 811958) for burning android 2012-11-26 13:48:20 -08:00
Jeff Gilbert
6db824094c Bug 811958 - Fix and move ShareType type - r=bgirard 2012-11-26 12:51:57 -08:00
Jeff Gilbert
7cf8b80673 Bug 811958 - Pull GLContext out of Cocoa stuff - r=bgirard 2012-11-26 12:51:57 -08:00
Oleg Romashin
962c7d9b70 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 Lord
f068580516 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
221843e04f 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
dced911b41 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
Ehsan Akhgari
abcfaa316e 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
c341a5ec2a 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
53df955001 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
231a433699 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 Jones
8c1774d31e 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
Jeff Muizelaar
4c788785a7 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
Ryan VanderMeulen
3b3a4a2c86 Backed out changeset b5c86318a3ee (bug 801918) for various regressions. 2012-11-10 12:09:50 -05:00
Benoit Girard
057737fe06 Bug 809493 - Restore the blend equation state after drawing the underlay. r=joe 2012-11-08 10:10:51 -05:00
Chris Jones
8a2473fc33 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
3d8c760074 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
Jeff Muizelaar
82d19c2b98 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
Benoit Girard
9247bfc30f 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
Chris Lord
b3b5969577 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
5327c7eaab 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
Benoit Girard
5d9fdabc64 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
5ba2ae05c2 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
Chris Lord
920793b142 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
3675c89168 Bug 805002 - Flush accelerated Quartz canvas before GL composition. r=BenWa 2012-10-24 18:17:00 +02:00
Chris Lord
2caf0bb798 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
Chris Lord
91821fc9ca Bug 802143 - Clarify coordinate spaces in ReusableTileStoreOGL::DrawTiles. r=bgirard 2012-10-18 12:59:17 +01:00
Chris Lord
555a98443f 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
Benoit Girard
cab00e8f02 Back out b7f31a736800 for mochitest failures
--HG--
extra : rebase_source : 9f77f07db004fe11a20533c0ad017cef825a1a8b
2012-10-15 16:57:43 -04:00
Benoit Girard
0c6e26e826 Back out d5496f32f2e4 for mochitest failures
--HG--
extra : rebase_source : 1e0caa0ae6d2c1bec971fde75c348f69e6cc63fe
2012-10-15 16:57:06 -04:00
Benoit Girard
632a14569f Bug 796117 - Keep tiles cached when changing resolution. r=Cwiiis
--HG--
extra : rebase_source : fdc4bb831c367d2d33dadb75c6d1f9784b97d44d
2012-10-15 15:08:45 -04:00
Benoit Girard
3dff7c50b2 Bug 796117 - New Mobile tilestore tiles will now replace equivalent tiles. r=Cwiiis 2012-10-12 17:50:08 -04:00
Benoit Girard
8aed17295d Bug 724666 - Add pref for accelerated canvas on mac. r=jrmuizel 2012-07-31 18:48:40 -04:00
Chris Jones
9582a20f31 Bug 780920, part 1: LayerManagerOGL needs to account for the world transform when reading back into a non-default target. r=roc 2012-10-04 00:05:23 -07:00
Chris Jones
ca39444b15 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
Benoit Girard
f0ee89a810 Bug 796084 - Remove reference to java compositor in comments. r=Cwiiis, DONTBUILD because comment only
--HG--
extra : rebase_source : 219138ec908b089e62f1394358a87a921e379383
2012-10-02 09:46:01 -04:00
Kan-Ru Chen (陳侃如)
c976f43057 Bug 788408 - Part 2. Use glReadPixels to read back when back buffer isn't RGBA compatible. r=jgilbert 2012-10-02 10:42:13 +08:00
Benoit Girard
c8f1bc0779 Bug 796084 - Rename MOZ_JAVA_COMPOSITOR -> MOZ_ANDROID_OMTC. r=blassey 2012-10-01 16:01:35 -04:00
Matt Woodrow
f8a3bcd5dd Bug 770617 - Always mark inactive CanvasLayers as being dirty. r=cjones 2012-09-30 19:20:25 +13:00
Jonathan Kew
1c5f85078f bug 674373 pt 2 - consistently use client bounds for layer sizing. r=roc 2012-09-29 12:34:41 +01:00
Doug Sherk
c0e08ee726 Bug 784908: Part 1: Change names of FrameMetrics variables to be more descriptive, add documentation, change some coordinate spaces. r=roc 2012-09-28 22:16:34 -04:00
Isaac Aggrey
997db4d142 Bug 791906: Replace NSPR integer limit constants with stdint ones; r=ehsan 2012-09-28 01:57:33 -05:00
foudfou
d72827c0aa Bug 785542 - Convert usages of PR_MIN and PR_MAX to NS_MIN and NS_MAX; r=ehsan
Occurences of PR_MAX in layout/style/nsCSSProps.cpp and xpcom/glue/nsTArray.h
can not be converted without C++11 support (constexpr).

--HG--
extra : rebase_source : 3b4f7e26690fad487dd11594449948411d4e79bc
2012-09-27 23:44:47 +02:00
Matt Woodrow
7786bc1aaa Bug 786626 - Initialize mLayerProgram. r=joe. landing on a CLOSED TREE 2012-09-29 01:39:35 +12:00
Oleg Romashin
67b104cbd1 Bug 539356 - Part 20 - Simplify regions to avoid excessive region calculation. r=roc 2012-08-29 17:48:43 +12:00