Commit Graph

4935 Commits

Author SHA1 Message Date
Nicholas Nethercote
025461bde7 Bug 1390428 (part 1) - Remove many nsXPIDLCString local variables. r=erahm.
These are all easy cases where an nsXPIDLCString local variable is set via
getter_Copies() and then is only used in ways that nsCStrings can also be used
(i.e. no null checks or implicit conversions to |char*|).

In every case the patch trivially replaces the nsXPIDLCString with an
nsCString. (Also, there are a couple of unused nsXPIDLCString variables that
the patch simply removes.)
2017-08-16 13:58:35 +10:00
Bill McCloskey
9edd615af7 Bug 1382922 - Refactor event queue to allow multiple implementations (r=erahm)
This patch refactors the nsThread event queue to clean it up and to make it easier to restructure. The fundamental concepts are as follows:

Each nsThread will have a pointer to a refcounted SynchronizedEventQueue. A SynchronizedEQ takes care of doing the locking and condition variable work when posting and popping events. For the actual storage of events, it delegates to an AbstractEventQueue data structure. It keeps a UniquePtr to the AbstractEventQueue that it uses for storage.

Both SynchronizedEQ and AbstractEventQueue are abstract classes. There is only one concrete implementation of SynchronizedEQ in this patch, which is called ThreadEventQueue. ThreadEventQueue uses locks and condition variables to post and pop events the same way nsThread does. It also encapsulates the functionality that DOM workers need to implement their special event loops (PushEventQueue and PopEventQueue). In later Quantum DOM work, I plan to have another SynchronizedEQ implementation for the main thread, called SchedulerEventQueue. It will have special code for the cooperatively scheduling threads in Quantum DOM.

There are two concrete implementations of AbstractEventQueue in this patch: EventQueue and PrioritizedEventQueue. EventQueue replaces the old nsEventQueue. The other AbstractEventQueue implementation is PrioritizedEventQueue, which uses multiple queues for different event priorities.

The final major piece here is ThreadEventTarget, which splits some of the code for posting events out of nsThread. Eventually, my plan is for multiple cooperatively scheduled nsThreads to be able to share a ThreadEventTarget. In this patch, though, each nsThread has its own ThreadEventTarget. The class's purpose is just to collect some related code together.

One final note: I tried to avoid virtual dispatch overhead as much as possible. Calls to SynchronizedEQ methods do use virtual dispatch, since I plan to use different implementations for different threads with Quantum DOM. But all the calls to EventQueue methods should be non-virtual. Although the methods are declared virtual, all the classes used are final and the concrete classes involved should all be known through templatization.

MozReview-Commit-ID: 9Evtr9oIJvx
2017-08-16 20:55:43 -07:00
Kris Maglione
08ac1de819 Bug 1357589: Part 1 - Use the correct default remote type for content-created tabs/windows. r=mconley r=mystor
When creating new windows/tabs from the content process, we currently choose
the default remote type based on the referrer URI, rather than the actual
remote type of the opener. While this generally works, it fails when opening
windows from URLs (particularly in iframes) which are opened in process types
other than their default process type, since the initial about:blank load gets
redirected to a new process before the child process has a chance to load its
actual target URI.

Using the actual remote type of the child opening the window fixes this
problem for URLs which are capable of being loaded into the child's process
type.

MozReview-Commit-ID: ClxVGxu52Lf

--HG--
extra : rebase_source : 3a029d207dac0b08eb7c7ce7737adfd9c1c96892
2017-08-16 15:11:59 -07:00
Gabor Krizsanits
722233fed1 Bug 1376895 - Make preloaded browser use pre-existing content process. r=mconley
We want to avoid to have several cached content processes, one for each
preloaded browser (one per window) and one for the preallocated process.
For that we force the preloaded browser to choose an existing process and
during the first navigation in that tab, that leaves about:newtab, we re-run
the process selecting algorithm
2017-08-16 13:00:22 +02:00
Carsten "Tomcat" Book
eea1986e03 merge mozilla-inbound to mozilla-central a=merge 2017-08-16 11:23:24 +02:00
Carsten "Tomcat" Book
a478b0ef54 Backed out changeset adf5ed713e0d (bug 1376895) 2017-08-16 11:15:50 +02:00
Sebastian Hengst
aaeaf6ba8a Backed out changeset 21619c674c86 (bug 1348361) for failing mochitest test_group_zoom.html on Android and robocop tests. r=backout 2017-08-15 21:08:14 +02:00
Michael Layzell
76fb615887 Bug 1384238 - Annotate BHR hangs which occur while there is a pending input event, r=smaug
MozReview-Commit-ID: HRPMw2IfEKB
2017-08-15 16:36:28 -04:00
Michael Layzell
5d81a3b535 Bug 1380081 - Part 9: Transmit BHR Hangs from the Content and GPU process to the parent process, r=froydnj
BHRTelemetryService only runs in the parent process (and we can only submit
pings from there), so we need to send the data which we collect in the GPU and
Content processes over IPC to the parent process.

MozReview-Commit-ID: 8B5uZKbjNbU
2017-08-15 16:35:42 -04:00
Stephen A Pohl
a7ea738c76 Bug 1348361: Make launching of subprocesses async. r=billm 2017-08-15 11:28:38 -04:00
Gabor Krizsanits
a53261ca24 Bug 1376895 - Make preloaded browser use pre-existing content process. r=mconley
We want to avoid to have several cached content processes, one for each
preloaded browser (one per window) and one for the preallocated process.
For that we force the preloaded browser to choose an existing process and
during the first navigation in that tab, that leaves about:newtab, we re-run
the process selecting algorithm
2017-08-15 14:05:17 +02:00
Kris Maglione
0b7f63fe38 Bug 1390010: Part 2 - Allow JS callers to retrieve remoteType of message managers. r=krizsa
This gives JS callers access to the remote type of remote message managers.
There's currently no way for extensions to access this unless they have a
<browser> element to check the remoteType attribute of.

MozReview-Commit-ID: A8Y3ZSG3rt8

--HG--
extra : rebase_source : e024922522da9a30265f05e9a8dbf7529dfe1d81
2017-08-13 18:58:23 -07:00
Kris Maglione
04965b96b9 Bug 1390010: Part 1 - Allow JS callers to retrieve parent message manager from ContentParent. r=krizsa
JS code is notified when a new ContentParent is created via normal
"ipc:content-created" notifications, but can't do anything with it, since
nsIContentParent is not scriptable. This allows JS callers to retrieve the
parent process message manager, which is the normal way they interact with
content children.

MozReview-Commit-ID: 7lcZ4XkJ6uR

--HG--
extra : rebase_source : f891c0e29863fc42fc2351a791ca3f1f7e2824b9
2017-08-13 19:00:49 -07:00
Wes Kocher
20689fef47 Backed out 2 changesets (bug 1376895) for breaking browser_identity_UI.js with assertions in nsPermissionManager.cpp a=backout
Backed out changeset 620d01ac103a (bug 1376895)
Backed out changeset 3a06ab7fda1a (bug 1376895)

MozReview-Commit-ID: 2C8kUg77dz8
2017-08-14 13:13:45 -07:00
Gabor Krizsanits
7f2b53e79a Bug 1376895 - Make preloaded browser use pre-existing content process. r=mconley
We want to avoid to have several cached content processes, one for each
preloaded browser (one per window) and one for the preallocated process.
For that we force the preloaded browser to choose an existing process and
during the first navigation in that tab, that leaves about:newtab, we re-run
the process selecting algorithm
2017-08-14 17:42:05 +02:00
Stone Shih
daa217691b Bug 1351148 Part11: Set remote to be ready to handle input events when pref'ed off. r=smaug.
MozReview-Commit-ID: CO5BU9eOC84
2017-08-10 13:20:58 +08:00
Stone Shih
f04c0ccafa Bug 1351148 Part9: Resend a MouseEnterIntoWidget event to TabChild when it's ready to handle input events. r=smaug.
MozReview-Commit-ID: IXPTRyJe1tk
2017-07-24 10:46:40 +08:00
Stone Shih
de7f705042 Bug 1351148 Part2: Add a priority queue for input events. r=smaug.
MozReview-Commit-ID: 5ud1Ex9UNVo
2017-03-21 15:44:12 +08:00
Michael Layzell
82c9240971 Bug 1372433 - Label the PContent::Msg_NotifyVisited runnable, r=billm
I don't bother to label the runnables in the parent process being fired by
VisitedQuery, as we are not planning to perform scheduling in the parent process
if I remember correctly. It would be possible to label those runnables as well.

MozReview-Commit-ID: EosNOu62fEV
2017-08-11 18:07:58 -04:00
Nathan Froyd
f6b2b07342 Bug 1376864 - blacklist some prefs from being broadcast to child processes; r=billm
Telemetry has indicated that preference update messages are one of the
most common unlabeled runnables.  Starting the browser on a clean
profile and letting it just sit for a few minutes shows many prefs being
broadcast to all content processes that won't really have any effect on
said content processes--preference changes having to do when services
were last checked for updates and things like that.  To cut down on
preference update traffic, this patch introduces a simple blacklist
against which all preference updates are compared.  This should cut down
on preference update traffic and reduce the number of unlabeled
runnables to worry about.
2017-08-11 13:18:22 -04:00
Sebastian Hengst
cd718a6989 Backed out changeset 0aca62e914cf (bug 1376895) for asserting IsSafeToRun(), at dist\include\mozilla/SchedulerGroup.h:81 e.g. in mochitest dom/events/test/test_bug336682_1.html on Windows 10 x64. r=backout 2017-08-11 14:48:27 +02:00
Gabor Krizsanits
272b1a18ac Bug 1376895 - Make preloaded browser use pre-existing content process. r=mconley
We want to avoid to have several cached content processes, one for each
preloaded browser (one per window) and one for the preallocated process.
For that we force the preloaded browser to choose an existing process and
during the first navigation in that tab, that leaves about:newtab, we re-run
the process selecting algorithm
2017-08-11 12:44:11 +02:00
Sebastian Hengst
41113ae3fc Backed out changeset 0b6c4c95323e (bug 1380081) 2017-08-11 09:28:16 +02:00
Stone Shih
7de447a25a Backed out changeset 46d8f42863af (bug 1351148) 2017-08-11 15:19:44 +08:00
Stone Shih
9d71d0a026 Backed out changeset 3e2a441357ca (bug 1351148) 2017-08-11 15:18:57 +08:00
Stone Shih
6f61a3006c Backed out changeset 4b52e1b335fb (bug 1351148) 2017-08-11 15:18:43 +08:00
Stone Shih
123659cc82 Bug 1351148 Part11: Set remote to be ready to handle input events when pref'ed off. r=smaug.
MozReview-Commit-ID: CO5BU9eOC84
2017-08-10 13:20:58 +08:00
Stone Shih
b7e122c35e Bug 1351148 Part9: Resend a MouseEnterIntoWidget event to TabChild when it's ready to handle input events. r=smaug.
MozReview-Commit-ID: IXPTRyJe1tk
2017-07-24 10:46:40 +08:00
Stone Shih
9d1d77d849 Bug 1351148 Part2: Add a priority queue for input events. r=smaug.
MozReview-Commit-ID: 5ud1Ex9UNVo
2017-03-21 15:44:12 +08:00
Wes Kocher
201dd4a9e1 Backed out changeset 93151fa47fcf (bug 1376895) for permafailing test_frameNavigation.html a=backout
MozReview-Commit-ID: 88VukVNkZHW
2017-08-10 14:20:01 -07:00
Michael Layzell
9175dce461 Bug 1380081 - Part 9: Transmit BHR Hangs from the Content and GPU process to the parent process, r=froydnj
BHRTelemetryService only runs in the parent process (and we can only submit
pings from there), so we need to send the data which we collect in the GPU and
Content processes over IPC to the parent process.

