Commit Graph

11150 Commits

Author SHA1 Message Date
Yury
b3e51b2f82 Bug 776208 - Plugin preview overlay. r=johns,jaws,margaret, sr=joshmoz 2012-08-24 16:18:16 -04:00
Kyle Huey
1a68eab98d Bug 783162: Make mapped attributes hold the image alive. r=bz
The nsCSSValue in nsGenericHTMLElement::MapBackgroundInto is a temporary.  This causes a problem after Bug 697230 landed, because the nsCSSValue::Image we put into that value is destroyed once we're done doing style stuff.  Previously the nsImageLoader would grab the request off the nsCSSValue::Image and hold it alive.  Bug 697230 changed the behavior here; now when the nsCSSValue::Image is destroyed it tells the image loader to drop the request.  The result is that all the references to the request are dropped and the frame is never told it has a background.

The solution is to keep the nsCSSValue::Image alive longer.  This patch adds two new types of nsAttrValue.  The first is an nsCSSValue::URL.  A ParseBackgroundAttribute method is added on nsGenericHTMLElement that the relevant elements (body/td/th/table/tr/tbody/thead/tfoot) call that parses background into an nsCSSValue::URL.  The second is an nsCSSValue::Image.  nsGenericHTMLElement::MapBackgroundInto attempts to convert the nsCSSValue::URL into an nsCSSValue::Image by kicking off the image load.  The result is that image loads are only started when the element is actually visible.  This also mirrors the way background-image works.  This also allows us to fix two longstanding bugs in this code.  Since MapBackgroundInto doesn't have a pointer to the actual element, it relied on grabbing the principal of the document.  Now we can grab the principal of the node in ParseBackgroundAttribute.  MapBackgroundInto also has no way to get at the element's base URI (to honor xml:base), which is now possible in ParseBackgroundAttribute.

nsCSSValue::[Image|URL] have also been moved to be mozilla::css::[Image|URL]Value.  nsAttrValue.h is included in external linkage code, so it can't include nsCSSValue.h to get the declarations of nsCSSValue::[Image|URL], and nested classes can't be forward declared.  Moving the classes to a namespace solves the problem.

Finally some old inoperative quirks mode code was removed.  This code has done nothing since Bug 273078 was landed in 2004.
2012-08-24 10:50:49 -07:00
Benjamin Smedberg
583084b3a2 Revert bug 776208 for semi-consistent failures:
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/base/content/test/browser_pluginplaypreview.js | Test 1a, the overlay about: content is expected
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/base/content/test/browser_pluginplaypreview.js | an unexpected uncaught JS exception reported through window.onerror - TypeError: Components.classes is undefined at jar:file:///c:/talos-slave/test/build/firefox/omni.ja!/chrome/toolkit/content/global/about.xhtml:38
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/base/content/test/browser_pluginplaypreview.js | an unexpected uncaught JS exception reported through window.onerror - TypeError: Components.classes is undefined at jar:file:///c:/talos-slave/test/build/firefox/omni.ja!/chrome/toolkit/content/global/about.xhtml:38
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/base/content/test/browser_pluginplaypreview.js | Found an unexpected tab at the end of test run: jar:file:///c:/talos-slave/test/build/firefox/omni.ja!/chrome/toolkit/content/global/about.xhtml
TEST-UNEXPECTED-FAIL | chrome://mochitests/content/browser/browser/base/content/test/browser_pluginplaypreview.js | Found an unexpected tab at the end of test run: chrome://mochitests/content/browser/browser/base/content/test/plugin_test.html

