Commit graph

276 commits

Author SHA1 Message Date
Bill McCloskey
1f23e3694d Bug 792652 - Remove methods from MessageListener (r=dvander)
With this change, MessageChannel stores mListener as an IToplevelProtocol
rather than a MessageListener (which isn't really a useful concept on
its own). The MessageListener methods are split out to IProtocol and
IToplevelProtocol. MessageListener gets deleted. Some of the inline
functions in MessageChannel had to be moved to MessageChannel.cpp since
IToplevelProtocol isn't defined in MessageChannel.h.
2016-11-08 11:32:26 -08:00
Jim Mathies
bb379754c1 Bug 1312242 - Provide a default bgcolor flash var. Addresses a background transparency problem with transparent flash and async painting. r=aklotz
MozReview-Commit-ID: KEzb1vkkNXG
2016-11-04 12:57:15 -05:00
Jim Mathies
ace1e6461b Bug 1312530 - Force windowless plugin mode in 64-bit builds if async rendering is disabled. r=akotz
MozReview-Commit-ID: LEUdMKm1BNe
2016-10-25 08:10:54 -05:00
Kyle Machulis
37074751dc Bug 1307694 - Remove reversal of attributes for plugins; r=bsmedberg
MozReview-Commit-ID: 75pULekS9s6
2016-10-20 11:28:02 -07:00
Aaron Klotz
61db71befa Bug 1241921: Disable async plugin init regardless of pref; r=jimm
MozReview-Commit-ID: 5cdb9vLONiS

--HG--
extra : rebase_source : 18eb0af7088649c7c300e56847fe3cddfd1955f9
2016-10-17 12:09:21 -06:00
Nathan Froyd
c6166bd03a Bug 1307483 - remove mProtocolCallStack from PluginModuleChromeParent; r=jimm
The last useful references to this were removed in bug 1250046, when we
deleted Shumway-specific IPC support.  All this code is doing now is
taking up space.
2016-10-05 00:04:32 -04:00
David Parks
17683f933c Bug 1251202 - Implement Default Audio Device Notifications for NPAPI plugins on Windows. r=jimm
Adds plugin variables NPPVpluginRequiresAudioDeviceChanges and NPNVaudioDeviceChangeDetails on Windows.

--HG--
extra : rebase_source : ff18bbca9772352b18be1dfcde90570775e8d5cc
2016-09-19 14:05:41 -07:00
David Anderson
07336b7d13 Protect ImageBridgeChild's singleton with a StaticMutex. (bug 1298938 part 5, r=mattwoodrow)
--HG--
extra : rebase_source : 974ad32cfaf3ba6d1af75d8857f0a35da5aa3641
2016-09-13 16:30:57 -07:00
Kyle Machulis
f8661f72f8 Bug 820831 - Turn on ContentScaleFactor calculation on Windows; r=jimm
MozReview-Commit-ID: 5rqTURsO839

--HG--
extra : rebase_source : 2e2f71d825221723990049958d43d6e2eb40411d
2015-09-17 13:31:34 -07:00
Makoto Kato
0d03e6a9b7 Bug 1180684 - Part 2. Hook GetKeyState on plugin process. r=aklotz
MozReview-Commit-ID: 3cCWMYYaTkn

--HG--
extra : rebase_source : 5350555661244ba0e3afe86bde12988270f9f7cf
2016-08-22 16:06:50 +09:00
Kan-Ru Chen
b6d880aca1 Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
The patch is generated from following command:

  rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,

MozReview-Commit-ID: AtLcWApZfES


--HG--
rename : mfbt/unused.h => mfbt/Unused.h
2016-08-24 14:47:04 +08:00
Kyle Machulis
95ee79e2f4 Bug 1287588 - Fix parameter ordering in embed tags; r=bsmedberg
MozReview-Commit-ID: 75ferxsBTgs
2016-08-18 10:22:03 -07:00
Jim Mathies
b5801fa3f7 Bug 1283274 - Disable windowless workaround if we detect a flash library that support async rendering. r=aklotz
MozReview-Commit-ID: 3RubBjRoeEa
2016-07-25 15:45:29 -05:00
Wei-Cheng Pan
fd87664d8e Bug 1264566 - Part 2: Refactor all usage of FileDescriptor. r=valentin
Callers should use a UniquePtr to hold the platform handle.

