Commit Graph

4601 Commits

Author SHA1 Message Date
Carsten "Tomcat" Book
679210723b merge mozilla-inbound to mozilla-central a=merge 2017-07-25 14:27:17 +02: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
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
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