Commit Graph

6184 Commits

Author SHA1 Message Date
Anthony Jones
079e618a7c Bug 798194 - Fix problem with resizing the composition bounds. r=roc 2012-12-02 20:33:53 -05:00
Trevor Saunders
8f3dd5f313 bug 801466 - part 2 remove usage of prmem in gfx/ r=jmuizelaar 2012-12-02 15:33:59 -05:00
Chris Lord
9b229ca87b 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
12de3548e2 Backed out changeset 5368aced79b3 (bug 814437) because it breaks Android builds 2012-11-30 15:41:08 -05:00
Chris Lord
524e13922f 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
bd93e9aac8 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
9bc0b72544 Bug 774458 - Only send clicks on confirmed single taps, r=cjones 2012-11-29 21:26:11 -05: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
Boris Zbarsky
4adc2730f3 Bug 815671 part 4. Remove some array copying in gfx code. r=roc 2012-11-29 11:14:13 -05: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
Chris Lord
8df438c5af 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
c9fb3330b3 Bug 814437 - Count low precision rendering 0.5x towards checkerboarding. r=bgirard 2012-11-29 12:03:27 +00:00
Benjamin Chen
cbf8129880 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
de45932fd3 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
Mats Palmgren
edf8cdeef3 Bug 815489 - Don't let Blur() swap mData since the buffer is also used by the image surface. r=roc 2012-11-28 19:55:36 +01:00
Nicholas Nethercote
da226d8e42 Bug 711901 - When possible, measure, don't compute, the size of imgFrame::mImageSurface. r=joedrew.
--HG--
extra : rebase_source : 72dc61c2618166262ec6d83778d7bd2a3a7b5d61
2012-11-26 16:29:56 -08:00
Jeff Gilbert
0466aaefe7 Bug 811958 - Move TextureImage into its own files - r=bgirard 2012-11-26 14:23:27 -08:00
Jeff Gilbert
f0fdb0504f Bug 811958 - Fix and move ShateType type - r=bgirard 2012-11-26 14:23:27 -08:00
Jeff Gilbert
495dc78702 Bug 811958 - Pull GLContext out of Cocoa stuff - 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
c8b0be7790 Bug 811958 - Move TextureImage to its own files - r=bgirard 2012-11-26 12:51:58 -08:00
Jeff Gilbert
08572e4b8e Bug 811958 - Fix and move ShareType type - r=bgirard 2012-11-26 12:51:57 -08:00
Jeff Gilbert
c11ab4f1da Bug 811958 - Pull GLContext out of Cocoa stuff - r=bgirard 2012-11-26 12:51:57 -08:00
Oleg Romashin
cba29c6203 Bug 814979 - Fennec build fails with Mer SDK: invalid inclusion of GLXLibrary.h. r=glandium,mattwoodrow 2012-11-26 00:08:22 -08:00
Brian R. Bondy
19fd7aceb1 Bug 793719 - Fix for D2D error on shutdown with VS2012. r=bas 2012-11-25 14:00:31 -05:00
Joe Drew
3e41b25008 Bug 813124 - Make Cairo's image surface correctly handle having multiple clip paths set on the context. r=jrmuizel,roc 2012-11-23 11:57:10 -05:00
George Wright
cf706b0313 Bug 751418 - Move common functions from DrawTargetSkia to HelpersSkia r=mattwoodrow 2012-10-16 17:16:45 -04:00
George Wright
73099f5a78 Bug 814171 - Intercept calls for maximum texture/framebuffer sizes in GLContext::fGetIntegerv r=jgilbert 2012-11-13 17:35:35 -05:00
Chris Pearce
70e5180d4e Bug 814541 - Silence warnings in gfx/layers/d3d9/Nv3DVUtils.cpp. r=Bas 2012-11-23 15:21:20 +13:00
Bas Schouten
0aef574264 Bug 814101: Respect system-wide cleartype setting. r=jrmuizel,jfkthame 2012-11-23 02:53:12 +01:00
David Zbarsky ext:(%2C%20David%20Baron%20%3Cdbaron%40dbaron.org%3E%2C%20Chris%20Jones%20%3Cjones.chris.g%40gmail.com%3E)
1b8a2e6d1c 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
Benoit Jacob
9a4a91a17e Bug 814159 - disable the global context on EGL altogether - r=jrmuizel
Was already disabled on Windows, Android, B2G. Only EGL platform remaining was Meego. This simplifies code quite a bit. If this doesn't break things, we can do further dead code removal.
2012-11-22 13:53:11 -05:00
Andrea Marchesini
69e6efa6ee Bug 808266 - Add memory reporter for GrallocBufferActor. r=cjones 2012-11-22 08:39:56 -05: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
687263ae68 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
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
Chris Lord
30136b7c25 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
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
Jonathan Kew
3b93444ed3 bug 799869 - [harfbuzz] improve heuristic for choosing between shapers for khmer fonts. r=behdad 2012-11-21 19:31:35 +00: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
ef4d0255cb 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
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
Chris Lord
9a58cff763 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
Benoit Jacob
59a3487ccc Bug 813783 - don't create a global context at all #ifdef ANDROID, including B2G - r=cjones 2012-11-20 21:45:13 -05:00
Jonathan Watt
3d7cc44fd1 Bug 802440 - Some elements are invalidated when other elements are scrolled off the screen. r=roc. 2012-11-21 02:23:57 +00:00
Justin Lebar
b37e42c834 Bug 812957 - Follow-up: Replace void\n* with void*\n. r=oops DONTBUILD 2012-11-19 23:14:14 -05:00
Nicholas Nethercote
671d8d20c1 Bug 812957 - Add memory reporter for Freetype. r=karlt,jlebar 2012-11-19 22:00:19 -05:00
Ehsan Akhgari
f111e7c0fb Merge mozilla-central into mozilla-inbound 2012-11-19 17:07:53 -05:00
Chris Jones
0263e5a9c4 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
Ed Morley
56142d1801 Merge last PGO-green changeset of mozilla-inbound to mozilla-central 2012-11-19 15:35:06 +00:00
Jonathan Kew
28b9f823ec bug 811312 - part 2 - fold CGFontEntry subclass into MacOSFontEntry. r=jdaggett 2012-11-19 10:22:10 +00:00
Jonathan Kew
3a52dd6d41 bug 811312 - part 1 - remove the ATSFontEntry class (not needed on 10.6 and later). r=jdaggett 2012-11-19 10:01:43 +00:00
Jonathan Kew
031ec941d4 bug 801410 - update harfbuzz to release 0.9.6 plus recent commits (to upstream 977f1740..c2ec7c74). r=jdaggett,joe 2012-11-19 09:35:39 +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
Jeff Muizelaar
cf282fc37b Bug 813071. Remove unncessary AOSP License block. r=gerv
This code is the same as the public domain code at
"Bit Twiddling Hacks"