--HG--
extra : rebase_source : e000988677d466b4796c5b2a51968f586743e6db
2012-08-24 13:08:15 -04:00
Benoit Jacob
63c08f3f80 Bug 777028 - honor gfx.work-around-driver-bugs for Mesa WebGL workaround - r=jgilbert 2012-08-23 14:56:17 -04:00
Andrew McCreight
ae88d3a894 Bug 782735 - turn nsNodeInfoManager into a non-leaking native CC class. r=smaug 2012-08-24 09:50:06 -07:00
Andrew McCreight
471b1a13bf Bug 782485 - turn nsXULPrototypeNode into a native CC class. r=smaug 2012-08-24 09:50:06 -07:00
Andrew McCreight
62325fa9f3 Bug 750570, part 4 - Switch most native CC classes to use the purple buffer. r=smaug
This patch actually converts over most of the existing native CC classes
to use the participant. This is done by converting them to use
the newly generalized nsCycleCollectingAutoRefCnt instead of their usual
ref count.

This is mostly a matter of defining new macros defining AddRef() and Release()
for native CC classes with the CC ref count.

nsTimeout is left as a legacy native CC class because it is a weird class,
but hopefully eventually it too can be converted over.  See bug 774874.
2012-08-24 09:50:06 -07:00
Yury
51f5276dad Bug 776208 - Plugin preview overlay. r=johns,jaws,margaret sr=joshmoz
--HG--
extra : rebase_source : f9b13bbda1318dbdaa71b04b3e04736655e65081
2012-08-23 17:11:51 -04:00
Robert Longson
1345bb8a0e Bug 785017 - Use NS_GetStaticAtom in svg content where appropriate. r=dholbert 2012-08-24 08:29:09 +01:00
Matt Brubeck
5e47d4412f Back out 670c8a2695b3 (bug 771354), 134557d57e6e 4ad52e488977 (bug 774607), and...
036eb8c2a08a d4d36e3b948f 35334e820632 6bd07fd5147d d49e7c0d762c 407f19deb14c d84551808abb (bug 774633)
on a CLOSED TREE
2012-08-23 21:34:27 -07:00
Boris Zbarsky
2b5786b5f1 Bug 784809. Allow null for the repeat argument of canvas createPattern. r=peterv 2012-08-23 12:23:23 -07:00
Luke Wagner
94264a0bc8 Bug 625199 - s/JSAutoEnterCompartment/JSAutoCompartment/ and make it infallible (r=bholley)
--HG--
extra : rebase_source : 12acf2288285f5caefd7fecea8207de3a47eab5b
2012-08-21 18:42:53 -07:00
Luke Wagner
18c0268620 Bug 625199 - kill dummy frames (r=mrbkap)
--HG--
extra : rebase_source : df4e3bddabf20cdc5b9122370fa62b40e64177c7
2012-08-17 18:05:06 -07:00
Matthew Gregan
1ddcfabab5 Bug 596453 - Fix typo in test_error_on_404.
--HG--
extra : rebase_source : b9d8a71051c06a17d59ba321e2c62c095fa917b8
2012-08-24 11:51:37 +12:00
Bobby Holley
a2d7eabc5a Bug 774607 - Remove use of JS_{Is,Make}SystemObject from Gecko. r=bz
We currently set this for system globals and anything whose parent
chain leads to a system global. Maybe this was relevant before, but
with CPG this is just equivalent to asking whether the object is in
a system compartment. And the only place where we _check_ this bit
is immediately after checking for a system compartment, in
WrapperFactory. So AFAICT this can go away entirely.
2012-08-23 16:44:53 -07:00
Daniel Holbert
7aec61a9d3 Bug 785191: Push a null JSContext when binding / unbinding image elements in a document. r=bz 2012-08-23 16:24:58 -07:00
Matt Brubeck
0e09726934 Back out 156eaa94f73c (bug 782786) and 05d1a3fba90b (bug 777028) for frequent Linux reftest failures on a CLOSED TREE 2012-08-23 14:47:07 -07:00
Matt Brubeck
31933d7e8b Back out b88ccf7bd3e3 for Linux test_canvas.html failures on a CLOSED TREE 2012-08-23 14:08:42 -07:00
Ben Turner
0727b7098c Bug 784726 - 'Remove old IPC::URI'. r=cjones+khuey.
--HG--
rename : ipc/glue/IPCSerializableParams.ipdlh => ipc/glue/InputStreamParams.ipdlh
extra : transplant_source : %A6%BC%8B%8D%3A_%7Df%2B%FE%AA%94%81%AB%CAW%15K%A7%03
2012-08-23 12:33:46 -07:00
Boris Zbarsky
9d2ad14dab Bug 784809. Allow null for the repeat argument of canvas createPattern. r=peterv 2012-08-23 12:23:23 -07:00
Benoit Jacob
95a8db507f Bug 777028 - honor gfx.work-around-driver-bugs for Mesa WebGL workaround - r=jgilbert 2012-08-23 14:56:17 -04:00
Bobby Holley
7d93b33884 Bug 784560 - Fix more tests. r=mccr8 2012-08-23 11:45:28 -07:00
Robert O'Callahan
e70e7093ce Bug 779715. Part 8: Make it safe to call MediaInputPort::Destroy after streams at both ends of the port have been destroyed. r=jesup
We had problems because we'd call Destroy on a port after calling Destroy on
its streams. This patch makes the port's Destroy ControlMessage not use a stream,
instead we get the stream from the port directly. It also makes us update the
graph's mPortCount only when the port is finally destroyed; this fixes a potential
bug where the current graph could shut down when all streams are removed, before
all ports have been completely destroyed.