MozReview-Commit-ID: 8B5uZKbjNbU
2017-08-10 15:55:12 -04:00
Sebastian Hengst
51d351f567 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-08-10 17:41:11 +02:00
Gabor Krizsanits
02da6c0726 Bug 1376895 - Make preloaded browser use pre-existing content process. r=mconley
We want to avoid to have several cached content processes, one for each
preloaded browser (one per window) and one for the preallocated process.
For that we force the preloaded browser to choose an existing process and
during the first navigation in that tab, that leaves about:newtab, we re-run
the process selecting algorithm
2017-08-10 16:48:11 +02:00
Bill McCloskey
a7bc022071 Bug 1384336 - Stop using OS-level event loop in content process (r=mstange)
MozReview-Commit-ID: 1ouSlgGchWl
2017-08-09 21:24:20 -07:00
Haik Aftandilian
f73b286d2a Bug 1386832 - Part 1 - Move non-sandbox-specific routines out of SandboxSettings. r=jimm
Moves IsDevelopmentBuild(), GetRepoDir(), and GetObjectDir() out of
SandboxSettings because they also need to be used by ExtensionProtocolHandler
to do security checks on developer builds as a result of how developer builds
rely on symlinks to the repo dir from system extension directories.

Remove the Linux-implementation of GetRepoDir() and GetObjectDir()
because the Linux content sandbox implementation and the
ExtensionProtocolHandler checks don't need them.

MozReview-Commit-ID: KwBFUnh6Cml

--HG--
extra : rebase_source : 3529a18ea802699ff968b798a7c560613469809b
2017-08-09 16:09:55 -07:00
Phil Ringnalda
858a553b02 Backed out 2 changesets (bug 1386103) for Android x86 build bustage
Backed out changeset eec506d87d03 (bug 1386103)
Backed out changeset 3f9ec011c9bd (bug 1386103)

MozReview-Commit-ID: 8ak71R7vUOC
2017-08-08 22:08:54 -07:00
Nicholas Nethercote
7512aa2dea Bug 1386103 (part 2) - Convert nsFixed[C]String uses to nsAuto[C]String. r=erahm.
In all of these cases the fixed buffer has the same lifetime as the string
object, so we can use nsAuto[C]String for simplicity.

For the 128-length ones in dom/xul/ I just switched to the default of 64 for
simplicity, because the choice of 128 didn't seem that important. (These code
paths weren't hit when I started the browser and opened a few sites.)

Finally, the patch also changes LoggingIdString to use
nsAutoCStringN<NSID_LENGTH>, similar to NullPrincipalURI.
2017-08-01 11:58:56 +10:00
Eric Rahm
01f545fea7 Bug 1386825 - Part 1: Remove MOZ_B2G from dom. r=bkelly
MozReview-Commit-ID: 1zzP2r01B7U
2017-08-08 14:41:05 -07:00
Jan Varga
ac9ac9e347 Bug 1350637 - Part 9: Move Local Storage event broadcasting from PContent to PBackground; r=asuth 2017-08-08 23:02:28 +02:00
Jan Varga
ceff0f7d8f Bug 1350637 - Part 1: Move PStorage stubs from PContent to PBackground; r=asuth r=billm
--HG--
rename : dom/storage/PStorage.ipdl => dom/storage/PBackgroundStorage.ipdl
2017-08-08 22:56:49 +02:00
Gabor Krizsanits
31faf6cf36 Bug 1363601 - Let the ContentParent destroy the preallocated process during shutdown. r=mrbkap
The ContentParent during shutdown waits for the channel to be closed, preventing
any incoming message after the ipc actor was destroyed.
2017-08-08 13:32:57 +02:00
Andrew Sutherland
80fee6a16a Bug 1383978 - Update child process names based on remote type. r=billm
Without this patch, all remote process types share a process name of
"Web Content".  With this patch, specific names are added for "file",
"extension", and "webLargeAllocationTypes", with the default of "web"
left as the default "Web Content".

This patch also eliminates undocumented b2g-era legacy logic that had a
notion of whether it's acceptable to override the process name.  In the
b2g era, I believe processes were named based on the "app" that was
running.  It would have made sense to have the process initially named
the preallocated process, then to change the process to its app name
when specialized, trying to make it hard/impossible for the process to
rename itself so it couldn't masquerade as another app if it became
compromised.

--HG--
extra : source : c76be2df2c2855ddf2fafc323ddb2898dd65eba4
2017-07-24 23:27:40 -04:00
Nicholas Nethercote
1a6f1a62fa Bug 1387381 - Remove nsXPIDLString local variables. r=erahm.
nsXPIDLStrings are marked as VOIDED upon initialization. Most of these local
nsXPIDLString variables are immediately set via getter_Copies(), which will
either assign a string value (using Adopt()) or do SetIsVoid(). These can be
trivially converted to nsString, which will get the same treatment.

The patch suitably converts the remaining nsXPIDLString local variable as well.

--HG--
extra : rebase_source : 5fff9f2c6844559198f601853f8db08564add7d5
2017-08-08 16:07:55 +10:00
Matthew Gregan
fd14b55d10 Bug 1388236 - Remove B2G-only AudioChannel code from dom/ipc. r=jwwang 2017-08-10 13:00:09 +12:00
Jan Henning
34bb1f8a36 Bug 1266683 - Part 2 - Add private browsing mode info to InputContext. r=masayuki
Android now supports telling an IME that it shouldn't store user-entered content into it's dictionary/language model/etc. and we want to automatically enable this in private browsing.

As the code that handles input on Android doesn't have any notion of tabs (and therefore of the difference between normal and private tabs), the best way to get that info across is to retrieve it directly within the IMEStateManager from the corresponding document and store it in the inputContext, which is then passed to Java for Fennec to handle.
Implementing this within Gecko also has the benefit that this part of the code can be used by other platforms as well should they want to support similar features in the future.

MozReview-Commit-ID: DsxjC4Ma7DR

--HG--
extra : rebase_source : f0940cb40170ab32cf5a172d07a61d083427be8a
2017-07-30 19:45:03 +02:00
Botond Ballo
61926bc8e4 Bug 1386777 - Interpret autoscroll anchor coordinates correctly when there is a device scale. r=kats
MozReview-Commit-ID: 6caXxWjuqxm

--HG--
extra : rebase_source : 4052dd05a4c05cc8fc4effe0f7911179aa8005d0
2017-08-02 20:11:07 -04:00
Amy Chung
238f1e2d3a Bug 1331680 - Part 3: Broadcast cookie changes to all content processes. r=jdm 2017-08-03 18:00:12 +08:00
Amy Chung
1f101b071c Bug 1331680 - Part 1: Send required cookies to the content process on demand. r=jdm 2017-08-03 19:00:41 +08:00
Sebastian Hengst
5cfce14aba merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-08-03 12:17:50 +02:00
Jan Varga
ae5b947527 Bug 1283609 - Part 3: Core changes, stop using nested event loop in BackgroundChild::GetOrCreateForCurrentThread(); r=billm
- BackgroundChild::GetOrCreateForCurrentThread(nsIIPCBackgroundChildCreateCallback* aCallback) emulates former asynchronous behavior
2017-08-03 11:22:11 +02:00
Nicholas Nethercote
a6f655a6c9 Bug 1382955 (part 2) - Remove nsIPowerManagerService::{powerOff,reboot,restart} and related things. r=gsvelto. 2017-08-02 10:09:26 +10:00
Kris Maglione
3a6f096a97 Bug 1380294: Anchor non-tab tooltips to the correct remote browser. r=aswan
MozReview-Commit-ID: EsJEseyfGYi

--HG--
extra : rebase_source : 3b1adbb8d977fd4dfd18c90b335010d4acb80a76
2017-08-01 15:01:06 -07:00
Wes Kocher
5df77c43f9 Merge m-c to autoland, a=merge
MozReview-Commit-ID: IJRYyJu1sWm
2017-08-02 17:42:10 -07:00
Chun-Min Chang
59e4ef323b Bug 1361336 - part6: Apply AudioNotificationSender/Receiver in ContentParent/Child; r=cpearce
--HG--
extra : rebase_source : ad349d20a5b300e47ca3773f102946cbfc43c516
2017-07-25 12:34:14 +08:00
Chun-Min Chang
19b08c8caa Bug 1361336 - part3: Pass audio default device-changed message via PContent; r=cpearce
MozReview-Commit-ID: FzdeD2kuSJA

--HG--
extra : rebase_source : 97c3dec16f7bbc95672f9cdb7e9deb2b0d139e8a
2017-07-18 10:42:59 +08:00
Wes Kocher
179a07b6ba Merge inbound to central, a=merge
MozReview-Commit-ID: Dg4fbH8wbXt
2017-07-31 17:43:38 -07:00
Botond Ballo
e54b8b4984 Bug 1105109 - Have the parent process notify APZ of the start and stop of autoscrolling. r=kats
The messages are routed through nsITabParent, nsIWidget, and IAPZCTreeManager
(the latter possibly remoted via PAPZCTreeManager if out-of-process compositing
is used).

MozReview-Commit-ID: 1zXzLa1fqpG

--HG--
extra : rebase_source : c482816ecbaec0a889d817851ee15be186b2a49c
2017-07-26 19:33:02 -04:00
Nicholas Nethercote
72c884bf74 Bug 1384835 (part 3, attempt 2) - Remove the Preferences::Get*CString() variants that return nsAdoptingCString. r=froydnj.
--HG--
extra : rebase_source : d317b25be2ec21d1a60d25da3689e46cdce0b649
2017-07-31 14:28:48 +10:00
Till Schneidereit
ab76cf2fd7 Bug 1272697 - Part 2: Add runtime pref to enable streams. r=jonco,baku
MozReview-Commit-ID: FJMAxbtD3Uy
2017-07-29 16:47:12 +02:00
Bill McCloskey
fad7d3b87b Bug 1378374 - Remove unnecessary delete calls (r=dvander)
MozReview-Commit-ID: DGik7IPklWO
2017-07-28 13:52:04 -07:00
Bill McCloskey
55f153be76 Bug 1383328 - Use TabGroup as event target for browser-status-filter (r=smaug)
MozReview-Commit-ID: HOSmqr5Vpwh
2017-07-28 13:11:59 -07:00
Bill McCloskey
5f0e8370a7 Bug 1383330 - Use current thread rather than main thread for ContentChild recursion check (r=erahm)
MozReview-Commit-ID: 7QscjWUw6ZS
2017-07-28 13:11:52 -07:00
Sebastian Hengst
6389867b7c Backed out changeset 1d87b1dc4ce2 (bug 1272697) for failing mochitest test_interfaces.html for 'ByteLengthQueuingStrategy' and wpts, e.g. general.dedicatedworker.html. r=backout on a CLOSED TREE 2017-07-28 20:20:50 +02:00
Till Schneidereit
dec687b07c Bug 1272697 - Part 2: Add runtime pref to enable streams. r=baku,jonco
MozReview-Commit-ID: 5OSxbcd3jQB
2017-07-28 17:48:12 +02:00
Carsten "Tomcat" Book
139661e8e4 Merge mozilla-central to mozilla-inbound 2017-07-28 15:25:58 +02:00
Carsten "Tomcat" Book
6aa98d7df0 Merge mozilla-central to autoland 2017-07-28 09:50:36 +02:00
Carsten "Tomcat" Book
de369deb98 Backed out changeset 284af26c1b53 (bug 1351148) 2017-07-28 09:20:27 +02:00
Carsten "Tomcat" Book
bd7b184c91 Backed out changeset e3e924da5d5f (bug 1383328) 2017-07-28 09:20:05 +02:00
Carsten "Tomcat" Book
e267d334d9 Backed out changeset 15b71aceffb4 (bug 1383485) 2017-07-28 09:20:02 +02:00
Kershaw Chang
9d5a13ae0f Bug 1366822 - Part2: Revert changes of NotifyCurrentTopLevelContentWindowChange, r=mayhemer 2017-07-27 23:42:00 +02:00
Cervantes Yu
c6934bc588 Bug 1383025 - Don't report hang for a process that has already shut down. r=billm
MozReview-Commit-ID: 5H1CYYJIiM6
2017-07-28 16:55:16 +08:00
Sebastian Hengst
744a0a216b Backed out changeset ef5feef07bed (bug 1384835) 2017-07-28 10:29:24 +02:00
Carsten "Tomcat" Book
28bdd40776 Merge mozilla-central to mozilla-inbound 2017-07-28 09:48:24 +02:00
Nicholas Nethercote
200d8ec18b Bug 1384835 (part 3) - Remove the Preferences::Get*CString() variants that return nsAdoptingCString. r=froydnj.
This is similar like the previous patch, but for the 8-bit string variants.
Also, it changes assignment to Adopt() in GetCString() and GetDefaultCString()
to avoid an extra copy.

