Commit Graph

4885 Commits

Author SHA1 Message Date
Andrew McCreight
27fbef8dfc Bug 1426801 - Clear gFirstIdleTask if we fail to dispatch the runnable. r=mrbkap
MozReview-Commit-ID: 23f9VDTyyqg

--HG--
extra : rebase_source : 525588c060c282e9ba1b6a80ffa2bea95c05c271
2018-01-04 14:59:14 -08:00
Ursula Sarracini
7b4dce9241 Bug 1420285 - Change <browser> attribute isPreloadBrowser to preloadedState r=mconley
MozReview-Commit-ID: 3ooQldAnPZl

--HG--
extra : rebase_source : aac0e2957191ba77f06004a95c5766fa60e2d8b4
2018-01-04 15:54:37 -05:00
arthur.iakab
042d2e8d74 Merge mozilla-central to inbound r=merge a=merge on a CLOSED TREE 2017-12-22 00:28:49 +02:00
Prathiksha
e58cc0ef84 Bug 1378200 - Remove MOZ_PERMISSIONS define guards. r=mystor
MozReview-Commit-ID: 2IcXC3h29D9
2017-12-14 03:32:41 +05:30
Andrew McCreight
ab7fa64021 Bug 1410209, part 4 - Add names to some IPC runnables. r=kanru
This patch requires that each instance of IPC's RunnableFunction is
passed in a name, like the non-IPC RunnableFunction.

MozReview-Commit-ID: Atu1W3Rl66S

--HG--
extra : rebase_source : f932d7597a26a3f0c4246b3a95df638860d3d32d
2017-10-27 13:39:28 -07:00
Matthew Gregan
47ae310bf0 Bug 1405877 - Bootstrap AudioIPC from Gecko IPC by passing server fd to content process. r=jld,kamidphish 2017-12-20 14:51:11 +13:00
Hiroyuki Ikezoe
ff462a7f6b Bug 1422649 - Add layout.css.emulate-moz-box-with-flex in gEarlyPrefs. r=bustage-fix a=bustage-fix on a CLOSED TREE
MozReview-Commit-ID: F7bY9326Pa4
2017-12-19 03:23:00 +02:00
Dorel Luca
8d7dc32e0f Merge mozilla-inbound to mozilla-central r=merge a=merge
--HG--
extra : amend_source : ab6e52d7abe431d1530dac3f5b0b09f7a8c18d62
2017-12-19 12:08:53 +02:00
Nicholas Nethercote
a9eea76e82 Bug 1422649 - Remove a bogus exception from the early pref access checking. r=billm
New content processes get prefs in three ways.

- They read them from greprefs.js, prefs.js and other such files.

- They get sent "early prefs" from the parent process via the command line
  (-intPrefs/-boolPrefs/-stringPrefs).

- They get sent "late prefs" from the parent process via IPC message.

(The latter two are necessary for communicating prefs that have been added or
modified in the parent process since the file reading occurred at startup.)

We have some machinery that detects if a late pref is accessed before the late
prefs are set, which is good. But it has a big exception in it; late pref
accesses that occur early via Add*VarCache() and RegisterCallbackAndCall() are
allowed.

This exception was added in bug 1341414. The description of that bug says "We
should change AddBoolVarCache so that it doesn't look at the pref in the
content process until prefs have been received from the parent." Unfortunately,
the patch in that bug added the exception to the checking without changing
Add*VarCache() in the suggested way!

This means it's possible for late prefs to be read early via VarCaches (or
RegisterCallbackAndCall()) when their values are incorrect, which is bad.

Changing Add*VarCache() to delay the reading as bug 1341414 originally
suggested seems difficult. A simpler fix is to just remove the exception in the
checking and extend the early prefs list as necessary. This patch does that,
lengthening the early prefs list from ~210 to ~300. Fortunately, most (all?) of
the added prefs are ints or bools rather than strings, so it doesn't increase
the size of the command line arguments for content processes by too much.

--HG--
extra : rebase_source : 5ea5876c206401d23a368ef9cb5040522c9ca377
2017-12-04 12:08:43 +11:00
Gurzau Raul
bc6e59d2b4 Merge mozilla-central to autoland. r=merge a=merge CLOSED TREE 2017-12-19 00:00:36 +02:00
Kartikaya Gupta
4f18e92ffb Bug 1334189 - Enable mochitest-plain for linux64-qr. r=jrmuizel
MozReview-Commit-ID: nbcWhDq5de

