Commit graph

3849 commits

Author SHA1 Message Date
Alan Jeffrey
722e60c9b1 Rename servosrc to servowebsrc 2019-12-11 09:47:53 -06:00
Alan Jeffrey
eae574df25 Rename the ServoSrc type to ServoGstSrc to avoid a name clash 2019-12-09 12:45:41 -06:00
Alan Jeffrey
bd1e4f87b5 Get the servosrc gstreamer plugin to use a GL buffer pool 2019-12-06 17:31:20 -06:00
Alan Jeffrey
06a10c5b65 GStreamer plugin should use GLMemory 2019-12-05 13:49:23 -06:00
Fernando Jiménez Moreno
58623a6f5b Fix libsimpleservo build after MediaSession C enums change 2019-12-05 16:35:11 +01:00
Fernando Jimenez Moreno
b01e3fdc7e Introduce CMediaSessionPlaybackState and CMediaSessionActionType 2019-12-05 15:34:34 +01:00
Fernando Jimenez Moreno
d5200ba453 Hololens - Trigger MediaSessionActions for play and pause buttons 2019-12-05 15:20:48 +01:00
bors-servo
f31a88d85d
Auto merge of #24885 - shnmorimoto:implement_mediasession_set_positon_state, r=ferjm
Implement mediasession set positon state

<!-- Please describe your changes on the following line: -->

fix #24808

> Bonus points if you want to tweak the existing UI by adding a progress bar, and the info about the current position and total duration.

I haven't implemented this yet.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #24808 (GitHub issue number if applicable)

<!-- Either: -->
- [x] There are tests for these changes OR

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
2019-12-03 12:13:06 -05:00
Shinichi Morimoto
4d215c9557 extended HostTrait with on_media_session_set_position_state 2019-12-03 23:16:43 +09:00
Shinichi Morimoto
e268193b8d fix typo 2019-12-03 07:39:04 +09:00
Simon Sapin
5bcd2f5642 Avoid locking in the signal handler 2019-11-27 21:56:39 +01:00
Simon Sapin
99804eb5a6 Only print a backtrace the first time the signal handler is called.
This avoids infinite recursion if the printing causes another signal.
2019-11-27 21:56:36 +01:00
Simon Sapin
413f499da8 Avoid allocation in the signal handler to fix a deadlock
Fixes https://github.com/servo/servo/issues/24881
CC https://github.com/rust-lang/backtrace-rs/pull/265
2019-11-27 20:35:49 +01:00
bors-servo
ea18d5f5e9
Auto merge of #24861 - asajeffrey:gstplugin-url, r=ferjm
Add url parameter to the servosrc gstreamer plugin

<!-- Please describe your changes on the following line: -->

Support a `url` parameter for the gstreamer plugin.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #24836
- [x] These changes do not require tests because adding features to a port

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
2019-11-26 19:17:22 -05:00
Alan Jeffrey
2356f3ea6b The gstreamer plugin should resize when it's presented with frames to fill, not when caps are set 2019-11-25 15:03:58 -06:00
Alan Jeffrey
82e7e457e7 Add url parameter to the servosrc gstreamer plugin 2019-11-25 13:27:36 -06:00
Alan Jeffrey
69acec137d Add a gstreamer servosrc plugin 2019-11-25 10:12:05 -06:00
Tuncer Ayaz
01a99b5cbe Make gstreamer(-sys) optional 2019-11-21 20:08:03 +00:00
Tuncer Ayaz
c7ac4bbb19 simpleservo: add media-{dummy,gstreamer} features 2019-11-21 20:08:02 +00:00
Alan Jeffrey
4e3f164f7b Allow mach build to explicitly set the media stack
You can select the media backend by building as follows:

