Fernando Jiménez Moreno
1c92240310
Fix HAVE_METADATA and HAVE_CURRENT_DATA state transitions
2018-10-08 16:12:03 +02:00
Fernando Jiménez Moreno
dba61ad1df
Do not set metadata until we have enough data
2018-10-08 16:12:03 +02:00
Fernando Jiménez Moreno
5bbd09769c
Set input size
2018-10-08 16:12:03 +02:00
Fernando Jiménez Moreno
50582f1548
Rustfmt and make tidy happy
2018-10-08 16:12:03 +02:00
Fernando Jiménez Moreno
f4ba7e503b
Media element duration param
2018-10-08 16:12:03 +02:00
Fernando Jiménez Moreno
6904535865
videoWidth and videoHeight params
2018-10-08 16:12:02 +02:00
Fernando Jiménez Moreno
da0e92d7f8
Cancel fetch in some media data processing steps
2018-10-08 16:12:02 +02:00
Fernando Jiménez Moreno
b656ae195f
Player pause
2018-10-08 16:12:02 +02:00
Fernando Jiménez Moreno
8fd9b72eb7
Add show poster flag
2018-10-08 16:12:02 +02:00
Fernando Jimenez Moreno
468c59a217
Abort in-progress fetching process during load algorithm
2018-10-08 16:12:02 +02:00
Fernando Jiménez Moreno
c1bd551b11
Clarify some FIXMEs and bail out if we fail pushing data to player
2018-10-08 16:12:02 +02:00
Fernando Jiménez Moreno
3fbeb398d4
Revert import style format
2018-10-08 16:12:02 +02:00
Fernando Jiménez Moreno
72b1df343e
Move unsafe_no_jsmanaged_fields to trace
2018-10-08 16:12:01 +02:00
Fernando Jiménez Moreno
8c40ef459b
Do not share entire FrameRenderer with layout, only current frame
2018-10-08 16:12:01 +02:00
Fernando Jiménez Moreno
1f406ef0a0
Player does not need to go inside a mutexed Arc
2018-10-08 16:12:01 +02:00
Víctor Manuel Jáquez Leal
da5d1d462f
dom: add media_data() method to LayoutDom implementation
2018-10-08 16:12:00 +02:00
Víctor Manuel Jáquez Leal
74a9edfed3
dom: media: implement LayoutHTMLMediaElementHelpers trait for LayoutDom
2018-10-08 16:12:00 +02:00
Víctor Manuel Jáquez Leal
524750f41f
dom: framerenderer: implement HTMLMediaFrameSource trait for MediaFrameRenderer
2018-10-08 16:12:00 +02:00
Víctor Manuel Jáquez Leal
6e3c2fe41a
dom: add mediaframewebrenderer
2018-10-08 16:11:59 +02:00
Víctor Manuel Jáquez Leal
781b3b712b
Provide webrender_api::RenderApiSender to ScriptThread and DOM Window
...
This will allow the HTMLMediaElement later to get a handle to the
RenderApi for rendering video frames.
At a later time, all media handling should be moved to its own
thread/process that is communicated with via IPC. At that point this
can be removed again.
Original-patch-by: Sebastian Dröge <sebastian@centricular.com>
2018-10-08 16:11:59 +02:00
Víctor Manuel Jáquez Leal
77c7eda0bf
HACK: don't call media_source_failure_steps when eos
...
Because gstreamer's appsrc queue might be big enough to swallow
the whole video holding the metadata extraction until EOS.
2018-10-08 16:11:59 +02:00
Víctor Manuel Jáquez Leal
ce76b5780a
dom: htmlmediaelement: add initial player bits
...
Also removes the usage of audio-video-metadata crate (?)
2018-10-08 16:11:59 +02:00
Víctor Manuel Jáquez Leal
0ff9ecc18a
add a fixme message of not implemented mode
2018-10-08 16:11:59 +02:00
Víctor Manuel Jáquez Leal
c8bc9c8740
htmlmediaelement: typo
2018-10-08 16:11:59 +02:00
Anthony Ramine
05ef233097
Add a couple of bug links
2018-10-08 13:13:24 +02:00
Anthony Ramine
551c405b0f
Avoid ctx.getImageData in canvas.toDataURL
2018-10-08 12:19:10 +02:00
Anthony Ramine
77c28bdfc9
Abstract some stuff common to ctx.getImageData and ctx.putImageData
2018-10-08 11:39:09 +02:00
Pyfisch
0ccaa7e1a9
Use keyboard-types crate
...
Have embedders send DOM keys to servo and use a strongly typed KeyboardEvent
from the W3C UI Events spec. All keyboard handling now uses the new types.
Introduce a ShortcutMatcher to recognize key bindings. Shortcuts are now
recognized in a uniform way.
Updated the winit port.
Updated webdriver integration.
part of #20331
2018-10-07 22:39:00 +02:00
Anthony Ramine
e62dbabb46
Handle some transparent black cases in ctx.getImageData
2018-10-07 02:52:06 +02:00
Anthony Ramine
241dba064d
Align ctx.createImageData and ctx.getImageData with the spec
2018-10-06 11:41:48 +02:00
Anthony Ramine
75e6f5dfaa
Avoid copying pixels in ctx.putImageData sometimes
2018-10-06 02:59:25 +02:00
Anthony Ramine
19f40cdf0b
Introduce ImageData::get_rect
...
We use that to send only the pixels that will be actually drawn to the
canvas thread in CanvasRenderingContext2d::PutImageData.
We also make the canvas thread byte swap and premultiply colours in-place.
2018-10-06 01:12:05 +02:00
Anthony Ramine
784fbb2bc1
Merge some byte swap/premultiply functions in their own crate
2018-10-06 01:11:55 +02:00
bors-servo
987e376ca7
Auto merge of #21868 - servo:webgl, r=jdm
...
Improve ctx.putImageData
<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg " height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/21868 )
<!-- Reviewable:end -->
2018-10-05 11:09:46 -04:00
Anthony Ramine
82c7d71811
Improve gl.putImageData
...
This commit should allow us to send smaller blobs to the canvas thread,
I made it into its own commit just to try=wpt.
2018-10-05 17:07:58 +02:00
Anthony Ramine
3d910feb3a
Align canvas.putImageData with spec
...
The arguments are supposed to be long values, not floats.
2018-10-05 17:07:56 +02:00
Simon Sapin
a846ed1654
Upgrade to rustc 1.31.0-nightly (8c4ad4e9e 2018-10-04)
...
CC https://github.com/rust-lang/rust/issues/54846
2018-10-05 15:06:29 +02:00
Anthony Ramine
62ea3c093a
Move canvas.putImageData checks to the DOM side
2018-10-05 00:35:39 +02:00
Anthony Ramine
5efbeea61c
Reindent the WebGL 2 case of canvas.toDataURL
2018-10-03 10:44:36 +02:00
Anthony Ramine
cfd446218b
Slightly clean up the final URL creation in canvas.toDataURL
2018-10-03 10:43:41 +02:00
Simon Pieters
9b74f0af24
Remove the HTMLTable{Header,Data}CellElement interfaces
...
Fixes #17222 .
2018-10-02 19:23:02 +02:00
Anthony Ramine
a3392610c3
Make HTMLCanvasElement::get_size return a Size2D<u32>
...
The changes keep trickling down.
2018-10-02 14:21:06 +02:00
Anthony Ramine
b8dbf2dddd
Implement JSTraceable for Size2D<u32>
2018-10-02 14:21:06 +02:00
Anthony Ramine
435d4d9f25
Implement JSTraceable for (A, B, C, D) instead of (T, T, T, T)
2018-10-02 14:21:06 +02:00
Josh Matthews
06bca43aee
script: Optionally store backtraces when throwing DOM exceptions.
2018-10-01 16:04:56 +02:00
Josh Matthews
5dc80dd07a
webgl: Add feature to store backtraces for each WebGL API call for easier debugging.
2018-10-01 10:43:13 +02:00
bors-servo
9ee8890a72
Auto merge of #21506 - ferjm:webaudio.wpts, r=Manishearth
...
Fix some WebAudio WPTs
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] There are tests for these changes
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg " height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/21506 )
<!-- Reviewable:end -->
2018-09-25 13:21:37 -04:00
bors-servo
81fe52bd9a
Auto merge of #21757 - ferjm:offlineaudiocontext.constructor, r=jdm
...
Check constraints in both overloaded OfflineAudioContext constructors
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] There are WPTs tests for these changes and this should fix the remaining OfflineAudioContext failures.
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg " height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/21757 )
<!-- Reviewable:end -->
2018-09-25 12:02:36 -04:00
Fernando Jiménez Moreno
bc6586a9d0
Throw if time given to AudioScheduledSourceNode.stop is negative
2018-09-25 17:16:17 +02:00
Fernando Jiménez Moreno
bbc3565900
Use buffer_set flag for AudioBufferSourceNode buffer setter
2018-09-25 17:16:17 +02:00