--HG--
extra : rebase_source : 25e2c2b8b996ae11cd25dee07d9092ba574a9e40
2017-12-13 18:38:39 -05:00
Stone Shih
f54b118ead Bug 1303957 Part1: Add support for PointerEvent.getCoalescedEvents. r=smaug.
We implement PointerEvent.getCoalescedEvents as
1. Clone the widget events we coalesced.
2. Convert them to dom::PointerEvent when user calls getCoalescedEvents.

MozReview-Commit-ID: 8IKw4PbUsDD
2017-09-20 13:00:57 +08:00
Doug Thayer
42065fc66b Bug 1421704 - Optimize NotifyVisited IPC to take batch r=mak
During history import, sending NotifyVisited messages from the
chrome process to the content processes in order to change link
colors can take a significant portion of the parent process's
main thread time. Batching it seems to have very significant
results on jank time during history imports.

MozReview-Commit-ID: BHAXpIMa7ly

--HG--
extra : rebase_source : f43c653e6945d7775cc9dd7bca4c1e84099c2673
2017-12-04 09:45:29 -08:00
DimiL
8db0f119dc Bug 1407878 - P2. Add PLoginReputation.ipdl for LoginReputationService. r=billm,francois
Right now the only parameter will be sent via the IPC message is form URI.
IPC is triggered when a password field is focusd (See P2.)

MozReview-Commit-ID: J8lVwRhTFIr

--HG--
extra : rebase_source : b948cf1a719c9a06100c54f3eda526ea6f7cf848
2017-12-07 16:32:52 +08:00
Gurzau Raul
0fcc1a37e6 Merge mozilla-central to mozilla-inbound. r=merge a=merge CLOSED TREE 2017-12-09 00:57:59 +02:00
Ben Kelly
280fdf002f Bug 1424338 P4 Implement ClientManager::OpenWindow(). r=baku 2017-12-08 14:46:43 -05:00
Sylvestre Ledru
9bfe27d903 Bug 1394734 - Replace CONFIG['GNU_C*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 7duJk2gSd4m

--HG--
extra : rebase_source : 7312fe276e561e8c034a5f6749774ae812727f9c
2017-12-07 22:09:15 +01:00
Mike Conley
0d20da44b7 Backed out changeset 261be8ec0554 (bug 1397426)
--HG--
extra : rebase_source : f43fabcbb096e007ff81261f8249f9b53f5a5d37
2017-12-06 16:10:55 -05:00
Mike Conley
7f920db3d5 Backed out changeset 2cd697170fb3 (bug 1397426)
--HG--
extra : rebase_source : 0562adac1b665941a2800743e5e35089dec5a32c
2017-12-06 16:09:36 -05:00
Mike Conley
4449ce4040 Backed out changeset 4dd20bf8c0f6 (bug 1397426)
--HG--
extra : rebase_source : 0bbbefd4f3488b2286d33ef6d20ec762dab51ee7
2017-12-06 16:06:36 -05:00
Mike Conley
053fbea1fc Backed out changeset 4643e46ff8d3 (bug 1397426)
--HG--
extra : rebase_source : 3e235d725c42300f3c8f3af51850e3c4e1aa7ddf
2017-12-06 16:03:32 -05:00
Mike Conley
738b920742 Backed out changeset 53bb2bc2b676 (bug 1397426)
--HG--
extra : rebase_source : 7ef95ce8467ed642077b6c141e440428f71fa3f6
2017-12-06 15:56:24 -05:00
Mike Conley
c99b8d29a5 Backed out changeset b9b2895b11a3 (bug 1397426)
--HG--
extra : rebase_source : 8fada9f53beffaada9f16122efe5d9570d422e6c
2017-12-06 15:54:06 -05:00
Mike Conley
2fe4ae7e28 Backed out changeset 78073667ddc6 (bug 1397426)
--HG--
extra : rebase_source : 59c9f343a81c1ba1b65c25548c569f48e81d236c
2017-12-06 15:52:40 -05:00
Mike Conley
7721deb74e Backed out changeset 8994162ee112 (bug 1397426)
--HG--
extra : rebase_source : 56ce672d436341260443daa98d553e53974eb1fd
2017-12-06 15:48:54 -05:00
Nika Layzell
111561414d Bug 1422033 - Support opening a new window when no windows are avaliable for a new tab, r=bz
MozReview-Commit-ID: DzSllBVdUhq
2017-12-06 10:39:13 -05:00
Dorel Luca
bea662dd30 Merge mozilla-central to autoland r=merge
--HG--
rename : layout/reftests/webcomponents/basic-insertion-point-1-ref.html => layout/reftests/webcomponents/basic-slot-5-ref.html
rename : layout/reftests/webcomponents/basic-insertion-point-1.html => layout/reftests/webcomponents/basic-slot-5.html
rename : layout/reftests/webcomponents/basic-insertion-point-2-ref.html => layout/reftests/webcomponents/basic-slot-6-ref.html
rename : layout/reftests/webcomponents/basic-insertion-point-2.html => layout/reftests/webcomponents/basic-slot-6.html
extra : rebase_source : 483a0fb85738c5459165efca8ec6bc971e31b4c2
2017-12-04 12:49:40 +02:00
Nicholas Nethercote
3da37cfebe Bug 1421541 - Overhaul the prefs phase code. r=glandium
This code is used to detect too-early accesses of prefs in content processes.

The patch makes the following changes.

- New terminology: "early" prefs are those sent via the command line; "late"
  prefs are those sent via IPC. Previously the former were "init" prefs and the
  latter didn't have a clear name.

- The phase tracking and checking is now almost completely encapsulated within
  Preferences.cpp. The only exposure to outside code is via the
  AreAllPrefsSetInContentProcess() method, which has a single use.

- The number of states tracked drops from 5 to 3. There's no need to track the
  beginning of the pref-setting operations, because we only need to know if
  they've finished. (This also avoids the weirdness where we could transition
  from END_INIT_PREFS back to BEGIN_INIT_PREFS because of the way -intPrefs,
  -boolPrefs and -stringPrefs were parsed separately.)