--HG--
extra : rebase_source : eba805c3a7b809d5ccd6e853b1c9010db9477667
2017-07-27 16:45:10 +10:00
Luke Chang
491deaf2a1 Bug 1362290 - Support non-experimental autocomplete pref. r=baku
MozReview-Commit-ID: LABuNLbq2Io

--HG--
extra : rebase_source : 3902adee74ef95ff144325d7b77c13192133d3e7
2017-07-27 11:41:15 +08:00
Bevis Tseng
95b18d794e Bug 1382172 - Name nsITimerCallback instances in native implementation. r=billm
--HG--
extra : rebase_source : 84de1abfcc30a6964144c2e6718a508c71027b65
2017-07-27 02:18:20 +08:00
Bevis Tseng
a7505864a8 Bug 1378930 - Part 2: Remove the aName parameter from SchedulerGroup/DocGroup/DispatcherTrait. r=billm
--HG--
extra : rebase_source : 11319e568a51d16754a6a9990f76c35c86c2bda7
2017-07-26 16:13:35 +08:00
Stone Shih
8aab64fd68 Bug 1383485: Resend a MouseEnterIntoWidget event to TabChild when it's ready to handle input events. r=smaug.
MozReview-Commit-ID: IXPTRyJe1tk
2017-07-24 10:46:40 +08:00
Carsten "Tomcat" Book
198430bca2 merge mozilla-inbound to mozilla-central a=merge 2017-07-26 11:11:40 +02:00
Wes Kocher
f19f28adfd Merge m-c to autoland, a=merge
MozReview-Commit-ID: F1X8wKqbkg
2017-07-25 19:16:09 -07:00
Michael Layzell
6968a2e955 Bug 1382093 - Null check docShell in InternalSetDocShellIsActive, r=smaug
MozReview-Commit-ID: JHtmTSomFlb
2017-07-25 11:35:55 -04:00
Carsten "Tomcat" Book
679210723b merge mozilla-inbound to mozilla-central a=merge 2017-07-25 14:27:17 +02:00
Bill McCloskey
fff3f0890c Bug 1383328 - Use TabGroup as event target for browser-status-filter (r=smaug)
MozReview-Commit-ID: HOSmqr5Vpwh
2017-07-25 19:52:36 -07:00
Wes Kocher
a1eadef812 Merge m-c to autoland, a=merge
MozReview-Commit-ID: B7oWq7qfpJ0
2017-07-24 18:13:05 -07:00
Chris H-C
a21051c236 bug 1366294 - Part 13 - Fix telemetry-using tests. r=Dexter
Some tests were using "secret" APIs to get at telemetry knowledge from various
processes in various ways. Adjust them so that they work with the new ways of
doing things.

MozReview-Commit-ID: 2iBL00HVGyg
2017-07-24 09:52:26 -04:00
Carsten "Tomcat" Book
0c215343b0 merge mozilla-inbound to mozilla-central a=merge 2017-07-24 13:01:44 +02:00
Gian-Carlo Pascutto
8bc55108f2 Bug 1308400 - Support file process, whitelist path prefs. r=jld
MozReview-Commit-ID: 3eX06AioPZL

--HG--
extra : rebase_source : 56bcfaad3360fe92ce605a0413bb3a9cacb4446d
2017-07-24 16:32:22 +02:00
Marco Castelluccio
61cece8105 Bug 1380659 - Add new IPC messages to dump/reset coverage counters. r=kanru
--HG--
extra : rebase_source : 16378ed081a92593f9f04dfb5f8e98a61ef71338
2017-07-14 10:57:22 +02:00
Ryan VanderMeulen
f4e3a91992 Merge m-c to inbound. a=merge 2017-07-21 09:40:28 -04:00
Sebastian Hengst
367f0ac5a2 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: IWRTFZdtzaE
2017-07-21 12:56:44 +02:00
Sebastian Hengst
48896371e9 Backed out changeset e7a3ac603f7c (bug 1366294) 2017-07-21 15:19:21 +02:00
Chris H-C
2ce21e2a22 bug 1366294 - Part 13 - Fix telemetry-using tests. r=Dexter
Some tests were using "secret" APIs to get at telemetry knowledge from various
processes in various ways. Adjust them so that they work with the new ways of
doing things.

MozReview-Commit-ID: 2iBL00HVGyg
2017-07-21 08:41:44 -04:00
Nicholas Nethercote
2ecfb44f0a Bug 1382099 - Remove MOZ_WIDGET_GONK from dom/{base,ipc,plugins}. r=mccr8. 2017-07-21 10:52:30 +10:00
Kris Maglione
654f2c0c26 Bug 1374025. Try calling ShowViewer again later if it hasn't succeeded yet when we get a render frame parent. r=tnikkel 2017-07-20 16:24:40 -05:00
Ryan VanderMeulen
0cfb1d8460 Merge inbound to m-c. a=merge
CLOSED TREE
2017-07-19 10:00:35 -04:00
Andrew Osmond
094c212d54 Bug 1350408 - Gracefully handle failures in WebRenderLayerManager::Initialize to allow reinit. r=kats 2017-07-18 09:35:07 -04:00
Haik Aftandilian
ef16b0fcf8 Bug 1380690 - Part 2 - Whitelist repo and object dirs using paths from the Info.plist files. r=Alex_Gaynor,spohl
On Mac developer builds, read the repo path and object dir path from the
Info.plist files in the application bundle instead of the
MOZ_DEVELOPER_REPO_DIR and MOZ_DEVELOPER_OBJ_DIR environment variables.

MozReview-Commit-ID: 8UtjkNPGUM1

--HG--
extra : rebase_source : 3e4ce32f2e2c40f8d899bc9190e48298081458d9
2017-07-19 09:16:09 -07:00
Kyle Machulis
2c4c8a9654 Bug 1382788 - Remove GetBlocklistState IPC message; r=bsmedberg
We removed all uses of GetBlocklistState in bug 1350640. This patch
removes the message and supporting functions from the PContent IPDL.

MozReview-Commit-ID: 4JtGAWZ0nPu

--HG--
extra : rebase_source : 4eb3c21e3768e9d8284d4eec129e099be5ef17d0
2017-07-20 12:57:01 -07:00
Samael Wang
e90e4d4b15 Bug 1350643 - Part 7: Remove sync GetDPI/DefaultScale/WidgetRounding. Use primary screen's value until RecvShow. r=kanru
MozReview-Commit-ID: GlDMNecWp3j

--HG--
extra : rebase_source : 1f8573df8845c100172f41febc5a84bbcd069769
2017-05-19 18:20:18 +08:00
Samael Wang
3810bc3903 Bug 1350643 - Part 3: Add GetDPI to nsIScreen & ScreenDetails. r=kanru
MozReview-Commit-ID: HEFyuYV26Wy

--HG--
extra : rebase_source : fb172f4ba99ab7119036ddf4ec1b3eeeaead186c
2017-06-06 18:09:34 +08:00
Kyle Machulis
7b54b19bf5 Bug 1350640 - Send blocklist state on plugin list update; r=bsmedberg
Instead of synchronously checking the blocklist, package each plugin's
blocklist state with it when sending the information to the content
process. Whenever the blocklist is changed, just resend the whole
plugin list.

MozReview-Commit-ID: 1AX1EDdTRqb

--HG--
extra : rebase_source : 95d30f23eaede357bfb03757a7d9a6cc62e2adf9
2017-07-13 17:11:55 -07:00
Kris Maglione
2cdd464241 Bug 1379508: Part 2 - Ignore transforms when calculating child process offsets. r=kats
The current code is wrong in several ways when transforms are applied, but
even if it were correct, it would give the wrong behavior. See comment in
patch for more details.

MozReview-Commit-ID: 3RaPuvENnWa

--HG--
extra : rebase_source : 25aab67e56f157bdfa500aa7cf029c6ebe90e12a
extra : absorb_source : 4da2fd9f11e008b7b70b86b184ade673a68e6978
2017-07-13 15:33:25 -07:00
Kris Maglione
a2e2fa50da Bug 1379508: Part 1 - Apply the correct client offsets to remote frameloaders in popup widgets. r=kats
On-screen coordinates for points in remote frameloads are calculated relative
to the screen origin of the top-level window, while event coordinates are
calculated relative to the nearest widget. Since popups have their own widgets
separate from the top-level window, their native client offsets have no
particular relation to the origin of the top-level window, and we need to
manually calculate them relative to the origin of the top-level widget
instead.

MozReview-Commit-ID: EDyEyu37XuY

--HG--
extra : rebase_source : 5d3f7a3fb9518d7a0cf149b8c2f579805d75eb3b
extra : absorb_source : f48ee4b131ff67ae686d12f81ed2ad19b934e81e
2017-07-13 15:31:55 -07:00
Haik Aftandilian
88b1e4c7ca Bug 1380132 - Part 3 - Use env variable MOZ_DEVELOPER_OBJ_DIR to whitelist object dir in content sandbox. r=Alex_Gaynor
On developer builds, use $MOZ_DEVELOPER_OBJ_DIR to whitelist the object dir in the content sandbox so that symlinks to the object dir from .app/ files can be loaded.

MozReview-Commit-ID: J4YdpxgbD8i

--HG--
extra : rebase_source : 19e369fe9ae29418d9d79e1fb83246474d858f34
2017-07-14 16:32:53 -07:00
Haik Aftandilian
396e7d4ffc Bug 1380132 - Part 1 - Normalize() .app paths used in sandbox profiles. r=Alex_Gaynor
MozReview-Commit-ID: GjQk5ahpzrj

--HG--
extra : rebase_source : 5995030b43f49f9dca6911adb93b887fc7661b0e
2017-07-11 17:03:23 -07:00
Marco Castelluccio
0f9d4e1985 Bug 1380665 - Define MOZ_CODE_COVERAGE for the entire tree. r=jmaher 2017-07-13 19:12:23 +02:00
Stone Shih
9573b6e439 Bug 1351148 Part2: Add a priority queue for input events. r=smaug.
MozReview-Commit-ID: 5ud1Ex9UNVo
2017-03-21 15:44:12 +08:00
Masayuki Nakano
44d5a33919 Bug 1333459 - part2-2: EventStateManager should check if it needs to wait reply from remote content before handling access keys r=smaug
Currently, access key is handled in EventStateManager::PreHandleEvent() with eKeyPress event, i.e., before dispatching it into the DOM tree, if the access key is registered in EventStateManager.  So, the main process does not check if the preceding eKeyDown event is consumed in focused remote process.

When preceding eKeyDown event is consumed in the main process, eKeyPress event won't be dispatched by widget.  However, if remote process has focus, it's impossible widget to stop dispatching eKeyPress event because preceding eKeyDown event hasn't been handled in the focused remote process yet.  Therefore, main process needs to post eKeyPress event to check if preceding eKeyDown event was consumed.  When eKeyPress event is marked as "waiting reply from remote process", TabChild sends it back to the main process only when preceding eKeyDown event wasn't consumed.  So, only when eKeyPress event is back to the main process, main process should handle accesskey with it.

This patch makes EventStateManager::PreHandleEvent() check if a remote target has focus before handling accesskey.  If a remote process has accesskey and there is an accesskey matching with eKeyPress event, it marks the event as "waiting reply from remote content" and stop propagation in the process.

Finally, when eKeyPress event is sent back to TabParent, TabParent::RecvReplyKeyEvent() calls EventStateManager::HandleAccessKey() before dispatching the reply event into the DOM tree.

MozReview-Commit-ID: KsOkakaIVzb

