Граф коммитов

490826 Коммитов

Автор SHA1 Сообщение Дата
Henrik Skupin fadd103e03 Bug 1301153 - Split-up marionette_test module into distinct modules. r=maja_zf
marionette_test.py is a bloated module which contains everything around the Marionette testcase classes.
We should split this up into distinct modules, so each new module covers specific code. The two new modules
introduced are errors, and decorators. This split would also be aligned to the structure of the driver.

To not loose backward compatibility we have to keep the import from marionette_test. It means the new
modules have to live in a sub folder named like that.

MozReview-Commit-ID: DQg55M258ST

--HG--
extra : rebase_source : 2c4150e56b4489518bd1c87b4c3f7cc25e0c5133
2016-09-07 22:58:36 +02:00
kearwood a3d9112f3c Bug 1296446 - Do not render VR frames until a WebGLContext has returned a mirroring layer r=jgilbert
- Fixes a crash that occurred when WebVR frames were rendered prior to
  setting up the WebGLContext for mirroring back to the 2d display.

MozReview-Commit-ID: Fq4c2287KBL

--HG--
extra : rebase_source : e0e0416f1d6a5f9058c7ed89581b700f32712e72
2016-09-08 14:16:07 -07:00
Kan-Ru Chen 8d637c482f Bug 1301339 - Annotate content shutdown hang due to nested event loop in RecvShutdown. r=billm
We currently allow nested event loop to delay ContentChild::RecvShutdown
which in turn might cause content process shutdown hang. This patch
attempts to annotate the crash report that a shutdown hang was after we
have received RecvShutdown but never reach SendFinishShutdown or the
hang happened before or after RecvShutdown.

MozReview-Commit-ID: 8pGqwzLlYpK

--HG--
extra : rebase_source : 78fdec0c29ded1abbd6651c67fe5c97f63555635
2016-09-08 17:23:57 +08:00
Ting-Yu Lin 2f177a0a73 Bug 1299753 Part 3 - Reuse ConstructScrollableBlock to build scrollable DetailsFrame. r=bz
MozReview-Commit-ID: 1yAhuKqurHf

--HG--
extra : rebase_source : 2a77db937d09f98b81dd73e61419ebde82a3ad48
2016-09-08 15:38:06 +08:00
Ting-Yu Lin 13f0d4632f Bug 1299753 Part 2 - Create block formatting context for DetailsFrame if needed. r=bz
nsCSSFrameConstructor::ConstructNonScrollableBlock() has logic to
determine whether to create a block formatting context for a block
frame. I refactor the function to make it reusable by
nsCSSFrameConstructor::ConstructDetailsFrame().

Also, make NS_NewBlockFrame() accept two arguments as other frame
factory functions so that it could be pointed by BlockFrameCreationFunc.
NS_NewBlockFormattingContext is changed accordingly.

The construction for a scrollable DetailsFrame will be further revised
in Part 3.

MozReview-Commit-ID: 8TwG9YMyGva

--HG--
extra : rebase_source : fffdd974df81a809a607491d2534aa8dd2d13ab1
2016-09-07 14:45:42 +08:00
Ting-Yu Lin c719ccc151 Bug 1299753 Part 1 - Use NS_NewBlockFormattingContext() in ConstructFieldSetFrame(). r=bz
MozReview-Commit-ID: E6lvCRIDROY

--HG--
extra : rebase_source : 52f59f6db123e47c1230dc19c49d2dbf7c6cb0d6
2016-09-05 15:36:53 +08:00
J. Ryan Stinnett b7ca8b1d80 Bug 1301514 - Destroy browser API frame scripts during swap. r=kanru
When swapping content from <iframe mozbrowser> to <xul:browser>, we now stop the
frame scripts that implement the content side of the browser API since they are
no longer needed and can cause issues if they remain active.

MozReview-Commit-ID: JrecxA4MI93

--HG--
extra : rebase_source : cc68b975c7d82035410a647ff66eab130055ed04
2016-09-08 16:00:12 -05:00
J. Ryan Stinnett bcefcd65fe Bug 1301514 - Clarify ownership of BrowserElementIsReady. r=kanru
It wasn't immediately obvious to me that BrowserElementIsReady was correctly
guarding against re-running the browser element scripts in a frame.  After more
testing, it was working, but I've added some debug lines for future clarity.
No functionality changes in this patch.

MozReview-Commit-ID: CW4o2TsGKmj