MozReview-Commit-ID: IVJWiDxdsDV

--HG--
extra : rebase_source : 8cee1dcbd40847bf052ca9e2b759dd550350e5a1
2017-11-30 09:14:32 +11:00
Makoto Kato
f208c7a958 Bug 1419285 - Part 2. IME message should post to correct widget. r=masayuki
After landing bug 1353060, TabParent::GetWidget()'s behaviour is changed.  We
should use GetDocWidget for IME.

MozReview-Commit-ID: 5DpYjzQDHlD

--HG--
extra : rebase_source : f1b827a0d6fe88549ead6a7a68b8bd2fbcaf5487
2017-11-29 15:56:11 +09:00
Makoto Kato
74fb3d9e5f Bug 1419285 - Part 1. Calculate composition rect for remote XUL frame. r=masayuki
Out of process support for Web extension creates another XUL widget for it.
We should calculate correct offset for Web Extension's remote widget.

MozReview-Commit-ID: AaALzLeKLsM

--HG--
extra : rebase_source : da3562d6ec6b93b99d12b0cac4d80d8b91e286fd
2017-11-29 15:55:58 +09:00
Thomas Nguyen
1cbe6d16c5 Bug 1420702 - Propagate referrer policy when creating window from pinned tab r=ckerschb,smaug
MozReview-Commit-ID: 1kMssKbAm1l

--HG--
extra : rebase_source : 446d4a9fffd1d5b19bca41722db32759b4540a29
2017-11-30 21:42:05 +08:00
Mike Conley
5b0d6be3e2 Bug 1397426 - Expose renderLayers state via nsITabParent and correctly set initial tab states in async tab switcher. r=billm
MozReview-Commit-ID: IIMmwrgJUV6

--HG--
extra : rebase_source : 00ca04b970feb98d96b082c9b582875d486d2ece
2017-11-22 10:48:10 -08:00
Mike Conley
3d0b1bf4e8 Bug 1397426 - TabChild::MakeHidden shouldn't cause script to run. r=billm
Calling GetPresShell() might create a content viewer, which might cause
script to run. This is bad if there's a ForcePaint message queued up,
because it could mean running the force painting code while we're still
in the midst of making a tab hidden, which would put us in an inconsistent
state.