MozReview-Commit-ID: 6BWnyAf4b3a

--HG--
extra : transplant_source : %26%CA%0D%28%08%9BT%97Z%A1%3Dq%CD%21%A1_%EFE%83%0E
extra : histedit_source : 77f8ed3d0fdec6cce0c95469130ade0fb547bb91
2016-05-27 16:12:51 +08:00
Bob Owen
73dac13bac Bug 1252877 Part 4: Remove notification of plugins about scrolling from child. r=jimm
MozReview-Commit-ID: 2tHtOxx7jKa
2016-07-18 09:54:02 +01:00
Lee Salzman
0e1e833b40 Bug 1286317 - part 2 - remove Qt widget usage from plugins. r=jrmuizel 2016-07-12 20:28:31 -04:00
David Anderson
e6a98dc91b Clean up Transport memory management in IPDL. (bug 1283744, r=billm) 2016-07-06 18:51:20 -07:00
Gabriele Svelto
35b1fc1eb3 Bug 1262852 - Create a minidump of the plugin process as soon as possible during hang r=jimm 2016-06-24 14:25:08 +02:00
Gabriele Svelto
a7b46c973d Backed out changeset c1dd7376263e (bug 1262852) which caused crashdumps from plugin hangs to be without a signature. 2016-06-12 00:25:25 +02:00
Gabriele Svelto
213e33cf3f Bug 1262852 - Create a minidump upon each plugin hang r=jimm 2016-05-26 00:14:36 +02:00
Valentin Gosu
451803ecf5 Bug 1148161 - rename PluginModuleParent::OfflineObserver to PluginOfflineObserver r=jimm
The class name clashes with mozilla::net::OfflineObserver and ends up crashing in nsTraceRefcnt::GetBloatEntry because the two classes have a different size.
2016-05-12 17:43:34 +02:00
Kyle Huey
7311b10562 Bug 1268313: Part 2 - Replace some NewRunnableMethods with NS_NewNonOwningRunnableMethod. r=froydnj 2016-05-05 01:44:59 -07:00
Carsten "Tomcat" Book
dfff02b90d Backed out changeset fd833da413ad (bug 1268313)
--HG--
extra : rebase_source : f857127091900871034f44d89095895abe9932dc
2016-04-29 14:21:25 +02:00
Kyle Huey
72c9966484 Bug 1268313: Part 2 - Replace some NewRunnableMethods with NS_NewNonOwningRunnableMethod. r=froydnj 2016-04-28 14:08:24 -07:00
Kyle Huey
7579799b01 Bug 1266595: Replace Chromium Task with Runnable. r=froydnj 2016-04-27 17:06:05 -07:00
Masayuki Nakano
b332dc9ff4 Bug 1257759 part.5 PluginInstanceChild should post received native key event to chrome process if the key combination may be a shortcut key r=jimm
When PluginInstanceChild receives native key events, it should post the events to the chrome process first for checking if the key combination is reserved.  However, posting all key events to the chrome process may make damage to the performance of text input.  Therefore, this patch starts to post a key event whose key combination may be a shortcut key.  However, for avoiding to shuffle the event order, it posts following key events until all posted key events are handled by the chrome process.

For receiving response from widget, this patch defines nsIKeyEventInPluginCallback.  It's specified by nsIWidget::OnWindowedPluginKeyEvent() for ensuring the caller will receive the reply.  Basically, the caller of nsIWidget::OnWindowedPluginKeyEvent() should reply to the child process.  However, if the widget is a PuppetWidget, it cannot return the result synchronously.  Therefore, PuppetWidget::OnWindowedPluginKeyEvent() returns NS_SUCCESS_EVENT_HANDLED_ASYNCHRONOUSLY and stores the callback to mKeyEventInPluginCallbacks.  Then, TabParent::HandledWindowedPluginKeyEvent() will call PuppetWidget::HandledWindowedPluginKeyEvent().