--HG--
extra : rebase_source : 62ec06d4b75f90b3478e403906efaa2f3c3658e2
2016-09-07 17:45:13 -05:00
Alastor Wu e9a55e8604 Bug 1290467 - part10 : update audio focus related control operations. r=sebastian
Except controlling audio focus from gecko, the MediaControlService can also
decide whether needs to request or abandon audio focus.

MozReview-Commit-ID: G3iSYwd24JZ

--HG--
extra : rebase_source : dd29207d8c08176cd7a57f08d3361e4f29c4095a
2016-09-09 09:51:12 +08:00
Alastor Wu ff8012b391 Bug 1290467 - part9 : remove 'ACTION_REMOVE_CONTROL'. r=sebastian
Remove 'ACTION_REMOVE_CONTROL' because it's as same as 'ACTION_STOP'.

MozReview-Commit-ID: 6KOj8srEuJA

--HG--
extra : rebase_source : 3b92e0f3d6485af4e9be97b1423804401b1496c7
2016-09-09 09:51:10 +08:00
Alastor Wu b9bcdbf114 Bug 1290467 - part8 : rename 'ACTION_PLAY' to 'ACTION_RESUME'. r=sebastian
'ACTION_RESUME' should be more suit for its operation.

MozReview-Commit-ID: 4FRHaydVKu5

--HG--
extra : rebase_source : 76b405bf0b7a27f2ea7f27283230df146b71ccfc
2016-09-09 09:51:08 +08:00
Alastor Wu 48bbee4b31 Bug 1290467 - part7 : enable audio competing for non-audible media. r=baku
In general, the audio competing should only be for audible media and it helps user can focus on one media at the same time. However, we hope to treat all media as the same in the mobile device.

First reason is we have media control on fennec and we just want to control one media at once time. Second reason is to reduce the bandwidth, avoiding to play any non-audible media in background which user doesn't notice about.

MozReview-Commit-ID: yB3181cmVE

--HG--
extra : rebase_source : 0f7bc1d4e9fc3f68e2085f59eb0a313d44a1c058
2016-09-09 09:50:40 +08:00
Alastor Wu 75c540b002 Bug 1290467 - part6 : remove redudant space. r=sebastian
remove one redudant space.

MozReview-Commit-ID: 1PdKL1EALAq

--HG--
extra : rebase_source : 20ab4fd13893b7515a8baebac3df9a06af7bb550
2016-09-09 09:50:32 +08:00
Alastor Wu 97207d40a6 Bug 1290467 - part5 : change service's life time. r=sebastian
Now the life time of the MediaControlService would be as same as the Fennec app.
To make code flow more easily, requesting/abandoning the audio focus wouldn't
affect the media control.

We would mainly communicate with the media control via TabEvents.

MozReview-Commit-ID: KT59bII0HuN

--HG--
extra : rebase_source : d8f2c810f24ef6ea72a274db2b432ca8f8876d8e
2016-09-09 09:50:30 +08:00
Alastor Wu 5c5e340476 Bug 1290467 - part4 : create helper function. r=sebastian
wrap some code into initialize() and shutdown().

MozReview-Commit-ID: AiyABlyDEME

--HG--
extra : rebase_source : e13f4d1eef46207edd9d8d8cc956c2644f3b1e38
2016-09-09 09:50:28 +08:00
Alastor Wu 8b77ea4d53 Bug 1290467 - part3 : notify MediaControlService with event 'MEDIA_PLAYING_CHANGE'. r=sebastian
The 'MEDIA_PLAYING_CHANGE' is used for controling media control interface and
the 'AUDIO_PLAYING_CHANGE' is used for showing the tab sound indicator.

MozReview-Commit-ID: 8hZjC77Ju71

--HG--
extra : rebase_source : 3699ea482e89a5c2535defce8ca2689a180d5c49
2016-09-09 09:50:25 +08:00
Alastor Wu 9069f0f0d5 Bug 1290467 - part2 : request audio focus for any media instead of audible one. r=snorp
Previous design is only to request audio focus for audible media, but now we
also request focus for non-audible media.

It's simple that the app should own the focus when users start watching media.

MozReview-Commit-ID: 3eJP26h4kh7

--HG--
extra : rebase_source : b35c4ef7d6560635f428eba445f089abd3844bda
2016-09-09 09:49:25 +08:00
Alastor Wu 122f712890 Bug 1290467 - part1 : dispatch 'media-playback' event. r=baku
Use 'media-playback' event to control the media control interface on Fennec.

MozReview-Commit-ID: D8SU96RrkbQ