MozReview-Commit-ID: 3rw2wGllGdk

--HG--
extra : rebase_source : 152716d81391ea4d890927a0dadff912c53a28e2
2017-11-21 16:52:48 -05:00
Mike Conley
f476b048b2 Bug 1397426 - Make TabParent's assume they're rendering layers by default on construction. r=billm
This assumption also mirrors how non-remote browsers have their docShells active by default.

In order to do this, I also have to increase the initial epoch's for the TabParent and TabChild,
as if a RenderLayers has been called. Originally, since the epochs initted at 0, and the epochs
stored by the [Layer|WebRender]TransactionParent were also initted at 0, we'd hit this branch:

https://searchfox.org/mozilla-central/rev/c633ffa4c4611f202ca11270dcddb7b29edddff8/gfx/layers/ipc/LayerTransactionParent.cpp#703

and then we'd never alert the TabParent about the layer upload.

MozReview-Commit-ID: 6PP1eCnisYK

--HG--
extra : rebase_source : da736415d6b60208fa54bc25fe449cc261e856d8
2017-11-20 11:41:11 -05:00
Mike Conley
752b8e0615 Bug 1397426 - Add hasLayers to nsITabParent and use it in the async tab switcher. r=billm
This is necessary because sometimes the async tab switcher will instantiate when
there already exists some background tabs that are rendering via print preview. When
that happens, it's important for the state to be set correctly for them so that we
don't accidentally treat them as still loading, and wait (forever) for them to report
having finished loading.

MozReview-Commit-ID: 2dwo5WlXlgJ

--HG--
extra : rebase_source : 7d3def56bf6ba12bb6110b60bb3d79329bfc0abd
2017-11-17 09:55:29 -08:00
Mike Conley
cacae0556b Bug 1397426 - Rename TabChild's notion of "active tabs" to "visible tabs" and move logic into renderLayers. r=billm
MozReview-Commit-ID: 1bBNwew7uCk

--HG--
extra : rebase_source : fb907f0e9f02635b122dbf67da7a7c1292427cec
2017-11-03 11:27:29 -04:00
Mike Conley
e2a8eea6ce Bug 1397426 - When short-circuiting a TabParent::RenderLayers call, still fire the layer tree event if we've been preserving layers. r=billm
MozReview-Commit-ID: 7UT036vUY85

--HG--
extra : rebase_source : 2420294925a7c3b341499678f85713d8f212b6d8
2017-11-07 15:08:47 -05:00
Mike Conley
93aa55c535 Bug 1397426 - Rename mRenderingLayers to mRenderLayers. r=billm
MozReview-Commit-ID: KTDhXM7PRdc

--HG--
extra : rebase_source : 055939b8c03b741ef6a0e9da3a2ae5812eefeccf
2017-11-22 10:21:34 -08:00
Mike Conley
4b66a89aa0 Bug 1397426 - Add IPC interface to tell TabChild's to render and clear layers, distinct from setting the active state on the DocShell. r=billm
Originally, setting the active state on the DocShell for remote browsers also did the
work of making the TabChild render its layers and upload them to the compositor.

This patch adds a new renderLayers method to nsITabParent which allows more fine-grained
control - we can now, for example, cause layers to be rendered and uploaded without
activating the DocShell.

Note that if one activates or deactivates the DocShell, we'll still do the work of
attempting to render / clear the layers if it hasn't already been done.

MozReview-Commit-ID: KkLaMDTzfHi

--HG--
extra : rebase_source : 2d00dc71c584a41650696a412b6249aee3a505fe
2017-11-03 10:27:05 -04:00
Andrea Marchesini
b1231ac8b9 Bug 1420419 - Postpone the removing of BlobURL for 5 seconds in order to allow the loading of them in a remote process, r=smaug 2017-11-29 09:40:16 +01:00
Nicholas Nethercote
5b80c7cb65 Bug 1394578 - Pass pref locked status to content processes. r=glandium
This makes the IPC messages a little bigger, but that's unavoidable.

MozReview-Commit-ID: 1oPz2Yjjd9y