--HG--
extra : rebase_source : 813c7bec84250227bee13a51e2f2ca23c628055b
2012-11-19 13:27:41 -05:00
Ryan VanderMeulen
6d8db1611a Backed out changeset 224fe2a12a04 (bug 779029) for Windows reftest failures. 2012-11-15 21:34:14 -05:00
Yury
fc06b33fb9 Bug 812039 - mozIsPointInPath leaks CGPath objects. r=jmuizelaar 2012-11-15 20:34:57 -05:00
Jonathan Kew
94659d64b3 bug 811382 - update OTS library to r.95. r=jdaggett 2012-11-15 17:04:57 -08:00
Bas Schouten
3dfe9e7a7b Bug 779029: Try to respect EXTEND_NONE when masking. r=jrmuizel 2012-11-16 00:30:08 +00:00
Daniel Holbert
dc4c4f689d (no bug) fix typo in header comment for AsyncPanZoomController::CalculateIntrinsicScale(). DONTBUILD (comment-only) 2012-11-15 09:16:03 -08:00
Jeff Muizelaar
7b6c5f3e23 Bug 811919. Include the pattern transform when painting patterns in DrawTargetCG. r=benwa
This fixes a lot of azure content bugs.

--HG--
extra : rebase_source : be84084aa7753862920ddd7b04fbfb0bd0b54ded
2012-11-14 16:52:02 -08:00
Bas Schouten
da71daaa87 Bug 811850: Fix gfx 2d recording to be 64-bit neutral. r=jrmuizel 2012-11-14 20:55:02 +00:00
Jeff Muizelaar
b2f147f5ac 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
Jeff Muizelaar
abde875b55 Bug 809603. Simplify border radius drawing. r=roc
This adds a RoundedRect class that we use to do the offsetting. This class can
probably also be used elsewhere. With this patch we handle the Gmail checkboxes
in a single draw instead of in pieces like we currently do.