--HG--
extra : rebase_source : 7e0c6966a1bde085e34d45bca4b0166b9fc2f3f1
2017-07-22 10:50:41 +09:00
Masayuki Nakano
6c68caecd7 Bug 1333459 - part1: Move methods of EventStateManager which check modifiers of access key to WidgetKeyboardEvent r=smaug
EventStateManager checks if every keypress event's modifiers match with access key modifiers which are in prefs. Moving related methods of this to WidgetKeyboardEvent makes EventStateManager simpler and we can hide the NS_MODIFIER_* constants (they may make developers confused between Modifiers of WidgetInputEvent) into WidgetEventImpl.cpp.

MozReview-Commit-ID: 23NUQ51lJ1M

--HG--
extra : rebase_source : 341f3764ef62575577572d8b349159e2d5512b26
2017-07-06 17:36:19 +09:00
Kris Maglione
058f9fb930 Bug 1255894: Part 10 - Move StreamFilterParent to necko child process. r=billm,dragana
MozReview-Commit-ID: 4JKUC7x3QgN

--HG--
extra : rebase_source : ec1bcdc9d89b264df65b0ec1096921a4fc105f30
2017-09-07 17:28:27 -07:00
Michael Layzell
d91bc6cc18 Bug 1378281 - Check IPCOpen and abort if the TabChild has been destroyed, r=smaug
MozReview-Commit-ID: ECTVHnGF8UI
2017-07-12 15:10:44 -04:00
Gabor Krizsanits
cb84415a1f Bug 1373660 - Block the preallocated process manager while a content process is being launched. r=mrbkap
We should not let the ppm to do work before the first paint in a new cp. This patch
makes sure that we only let the ppm spawn a new process after the last process reached
an idle state AND the main process becomes idle too.
2017-07-11 17:30:08 +02:00
Carsten "Tomcat" Book
31311070d9 merge mozilla-inbound to mozilla-central a=merge 2017-07-11 12:51:59 +02:00
David Anderson
dd94534a4f Disable Advanced Layers when the sanity test fails. (bug 1377866 part 3, r=mchang) 2017-07-10 19:30:52 -07:00
Kevin Chen
863fd1589a Bug 1364563 - Update render mode and fallback to software solution when GPU process is killed; r=dvander
MozReview-Commit-ID: 5Sewt2wtku8

--HG--
extra : rebase_source : 94b1743f4e42d2a4526521f61fea9fe3b89a76ec
2017-06-29 00:27:03 +08:00
Masayuki Nakano
d6e921676c Bug 1377672 - part3: IMEStateManager::NotifyIME() should ignore notifications and requests which comes from unexpected process r=m_kato,smaug
IME should receive notifications and requests only from proper process.  E.g., IME shouldn't commit composition by a request which came from previous focused process.

This patch makes that IMEStateManager::NotifyIME() takes pointer to TabParent optionally.  If the request or notification came from remote process, it should be non-nullptr.  Then, this makes it ignore notifications and requests from unexpected process.

Note that this patch also touches some gfx headers because they use |ipc::| but compiler is confused at the ambiguousness between |mozilla::ipc::| and |mozilla::dom::ipc::|.

Finally, this patch changes the NS_ASSERTION in IMEHandler::OnDestroyWindow() to MOZ_ASSERT because the orange caused by the NS_ASSERTION was not realized since there was already an intermittent orange bug caused by different NS_ASSERTION.

MozReview-Commit-ID: 9CgKXQRJWmN

--HG--
extra : source : f3b5711908870c5e0e852a399a07e0ae721a12f1
2017-07-06 00:47:40 +09:00
Jonathan Kew
d99da5c4f5 Bug 1378718 - pt 1 - Remove support for pre-loading "hidden" system fonts in gfxFT2FontList, as this was only used for FxOS. r=heycam 2017-07-06 15:06:45 +01:00
Carsten "Tomcat" Book
7857fa0a5e merge mozilla-inbound to mozilla-central a=merge 2017-07-06 11:18:05 +02:00
Gian-Carlo Pascutto
84f7ba492b Bug 1377614 - Part 1 - Move IsDevelopmentBuild() to common code. r=Alex_Gaynor
MozReview-Commit-ID: AcO0XaMS4Gp

--HG--
extra : rebase_source : ec40a94545fa78ce0210a0614db82b7bcb7e8a97
2017-07-03 11:17:04 -07:00
Botond Ballo
8b7ba8ac1c Bug 1377020 - Use MOZ_DEFINE_ENUM instead of a sentinel enumerator for enumerations in gfx/layers. r=kats
MozReview-Commit-ID: IUQDb0VIAwQ

--HG--
extra : rebase_source : 50d05ab09a5fb03d16c044edd38f0f3e0dba7ada
2017-06-30 21:18:55 -04:00
Wes Kocher
288405ee34 Merge inbound to m-c a=merge
MozReview-Commit-ID: LpxvieHR7VH
2017-07-05 17:10:43 -07:00
Kartikaya Gupta
1c54bb2347 Bug 1377090 - Make the Matrix class templated so we can instantiate it with a double type. r=bas
This extracts a BaseMatrix template of which Matrix is now a particular
specialization. The BaseMatrix allows us to reuse the same code for
floats and doubles, much like the other "base" classes (BasePoint,
BaseRect, etc.).

MozReview-Commit-ID: HO7bA83S9E0

--HG--
extra : rebase_source : dcd84d9a978cdea00bb54eb11eefcca9c6635901
2017-07-05 11:18:48 -04:00
Michael Layzell
3f6761346c Bug 1375627 - Avoid running ShouldLoadURIInThisProcess when aURI is null in ProvideWindowCommon, r=smaug
MozReview-Commit-ID: 8LXGHjztRdu
2017-07-05 13:11:47 -04:00
Carsten "Tomcat" Book
49921c11be Merge mozilla-central to autoland 2017-07-05 13:05:51 +02:00
Wes Kocher
1a83241dad Backed out 3 changesets (bug 1372433) for stylo assertions in ServoRestyleManager.cpp a=backout
Backed out changeset 3abe2b5f8b24 (bug 1372433)
Backed out changeset cbb550def80d (bug 1372433)
Backed out changeset 78b5ca196c54 (bug 1372433)

MozReview-Commit-ID: H6t8LpY3FHX
2017-07-04 22:32:54 -07:00
Masayuki Nakano
5533f095cb Bug 1377653 - part3: WidgetEvent::mFlags should have a bool flag if it's been posted to at least one remote process r=smaug
Currently, it's not been managed yet that whether an event is posted to at least one remote process.  So, for managing the state, BaseEventFlags should have a new bool flag and WidgetEvent and BaseEventFlags should have helper methods for it.

Additionally, this fixes a bug of nsGUIEventIPC.h. In a lot of ParamTraits, static_cast<Foo> is used for using base class's ParamTraits.  However, it causes creating temporary instance with copy constructor.  Therefore, WidgetEvent::MarkAsPostedToRemoteProcess() call in ParamTraits<mozilla::WidgetEvent>::Write() didn't work as expected.

MozReview-Commit-ID: DdafsbVfrya

--HG--
extra : rebase_source : 94205f3a7b36455c3c9f607c35866be033e627c1
2017-07-05 18:59:44 +09:00
Masayuki Nakano
57f359b0de Bug 1377653 - part2: Add helper methods to WidgetEvent and BaseEventFlags to manage propagation state between parent process and remote process r=smaug
Currently, we have 2 bool flags (and optional 2 bool flags with related purpose) for managing propagation state between parent process and remote process.  However, it's really complicated.  Actually, setting these flags and referring the flags is usually follow explanation.

So, for making simpler, WidgetEvent and BaseEventFlags should have some utility methods for making them as self documented code.

This patch moves WidgetKeyboardEvent::mIsReserved to BaseEventFlags::mIsReservedByChrome.  That allows us to manage the cross process event propagation state in same place.

MozReview-Commit-ID: IXEDQJ4GpAZ

--HG--
extra : rebase_source : 5b63ac4f1d15e40e8bfc88423e336de28caa8ab6
2017-07-05 13:58:41 +09:00
Mats Palmgren
977a9e5f89 Bug 1376498 part 4 - Make all nsClassHashtable::RemoveAndForget() consumers use Remove() instead. r=froydnj
MozReview-Commit-ID: G64YQLlgm6r
2017-07-05 02:01:45 +02:00
Mats Palmgren
9542d00e58 Bug 1376498 part 2 - Use plain Remove(key) in some places instead of Lookup(key).Remove() for simplicity. r=froydnj
MozReview-Commit-ID: 7GlCL1jyGAz
2017-07-05 02:01:44 +02:00
Michael Layzell
43a4681e74 Bug 1372433 - Part 3: Explicitly check SystemGroup is initialized before getting its event target on a CLOSED TREE, a=bustage
MozReview-Commit-ID: YRMM8Lifhg
2017-07-04 17:17:25 -04:00
Michael Layzell
04e528fe8e Bug 1372433 - Part 2: Fix build bustage on a CLOSED TREE, a=bustage
MozReview-Commit-ID: 3snpLQbdVrO
2017-07-04 16:01:10 -04:00
Michael Layzell
e9a63f2761 Bug 1372433 - Label the PContent::Msg_NotifyVisited runnable, r=billm
I don't bother to label the runnables in the parent process being fired by
VisitedQuery, as we are not planning to perform scheduling in the parent process
if I remember correctly. It would be possible to label those runnables as well.

This also adds a mSeen boolean to the mObservers array, to fix a race caused
when a link is being registered as an observer between NotifyVisited and
NotifyVisitedForDocument being run.

MozReview-Commit-ID: EosNOu62fEV
2017-07-04 15:16:19 -04:00
Bill McCloskey
4b6dd14d76 Bug 1376851 - Label non-addon PJavaScript messages (r=dvander)
MozReview-Commit-ID: DuhRz9BOXFi
2017-07-03 16:20:02 -07:00
Alex Gaynor
b636380391 Bug 1374557 - Part 1 - Add the ability to specify a list of paths to whitelist read access to in the macOS content sandbox; r=haik
MozReview-Commit-ID: HXBkyR7Tts2

--HG--
extra : rebase_source : 6daf50a4d7a4ff2ff85dfac43891149353e813aa
2017-06-21 10:19:28 -04:00
Kartikaya Gupta
d47c5defe3 Bug 1370089 - Assume APZ is enabled in TabChild if we are queried before we have the compositor options. r=dvander
MozReview-Commit-ID: KHvAvGCQQUr

--HG--
extra : rebase_source : e1847be7dd54fa6db10f9992d62f589c7b914576
2017-06-30 14:51:33 -04:00
Nicholas Nethercote
671542cfd3 Bug 1352575 (part 11) - Remove LoadPluginResult and AssociatePluginId. r=jimm.
--HG--
extra : rebase_source : ecc5dd47ef1177abd947f331473a7436c97dad61
2017-04-18 16:56:44 +10:00
Nicholas Nethercote
c67ffb04c6 Bug 1352575 (part 5) - Remove PluginModuleParent::mIsStartingAsync. r=jimm.
This allows a bunch of other things to be removed too, including
PluginModuleParent::mSurrogateInstances,
PluginModuleChromeParent::sInstantiated, and NS_PLUGIN_INIT_PENDING.

The patch also removes the AsyncPluginInit crash annotation.