--HG--
extra : rebase_source : 16a13e3b1a450a2949cb62b77a53311797daaaf2
2016-09-09 09:49:22 +08:00
Chris Pearce e99ce4a9c7 Bug 1294003 - Ensure we destroy DXVA2Manager on main thread if DXVA init fails. r=mattwoodrow
If initializing DXVA fails, we end up destroying the DXVA2Manager on the
decode task queue. The DXVA2Manager asserts that it's destroyed on the
main thread, so we should dispatch a task to destroy it on the appropriate
thread instead of destorying it on the wrong one.


MozReview-Commit-ID: 2pbeMOm74et

--HG--
extra : rebase_source : c4a6871877747d4e04494c638d83b225decaf249
2016-09-09 16:12:50 +12:00
Shing Lyu db11558e50 Bug 1288350 - Temporary reftest list for Stylo vs Gecko test r=heycam,manishearth
--HG--
extra : rebase_source : 4772418bd2813d4e79643a833eb09e47fe893d84
2016-09-05 11:45:39 +08:00
Gerald Squelart b94f8cfb3e Bug 1301561 - Change media.decoder.heuristic.dormant.timeout to 10000 (ms) - r=jwwang
MozReview-Commit-ID: BibXsBpjIQe

--HG--
extra : rebase_source : 7e2afca18bf8e988455d2fb3eb71866f140808e5
2016-09-09 11:00:21 +10:00
Rob Wu 7530f86ecf Bug 1298979 - move tabs.sendMessage/connect to child process r=billm
- Use the frame's message manager to direct messages via the
  ProxyMessenger to the right tab instead of directly to the tab.
- Put the implementation in a separate file that is only loaded in
  child processes (in the future).
- Explicitly list all addon-process specific files in a new category
  instead of reusing the content one.

MozReview-Commit-ID: 8oIMx9ol7Tl

--HG--
extra : rebase_source : f93805ecdf44d4607dffc20ffe1cf0cbeb8c86be
2016-08-28 20:07:46 -07:00
Rob Wu 8456c63a68 Bug 1298979 - Add test to verify that sending a message and unloading works r=billm
Checks what happens before closing a window or removing a frame:

- Tests that sendMessage/connect is received by the extension.
- Tests that any responses from the extension is not received by the
  sending script (of the closing context).

MozReview-Commit-ID: 9VwCpRmaZOO

--HG--
extra : rebase_source : f4103a10547835fec2a45086c39b3434937bcdce
2016-08-28 16:26:52 -07:00
Rob Wu 494ed12f50 Bug 1298979 - Check whether ProxyContext exists before using it r=billm
Due to asynchronicity or malice we can receive messages for unknown
ProxyContexts. Immediately reject such messages.