--HG--
extra : rebase_source : 3245fa64b79fb8a75c17190f1a4a2af6d42a5012
2012-08-24 00:46:20 +12:00
Robert O'Callahan
982fceed0a Bug 779715. Part 7: Update test_streams_element_capture_reset.html to test new functionality. r=cpearce
test_streams_element_capture_reset.html is updated to test that mozCaptureStreamUntilEnded actually stops
capturing when the stream ends. It also tests that seeking and reloading the media resource keep
feeding a mozCaptureStream stream, and feed the right amount of data.

--HG--
extra : rebase_source : 07faf20b8a99b5e7dcdfb27b3a2096fdfd570f45
2012-08-20 16:57:12 +12:00
Robert O'Callahan
727fa86a21 Bug 779715. Part 6: Rework capturing MediaStreams from media elements to use TrackUnionStreams. r=cpearce,jesup
Moves to a new setup where a decoder manages a single SourceMediaStream internally. Each stream
returned from mozCaptureStream(UntilEnded) is a TrackUnionStream which is fed by the
decoder's SourceMediaStream.
We want the captured streams to be blocked while the media element is not playing. We do that
by blocking any captured stream that has no SourceMediaStream feeding into it, and blocking
any SourceMediaStream while its decoder is not playing.
We arrange for the decoders's PlaybackEnded to be delayed until its SourceMediaStream has
finished according to the media stream graph. This ensures the state of captured media streams
corresponds more closely to the media element state.