--HG--
extra : rebase_source : cadb1d215fd93051c9032ea0a1fb6f1d2fb80c6d
2017-04-18 16:56:43 +10:00
Wes Kocher
bfc45b98b9 Merge m-c to inbound, a=merge
MozReview-Commit-ID: 9XdoB5MuVz6
2017-07-05 17:17:41 -07:00
Bevis Tseng
ac00d80880 Bug 1378298 - Make TabChildGlobal override DispatcherTrait using TabChild::TabGroup(). r=billm 2017-07-05 16:23:23 +08:00
Christoph Kerschbaumer
2ad43ee9bd Bug 1364016 - Explicitly pass a triggeringPrincipal to openURI. r=gijs,baku 2017-07-05 21:58:21 +02:00
Christoph Kerschbaumer
1be37cf55c Bug 1364016 - Have _openURIInNewTab() provide the correct triggeringPrincipal. r=baku 2017-07-05 21:57:47 +02:00
Sebastian Hengst
be21e05aa7 Backed out changeset aa05515c1c87 (bug 1373660) for frequently timing out in toolkit/components/extensions/test/xpcshell/test_ext_i18n.js on OS X 10.10 opt. r=backout 2017-06-30 01:43:45 +02:00
Gabor Krizsanits
ef40e9d072 Bug 1373660 - Block the preallocated process manager while a content process is being launched.
We should not let the ppm to do work before the first paint in a new cp. This patch
makes sure that we only let the ppm spawn a new process after the last process reached
an idle state AND the main process becomes idle too. r=mrbkap
2017-06-29 21:44:40 +02:00
sotaro
1deee6448b Bug 1377024 - Add support of device reset test from about:support r=kats,dvander 2017-06-29 11:46:36 -07:00
Carsten "Tomcat" Book
5f00ae3a8b merge mozilla-inbound to mozilla-central a=merge 2017-06-29 15:47:04 +02:00
Kartikaya Gupta
7332c6da98 Bug 1376782 - Replace gfxSize with a typedef to SizeDouble. r=jrmuizel
Most of the changes in this patch are just using the explicit
constructor from gfx::IntSize to gfx::Size, since gfxSize did
that implicitly but gfx::Size doesn't.

MozReview-Commit-ID: CzikGjHEXje

--HG--
extra : rebase_source : 9d19977f2a774d9a2a653db923553a6c2e06f82a
2017-06-28 11:41:21 -04:00
Carsten "Tomcat" Book
257a632d4b Merge mozilla-central to autoland on a CLOSED TREE 2017-06-28 16:33:00 +02:00
Carsten "Tomcat" Book
152c0296f8 Backed out changeset e9dfba832730 (bug 1343728) for incomplete backout / making bug 1375293 worse on a CLOSED TREE
--HG--
extra : amend_source : 4c9ee2458a3413a2fe6f0b3e7785d1b2f211137f
2017-06-28 15:53:58 +02:00
Carsten "Tomcat" Book
ba466337dd Backed out changeset 4364536ae549 (bug 1343728) 2017-06-28 15:52:04 +02:00
Carsten "Tomcat" Book
6365f16e57 Backed out changeset a1e773337202 (bug 1350633) 2017-06-28 15:52:01 +02:00
Carsten "Tomcat" Book
7918eeee02 merge mozilla-inbound to mozilla-central a=merge 2017-06-28 13:23:29 +02:00
Milan Sreckovic
2a443ce1ef Bug 1337062: Transfer initial gfxVars with SendXPCOMProcessAttributes. Deal with potential (future) race condition. r=dvander,gerald
MozReview-Commit-ID: GYezEAg7ozQ

--HG--
extra : rebase_source : 7771f0e47ec7397117b96e702a620301089c57a1
2017-06-27 17:04:17 -04:00
Masayuki Nakano
71bb543ee5 Bug 1376424 - part1: TabChild should notify TabParent of "request to commit composition" handled r=m_kato
The problem is, only when requesting IME to commit or cancel composition is handled synchronously, TabParent does not send the dispatched eCompositionCommit(AsIs) event to the remote process.  Therefore, TabParent (and ContentCacheInParent) never receives  the message from the remote process.

This patch makes TabChild notifies TabParent of eCompositionCommitRequestHandled special event message after TabChild dispatches eCompositionCommit into the DOM tree.  Then, ContentCacheInParent should decrease mPendingCompositionCount and mPendingEventsNeedingAck as usual composition event messages.

MozReview-Commit-ID: 7ec5HPiE687

--HG--
extra : rebase_source : a9366abf6f8feec2d6ac639fd37f5b5c6ddd9586
2017-06-27 23:41:12 +09:00
Masayuki Nakano
a6f874fcf1 Bug 1376424 - part0: Backout the patch for bug 1368554 r=m_kato
TextComposition in the main process is destroyed when the main process sends eCompositionCommit(AsIs) to focused remote process.  Therefore, ContentCacheInParent::mCompositionPendingCount is never 2 or more now.

It may cause ContentCacheInParent::Assign() setting older composition's start offset to current composition's start offset in the main process.

For making uplift the following patch easier, the wrong patch should be backed out first.

MozReview-Commit-ID: IHWc7qZBQtc

--HG--
extra : rebase_source : d3936fa82ed670217b711d15bbb0201a8741501b
2017-06-27 22:02:07 +09:00
Mats Palmgren
dfa2a20e6b Bug 1376293 part 2 - Use Lookup instead of Get+Remove, to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: JQEEBkc5vEp
2017-06-28 01:03:15 +02:00
Mats Palmgren
6b66a26ec0 Bug 1376293 part 1 - Remove an unnecessary GetWeak call before Remove, and use Lookup instead of GetWeak+Remove, to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: HaVrGEDB41i
2017-06-28 01:03:14 +02:00
Michael Layzell
3c82b8c224 Bug 1350633 - Remove the Msg_GetWidgetNativeData sync IPC, r=billm, r=jimm
MozReview-Commit-ID: Bql29wgVDZ5
2017-06-27 16:24:48 -04:00
Michael Layzell
31e36ee704 Bug 1343728 - Part 4: Remove the window creation sync IPC calls, r=billm, r=smaug
MozReview-Commit-ID: IWayDUWuRrf
2017-06-27 16:24:48 -04:00
Michael Layzell
c7ffb02592 Bug 1343728 - Part 1: Add the ability to temporarially delay remote docshells from becoming active, r=smaug
MozReview-Commit-ID: KAaeu5ETc0x
2017-06-27 16:24:48 -04:00
Bill McCloskey
f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Michael Layzell
17143c4e93 Bug 1350633 - Remove the Msg_GetWidgetNativeData sync IPC, r=billm, r=jimm
MozReview-Commit-ID: Bql29wgVDZ5
2017-06-28 12:25:32 -04:00
Michael Layzell
83cff4de78 Bug 1343728 - Part 4: Remove the window creation sync IPC calls, r=billm, r=smaug
MozReview-Commit-ID: IWayDUWuRrf
2017-06-28 12:25:30 -04:00
Michael Layzell
971bb7abef Bug 1343728 - Part 1: Add the ability to temporarially delay remote docshells from becoming active, r=smaug
MozReview-Commit-ID: KAaeu5ETc0x
2017-06-28 12:25:26 -04:00
Carsten "Tomcat" Book
7af37a52bd Merge mozilla-central to mozilla-inbound 2017-06-23 11:44:21 +02:00
Carsten "Tomcat" Book
5f51e5596e merge mozilla-inbound to mozilla-central a=merge 2017-06-23 11:28:19 +02:00
Nicholas Nethercote
58786e1ea7 Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.

--HG--
extra : rebase_source : 318d1bc6fc1425a94aacbf489dd46e4f83211de4
2017-06-22 17:08:53 +10:00
Nicholas Nethercote
f1364a75ea Bug 1374580 (part 3) - Remove ns{,C}Substring typedefs. r=froydnj.
All the instances are converted as follows.

- nsSubstring  --> nsAString
- nsCSubstring --> nsACString

--HG--
extra : rebase_source : cfd2238c52e3cb4d13e3bd5ddb80ba6584ab6d91
2017-06-20 19:19:52 +10:00
Wes Kocher
3947450ee6 Merge autoland to central, a=merge
MozReview-Commit-ID: DBM5ExEXtYD
2017-06-22 14:10:19 -07:00
Carsten "Tomcat" Book
7fa56f5378 Merge mozilla-central to autoland 2017-06-22 14:11:46 +02:00
Florian Quèze
66f6d259bc Bug 1374282 - script generated patch to remove Task.jsm calls, r=Mossop. 2017-06-22 12:51:42 +02:00
Wes Kocher
aef6a66634 Backed out 4 changesets (bug 1343728) for failures in test_group_mouseevents.html a=backout
Backed out changeset 2029cb6bce86 (bug 1343728)
Backed out changeset 0169e09f6030 (bug 1343728)
Backed out changeset 831e95b29f66 (bug 1343728)
Backed out changeset d5630ef01b17 (bug 1343728)

MozReview-Commit-ID: 2RRBTmp5FGj

--HG--
extra : source : 14f84d3b3233a87af51f5ad8302ee24cc2371a01
2017-06-21 17:13:49 -07:00
Wes Kocher
834e060179 Backed out changeset 36d662fbab77 (bug 1350633) for failures in test_group_mouseevents.html a=backout
MozReview-Commit-ID: Gh9eflBppgq

--HG--
extra : source : 79c8da654a9301f57f4c9216eeb2ca1c76d58603
2017-06-21 17:12:20 -07:00
Wes Kocher
ac0fd2038c Merge inbound to m-c a=merge
MozReview-Commit-ID: 3LXFVwSoMvs
2017-06-21 17:58:17 -07:00
Michael Layzell
f02a75cf86 Bug 1350633 - Remove the Msg_GetWidgetNativeData sync IPC, r=billm, r=jimm
MozReview-Commit-ID: Bql29wgVDZ5
2017-06-21 14:23:16 -04:00
Michael Layzell
746a415780 Bug 1343728 - Part 4: Remove the window creation sync IPC calls, r=billm, r=smaug
MozReview-Commit-ID: IWayDUWuRrf
2017-06-21 14:23:15 -04:00
Michael Layzell
e1e38ff7fb Bug 1343728 - Part 1: Add the ability to temporarially delay remote docshells from becoming active, r=smaug
MozReview-Commit-ID: KAaeu5ETc0x
2017-06-21 14:23:10 -04:00
Masayuki Nakano
7ad4ad3aab Bug 1374207 - part1: nsTextEditorState should use mozilla::TextEditor instead of editor interfaces r=smaug
Using concrete class rather than interface classes (nsI*Editor) will allow to reduce QI and some virtual calls.  Therefore, Editor classes should be used as concrete class as far as possible.

Unfortunately, if classes referring editor are initialized via scriptable interface, we cannot do this because nsI*Editor is still not marked as builtinclass.  Therefore, their editor may be implemented by JS.  E.g., inline nsIInlineSpellChecker.init() and nsIDocShell.editor.  Such remaining cases should be fixed after nsI*Editor classes are marked as builtinclass.

Note that this patch also creates nsIdentifierMapEntry.h which is separated from nsDocument.h because ShadowRoot.h needs the class but exposing nsDocument.h to the global and includes it causes bustage on Linux and Android.  Therefore, for fixing the include hell, this patch touches them and ContentChild.cpp.

MozReview-Commit-ID: i6fLWw6Qeo

--HG--
rename : dom/base/nsDocument.h => dom/base/nsIdentifierMapEntry.h
extra : rebase_source : c57bdfc1c13775acdcfd4732d8157d04d6b6613f
2017-06-20 22:57:08 +09:00
Carsten "Tomcat" Book
8a1350b5a6 Backed out changeset 4f6302a98ae4 (bug 1372405)
--HG--
extra : rebase_source : 41632f3158e88e692809731394a683d065a73dfb
2017-06-21 13:59:26 +02:00
Wes Kocher
b17932664d Merge m-c to autoland, a=merge
MozReview-Commit-ID: 1dQBCh5pBY6
2017-06-22 14:21:39 -07:00
Milan Sreckovic
012064db78 Bug 1337063: Transfer child's initial ContentDeviceData with SendSetXPCOMProcessAttributes - r=dvander
MozReview-Commit-ID: 8Er44xSDHhb

--HG--
extra : rebase_source : 464a09246ca095ba363f988fb9749680d8518926
2017-06-22 13:45:48 -04:00
Chris H-C
1e2b2d46b4 bug 1369041 - Allow child processes to discard data when overwhelmed r=bsmedberg,gfritzsche f?bsmedberg
It is possible in extreme cases that the Telemetry IPC Accumulator might be
starved long enough that it cannot drain its stored accumulations for a while.

Once we hit 5x the high water mark, start discarding data.

Count each piece and type of discarded data and report it via a custom IPC
message.

MozReview-Commit-ID: JayRpa5QPec