--HG--
extra : rebase_source : 0cff8cf5b25f66b73f6864ce50c1e5f575026ec3
2017-11-29 09:29:07 +11:00
Nicholas Nethercote
a775a9afdb Bug 1394578 - Rename dom::PrefSetting as dom::Pref. r=glandium
It represents a pref, so `Pref` is a better name. Within Preferences.cpp the
patch uses domPref/aDomPref to distinguish it from PrefHashEntry values.

MozReview-Commit-ID: HXTl0GX4BtO

--HG--
extra : rebase_source : c1e0726c55e7577720f669f0ed2dbc38627d853e
2017-11-22 21:21:19 +11:00
Johann Hofmann
6a1c57c446 Bug 1345424 - Add an isHandlingUserInput attribute to permission requests. r=baku,smaug
MozReview-Commit-ID: 80TXjnxLMuT

--HG--
extra : rebase_source : 42a54afe6cebe9e7c36a7575000fa9c270a63db6
2017-02-20 20:46:39 +01:00
Margareta Eliza Balazs
24fbf705d1 Merge mozilla-central to mozilla-autoland. r=merge a=merge on a CLOSED TREE 2017-11-28 00:09:08 +02:00
Bob Owen
af20a22dd8 Bug 1420922: Remove orphaned TARGET_SANDBOX_EXPORTS defines. r=dmajor 2017-11-27 16:07:15 +00:00
Johann Hofmann
d28b4dd837 Bug 1374574 - Remove the FlyWeb service and DOM interfaces. r=bz,djvj
MozReview-Commit-ID: 4hp9pLbMh4R

--HG--
extra : rebase_source : 82f417640211ede4fd7aa290c1f2609b07f38025
2017-11-22 15:00:10 +01:00
Gabriele Svelto
0750d2d41a Bug 1402519 - Remove MOZ_CRASHREPORTER directives from dom; r=peterv
MozReview-Commit-ID: 4G2C9y6csvc

--HG--
extra : rebase_source : f0259c59c263b677a3a44751219dcb54378d72bc
2017-10-10 12:43:09 +02:00
Kartikaya Gupta
22471e0b18 Bug 1419868 - Fix some inconsistent naming r=mystor
The property in question is the offset from the content process to the
chrome process, but it gets called various things for historical
reasons. Let's be consistent and just call it the chrome offset
everywhere.

Also, in some places this was needlessly getting turned into a
nsIntPoint via ToUnknownPoint(), only to be turned back into a
LayoutDeviceIntPoint at all the use sites. So this patch also updates
some function signatures to avoid the needless conversion.

No functional changes.

MozReview-Commit-ID: AuhEUfa64Uj

--HG--
extra : rebase_source : 20e1895fefd944f98307a8437f977252ee2c3185
2017-11-22 14:21:37 -05:00
Nika Layzell
8c139d50a6 Bug 1418048 - Part 2: Pass callbacks by rvalue reference when possible, a=bustage
MozReview-Commit-ID: 4KsbRJ9AEdB
2017-11-20 18:12:21 -05:00
Nika Layzell
6afe674be0 Bug 1416728 - Process the CreateWindow reply message in order with other PContent IPC messages, r=bz
Previously we used the MozPromise interface for calling an async-message over
IPC with a reply. Unfortunately, MozPromise processes the reply asynchronously,
potentially allowing other IPC messages to be processed before the `->Then`
callback is processed.

In the original CreateWindow patch I tried to work around this by setting the
target of the `->Then` callback to be StableStateEventTarget. This worked,
however as it isn't safe to run scripts etc. in the stable state, we instead
tried to exit the nested event loop immediately after the runnable ran, and then
performed processing of the reply.

Unfortunately, this bug exposed a problem with that design. If we have multiple
nested event loops then we cannot guarantee that we'll exit the nested event
loop immediately after recieving the `->Then` callback, which meant that we
could still process other IPC messages before we processed the CreateWindow
reply.

The fix to this was to add a new API to allow passing callbacks directly into
IPC send methods, ensure that those callbacks are called in IPC order, and
fully process the CreateWindow reply in the callback, rather than waiting for
the nested event loop to exit.

MozReview-Commit-ID: D6zaMJRxhXd
2017-11-20 17:55:33 -05:00