Commit Graph

659 Commits

Author SHA1 Message Date
Matt Woodrow
cc66446a05 Back out bug 656185 due to windows compile failures 2011-06-27 15:21:22 +12:00
Matt Woodrow
31412c006b Bug 656185 - Part 4 - Fix for D3D9. r=Bas 2011-06-27 14:32:42 +12:00
Matt Woodrow
379c7e6f82 Bug 656185 - Part 3 - Fix for D3D10. r=Bas 2011-06-27 14:32:34 +12:00
Matt Woodrow
8aba398b72 Bug 656185 - Part 2 - Handle odd crop offsets correctly with OpenGl. r=derf 2011-06-27 14:32:16 +12:00
Matt Woodrow
9376e72c7e Bug 656185 - Part 1 - Move BindAndDrawQuadWithTextureRect into LayerManagerOGL. r=joe 2011-06-27 14:32:06 +12:00
Bas Schouten
bfb8808747 Bug 651858 - Part 5: Add CanvasLayer code for azure. r=jrmuizel 2011-06-24 19:41:18 +02:00
Bas Schouten
933cae4fbb Bug 651858 - Part 4: Implement API for creating a D3D10 compatible DrawTarget. r=roc 2011-06-24 19:41:18 +02:00
Bas Schouten
58d40df2a4 Bug 651858 - Part 3: Add layers API for creating an optimal DrawTarget. r=roc 2011-06-24 19:41:18 +02:00
Jeff Muizelaar
9c940cc534 Bug 662649. DrawFPS: Make the conversion loop easier to follow. r=joe 2011-06-22 14:53:11 -04:00
Jeff Muizelaar
d2cc193c0b Bug 662649. DrawFPS: Add a comment about why DrawFPS is a little weird. 2011-06-22 14:49:31 -04:00
Jeff Muizelaar
f15d555c8f Bug 662649. DrawFPS: Make sure we use a 32 bit type instead of a 64 bit one. r=joe
This was causing badness on platforms where unsigned long is 64 bits.
2011-06-22 14:46:27 -04:00
Jeff Muizelaar
e70b966d11 Bug 662649. DrawFPS: free leaked buffer. r=joe
glTexImage2D will keep a copy of this data around so we don't have to.
2011-06-22 14:43:52 -04:00
Robert O'Callahan
ae6647d4d2 Bug 637852. Part 26: Ensure that FrameMetrics coordinates are correctly stored as layer coordinates. r=tnikkel 2011-06-23 00:11:28 +12:00
Robert O'Callahan
0c48fabd49 Bug 637852. Part 18: Support computing the "residual transform" for a ThebesLayer --- the difference between its snapped transform and the ideal transform --- and use it to align ThebesLayer drawing for transforms that aren't changing. r=tnikkel
This fixes bug 637597 and probably other bugs.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
7f64e9bccf Bug 637852. Part 10: Remove mX/YResolution from ThebesLayer. r=joe
These are the last vestiges of Layer-based resolution API.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
0cc6be313b Bug 637852. Part 9: Remove resolution support from BasicLayers, ShadowLayers and GL layers. r=mattwoodrow
This is not needed anymore.
2011-06-23 00:11:28 +12:00
Robert O'Callahan
64c5e295e0 Bug 637852. Part 8: Remove resolution support from D3D9 layers. r=mattwoodrow
Layer-system resolution support is no longer needed.
2011-06-23 00:11:27 +12:00
Robert O'Callahan
0041df680e Bug 637852. Part 7: Remove resolution support from D3D10 layers. r=mattwoodrow
Layer-system resolution support is no longer needed.
2011-06-23 00:11:27 +12:00
Robert O'Callahan
2685eb6583 Bug 637852. Part 1: Don't snap BasicThebesLayer effective transforms when we're not retaining layers. r=tnikkel
The ThebesLayer contents are going to be drawn through directly without retaining, so there's no point in snapping.
2011-06-23 00:11:27 +12:00
Oleg Romashin
dea57d8792 Bug 660565 - HTML5 HW accelerated video is slow r=roc
--HG--
extra : rebase_source : 5a46d17c72caf5ec4afd3f59093be803008c61ec
2011-06-16 12:51:05 +02:00
Neil Rashbrook
747f874cd4 Bug 660525 Remove useless uses of PromiseFlatString (prev cset lacked the code changes) r=joedrew! 2011-06-13 19:02:35 -07:00
Masayuki Nakano
e06d6eb819 Bug 663036 part.3 gfx should use mozilla::Preferences r=roc+joe 2011-06-12 11:30:16 +09:00
Oleg Romashin
bcfe656b06 Bug 612335 - Render remote canvas directly into shared surface r=jones.chris.g 2011-06-09 21:17:02 -04:00
Kyle Huey
39d58838ba Fix a spelling mistake on this CLOSED TREE 2011-05-31 09:14:54 -07:00
Oleg Romashin
65a70a8e4c Bug 659768 - HTML5 video does not render anything on Maemo r=mattwoodrow 2011-05-31 09:48:47 +12:00
Mounir Lamouri
53c39f24f1 Merging cedar with mozilla-central. 2011-05-30 12:50:04 +02:00
Robert O'Callahan
a1ebcbf532 Bug 647560. Remove unused MayHaveOverlappingOrTransparentLayers. r=tnikkel 2011-05-30 15:48:34 +12:00
Robert O'Callahan
a537a15852 Bug 647560. Cache temporary backbuffer surfaces. r=karlt 2011-05-30 15:48:29 +12:00
Robert O'Callahan
89fdba6cb9 Bug 647560. Create ApplyDoubleBuffering to recursively walk layer tree and implement double-buffering by setting mUseIntermediateSurface on ContainerLayers where necessary. r=tnikkel
The idea here is to do double-buffering just by setting mUseIntermediateSurface on ContainerLayers when needed. When
we need to double-buffer compositing of a layer tree, ApplyDoubleBuffering examines the root container layer. If the
child layers don't overlap and together cover the window, we don't need to double-buffer in that container, instead
we can double-buffer each child layer separately --- so we recursively call ApplyDoubleBuffering on the child layers.
When a container has children that overlap or that don't cover the container's visible rect (the latter case
probably can't happen in practice), we force it to have an intermediate surface.

This change fixes this bug because in normal browser windows the Web content layer double-buffers
2011-05-30 15:48:23 +12:00
Robert O'Callahan
b49eae116d Bug 647560. Add support for compositing BasicLayers with OPERATOR_SOURCE. r=tnikkel
We'll need this for the improved backbuffer code in the next patch. When a layer tree's
leaf layers don't overlap and cover the window, the next patch will avoid double-buffering
by blitting those layers directly to the window. If the window has transparent parts
(e.g. with Aero Glass), we need to draw the layers for those transparent parts using
OPERATOR_SOURCE so that the alpha values in the window are reset.
2011-05-30 15:48:13 +12:00
Robert O'Callahan
c0afe87a4e Bug 647560. Clean up MarkLeafLayersHidden and make it set the hidden state on container layers. r=tnikkel
Instead of doing tricks with the cliprect to prevent layer content from adding to aOpaqueRegion, pass an explicit flag to control that.
Mark a ContainerLayer hidden if all its children are hidden. This will need to be changed if/when we add layer properties
that result in a ContainerLayer drawing content even if it has no children.
2011-05-30 15:48:08 +12:00
Robert O'Callahan
9a390fc021 Bug 647560. Use passed-in aContext instead of getting it from the layer manager. r=tnikkel 2011-05-30 15:48:01 +12:00
Robert O'Callahan
66a57a0a84 Bug 639168. Don't try to reuse a buffer if we don't have one. r=tnikkel 2011-05-30 15:29:07 +12:00
Masayuki Nakano
85c451e309 Bug 660121 Remove all pref related methods from nsContentUtils r=roc 2011-05-29 08:42:57 +09:00
Neil Rashbrook
a823051c1e Fix DOS line endings rs=joedrew!
DONTBUILD
2011-05-26 20:41:33 +01:00
Oleg Romashin
d4e430f071 Bug 659217 - HW accelerated video crashing with OGL layerss enabled. r=matt.woodrow
--HG--
extra : rebase_source : bd3b7998f5b8193a01d927c388ee2375d2a6bacf
2011-05-25 10:09:55 +02:00
Benoit Jacob
2c0eb7e54e Bug 657748 - Update ANGLE to r653 - a=joe
This ANGLE update fixes bugs, brings large performance improvements, and adds major new features that web devs are looking forward to: vertex shader texture lookup and float textures.

http://code.google.com/p/angleproject/

This update is also needed because the version we're currently using is the chrome_m10 branch and that's no longer maintained. This update will make it much easier to apply security fixes if needed.
2011-05-24 11:05:56 -04:00
Matheus Kerschbaum
35f86c76ad Bug 648911 - Remove support for non-libxul builds. r=ted,joedrew 2011-05-23 18:54:47 +02:00
Robert O'Callahan
ea286efab6 Bug 654950. Fix scissor rect calculations for descendants of container layers with intermediate surfaces. r=bas 2011-05-23 12:27:03 +12:00
Vivien Nicolas
8b7b339cab backout bug 647560 - Pages on Fennec desktop does not not draw anymore 2011-05-20 17:45:00 +02:00
Florian Hänel
8e0d9ab286 Bug 628566 - Implement basic tiling of ImageLayerOGL. r=joe 2011-05-19 12:53:02 +02:00
Robert O'Callahan
4ada86d2cb Bug 647560. Remove unused MayHaveOverlappingOrTransparentLayers. r=tnikkel 2011-05-18 23:24:52 +12:00
Robert O'Callahan
77cd75a0d2 Bug 647560. Cache temporary backbuffer surfaces. r=karlt 2011-05-18 23:24:52 +12:00
Robert O'Callahan
ebe9f8f585 Bug 647560. Create ApplyDoubleBuffering to recursively walk layer tree and implement double-buffering by setting mUseIntermediateSurface on ContainerLayers where necessary. r=tnikkel
The idea here is to do double-buffering just by setting mUseIntermediateSurface on ContainerLayers when needed. When
we need to double-buffer compositing of a layer tree, ApplyDoubleBuffering examines the root container layer. If the
child layers don't overlap and together cover the window, we don't need to double-buffer in that container, instead
we can double-buffer each child layer separately --- so we recursively call ApplyDoubleBuffering on the child layers.
When a container has children that overlap or that don't cover the container's visible rect (the latter case
probably can't happen in practice), we force it to have an intermediate surface.

This change fixes this bug because in normal browser windows the Web content layer double-buffers
2011-05-18 23:24:52 +12:00
Robert O'Callahan
887d235ef0 Bug 647560. Add support for compositing BasicLayers with OPERATOR_SOURCE. r=tnikkel
We'll need this for the improved backbuffer code in the next patch. When a layer tree's
leaf layers don't overlap and cover the window, the next patch will avoid double-buffering
by blitting those layers directly to the window. If the window has transparent parts
(e.g. with Aero Glass), we need to draw the layers for those transparent parts using
OPERATOR_SOURCE so that the alpha values in the window are reset.
2011-05-18 23:24:52 +12:00
Robert O'Callahan
99936bcd94 Bug 647560. Clean up MarkLeafLayersHidden and make it set the hidden state on container layers. r=tnikkel
Instead of doing tricks with the cliprect to prevent layer content from adding to aOpaqueRegion, pass an explicit flag to control that.
Mark a ContainerLayer hidden if all its children are hidden. This will need to be changed if/when we add layer properties
that result in a ContainerLayer drawing content even if it has no children.
2011-05-18 23:24:52 +12:00
Robert O'Callahan
80101e2ad0 Bug 629866. Part 2: Make MarkLeafLayersHidden actually hide layers that aren't in the dirty region. Don't consider hidden layers when deciding whether double-buffering is needed. r=cjones 2011-05-18 23:24:52 +12:00
Mounir Lamouri
eceb98864c Backout bug 629866 and bug 647560. 2011-05-17 11:44:17 +02:00
Robert O'Callahan
c5e00b2e8a Bug 647560. Remove unused MayHaveOverlappingOrTransparentLayers. r=tnikkel 2011-05-17 11:42:19 +12:00
Robert O'Callahan
e5e28d9ac2 Bug 647560. Cache temporary backbuffer surfaces. r=karlt 2011-05-17 11:42:11 +12:00