--HG--
extra : rebase_source : eded449c932ced64bdb64e9da1a989407f4f2daf
2017-06-09 09:53:42 -04:00
Carsten "Tomcat" Book
95c2137595 Merge mozilla-central to mozilla-inbound 2017-06-22 14:10:35 +02:00
Cervantes Yu
05b9a6c854 Bug 1360308 - Part 2: Use callback in CrashReporterHost::GenerateMinidumpAndPair() and up the caller chain. r=gsvelto
This changes CrashReporterHost::GenerateMinidumpAndPair() and up the caller chain to use callbacks so we
may call it synchronously or asynchronously.

MozReview-Commit-ID: 4PQH6cVdOk0
2017-06-22 18:52:58 +08:00
Cervantes Yu
e7ad561c4e Bug 1360308 - Part 1: De-templatize CrashReporterHost::GenerateMinidumpAndPair(). r=gsvelto
Cleans up CrashReporterHost::GenerateMinidumpAndPair() and move it to CrashReporterHost.cpp.
Also removes the call to open a privileged process handle and get the already open handle
from GeckoChildProcessHost.

MozReview-Commit-ID: 8wLm1hf8zrJ
2017-06-22 18:52:42 +08:00
Wes Kocher
bb24138b9d Merge m-c to inbound, a=merge
MozReview-Commit-ID: CaSKFN9T7N4
2017-06-21 18:05:27 -07:00
Wes Kocher
b9d43d4afd Backed out 4 changesets (bug 1343728) for failures in test_group_mouseevents.html a=backout
Backed out changeset 2029cb6bce86 (bug 1343728)
Backed out changeset 0169e09f6030 (bug 1343728)
Backed out changeset 831e95b29f66 (bug 1343728)
Backed out changeset d5630ef01b17 (bug 1343728)

MozReview-Commit-ID: 2RRBTmp5FGj
2017-06-21 17:13:49 -07:00
Wes Kocher
0439cd545d Backed out changeset 36d662fbab77 (bug 1350633) for failures in test_group_mouseevents.html a=backout
MozReview-Commit-ID: Gh9eflBppgq
2017-06-21 17:12:20 -07:00
Kate McKinley
396962011a Bug 1363546 - Store and report HSTS upgrade source r=francois,keeler,mayhemer p=francois
Add a field to the HSTS cache which indicates the source of the HSTS
entry if known, from the preload list, organically seen header, or HSTS
priming, or unknown otherwise. Also adds telemetry to collect the source
when upgrading in NS_ShouldSecureUpgrade.

MozReview-Commit-ID: 3IwyYe3Cn73

--HG--
extra : rebase_source : 9b8daac3aa02bd7a1b4285fb1e5731a817a76b7f
2017-05-23 15:31:37 -07:00
Bill McCloskey
6b3e84ed5f Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-20 21:44:11 -07:00
Mats Palmgren
5b7c81e34b Bug 1372317 part 2 - Replace LookupRemoveIf() calls with Lookup() + entry.Remove() where needed. r=froydnj
MozReview-Commit-ID: AoRNdbzh66c
2017-06-18 17:07:54 +02:00
Sebastian Hengst
adb899a58e Backed out changeset 5573f2f7d796 (bug 1343728) for failing various tests, e.g. mochitest test_animations_reverse.html. r=backout on a CLOSED TREE 2017-06-16 22:21:45 +02:00
Sebastian Hengst
7e1b1cf069 Backed out changeset 05a5f9d8249f (bug 1343728) 2017-06-16 22:20:37 +02:00
Sebastian Hengst
e8cca2e7cf Backed out changeset 956306ea34f3 (bug 1350633) 2017-06-16 22:20:32 +02:00
Michael Layzell
6648f5c781 Bug 1350633 - Remove the Msg_GetWidgetNativeData sync IPC, r=billm, r=jimm
MozReview-Commit-ID: Bql29wgVDZ5
2017-06-16 14:59:35 -04:00
Michael Layzell
c0d7319a4f Bug 1343728 - Part 3: Remove the window creation sync IPC calls, r=billm, r=smaug
MozReview-Commit-ID: IWayDUWuRrf
2017-06-16 14:59:34 -04:00
Michael Layzell
67f704555d Bug 1343728 - Part 1: Add the ability to temporarially delay remote docshells from becoming active, r=smaug
MozReview-Commit-ID: KAaeu5ETc0x
2017-06-16 14:59:31 -04:00
domfarolino@gmail.com
d4253766db Bug 1274663 - Expose API to trigger device reset. r=dvander
--HG--
extra : rebase_source : 5a9d2757f8e7378083ce42131d5a250027569814
2017-06-15 14:34:00 -04:00
Michael Layzell
b24cba603e Bug 1369627 - Part 2: Send DimensionInfo down to the content process synchronously when creating a new window, r=smaug
MozReview-Commit-ID: GlzJ491RLUE
2017-06-15 14:34:48 -04:00
Andrew Osmond
27eaaaed2f Bug 1365927 - Part 4. Replace PCompositorBridge integration hooks with PCompositorManager. r=dvander 2017-06-14 11:39:59 -04:00
Gabor Krizsanits
98fc89bfe4 Bug 1364849 - Recycle short lived content processes. r=mrbkap
To prevent addons or other code to rapidly create and destroy content processes
under various conditions, we let the preallocated process manager to reuse short
lived content processes.
2017-05-30 13:46:41 +02:00
Marco Castelluccio
45757ddb64 Bug 1363469 - Mark RecvShareCodeCoverageMutex as 'override'. r=me
--HG--
extra : rebase_source : 1c9f4b6b9de720d1dc0adff4f54f6a26d9d5130c
2017-06-14 10:15:41 +01:00
Marco Castelluccio
42f83ca8dc Bug 1363469 - Define signal handlers to dump and reset coverage counters. r=froydnj,kanru
--HG--
extra : rebase_source : 8fa73f2bfd1eab95caee891d6d68090b58c3ba67
extra : histedit_source : 7b7c633ebecc71508e4c0a4d1161104a511869c5%2C61fefafbedb869fffddb8182d8bfac29108ee1bb
2017-06-14 09:50:44 +01:00
Mats Palmgren
2ee1457c5b Bug 1371952 - Use LookupForAdd/LookupRemoveIf to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: 5hprMT4Gc42
2017-06-14 01:54:26 +02:00
Wes Kocher
bcf1a1c32e Backed out 6 changesets (bug 1365927) for build failures in ipc_message_utils.h a=backout CLOSED TREE
Backed out changeset 11fc0da380a2 (bug 1365927)
Backed out changeset 9f1dee5a6c42 (bug 1365927)
Backed out changeset f4954c824f5c (bug 1365927)
Backed out changeset 144ac6cc76f8 (bug 1365927)
Backed out changeset 961e782cf7c7 (bug 1365927)
Backed out changeset 12a093fb86a4 (bug 1365927)

MozReview-Commit-ID: 6CDxqOJzMjE
2017-06-13 12:45:03 -07:00
Andrew Osmond
c17a8c1ea1 Bug 1365927 - Part 4. Replace PCompositorBridge integration hooks with PCompositorManager. r=dvander 2017-06-13 15:19:36 -04:00
Ryan Hunt
fcb54217c6 Bug 1371527 - Add LayersMessageUtils for IPC serialization of mozilla::layers structs. r=dvander
MozReview-Commit-ID: 7UAtrnnlSqI

--HG--
rename : gfx/ipc/GfxMessageUtils.h => gfx/layers/ipc/LayersMessageUtils.h
extra : rebase_source : 99abcb49ede377e5c31440b2d21a5bd79cda65e0
extra : amend_source : d1820fb6e7aee5e0dbcc83242e9264d8f4e7a4d0
2017-06-08 23:32:13 -05:00
Masayuki Nakano
ec9ae17b0c Bug 1368554 ContentCacheInParent::mPendingCompositionCount should be decreased when TextCompositin which has dispatched composition events to corresponding remote process r=m_kato
ContentCacheInParent::mPendingCompositionCount is now managed with composition events which TabParent received. However, TextComposition doesn't dispatch composition events after coming request to commit active composition.  Therefore, composition is committed forcibly in a remote process over 255 times, the main process crashes.

It's the safest way to use TextComposition to manage ContentCacheInParent::mPendingCompositionCount.

MozReview-Commit-ID: DEhzYcK1zcW

--HG--
extra : rebase_source : a47891b1d620bbe4e380e73134ec6da5d21f4ea9
2017-06-10 02:42:16 +09:00
Alex Gaynor
fb7715626d Bug 1370438 - The MOZ_DISABLE_CONTENT_SANDBOX environment variable now works on macOS and is used in the xpcshell tests; r=haik
This environment variable works on both Windows and Linux for force-disabling
the content sandbox, and now does so on macOS as well.

The xpcshell tests force disable the sandbox because they do things like bind()
sockets, which is not compatible with the content sandbox. This is needed now
because bug 1358223 was force upgrading the sandbox from level 0 (disabled) to
level 1 on beta channel, which caused breakage.

MozReview-Commit-ID: 5DGxtoDLp0C

--HG--
extra : rebase_source : 87edd138e8b711eace5cb8103c67feae0361e148
2017-06-07 15:30:09 -04:00
Stephen A Pohl
630acd56de Bug 1364984 - Ensure that our sandbox and tests can handle temp directory paths using symlinks on macOS. r=haik,aswan 2017-06-07 20:40:58 -04:00
Aaron Klotz
bdf95e95b3 Bug 1371051 - Modify ContentParent to only initialize Windows a11y on Beta or Release when e10s is force-enabled; r=jimm
MozReview-Commit-ID: H0gMM2TlfpY

--HG--
extra : source : 8c3d4d8fbb32a66fd521b5dda185f02e24ab3a02
extra : histedit_source : bd06ca54bf993eba750acda074b5a8e1f1a5ba31
2017-03-08 11:28:09 -07:00
Aaron Klotz
230ddb60a5 Bug 1368571: Modify handler and interceptor marshaling code so that it strips out any handlers from proxies that are destined for non-Gecko processes; r=jimm
MozReview-Commit-ID: A1lCqvbQYAF

There is no clean API-based solution to this, so instead I went grovelling
through the DCOM wire protocol and was able to write a function that converts
handler OBJREFs into standard OBJREFs.

See also:
https://msdn.microsoft.com/en-us/library/cc226801

--HG--
extra : rebase_source : a650055c4adda3a1d99262e47f2b463074c6b935
2017-06-06 17:35:51 -06:00
Michael Layzell
b0be882522 Bug 1365032 - Part 1: Allow changing processes when opening a new window with noopener, r=smaug
MozReview-Commit-ID: CXKjDxmoXVH
2017-06-07 12:54:59 -04:00
Michael Layzell
e9a9541ee7 Bug 1368046 - Part 2: Propagate OriginAttributes across processes for RecvCreateWindowInDifferentProcess, r=smaug
MozReview-Commit-ID: 8ok4DI9zgfR
2017-06-07 12:54:57 -04:00
Michael Layzell
ac7ba92fd5 Bug 1368046 - Part 1: Propagate window.name across processes for RecvCreateWindowInDifferentProcess, r=smaug
MozReview-Commit-ID: 6xmLN9pbCKd
2017-06-07 12:54:53 -04:00
Christoph Kerschbaumer
86374cab11 Bug 1369014: Do not pass explicitly pass a triggeringPrincipal within nsDocShellTreeOwner::HandleEvent. r=smaug
--HG--
extra : rebase_source : 832b69c0edec7f004afdf410e231adb660df0769
2017-06-07 14:25:46 +02:00
Andrea Marchesini
44e8750e68 Bug 1366356 - Decrease the process priority of content processes that are not running a foreground tab - part 2 - enabled if the platform specific code is ready, r=smaug 2017-06-07 09:59:00 +02:00
Andrea Marchesini
61f1dc1bf7 Bug 1366356 - Decrease the process priority of content processes that are not running a foreground tab - part 1 - visibility logic, r=smaug 2017-06-07 09:59:00 +02:00
Kyle Machulis
13959a88ce Bug 1337058 - Remove FindPlugins IPC message; r=bsmedberg 2017-06-06 18:29:32 -07:00
Ryan VanderMeulen
4b1082a507 Backed out changeset 0ff4ad45f99c (bug 1337058) for causing bug 1370237.
--HG--
extra : rebase_source : 3ed4d5a41898ead386f8a75b0d2f7be1899cf767
2017-06-05 20:14:55 -04:00
Alex Gaynor
fe791fe36e Bug 1369764 - in the macOS sandbox, allow reads from .app/Contents/; r=haik
This permits NSS to load libsoftokn3.dylib, even when the rest of the file
system's access is removed (as is the goal for the content sandbox level 3).
This is needed for WebCrypto.