(this addresses https://bugzil.la/1288902#c3)

MozReview-Commit-ID: GEgkZC8CUEG

--HG--
extra : rebase_source : 21ddf9c81b0617eb103e382b2df3c4128b5d0516
2016-08-25 19:36:30 -07:00
Rob Wu dc0a47c098 Bug 1298979 - Fix LegacyExtensionContext r=aswan
LegacyExtensionContext should inherit from BaseContext instead of
ExtensionContext, because the latter is moving to a separate process.

Remove the optional `url` parameter because the context is not a frame.
`url` is assigned to `sender.url`, which should only be set for frames.
The sender is only used in extension messaging when `runtime.connect` or
`runtime.sendMessage` are used (where `sender.url` is visible at the
receiver). Since legacy extensions don't send messages, there is no
point at all in setting the `url` value.

MozReview-Commit-ID: FJboNC2SZh0

--HG--
extra : rebase_source : bbfd6670355a3b9985b03b5a203f3b0a19cdfde4
2016-09-06 01:48:58 -07:00
Rob Wu 3df8d2e80e Bug 1298979 - Add ProxyMessenger, change message managers and getSender r=billm
- Introduce a proxy for IPC messages to allow the following APIs
  to be run out-of-process (ProxyMessenger):

    * runtime.connect
    * runtime.sendMessage
    * tabs.connect
    * tabs.sendMessage
    * runtime.onConnect
    * runtime.onMessage

- Update getSender in ext-tabs, make it independent of the context
  (in particular do not throw an error when a message is received while
  the tab is gone), and move it from MessageChannel to ProxyMessenger to
  make sure that it works in webext-oop. MessageChannel lives in a child
  process, whereas the TabManager (used by getSender) requires data from
  the main process.

- Set the third parameter of `addMessageListener` to true in some places
  to make sure that messages get delivered even after unloading the
  context. This is needed for the next two points.

- Put the `messageManager` property in BaseContext, and let it be set by
  `setContentWindow` - runtime.sendMessage/connect and tabs.sendMessage/
  connect depends on this property, and using the frame message manager
  makes sense.

- Unconditionally use the frame message manager in
  runtime.sendMessage/connect instead of sometimes the cpmm.

MozReview-Commit-ID: 4QkPnlMOkjS

--HG--
extra : rebase_source : f2c753a9d396e4b5c40e46cd926024e664372002
2016-08-25 17:08:08 -07:00
Rob Wu a55fbffbab Bug 1298979 - Decouple ProxyContext from ExtensionContext r=billm
To allow ExtensionContext to be refactored, we first need to remove the
dependency of ProxyContext on ExtensionContext.

With the decoupling, we can make setContentWindow unconditional and
remove externallyVisible. Let's clean up later.

MozReview-Commit-ID: 1KmSQpxFTVK

--HG--
extra : rebase_source : 82df61e3f9eadc47b5eddcfa1570f746cb16149e
2016-08-24 23:29:29 -07:00
Rob Wu 256ca367f9 Bug 1298979 - Use MessageChannel to implement runtime.Port r=billm
- Add new responseType RESPONSE_NONE to MessageChannel to signal no
  expected reply.
- Modify Port to use MessageChannel instead of message managers.
- Include the `port` object to the disconnect event of ports because
  Chrome does it too.
- Replace use of `contentWindow` with `cloneScope` to make the Port
  independent of documents.
- Move registration of context destruction from `api()` to the
  constructor to make sure that the disconnect listener is properly
  removed if for some reason the `api` method is never called.

MozReview-Commit-ID: 9LCo5x1kEbH

--HG--
extra : rebase_source : 226bb0a3cacf5ad22c1f7695f90472a57616dbd6
2016-08-31 01:08:08 -07:00
Rob Wu f493e932a9 Bug 1298979 - Test sender equality by contextId r=kmag
`this.sender` has a tabId, `sender.tab` has a tab object.  Therefore
they are not equal, and as a result messages were sent to the same
frame. Fixed by relying on contextId, which is unique across processes
since bug 1288279.

MozReview-Commit-ID: 8jMoXiBfp6l

--HG--
extra : rebase_source : e9e32c15fb18dbcc5810d2f0076420155f0696a3
2016-09-06 04:35:35 -07:00
Rob Wu f109508c63 Bug 1298979 - Properly dispose EventManager r=billm
callbacks is not an array but a Set, and Object.freeze does not prevent
modification of the list/set. Also, merely overwriting the callback set
is not sufficient to prevent callbacks from being run after the context
is closed (`fireWithoutClone`) because the set being iterated is still
filled with callbacks. And keeping the callbacks around may keep strong
references around and hinder GC.

To fix this, the set of callbacks is cleared (which invalidates the
iterator and ends the loop), and register/unregister are nulled.

Also add an explicit check to prevent callbacks from being registered
after unloading a context.

MozReview-Commit-ID: 4i2ojkbYAX9

--HG--
extra : rebase_source : fc1dacd468f2bc06adbf660dc54b391c573b3dba
2016-08-31 01:01:42 -07:00
ctai 1d7c721cfc Bug 1300871 - Rollback to use original duration in video case. r=jesup
MozReview-Commit-ID: 2gK8vvBKtkC

--HG--
extra : rebase_source : 1e1d2f01a1f39685365a7df061eba53c094eb10d
2016-09-08 13:46:48 +08:00
Rob Wu 36a4f48491 Bug 1300883 - Use changeInfo.status instead of tab.status in browser_ext_tabs_events.js r=kmag
the tabs.onUpdated event can fire for many reasons.
I observed a test failure because a faviconUrl change triggered the
onUpdated event, which caused on-updated-dims to be sent too early.

MozReview-Commit-ID: 8YT8hSXnIoo

--HG--
extra : rebase_source : d2ce09a061c7e54f1c9bde78307831dd879dc7af
2016-09-06 13:22:11 -07:00
Jan Henning 6afa573825 Bug 1299576 - Part 2 - Cancel edit mode when restoring a recently closed tab. r=sebastian
When restoring a recently closed tab from the corresponding home panel, we normally directly switch to the freshly recreated tab. However if we've entered the home panels through editing mode (as opposed to opening a new tab with about:home), editing mode takes priority and the restored tab is opened in background instead, because we return to the originally selected tab when exiting editing mode.

To fix this inconsistency, we introduce a new parameter for opening tabs from Gecko that cancels editing mode if necessary to allow for directly switching to the new tab.

MozReview-Commit-ID: 4iqPISmtNIx

--HG--
extra : rebase_source : fab9dc911171deef1a984bd96993287d146b370a
2016-09-02 20:43:08 +02:00
Jan Henning eefcf19c49 Bug 1299576 - Part 1 - Refactor BrowserApp's handleMessage to use a switch statement. r=sebastian
So much nicer than a chain of else ifs.

MozReview-Commit-ID: FbEtD4Odet1

--HG--
extra : rebase_source : 3083434348bdfdfd2e30a5dac212a1993cf40d25
2016-09-02 19:02:16 +02:00
Cykesiopka 80c7f24081 Bug 1274135 - Replace char_ptr_cast() and uint8_t_ptr_cast() with mozilla::BitwiseCast. r=keeler,valentin
The functions aren't necessary now that we have BitwiseCast.

MozReview-Commit-ID: 2nzOuwAop4Y

--HG--
extra : rebase_source : 0cb2c16f484a81b2e77384564973b58ac2d10fb9
2016-09-08 20:46:26 +08:00
Mark Hammond 82a5360189 Bug 1301289 - send accumulated sync pings earlier in the shutdown process. r=tcsc
MozReview-Commit-ID: Ls6HeieFi1H

--HG--
extra : rebase_source : c7aec6c0744c81b971af00802ee27ae63b36e0fe
2016-09-08 15:05:11 +10:00
Alfredo.Yang 2488fefb27 Bug 1240412 - add VP9-in-MP4 support to Rust demuxer. r=rillian
MozReview-Commit-ID: 1Yq8OOV3kvM

--HG--
extra : rebase_source : d6ee4404eafef8a476767ebfd17a195f81dcf275
2016-08-29 14:37:22 +08:00
Wes Kocher 4d6a452635 Backed out changeset 09e3f293166a (bug 1301289) for xpcshell failures a=backout 2016-09-08 17:41:11 -07:00
Wes Kocher 819bc41348 Merge m-c to autoland, a=merge 2016-09-08 15:29:04 -07:00
Tooru Fujisawa 950e13cca1 Backed out changeset 8272530c90ef (bug 1276626) for bug 1284511 r=blassey a=merge
--HG--
extra : source : c0a3eb567948034fe6871a814cdad0dbb127d08e
2016-09-09 00:45:40 +09:00
Tooru Fujisawa 9356fc4a5a Backed out changeset 2872d7dca33b (bug 1284511) r=blassey a=merge
--HG--
extra : source : 4248b124b502f12f1a31179aa2703da95161091e
2016-09-09 00:45:40 +09:00
Wes Kocher b916384275 Merge inbound to m-c a=merge 2016-09-08 15:21:19 -07:00
Wes Kocher 8fbe7c895b Merge fx-team to central, a=merge 2016-09-08 15:10:55 -07:00
Carsten "Tomcat" Book e3c2ddf887 Merge mozilla-central to mozilla-inbound 2016-09-08 12:42:45 +02:00
Julian Descottes 158a9415f3 Bug 1292048 - move geometry editor icon back to its previous location;r=gl
MozReview-Commit-ID: 7tH1FVNzDoi

--HG--
extra : rebase_source : 48226fb2745974ce02232f6e74940c15518cde46
2016-09-08 12:22:30 +02:00
Carsten "Tomcat" Book f4a16a723a merge mozilla-inbound to mozilla-central a=merge 2016-09-08 12:01:17 +02:00
Carsten "Tomcat" Book 37712d149e merge fx-team to mozilla-central a=merge 2016-09-08 12:00:23 +02:00
Carsten "Tomcat" Book 7dde8b7620 merge autoland to mozilla-central a=merge 2016-09-08 11:59:31 +02:00
Carsten "Tomcat" Book 38f7eb71e0 Backed out changeset d392d81c5b9e (bug 1297585) for breaking artifact desktop builds
--HG--
extra : rebase_source : 0a2e4754b68f2fd5ed98872c4b2981b18c37aa5a
2016-09-08 11:57:29 +02:00
Arseny Malkov 56ceb6506c Bug 1295531 - Change insets of bookmark arrow to look like history arrow. r=sebastian
MozReview-Commit-ID: AVDEnNDXvXX

--HG--
extra : rebase_source : cfca38f394ae75410d2b49d08161533ebd04c1d8
2016-09-08 11:45:33 +02:00