Commit graph

39528 commits

Author SHA1 Message Date
bors-servo
7ba88e8237
Auto merge of #24626 - glowe:issue-21810/improve-validation-methods, r=jdm
Issue 21810/improve validation methods

<!-- Please describe your changes on the following line: -->
This is a start at addressing #21810. I'm putting these changes out early to get some feedback on the following items:

1. I added unit tests for the validation methods mentioned in #21810, because I couldn't tell whether any of the existing WPT tests covered them. Are these tests worthwhile? Are any of them unnecessary?
2. I changed the implementation for `is_valid_floating_point_number_string` so that it passed the tests. The previous version of the function wasn't restrictive enough (it allowed certain whitespace characters before the number string).
3. I changed the catch-all condition in `htmlinputelement.rs` to account for the remaining input types that don't have a value sanitization algorithm. This last change seems good to me since we won't be able to add a new input type without adding it to the case and checking the spec for an algorithm.
---
<!-- 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 #21810

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

<!-- 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 13:11:22 -05: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
41ff93eca2 extended android jni with onMediaSessionSetPositionState 2019-12-03 23:16:43 +09:00
Shinichi Morimoto
4d215c9557 extended HostTrait with on_media_session_set_position_state 2019-12-03 23:16:43 +09:00
bors-servo
54d88fd042
Auto merge of #25032 - servo-wpt-sync:wpt_update_03-12-2019, r=servo-wpt-sync
Sync WPT with upstream (03-12-2019)

Automated downstream sync of changes from upstream as of 03-12-2019.
[no-wpt-sync]
r? @servo-wpt-sync
2019-12-03 09:09:18 -05:00
WPT Sync Bot
3214f9ea94 Update web-platform-tests to revision 0317e9a8591851f97d59c9de28c46ea1c2a25f88 2019-12-03 14:09:06 +00:00
bors-servo
7aa68c8fe7
Auto merge of #25025 - Manishearth:originOffset, r=jdm
Origin offset fixes

https://github.com/immersive-web/webxr/issues/567 was closed out. We were computing offset spaces of already-offset spaces incorrectly, but otherwise our math is correct. I improved our comments around this with more math, so I never have to do this math again.

Chrome's math isn't, which is why we fail some tests around this: https://bugs.chromium.org/p/chromium/issues/detail?id=1030049 . I'm planning to wait for them to fix and upstream the tests, I've already verified that we pass the corrected test.

r? @jdm
2019-12-03 00:11:14 -05:00
glowe
b9ec6f99cd Remove redundant domstring unit test
This test is no longer necessary since the cases tested are also tested
by the number input web platform test.
2019-12-02 22:52:02 -05:00
glowe
b8a8c2b9bf Enhance wpt for number input
Add cases for all leading ASCII whitespace characters.
2019-12-02 22:50:13 -05:00
Manish Goregaokar
ba3689ee4f Origin offset fixes 2019-12-02 17:11:05 -08:00
bors-servo
87c1019c5d
Auto merge of #24940 - Eijebong:trim-header, r=jdm
Trim header values in GetResponseHeader

Fixes #24917
2019-12-02 17:47:24 -05:00
Shinichi Morimoto
e268193b8d fix typo 2019-12-03 07:39:04 +09:00
Shinichi Morimoto
8bdee36bb8 extended MediaSessionEvent with SetPositionState 2019-12-03 07:39:04 +09:00
Shinichi Morimoto
3e83b0bd25 updated tests for mediasession 2019-12-03 07:39:04 +09:00
Shinichi Morimoto
274d4d2303 implement MediaSession.setPositionState method 2019-12-03 07:39:03 +09:00
bors-servo
ae0b086ea8
Auto merge of #24986 - servo-wpt-sync:wpt_update_02-12-2019, r=servo-wpt-sync
Sync WPT with upstream (02-12-2019)