MozReview-Commit-ID: Bh54b87zIjY

--HG--
extra : rebase_source : e1fa59648d683e97a3bc1310ac1c362009f657f8
2017-06-02 11:59:43 -04:00
Gabriele Svelto
43c10532d4 Bug 1353168 - Add a crash annotation to distinguish between web, file and extension content processes; r=bsmedberg
This adds the RemoteType annotation to a content crash report so that we can
distinguish between content processes that crashed while running remote, local
or extension code. The annotation is passed along the others to Socorro by the
crashreporter and is also whitelisted for inclusion in the crash ping.

MozReview-Commit-ID: 4avo0IWfMGf

--HG--
extra : rebase_source : 8d03f7e166b5762a5ce7cab13c2101302b4f1d2f
2017-06-01 11:16:11 +02:00
Markus Stange
26469737d1 Bug 1369859 - Add MOZ_GECKO_PROFILER ifdefs around #includes of ProfilerParent.h. r=njn
MozReview-Commit-ID: HS3BBsrHVHu

--HG--
extra : rebase_source : b8439920e82f067bb1a05d513d029363a8c2a24e
2017-06-02 16:03:39 -04:00
Kris Maglione
3f8c999795 Bug 1362462: Fallback to main document widget for frames which haven't been inserted yet. r=mconley
MozReview-Commit-ID: Ayr2kQ9KqbW

--HG--
extra : rebase_source : db78c2c13f87357f64085685629c0e2f96a5acbf
2017-05-29 13:16:23 -07:00
Kyle Machulis
2902c3f037 Bug 1337058 - Remove FindPlugins IPC message; r=bsmedberg
MozReview-Commit-ID: GQVHEeQp1dx