--HG--
extra : rebase_source : 8809f12b386eef2ce7364fb98e681fba343efdfe
2012-11-12 17:55:26 -08:00
Brendan Dahl
49dd7a2abe Bug 791466 - Fix direct write cairo scaled font. r=Bas 2012-11-12 11:35:49 -08:00
Matt Woodrow
c39ede05cb Bug 805197 - Compute a region in LayerTreeInvalidation. r=roc 2012-11-12 10:31:15 -08:00
Nicholas Cameron
1e690cd966 Bug 782311; put back D3D10_RESOURCE_MISC_GDI_COMPATIBLE. r=Bas 2012-11-10 11:14:13 -08:00
Justin Lebar
e80ccc6058 Bug 802366 - The main event: Let a browser process inherit its app's id. r=bz,cjones
The main bug fixed here is that in half of our interfaces, we use "is browser frame/element" to mean "browser or app", and in the other half, we use it to mean "is browser not app".

There's a related, functional bug also fixed here, which is that a browser process doesn't inherit its parent's app-id.  This causes problems e.g. for IndexedDB: If a browser inside an app uses IndexedDB, the DB should have the app's app-id.

I also modified Tab{Parent,Child} and nsFrameLoader to call "app" "ownOrContainingApp", to emphasize that we might have inherited the app from a parent process.  I left nsIDocShell::appId alone, because changing that would have necessitated changing nsILoadGroup and therefore a /lot/ of users in Necko; it's also not clear it would have clarified anything in those cases.
2012-11-10 10:32:37 -08:00
Ryan VanderMeulen
b0097ea4f1 Backed out changeset b5c86318a3ee (bug 801918) for various regressions. 2012-11-10 12:09:50 -05:00
Ryan VanderMeulen
a9dc8e795f Backed out 12 changesets (bug 806127, bug 802366, bug 806168) for Windows build bustage.
--HG--
rename : dom/indexedDB/test/webapp_clearBrowserData.js => dom/indexedDB/test/test_webapp_clearBrowserData.html
2012-11-09 20:14:40 -05:00
Justin Lebar
37f4a955e5 Bug 802366 - The main event: Let a browser process inherit its app's id. r=bz,cjones
The main bug fixed here is that in half of our interfaces, we use "is browser frame/element" to mean "browser or app", and in the other half, we use it to mean "is browser not app".

There's a related, functional bug also fixed here, which is that a browser process doesn't inherit its parent's app-id.  This causes problems e.g. for IndexedDB: If a browser inside an app uses IndexedDB, the DB should have the app's app-id.

I also modified Tab{Parent,Child} and nsFrameLoader to call "app" "ownOrContainingApp", to emphasize that we might have inherited the app from a parent process.  I left nsIDocShell::appId alone, because changing that would have necessitated changing nsILoadGroup and therefore a /lot/ of users in Necko; it's also not clear it would have clarified anything in those cases.
2012-11-09 16:37:39 -08:00
Brian R. Bondy
9155d11e55 Bug 797013 - CheckInterfaceSupport fails on some hardware in metrofx. Do not rely on it. r=bas 2012-11-08 21:34:44 -05:00
Nathan Froyd
3520137968 Bug 809967 - include ostream instead of iostream in PathRecording.h to avoid static initializers; r=Bas 2012-11-08 14:22:16 -05:00
Andrea Marchesini
d2e9fb6a55 Bug 796275 - Context menu fires on wrong target out of process. r=cjones 2012-11-08 14:35:02 -05:00
Benoit Girard
b9c37615d2 Bug 809448 - Make ns(Int)Region ToString const. r=bas
--HG--
extra : rebase_source : 3d0916bf70c0fd0681ebb192b8757c44917f6ff5
2012-11-08 14:23:43 -05: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
Edwin Flores
d4b61e8263 Bug 809904 - Create gralloc images in ImageContainerChild::CreateImage r=nical 2012-11-09 06:44:11 +13:00
Benoit Girard
986e390562 Bug 809493 - Restore the blend equation state after drawing the underlay. r=joe 2012-11-08 10:10:51 -05:00
Edwin Flores
d4f885daa6 Bug 798448 - Add YVU420SP to RGB565 conversion function r=gal 2012-11-08 17:24:02 +13:00
Edwin Flores
c9abceda4c Bug 804906 - Plug leak in GonkIOSurfaceImage::GetAsSurface r=doublec 2012-11-08 17:24:01 +13: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
Jeff Muizelaar
2d52f78c4f 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
Bas Schouten
0c44a0904a Bug 509052: Add new, faster blurring code. r=derf 2012-11-07 09:29:54 +01:00
Ed Morley
7955e755b0 Backout e89f1fce980d (bug 509052) for an assortment of timeouts and crashes 2012-11-07 10:47:27 +00:00
Bas Schouten
18e314acfd Bug 509052: Add new, faster blurring code. r=derf 2012-11-07 09:29:54 +01:00
Matt Woodrow
2146637de4 Bug 808469 - Use gfxQuartzSurface for OMTC drawing on mac. r=cjones 2012-11-07 19:56:56 +13:00