Automated downstream sync of changes from upstream as of 02-12-2019.
[no-wpt-sync]
r? @servo-wpt-sync
2019-12-02 11:55:32 -05:00
bors-servo
8c14802dda
Auto merge of #24987 - servo:warn2020, r=nox
Un-allow and fix warnings in `components/layout_2020`
2019-12-02 10:34:49 -05:00
Simon Sapin
aa925a5984 Un-allow and fix warnings in components/layout_2020 2019-12-02 16:32:34 +01:00
WPT Sync Bot
d02774e688 Update web-platform-tests to revision ff11f93316527e37ec580adca01a9cf0a58a297e 2019-12-02 14:41:01 +00:00
bors-servo
6cd42bdcfb
Auto merge of #24980 - servo-wpt-sync:wpt_update_01-12-2019, r=servo-wpt-sync
Sync WPT with upstream (01-12-2019)

Automated downstream sync of changes from upstream as of 01-12-2019.
[no-wpt-sync]
r? @servo-wpt-sync
2019-12-02 01:07:08 -05:00
bors-servo
40fd7910a5
Auto merge of #24928 - servo:2020-images, r=SimonSapin
Start supporting images in layout 2020
2019-12-01 09:53:45 -05:00
WPT Sync Bot
f170d55d3e Update web-platform-tests to revision 5df56b25e1cb81f81fe16c88be839f9fd538b41e 2019-12-01 14:26:32 +00:00
Anthony Ramine
5a360ac63d Start supporting images in layout 2020 2019-12-01 10:56:33 +01:00
Anthony Ramine
f24e8d0557 Fix inline margins of in flow blocks in 2020 2019-12-01 10:52:34 +01:00
Anthony Ramine
48a4a82a49 Make InlineLevelBox::Atomic store an IndependentFormattingContext 2019-12-01 10:51:25 +01:00
Anthony Ramine
ecfb82260c Fix an unimplemented in layout 2020 2019-12-01 10:51:19 +01:00
glowe
576f51f598 Add DOMString floating point string test and fix
Fixes an issue where DOMString::is_valid_floating_point_number_string
was returning true for strings that began with whitespace characters-
TAB, LF, FF, or CR. Also added a unit test to cover this since the
corresponding web-platform-tests are incomplete.
2019-11-30 23:29:09 -05:00
glowe
23359c5868 Remove catch-all case for input sanitization
Replaced catch-all with explicit case for inputs that do not have
a value sanitization algorithm. This should prevent us from
forgetting to implement a sanitization for an input, since they
must all be accounted for in the match expression.
2019-11-30 21:53:53 -05:00
bors-servo
1dd6ad7063
Auto merge of #24978 - emilio:gecko-sync, r=emilio
style: Sync changes from mozilla-central.

See individual commits for details.
2019-11-30 16:11:15 -05:00
Emilio Cobos Álvarez
6712e316df
style: Update wpt expectations.
transform-scale-percent-001.html has been updated upstream, as the test is
invalid per CSSWG resolution.
2019-11-30 22:09:59 +01:00
Emilio Cobos Álvarez
226c9807df
style: Fix servo build. 2019-11-30 20:45:08 +01:00
Emilio Cobos Álvarez
85da1dda29
Remove no-longer-needed arrayvec feature. 2019-11-30 20:45:07 +01:00
Emilio Cobos Álvarez
006417e40a
style: Rustfmt recent changes. 2019-11-30 20:45:07 +01:00
Emilio Cobos Álvarez
59eef57eb7
style: Undo minor debugging change. 2019-11-30 20:45:07 +01:00
Emilio Cobos Álvarez
f8e924f86a
style: Don't specify minor version for cssparser. 2019-11-30 20:45:06 +01:00
Emilio Cobos Álvarez
31837a1efa
style: Make Rust static atoms able to be used in const contexts.
I see atom dropping code generated in release builds for stuff like dropping the
"class" atom here:

https://searchfox.org/mozilla-central/rev/4df8821c1b824db5f40f381f48432f219d99ae36/servo/components/style/gecko/wrapper.rs#592

That is silly, and I hope making Atom be able to be used in const context will
help the compiler see that yeah, we're not doing anything interesting and the
atom shouldn't get dropped.

It also allows us to get rid of a few lazy_static!s, so we should do it anyway.

In order to accomplish this, compute the offset into gGkAtoms manually instead
of going through the static_atoms() array and then back to the byte offset.