--HG--
extra : rebase_source : d421a613434be2bcca1120cfffb92ed9f20ba9d4
2017-06-01 15:33:23 -07:00
Peter Van der Beken
3a9a9c99de Bug 1363323 - Add TabGroup support to PContentBridge too. r=billm.
--HG--
extra : rebase_source : 8e2df03909c6ccf93d8cb81095c0826bce0e0616
extra : source : e2e64e85d768eb78a1873866bafab0cd863cd2c3
2017-05-02 11:57:51 +02:00
Peter Van der Beken
2310b3bd39 Bug 558184 - Part 8 - Load js plugins in a separate process. r=billm.
Every JS plugin is assigned a unique ID. When an instance of a JS plugin is created the
frame loader that we use to load the plugin's handler URI will create a special
TabContext. This TabContext causes the ContentParent to use the process for this specific
JS plugin (creating one if it hasn't already) when it creates the PBrowser actors.
This causes the iframes for all the instances of a specific JS plugin to be grouped in the
same process.

--HG--
extra : rebase_source : c39560bdf66cda1a005c7b823b3a46e4734878a4
extra : source : 9cba1db527c7eed4371c9f4caf96fd942608cab6
2017-05-29 12:38:46 +02:00
Peter Van der Beken
f7f426524e Bug 558184 - Part 7 - Keep track of the content parent that opened a tab so that ContentProcessManager::GetTopLevelTabParent can walk up to the top level tab parent for a JS plugin tab child. r=kanru.
--HG--
extra : rebase_source : 9859cdde73686a8d1405f559842cd9802d579150
extra : source : 1d5fc5a0381a5fca9caa00e4aa0420e40ad378fc
2017-01-16 21:15:11 +01:00
Peter Van der Beken
cb4d3a4725 Bug 558184 - Part 6 - Return fake plugins in e10s too. r=bz.
--HG--
extra : rebase_source : 262a496b92925dd29d5a39f58e606ef386558dc0
extra : source : d0b23431992ef9a66d9c93a173e766cdaea68082
2015-05-21 15:15:08 +02:00
Carsten "Tomcat" Book
ec17d16219 Merge mozilla-central to mozilla-inbound 2017-06-01 13:56:11 +02:00
Gabriele Svelto
3148018ed7 Bug 1359326 - Run the minidump analyzer directly from the CrashService code; r=bsmedberg
This patch removes the C++ code used to run the minidump analyzer when a
content process crashes, and replaces it with JS code within the CrashService
object. This removes the need for a separate shutdown blocker in C++ code and
allows end-to-end testing of the crash service functionality. Additionally
the exception handler code can be simplified since it's now only used to run
the crash reporter client.

The test added to test_crash_service.js covers computing the minidump SHA256
hash (bug 1322611) and of the minidump analyzer itself (bug 1280477).

MozReview-Commit-ID: LO5w839NHev
2017-05-11 14:03:50 +02:00
Andrea Marchesini
dea0e67b26 Bug 1368009 - Get rid of activity-opened/activity-closed observer, r=gsvelto 2017-06-01 08:29:02 +02:00
Andrea Marchesini
f9b3992646 Bug 1368941 - Remove gonk specific code from ProcessPriorityManager, r=gsvelto 2017-05-31 21:23:52 +02:00
Andrea Marchesini
4c5700d3ed Bug 1369010 - Remove dead code in ContentParent.{cpp,h}, r=qdot 2017-05-31 21:17:24 +02:00
Andrea Marchesini
da7aba03b1 Bug 1368712 - Get rid of nsIBrowserElementAPI.{set,get}Visible, r=kanru 2017-05-31 21:15:23 +02:00
Markus Stange
e2336b07a8 Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=billm,njn
MozReview-Commit-ID: EROfGuYQ6a0

--HG--
extra : rebase_source : be0aa1b9c7963882e8e7d47964f2da5b670ab10a
extra : intermediate-source : e6f368f2d8741f2a9655b288d49b59fbbd6b90b7
extra : source : 51cdc2541486d5ddf2d385ec0459a9ec38b8775b
2017-05-30 15:06:14 -04:00
Ryan VanderMeulen
c01026a3da Merge m-c to inbound. a=merge 2017-05-30 12:58:23 -04:00
Ryan VanderMeulen
9289913a09 Merge inbound to m-c. a=merge 2017-05-30 12:39:46 -04:00
sotaro
3e55c4713f Bug 1366915 part 1 - Remove pipeline id allocation with IPC MozPromise r=nical 2017-05-30 09:59:29 +09:00
Andrea Marchesini
c1c91c120d Bug 1368666 - Get rid of screen-state-changed observer in ProcessPriorityManager, r=gsvelto 2017-05-30 16:27:12 +02:00
Christoph Kerschbaumer
3fc12a8c6e Bug 1363977 - Have loadTabs() provide the correct triggeringPrincipal. r=gijs,smaug 2017-05-29 21:32:21 +02:00
Carsten "Tomcat" Book
bdfe9a25bf Backed out changeset 2b92af4575ae (bug 1357386) 2017-05-30 08:51:22 +02:00
Christoph Kerschbaumer
74a7c96cd0 Bug 1357386: Have loadTabs() provide the correct triggeringPrincipal. r=gijs,smaug 2017-05-30 08:31:08 +02:00
Andrea Marchesini
9efa4e6493 Bug 1368029 - Remove LRU priority support from ProcessPriorityManager, r=gsvelto 2017-05-26 17:50:17 +02:00
Andrea Marchesini
12d75b483c Bug 1368012 - Get rid of audio-channel-process-changed observer in ProcessPriorityManager, r=gsvelto 2017-05-26 17:49:55 +02:00
Eden Chuang
68cf4559f8 Bug 1345361 - PaymentRequest constructor implementation. r=baku 2017-05-26 01:50:32 +08:00
Ryan VanderMeulen
df9dd3967c Backed out changeset 437d6df1859c (bug 1345361) for ESLint failures. 2017-05-25 18:05:15 -04:00
Eden Chuang
80717194b1 Bug 1345361 - PaymentRequest constructor implementation. r=baku 2017-05-26 01:50:32 +08:00
Bill McCloskey
ab129f71c8 Bug 1366845 - Use XPCOM threads for hang monitor (r=mrbkap)
MozReview-Commit-ID: 3zMWYDATDch
2017-05-24 11:11:28 -07:00
Andrea Marchesini
eaa44dbb26 Bug 1359718 - Get rid of PBlob - part 4 - PBlob DOMTypes, r=smaug 2017-05-23 18:06:22 +02:00
Andrea Marchesini
281c7e8cdd Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Andrea Marchesini
28479706ea Bug 1359718 - Get rid of PBlob - part 0 - remove PMemoryStream, r=smaug 2017-05-23 18:00:30 +02:00
Ryan VanderMeulen
0bd37c1ea1 Merge inbound to m-c. a=merge 2017-05-23 18:12:57 -04:00
Ehsan Akhgari
1040ee9f65 Bug 1347035 - Store the maximum touch points for each tab child on the object instead of querying it synchronously from the parent actor when neeeded; r=smaug ipc-r=kanru 2017-05-23 17:00:09 -04:00
Mike Conley
a6e4cd7b77 Bug 1362866 - Get rid of MozTabChildNotReady event and all of its required infrastructure. r=billm
This event is no longer necessary, since checking nsITabParent.hasPresented is enough to know
if we need to blank out the tab or not.

MozReview-Commit-ID: 445XMqhorxC

--HG--
extra : rebase_source : 1a05de827502c409d979a621471978b08ce39fb2
2017-05-07 21:26:08 -04:00
Georg Fritzsche
31c702afef Bug 1361661 - Part 2 - Make Telemetry IPC code pass around Telemetry::ProcessID. r=dexter
Switching to Telemetry::ProcessID allows us to break out extension process data from the content process data.
2017-05-23 13:47:58 +07:00
Ryan VanderMeulen
242f4b304d Merge m-c to autoland. a=merge
CLOSED TREE
2017-05-31 20:50:21 -04:00
Alex Gaynor
d27dc0ba0b Bug 1358223 - Part 1 - On Windows and macOS hardcode the minimum content sandbox level at 1. r=bobowen,haik,jimm
If the "security.sandbox.content.level" preference is set to a value less than
1, all consumers will automatically treat it as if it were level 1. On Linux and
Nightly builds, setting the sandbox level to 0 is still allowed, for now.

MozReview-Commit-ID: 9QNTCkdbTfm

--HG--
extra : rebase_source : cd5a853c46a5cd334504b339bef8df30a3cabe51
2017-05-12 17:04:42 -04:00
Sebastian Hengst
fd03aa5bc8 Backed out changeset 4e283b54baa6 (bug 1358223) for build bustage on Android at dom/ipc/ContentChild.cpp:21. r=backout 2017-05-31 21:34:13 +02:00
Alex Gaynor
39f34ea898 Bug 1358223 - Part 1 - On Windows and macOS hardcode the minimum content sandbox level at 1. r=bobowen,haik,jimm
If the "security.sandbox.content.level" preference is set to a value less than
1, all consumers will automatically treat it as if it were level 1. On Linux and
Nightly builds, setting the sandbox level to 0 is still allowed, for now.

MozReview-Commit-ID: 9QNTCkdbTfm

--HG--
extra : rebase_source : 1a26ffc5b9f80e6df4c37c23f506e907ba44053a
2017-05-12 17:04:42 -04:00
Sebastian Hengst
3743249da2 Backed out changeset 3ac94ff745fc (bug 1359718) for bustage in IPCBlobInputStreamChild.cpp. r=backout on a CLOSED TREE 2017-05-23 19:13:14 +02:00
Sebastian Hengst
4ac10ab053 Backed out changeset c3251f5022dd (bug 1359718) 2017-05-23 19:12:25 +02:00
Sebastian Hengst
11edd0b86c Backed out changeset 1b6c07b71ba4 (bug 1359718) 2017-05-23 19:12:15 +02:00
Andrea Marchesini
785d0e9d03 Bug 1359718 - Get rid of PBlob - part 4 - PBlob DOMTypes, r=smaug 2017-05-23 18:06:22 +02:00
Andrea Marchesini
f512688b0b Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Andrea Marchesini
9106ae7b59 Bug 1359718 - Get rid of PBlob - part 0 - remove PMemoryStream, r=smaug 2017-05-23 18:00:30 +02:00
Sebastian Hengst
2ac2023c15 Backed out changeset c92612ac17d3 (bug 1359718) for bustage in IPCBlobInputStreamChild.cpp. r=backout on a CLOSED TREE 2017-05-23 18:35:24 +02:00
Sebastian Hengst
89e8ea64b1 Backed out changeset 537abc431472 (bug 1359718) 2017-05-23 18:34:40 +02:00
Sebastian Hengst
02595acf8d Backed out changeset 5684176c7662 (bug 1359718) 2017-05-23 18:34:29 +02:00
Andrea Marchesini
673df9c262 Bug 1359718 - Get rid of PBlob - part 4 - PBlob DOMTypes, r=smaug 2017-05-23 18:06:22 +02:00
Andrea Marchesini
7db3365daf Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Andrea Marchesini
af2f7fcbf5 Bug 1359718 - Get rid of PBlob - part 0 - remove PMemoryStream, r=smaug 2017-05-23 18:00:30 +02:00
Phil Ringnalda
6368ef89e2 Backed out 5 changesets (bug 1330185, bug 1330184) for leaking an nsTArray_base from the plugin process on Win8
Backed out changeset e6f368f2d874 (bug 1330185)
Backed out changeset 2b8d50fcb20f (bug 1330184)
Backed out changeset dbe452a9eebb (bug 1330184)
Backed out changeset e13b9e798e16 (bug 1330184)
Backed out changeset 52489c7eadaf (bug 1330184)

MozReview-Commit-ID: 8L20BZ5E3t2
2017-05-22 19:45:35 -07:00
Yoshi Huang
ccb4b5db4c Bug 1365166 - rename security.data_uri.inherit_security_context to security.data_uri.unique_opaque_origin. r=smaug, ckerschb
Originally the pref is called security.data_uri.inherit_security_context, so the pref is default on.
And when we finish this feature, we turn it off.
To avoid causing confusion in the future, perhaps we should rename it and make the pref default off.
2017-05-23 09:02:05 +08:00
Markus Stange
9bf6b534a2 Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=njn, r=billm
MozReview-Commit-ID: EROfGuYQ6a0

--HG--
extra : rebase_source : 3495ccc7700703cc587f571dfc12e46a682c29a2
extra : source : 51cdc2541486d5ddf2d385ec0459a9ec38b8775b
2017-05-22 13:47:02 -04:00
Sebastian Hengst
42925f8817 Backed out changeset 8fd3861205d1 (bug 1361661) 2017-05-22 20:40:22 +02:00
Georg Fritzsche
057ea3f2f7 Bug 1361661 - Part 2: Make Telemetry IPC code pass around Telemetry::ProcessID. r=dexter
Switching to Telemetry::ProcessID allows us to break out extension process data from the content process data.

--HG--
extra : rebase_source : ab334ad33b879dce373f810b452b73747ba82109
extra : source : 9cf5185e6d6fd15b1dd35b1552317ebd5ff258ed
2017-05-22 15:40:58 +07:00
Sebastian Hengst
b3a2c130d0 Backed out changeset 9cf5185e6d6f (bug 1361661) 2017-05-22 16:19:26 +02:00
Georg Fritzsche
0a9d674afd Bug 1361661 - Part 2: Make Telemetry IPC code pass around Telemetry::ProcessID. r=dexter
Switching to Telemetry::ProcessID allows us to break out extension process data from the content process data.
2017-05-22 15:40:58 +07:00
btian
de5fa4f269 Bug 1299390 - part 5: Remove useless AudioChannelService code. r=alwu
Changes:
- remove code addressed by reviewer
- remove PContent.ipdl, PBrowser.ipdl, and ProcessPriorityManager code
  that relates only to removed AudioChannelService methods
- correct test case listening to event from removed code
- remove useless test case files

MozReview-Commit-ID: I96nR8zTXJt

--HG--
extra : rebase_source : 127876c672744811c025ca55839ff2e8a06b1fce
2017-05-18 09:51:53 +08:00
btian
eb73e59657 Bug 1299390 - part 2: Remove AudioChannelService methods required by BrowserElementAudioChannel only. r=alwu,baku
Changes:
- remove nsIAudioChannelService methods
- remove method AudioChannelService::RefreshAgentsVolumeAndPropagate and IPC method AudioChannelChangeNotification
- remove workaround for bug 1183033

MozReview-Commit-ID: BqlXYVhgrat

--HG--
extra : rebase_source : 64905901d645aea801b93e742472ac67ff7fb49e
2017-05-18 09:31:00 +08:00
Andrew McCreight
05d8bb3c65 Bug 989373, part 1 - Remove pref for reusing globals with JSMs. r=kmag
Removing support for this preference means that mReuseLoaderGlobal
will always be false, which lets us eliminate that field, and remove a
lot of code.

This also means that false is always passed to
PrepareObjectForLocation for aReuseLoaderGlobal.

ReadCachedFunction is no longer used, so it is deleted.

MozReview-Commit-ID: 5JD24EYVcQf

--HG--
extra : rebase_source : 3b23b4b8d2b1a2f6a53223477afb4cb13b8a671c
2017-05-15 14:33:21 -07:00
Ryan VanderMeulen
96eca59299 Merge m-c to autoland. a=merge 2017-05-19 12:26:48 -04:00
Masayuki Nakano
85a1d561a2 Bug 1339543 part 6 PBrowser::RequestNativeKeyBindings() should retrieves edit commands only for specified type r=smaug
PBrowser::RequestNativeKeyBindings() is used only when somebody tries to
execute native key bindings for synthesized keyboard events.  Therefore, it
doesn't need to retrieve edit commands for all editor types.  Instead, it
should take the editor type and just return the edit commands for it.

MozReview-Commit-ID: HF4Gz99SBQP

--HG--
extra : rebase_source : e332d2ef5ae36949a9a362d8f95c5d427c9812e7
2017-05-19 18:46:02 +09:00
Masayuki Nakano
872f694c63 Bug 1339543 part 4 Change nsIWidget::ExecuteNativeKeyBinding() to nsIWidget::GetEditCommands() which just retrieves edit commands for the type r=smaug
Now, nsIWidget::ExecuteNativeKeyBinding() isn't used by anybody for executing
edit commands.  Instead, they need array of edit commands for the key
combination.  So, the method should be renamed to GetEditCommands() and just
return edit commands as an array.

MozReview-Commit-ID: 4G0B1lJ8Lbe

--HG--
extra : rebase_source : 4a5829281d59677c773950c34d91a1cd8074d243
2017-05-19 17:49:41 +09:00
Masayuki Nakano
730193bdb6 Bug 1339543 part 2 eKeyPress event should have edit commands for all editor types when it's dispatched to a remote process r=smaug
When eKeyPress event is dispatched from TabParent to a remote process, it
should store edit command for all editor types.  Then, copied
WidgetKeyboardEvent in the remote process doesn't need to request the edit
commands when its ExecuteEditCommands() is called.

Note that this patch also changes a automated test, browser_bug1316330.js,
that uses nsIDOMWindowUtils.dispatchDOMEventViaPresShell() to dispatch
repeated keyboard events in the tab.  However, it should use synthesizeKey()
to emulate everything of native keyboard events and the API can dispatch
repeated keyboard events too.  (And the test has a bug.  It tries to wait 0.5
sec when every keydown or keypress event.  However, it fails since startTime
is never initialized.  This patch fixes this bug too.)

MozReview-Commit-ID: IYhyxqH3Ch8

--HG--
extra : rebase_source : 0db911e8e6ea7fc537bda76f4cc0f8952cc13dd2
2017-05-19 17:24:20 +09:00
Carsten "Tomcat" Book
6bd33f52d5 merge mozilla-inbound to mozilla-central a=merge 2017-05-17 11:16:52 +02:00
Andrea Marchesini
24bdb3ece3 Bug 1322316 - Split SessionStorage and LocalStorage implementation - part 5 - Shared broadcasting of changes, r=asuth 2017-05-17 07:01:14 +02:00
Stephen A Pohl
99336e02ef Bug 429824: Properly forward native OSX events to the native menu bar if they haven't been handled by the child process in e10s. r=mstange,masayuki 2017-05-15 22:59:35 -04:00
Christoph Kerschbaumer
e4f38c8d7c Bug 1362993 - Rewrite gBrowser.addTab() to use BrowserTestUtils.addTab(). r=florian 2017-05-15 21:49:50 +02:00
Nathan Froyd
c1d1748428 Bug 1359490 - add an event loop spinning abstraction function; r=gerald
This function is arguably nicer than calling NS_ProcessNextEvent
manually, is slightly more efficient, and will enable better auditing
for NS_ProcessNextEvent when we do Quantum DOM scheduling changes.
2017-05-15 09:34:19 -04:00
Kris Maglione
589a82d7ba Bug 1361900: Part 6 - Add content process support for the script preloader. r=erahm,gabor
MozReview-Commit-ID: 6hDQAI52bKC

--HG--
extra : rebase_source : 46e8d5ed5965e483fa4b0bd8f6f4403e0bb771dc
extra : source : 4227bcda00babd2d5980dca3b42cb4b467da38c4
2017-05-02 17:17:52 -07:00
Sebastian Hengst
0f6e08c578 Backed out changeset 4227bcda00ba (bug 1361900) 2017-05-13 18:53:30 +02:00
Kris Maglione
2a49ee963d Bug 1361900: Part 6 - Add content process support for the script preloader. r=erahm,gabor
MozReview-Commit-ID: 6hDQAI52bKC

--HG--
extra : rebase_source : a7a32c6ebca0ce1b6449030e33656a9d416e910e
2017-05-02 17:17:52 -07:00
Andrew McCreight
099723178a Bug 1365086, part 3 - Make nsMessageManagerScriptExecutor::mGlobal into a raw pointer. r=smaug
MozReview-Commit-ID: JdLV3wIB1gj

--HG--
extra : rebase_source : 6580a4325633e723aff3a37f58c5fc0ccb163ab2
2017-05-15 13:46:28 -07:00
Andrew McCreight
ffae1f697d Bug 1365086, part 2 - Add unlink method for nsMessageManagerScriptExecutor. r=smaug
MozReview-Commit-ID: 66qpza5yEZT

--HG--
extra : rebase_source : 290a4102a1e44e6c1a6cf63c48e931130970bd93
2017-05-15 13:05:18 -07:00
Andrew McCreight
7a82b9da0e Bug 1365086, part 1 - Make nsMessageManagerScriptExecutor::GetGlobal return a JSObject pointer. r=smaug
MozReview-Commit-ID: HxMaMyK8fFW

--HG--
extra : rebase_source : 91ca882a6b6e50b23597e69f968aef7115c55496
2017-05-15 12:56:22 -07:00
Olli Pettay
1b1642f523 Bug 1364018 - Coalesce wheel events more aggressively, r=stone
--HG--
extra : rebase_source : 17171c517a0c49cfbb2a6c99a06d655e61930e2d
2017-05-12 14:13:59 +03:00
David Anderson
679a447659 Make sure to re-identify TextureFactoryIdentifiers when reinitializing rendering. (bug 1363126 part 6, r=rhunt) 2017-05-11 22:45:16 -07:00
David Anderson
57800cc0bd Handle in-process device resets by recreating the entire rendering stack. (bug 1363126 part 2, r=rhunt) 2017-05-11 22:44:27 -07:00
David Anderson
27df5ad5bd Handle remote device resets by recreating the entire rendering stack. (bug 1363126 part 1, r=rhunt, ipc_r=billm) 2017-05-11 22:44:27 -07:00