--HG--
extra : rebase_source : 3324ff0e9bdce9c71a23c0f5f2032815e9046081
2012-08-01 00:17:22 +12:00
Chris Double
31255e897a Backout bug 730765 Part 3/3
--HG--
extra : rebase_source : 2aadbb2419cceeac30bd95484e37ab905525662f
2012-08-24 00:12:53 +12:00
Chris Double
9543e95d97 Backed out changeset 5583ccdfea18 2012-08-23 22:42:14 +12:00
Paul Adenot
15058d402d Bug 730765 - Media cache shouldn't be used when loading from blob: urls. r=biesi 2012-08-21 16:00:23 -07:00
Ehsan Akhgari
7a743fcc5b Bug 784536 - Use the name of the enum value directly as opposed to access it from the enum's scope; r=dzbarsky 2012-08-21 19:06:50 -04:00
Ryan VanderMeulen
351d01c8ff Backout 3ce94808577b, 56f288230d5a, and 18ff170ecb1f (bug 730765) for bustage. r=fail 2012-08-21 18:45:54 -04:00
Daniel Holbert
bfd9bbf0da Bug 784828 patch 2: Make nsSVGAttrTearoffTable lookups use nsRefPtr instead of manual NS_ADDREF refcounting, in nsSVGLength2.cpp. r=longsonr 2012-08-22 23:24:43 -07:00
Daniel Holbert
650d35d1e1 Bug 784828 patch 1: Make nsSVGAttrTearoffTable lookups use nsRefPtr instead of manual NS_ADDREF refcounting, in DOMSVG*List.cpp. r=longsonr 2012-08-22 23:24:41 -07:00
Paul Adenot
7751daec1e Bug 730765 - Media cache shouldn't be used when loading from blob: urls. r=biesi 2012-08-15 10:36:12 -07:00
David Keeler
8c1cb54acb Bug 767636 - expose plugin fallback type to extensions. r=jaws 2012-08-21 12:40:07 -07:00
Bobby Holley
625511572e Bug 784233 - Relax __exposedProps__ check for sandboxes until we can repack AMO addons. r=gal 2012-08-21 10:27:08 -07:00
Paul Adenot
9670c86dc2 Bug 775319 - Determine the sample format at compile time for all media code. r=kinetik 2012-08-16 18:10:36 -07:00
Kan-Ru Chen (陳侃如)
cd9d182e06 Bug 767480 - Gralloc backed video buffer. r=roc 2012-08-21 18:22:58 +08:00
Kan-Ru Chen (陳侃如)
f5e3f3d680 Bug 767480 - PlanarYCbCrImage Refactoring. r=roc 2012-08-21 18:18:20 +08:00
Kan-Ru Chen (陳侃如)
22db9a8e93 Back out c8f7bace9cf9, 17ec4e01c126 (bug 767480) r=bustage 2012-08-21 17:55:02 +08:00
Kan-Ru Chen (陳侃如)
2225b447e6 Bug 767480 - Gralloc backed video buffer. r=roc 2012-08-21 14:59:42 +08:00
Kan-Ru Chen (陳侃如)
4787af5685 Bug 767480 - PlanarYCbCrImage refactoring. r=roc 2012-08-21 17:31:36 +08:00
Chris Pearce
cdc788f72d Bug 779914 - Remove redundant reset of nsHTMLMediaElement::mAudioStream. r=kinetik. 2012-08-21 17:07:00 +12:00
Chris Pearce
3eaba47273 Bug 779914 - Reset Mozilla Audio Data API in nsHTMLMediaElment::AbortExistingLoads(). r=doublec 2012-08-21 17:06:55 +12:00
Chris Double
90e10cebf3 Bug 783927 - Handle zero length audio reads in stagefright backend to fix audio issues - r=cpeterson 2012-08-21 17:03:21 +12:00
Bobby Holley
da84660fd1 Backed out changeset 61e9eaf9aae2
--HG--
extra : rebase_source : 30fb2e7a057482412d29a96f8b8e98135beb6a79
2012-08-20 21:07:07 -07:00
David Zbarsky
fbb04700b6 Bug 784004 - Don't include Layers.h everywhere Part 3 r=nical 2012-08-21 00:06:46 -04:00
Bobby Holley
e4a6e10695 Bug 784233 - Relax __exposedProps__ check for sandboxes until we can repack AMO addons. r=gal 2012-08-20 21:03:44 -07:00
L. David Baron
876e60a116 Back out nsXBLPrototypeHandler changes from changeset d09b4e60bb09 to fix bug 776075. 2012-08-20 19:23:32 -07:00
L. David Baron
8861dbb7d3 Only do hyphenation when the language was specified explicitly, rather than using an encoding-inferred language. (Bug 702121, patch 2) r=jfkthame 2012-08-20 19:23:32 -07:00
Ryan VanderMeulen
f12fa88179 Merge m-c to inbound. 2012-08-20 20:21:35 -04:00