$ ./mach build -d --media-stack=dummy
or
$ ./mach build -d --media-stack=gstreamer
2019-11-21 20:08:01 +00:00
Fernando Jimenez Moreno
9f77ea1165 Mach fmt, this time including C++ files 2019-11-20 13:40:21 +01:00
Fernando Jiménez Moreno
6dcdfefd72 Fix simpleservo build 2019-11-20 13:34:54 +01:00
Fernando Jiménez Moreno
35c4c35416 Fix metadata update 2019-11-20 13:34:31 +01:00
Fernando Jiménez Moreno
b048d7faf7 Fix media session action handling 2019-11-20 13:34:29 +01:00
Fernando Jiménez Moreno
68baabba63 Format code and fix rebase errors 2019-11-20 13:33:51 +01:00
Fernando Jiménez Moreno
08f9f17ed3 Send MediaSessionAction from Android 2019-11-20 13:33:51 +01:00
Fernando Jiménez Moreno
dd63ba425f MediaSession show media controls on Android 2019-11-20 13:33:15 +01:00
Fernando Jiménez Moreno
3f6569447d MediaSession Android bits 2019-11-20 13:33:15 +01:00
Fernando Jiménez Moreno
7ca74d598c MediaSession: refactor embedder API. Fix Android build 2019-11-20 13:33:15 +01:00
Fernando Jiménez Moreno
89d9e3ad78 Introduce embedder MediaSessionEvent and move active session to Servo 2019-11-20 13:33:15 +01:00
Fernando Jiménez Moreno
4d147d2c56 Register media instance with session and prepare communication with embedder 2019-11-20 13:33:14 +01:00
Fernando Jiménez Moreno
9c329a7935 Add embedder message to (de)activate media session 2019-11-20 13:32:38 +01:00
Fernando Jiménez Moreno
fd040b0a55 Extend libsimpleservo API with a callback for media session activation 2019-11-20 13:32:38 +01:00
Fernando Jiménez Moreno
d7d775ac60 Extend libsimpleservo API with a method to request a media session action 2019-11-20 13:32:38 +01:00
Josh Matthews
5c08378595 glutin: Support WASD for translating positing in webxr content. 2019-11-19 14:33:09 -05:00
Josh Matthews
68b832db27 glutin: Use existing routines for rounding physical/logical sizes. 2019-11-19 14:32:31 -05:00
Alan Jeffrey
124de75089 Avoid recompiling script every time surfman changes 2019-11-18 09:40:58 -06:00
bors-servo
9a518cf797
Auto merge of #24677 - jdm:iframe-sizing-cleanup, r=asajeffrey
Ensure all iframes are sized correctly at creation

Following in the path of #22395, these commits serve several purposes:
* prevent layout instability early during iframe loads caused by a succession of resize events
* reduce the complexity of determining what actual DPI and initial window size values are being used at startup
* ensure that all documents have a correct initial viewport size at creation

These changes fix problems that were exposed by the changes in #24462 but are independent of that PR.

---
- [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
2019-11-07 07:40:29 -05:00
bors-servo
a33d493a4f
Auto merge of #24672 - paulrouget:24400, r=jdm
Print an error if Glutin port needs to manage a new tab

When a tab needs to be created because the user clicks on a link with a `target=…` attribute, the Glutin port just ignores it, creating weird behaviors.

We should at least print an error.
2019-11-07 02:38:26 -05:00
Josh Matthews
7c365b0324 Centralize definitions of window sizes and DPI in compositor/constellation during startup. 2019-11-06 16:13:55 -05:00
Paul Rouget
d779573fe0 Print an error if Glutin port needs to manage a new tab 2019-11-06 12:06:47 +01:00
Paul Rouget
1c3da95b70 do not rely on UWP URL parser 2019-11-06 07:38:19 +01:00
Patrick Walton
a358bca766 Use surfman for managing GL surfaces
Co-authored-by: Alan Jeffrey <ajeffrey@mozilla.com>
Co-authored-by: Zakor Gyula <gyula.zakor@h-lab.eu>
Co-authored-by: Josh Matthews <josh@joshmatthews.net>
2019-11-01 08:47:11 -05:00
Paul Rouget
112221f046 UWP: More mouse events 2019-11-01 06:28:14 +01:00
bors-servo
571dc127a2
Auto merge of #24547 - paulrouget:click, r=jdm
UWP: better mouse interaction support
2019-10-29 13:46:53 -04:00
Paul Rouget
f2f8223cf1 UWP: better mouse interaction support 2019-10-29 07:35:50 +01:00
Fernando Jimenez Moreno
e1b6719384 Allow setting Visual Studio logger level from cli arg 2019-10-28 17:29:20 +01:00
glowe
0ee300479e Extract device_pixels_per_px from global opts
This is also an embedder specific option, so removing it from the
global options makes sense.
2019-10-26 12:00:14 -04:00
glowe
74f1e2ec32 Extract 3 more embedder options
Extracted clean-shutdown, msaa, and no-native-titlebar embedder
specific options out from the global options.

Partially fixes #23009
2019-10-26 11:34:36 -04:00
glowe
6eca38aea3 Make angle and disable-vsync embedder options
The angle and disable-vsync options were declared as global options but
only used in the Glutin embedding for desktop builds. Moving them to
the Glutin embedding code makes them easier to update.

Partially fixes #23009
2019-10-26 11:29:49 -04:00