Differential Revision: https://phabricator.services.mozilla.com/D55039
2019-11-30 20:45:06 +01:00
enordin
001c511f9c
style: Have scale function and scale property accept percentage value.
Differential Revision: https://phabricator.services.mozilla.com/D55012
2019-11-30 20:45:06 +01:00
Emilio Cobos Álvarez
d06212c6c0
style: Fix Servo_IsCssPropertyRecordedInUseCounter so that we also report disabled properties.
When zoom is disabled, we still count it, but with the current code the testing
function will throw instead of returning the right value, which means we'd fail
layout/style/test/test_use_counters.html.

Differential Revision: https://phabricator.services.mozilla.com/D55005
2019-11-30 20:45:06 +01:00
jeffin143
22509ac3d0
style: convert NS_STYLE_TEXT_ORIENTATION_* to an enum class in nsStyleConsts.h
Differential Revision: https://phabricator.services.mozilla.com/D54252
2019-11-30 20:45:05 +01:00
Emilio Cobos Álvarez
d9aa0571e3
style: Simplify some code now that lifetimes are non-lexical.
Differential Revision: https://phabricator.services.mozilla.com/D54529
2019-11-30 20:45:05 +01:00
jeffin143
1ef7c2f96b
style: convert NS_STYLE_WINDOW_SHADOW_* to an enum class in nsStyleConsts.h
Differential Revision: https://phabricator.services.mozilla.com/D53920
2019-11-30 20:45:05 +01:00
jeffin143
f777c17f3f
style: convert NS_STYLE_OBJECT_FIT_* to an enum class in nsStyleConsts.h
Differential Revision: https://phabricator.services.mozilla.com/D54153
2019-11-30 20:45:05 +01:00
jeffin143
aa1ad6036d
style: convert NS_STYLE_IME_MODE_* to an enum class in nsStyleConsts.h
Differential Revision: https://phabricator.services.mozilla.com/D54255
2019-11-30 20:45:04 +01:00
Mats Palmgren
4359b3bd47
style: Make 'grid-area'/'grid-column'/'grid-row' shorthands serialize to shortest possible form.
Differential Revision: https://phabricator.services.mozilla.com/D54386
2019-11-30 20:45:04 +01:00
Mats Palmgren
70ec6ffe36
style: Make some grid/grid-template values serialize to a shorter form.
Differential Revision: https://phabricator.services.mozilla.com/D53913
2019-11-30 20:45:04 +01:00
Mats Palmgren
014c41f54a
style: Don't accept two trailing <line-names> in the grid/grid-template shorthands.
Differential Revision: https://phabricator.services.mozilla.com/D53909
2019-11-30 20:45:03 +01:00
Boris Chiou
5582de5d7e
style: Add a preference for offset-path:ray().
Differential Revision: https://phabricator.services.mozilla.com/D53110
2019-11-30 20:45:03 +01:00
Emilio Cobos Álvarez
f8ceb5cb84
style: Invalidate parts in nested shadow trees correctly.
Differential Revision: https://phabricator.services.mozilla.com/D54010
2019-11-30 20:45:03 +01:00
Emilio Cobos Álvarez
e3009a4de9
style: Implement shadow part forwarding (minus invalidation).
Some of the stuff, in particular inside GeckoBindings stuff should be
refactored to be less ugly and duplicate a bit less code, but the rest of the
code should be landable as is.

Some invalidation changes are already needed because we weren't matching with
the right shadow host during invalidation (which made existing ::part() tests
fail).

Pending invalidation work:

 * Making exportparts work right on the snapshots.
 * Invalidating parts from descendant hosts.

They're not very hard but I need to think how to best implement it:

 * Maybe get rid of ShadowRoot::mParts and just walk DOM descendants in the
   Shadow DOM.

 * Maybe implement a ElementHasExportPartsAttr much like HasPartAttr and use
   that to keep the list of elements.

 * Maybe invalidate :host and ::part() together in here[1]

 * Maybe something else.

Opinions?

[1]: https://searchfox.org/mozilla-central/rev/131338e5017bc0283d86fb73844407b9a2155c98/servo/components/style/invalidation/element/invalidator.rs#561

Differential Revision: https://phabricator.services.mozilla.com/D53730
2019-11-30 20:45:03 +01:00
jeffin143
576883d538
style: convert NS_STYLE_TEXT_ANCHOR_* to an enum class in nsStyleConsts.h
Differential Revision: https://phabricator.services.mozilla.com/D53956
2019-11-30 20:45:02 +01:00