Flash currently has a bug that trips an ASSERT in debug builds when async painting incorrectly finalizes the currently active surface. This is related to their fix for bug 1306698. We are removing this assertion so that plugin work can proceed with debug builds.
- I have refactored the Oculus and OpenVR interfaces in gfx/vr
so that initialization of the VR libraries only happens once
a WebVR site is detected.
- The Oculus interface has been cleaned up and updated to unload the Oculus
runtime library when not in use.
- The browser can now re-connect to Oculus home if it was restarted, without
restarting the browser.
- We no longer submit a black frame at the end of VR presentation, as this
appears to be handled by the latest Oculus runtime automatically.
- As we only hold on to the Oculus runtime when needed, this should
reduce the likelihood of the GPU process being killed by the Oculus
software updater.
MozReview-Commit-ID: AyWeD4CxXLD
--HG--
extra : rebase_source : 9eae07ef30b1a7559b5fe80e6698c248a55b970e
By ISOBMFF spec, an init segment is made of an ftyp and a moov box. However the ftyp box serve little purpose as such and only the moov atom contains essential information.
Some streams incorrectly add ftyp box all accross the content, despite the ISOBMFF spec stating (4.3.1):
Box Type: `ftyp’
Container: File
Mandatory: Yes
Quantity: Exactly one (but see below)
Additionally, with this change the ftyp box may not be present in content following earlier spec. So we will now be able to play them.
MozReview-Commit-ID: KijlV5pPLby
--HG--
extra : rebase_source : c5d5ec643879b28b3fdf1b97364d856467ba5948
The init and media segment byte ranges were not offset by the amount of bytes currently parsed. Whenever a new init segment signature was seen we would recreate a container parser.
This would lead to invalid offsets later.
MozReview-Commit-ID: 8U7kTa7SK8O
--HG--
extra : rebase_source : 6b6e665e01db2685a423558b2d09ce36b9052974
This separates out the index and object arrays in order to make the size
calculations clearer. More modern containers are used to make memory management
simpler.
MozReview-Commit-ID: 2Jmpq7caY3J
Extract a `CSSPageRule` base class from the existing Gecko `nsCSSPageRule`
class. This will be used in the next commit as the parent of a new
`ServoPageRule` for the Servo variant.
MozReview-Commit-ID: 1F3FWfVKH29
--HG--
extra : rebase_source : 5186cf2e233f3a757676a0127752faa8cc748cd4
This piggybacks the sync message on the pre-existing
EnsureLayersConnected sync message pathway to the compositor.
MozReview-Commit-ID: DfYTlJrr3Gu
--HG--
extra : rebase_source : c2bd29e655db65e3016a79bf3f6068ffb1c8b7c7
The goal of this patch is to remove the call to the sync IPC
GetCompositorOptions message from TabChild::InitRenderingState. In order
to this, we have InitRenderingState take the CompositorOptions as an
argument instead, and propagate that backwards through the call sites.
Eventually we can propagate it back to a set of already-sync IPC
messages in PCompositorBridge that are used during layers id
registration (NotifyChildCreated, NotifyChildRecreated, etc.). Therefore
this patch effectively piggybacks the CompositorOptions sync IPC onto
these pre-existing sync IPC messages.
The one exception is when we propagate it back to the AdoptChild call.
If this message were sync we could just use it like the others and have
it return a CompositorOptions. However, it is async, so instead we add
another call to GetCompositorOptions here temporarily. This will be
removed in the next patch.
MozReview-Commit-ID: AtdYOuXmHu4
--HG--
extra : rebase_source : 5b80831cf84d3a4b57b2214a12ccf8a896cfa3a7