MozReview-Commit-ID: G6brOU26NwQ

--HG--
extra : rebase_source : 8140456de278956d2d594e85c7b397ae366b4962
2016-04-19 20:09:37 +09:00
Makoto Kato
9d4015aa91 Bug 1248821 - Force Flash to windowless mode regardless of sandbox level. r=jimm
MozReview-Commit-ID: B6X6DS42tYb

--HG--
extra : rebase_source : e76a22ee8790d67d7416f1a2b38bc00c9abfbc74
extra : histedit_source : dedc94e4adad27e3d1c5cb800da100ed682ef959
2016-04-15 19:59:58 +09:00
Aaron Klotz
8db796eb11 Bug 1256943: Ensure that BLOCKED_ON_PLUGIN_MODULE_INIT_MS is being recorded in e10s chrome; r=jimm
I also add some missing data to the content version, namely the duration of time that ContentParent::SendLoadPlugin takes.

MozReview-Commit-ID: 8qSZopvY1D7

--HG--
extra : rebase_source : ca717c149a52ed1ece9ac0678dca0c284ab26c5d
2016-03-15 14:04:34 -06:00
Jim Mathies
ee3a95d698 Bug 1041599 - Maintain a single volume control session between browser, content, and plugins on Windows. r=aklotz
MozReview-Commit-ID: 2LuYciKfsWn
2016-03-13 08:25:23 -05:00
Aaron Klotz
094a7b0970 Bug 1161169: Clean up usage of mContentParent and clearly identify it as specifically for async plugin init; r=billm,jimm
mContentParent is really just to be used while handling a synchronous
ContentParent::RecvLoadPlugin call when async plugin init turned on.

In any other context, using it will be unsafe.

This patch adds comments and assertions to ensure that this value isn't set
otherwise, and converts the one use of mContentParent outside of async plugin
init to use an alternative mechanism for identifying the content process.

MozReview-Commit-ID: Esgt1kj0MCt

--HG--
extra : rebase_source : 166b913b401582c6948e4b61efc102dc1b9c8d2f
2016-03-03 00:24:36 -07:00
Wes Kocher
ab36d59168 Merge m-c to inbound, a=merge
MozReview-Commit-ID: 3PWdAnh0hk5
2016-03-01 15:29:43 -08:00
Jim Mathies
b4cc9c50e1 Bug 1232181 - Plugin module plumbing for retrieving scroll captures and updating plugin instance content scroll state. r=roc 2016-03-01 12:48:25 -06:00
Yury Delendik
347e37204f Bug 1250046 - Remove Shumway references from IPC. r=jmathies 2016-02-23 18:16:42 -06:00
Makoto Kato
de72ce5dbe Bug 1246574 - Store sandbox level to nsPluginTag for e10s. r=jimm
When turned on e10s, plugin process creates from chrome process.  So content
process doesn't know current sandbox level.  To rewrite wmode attribute on
contnet process by sandbox level >= 2, we should store sandbox level to
nsPluginTag.

MozReview-Commit-ID: DCQ5g7uCbJF

--HG--
extra : rebase_source : 7064f469e873ea1301e28faeab0bbb27613978db
2016-02-08 20:21:20 +09:00
Makoto Kato
a9e2d876b8 Bug 1201904 - Force windowless mode for Flash when sandbox level >= 2. r=bsmedberg
--HG--
extra : commitid : Bi7iElnGJdT
extra : rebase_source : 9e2dcde2410bd089d6fd3f0da77927199c586443
2016-01-15 16:45:15 +09:00
David Rajchenbach-Teller
42b6a4145f Bug 1224374 - Profiler labels for the 25 top chrome hangs;r=BenWa,MarcoZ
Experience shows that we do not have enough profiler labels to make
BHR hang reports meaningful. This patch adds enough labels to let us
exploit hang reports matching the 25 topmost chrome hangs.

--HG--
extra : rebase_source : b9ec379c58255a250db1020377147c95c82df712
2016-01-14 23:03:11 +01:00
Sebastian Hengst
d8d4a2d1a5 Backed out 2 changesets (bug 1224374) for Windows bustage. r=bustage on a CLOSED TREE
Backed out changeset 5f458e6e4997 (bug 1224374)
Backed out changeset 0dc02cb0b604 (bug 1224374)
2016-01-19 21:30:41 +01:00
David Rajchenbach-Teller
f5531f5260 Bug 1224374 - Profiler labels for the 25 top chrome hangs;r=BenWa,MarcoZ
Experience shows that we do not have enough profiler labels to make
BHR hang reports meaningful. This patch adds enough labels to let us
exploit hang reports matching the 25 topmost chrome hangs.

--HG--
extra : rebase_source : b9ec379c58255a250db1020377147c95c82df712
2016-01-14 23:03:11 +01:00
Felipe Gomes
74fb8f1429 Bug 1239525 - Make sure async plugin initialization is off if e10s is on. r=aklotz 2016-01-14 16:38:53 -02:00
Nicholas Nethercote
f447bec986 Bug 1233619 (part 2) - Moz2Dify BeginUpdate() and BeginUpdateBackground() functions. r=roc.
The only non-trivial change is in BasicPaintedLayer::Validate().

--HG--
extra : rebase_source : 7eed0e384d2d856d918ad025b09e29f796017f51
2015-12-17 19:39:10 -08:00
Nicholas Nethercote
67e5c3ea2c Bug 1233619 (part 1) - Remove unneeded gfxContext argument from EndUpdate() and EndUpdateBackground() functions. r=roc.
--HG--
extra : rebase_source : cc16e7a77d8d60706cd0406c859aece88d7b18c3
2015-12-17 19:39:09 -08:00
Jim Mathies
9981852508 Bug 1227312 - Avoid calling FinalizeChildData twice in GenerateCompleteMinidump. r=ted
--HG--
extra : amend_source : 5d2f68cc58b0aa910a32ad59dc1300eb7557eff1
2015-12-03 10:25:10 -06:00
Randell Jesup
f955d91200 Bug 1226200: Don't assume a TCPSocket has only one managee (and rename LoneManagedOrNull) r=jdm 2015-12-22 10:14:23 -05:00
Mike Conley
51d7f5de3d Bug 1193838 - Allow ProfileGatherer to gather profiles from exiting processes. r=BenWa
--HG--
extra : commitid : IhyN838vNVU
extra : rebase_source : a91c87e3f9a087cd789bdb678651ab351357092a
2015-08-18 14:57:35 -04:00
Mike Conley
9811d5b26c Bug 1193838 - Expose ProfileGatherer as an nsISupports through nsIProfiler for process parent actors. r=BenWa
We need to let ContentParent and PluginModuleParent get a reference to the ProfileGatherer
during the window of time that we're profiling so that if they start to die (the actor is
starting to go away), they have a gatherer they can send their last profile data to.

--HG--
extra : commitid : LkcpDsiXmp0
extra : rebase_source : d1c9e6e7640ff759cef25920e2bc17c0484544bd
2015-08-12 14:20:26 -04:00
David Anderson
949bfb8805 Implement the direct bitmap drawing model for plugins. (bug 1217665 part 6, r=mattwoodrow)
--HG--
extra : rebase_source : a3243dc38b6033d6dcdaf98d89323b4315efd0f7
2015-12-02 11:31:17 -08:00
David Anderson
55f75a9936 Revive NPAPI async drawing: stub code. (bug 1217665 part 1, r=aklotz)
--HG--
extra : rebase_source : e106bcfe1d671bcff1175b08d47bd8fd2768d64e
2015-12-02 11:31:16 -08:00
Mike Conley
26dff43ec9 Bug 1103094 - Start profiling subprocesses if the parent process is already profiling. r=BenWa
--HG--
extra : commitid : 5WuS9Ur4Lmn
extra : rebase_source : ec3fd280607c5b13090d3c4e902b47ffd5617ec3
2015-08-11 14:26:27 -04:00
Birunthan Mohanathas
9985829ecc Bug 1219392 - Capitalize mozilla::unused to avoid conflicts. r=froydnj 2015-11-02 07:53:26 +02:00
Nathan Froyd
01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00