Commit graph

33454 commits

Author SHA1 Message Date
Simon Sapin
1f8d04b8e1 egl-configs: print hex too 2018-07-02 13:25:44 +02:00
Simon Sapin
7e7316e766 egl-configs: print all config attributes 2018-07-02 13:25:44 +02:00
Simon Sapin
89f6c6dbf0 egl-configs: get the number of configs 2018-07-02 13:25:44 +02:00
Simon Sapin
90ba22b8d2 egl-configs: link to EGL and generate bindings 2018-07-02 13:25:44 +02:00
Simon Sapin
eab971cba1 Android cross-compiled command line hello world
`cargo run` Just Works®
2018-07-02 13:25:44 +02:00
Simon Sapin
4cbf3dea05 mach {package,install} --android: add --emulator and --usb 2018-07-02 13:25:44 +02:00
Simon Sapin
fe24816d12 mach run --android: show PID 2018-07-02 13:25:44 +02:00
Simon Sapin
8889742407 mach bootstrap-android: configure and show how to start an emulator 2018-07-02 13:25:44 +02:00
Simon Sapin
1ee54ab5fb Create and Android virtual device 2018-07-02 13:25:44 +02:00
Simon Sapin
244a332976 Use more recent Android tools
The older version seems to insist on updating itself when asked to install other components.
2018-07-02 13:25:44 +02:00
Simon Sapin
56df7f4220 Install complete Android SDK (as much as on Buildbot CI) 2018-07-02 13:25:44 +02:00
Simon Sapin
510cf1a2ab boostrap: set executable bits when extracting zip files 2018-07-02 13:25:44 +02:00
Simon Sapin
b9d5f11b20 Add ./mach bootstrap-android 2018-07-02 13:25:44 +02:00
OJ Kwon
e0699492db refactor(window): get hidpi factor from winit across platform 2018-07-01 14:13:26 +02:00
OJ Kwon
679af055e2 refactor(window): update to latest winit, glutin interface 2018-07-01 14:13:26 +02:00
UK992
2bc1fc8b3b Update to glutin 0.17 and winit 0.16 2018-07-01 13:31:19 +02:00
UK992
4225cd52a8 Add window icon on X11 and Windows 2018-07-01 13:31:18 +02:00
UK992
a3767de9fe Update to glutin 0.16 and winit 0.15 2018-07-01 13:31:18 +02:00
bors-servo
c71c55e542
Auto merge of #21109 - emilio:gecko-sync, r=SimonSapin
style: sync changes from mozilla-central.

See each individual commit for details..

<!-- 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/21109)
<!-- Reviewable:end -->
2018-07-01 05:14:21 -04:00
Emilio Cobos Álvarez
36495d677f
Remove unused code for parsing a sizes attribute.
We have `SourceSizeList` in
components/style/values/specified/source_size_list.rs which does the job and is
tested via WPT in Gecko.
2018-07-01 10:53:42 +02:00
Emilio Cobos Álvarez
8e5c853fca
style: Appease tidy. 2018-07-01 01:01:46 +02:00
Emilio Cobos Álvarez
719209316c
Fix servo build. 2018-07-01 00:54:30 +02:00
Emilio Cobos Álvarez
e149059608
style: Fix build / unit tests. 2018-07-01 00:54:30 +02:00
Emilio Cobos Álvarez
fc5dbc1bae
style: Remove stray newline. 2018-07-01 00:11:08 +02:00
Emilio Cobos Álvarez
c2d21a8497
style: Serialize content properties using Servo.
Bug: 1472443
Reviewed-by: xidorn
Differential Revision: https://phabricator.services.mozilla.com/D1901
2018-07-01 00:10:46 +02:00
Emilio Cobos Álvarez
856924f167
style: Make StyleContentType an enum class.
Most of it is automated by:

  %s/eStyleContentType_/StyleContentType::/g
  %s/nsStyleContentType/StyleContentType/g

But I removed some parentheses by hand.

Bug: 1472443
Reviewed-by: xidorn
Differential Revision: https://phabricator.services.mozilla.com/D1900
2018-07-01 00:10:31 +02:00
Emilio Cobos Álvarez
28c9820dd9
style: Expose logical props in computed style.
Bug: 1116638
Reviewed-by: xidorn
Differential Revision: https://phabricator.services.mozilla.com/D1862
2018-07-01 00:10:13 +02:00
Olli Pettay
6483a89848
if ExtendedDOMSlots are used before slots, use FatSlots to have fewer allocations.
Bug: 1419661
2018-07-01 00:09:54 +02:00
Gerald Squelart
8488875a56
style: Removed layout.css.all-shorthand.enabled pref.
The 'all' shorthand has shipped a long time ago, so this pref is not needed
anymore.

Bug: 1459524
Reviewed-by: heycam
MozReview-Commit-ID: GND8qSVAfCG
2018-07-01 00:09:38 +02:00
Emilio Cobos Álvarez
e6d62b685b
style: Make :host() and ::slotted() account for the inner selector's specificity.
As resolved in https://github.com/w3c/csswg-drafts/issues/1915.

Bug: 1454165
Reviewed-by: xidorn
Differential Revision: https://phabricator.services.mozilla.com/D1849
2018-07-01 00:09:08 +02:00
Olli Pettay
8688c53f07
style: Unconditionally enable :defined in chrome.
Bug: 1471871
Reviewed-by: emilio
2018-07-01 00:08:48 +02:00
Olli Pettay
b68e4c2352
style: Implement :defined pseudo-class for custom elements.
Bug: 1331334
Reviewed-by: emilio
2018-07-01 00:08:33 +02:00
Emilio Cobos Álvarez
06fa3406de
style: Put offset-* aliases behind a pref.
Bug: 1464782
Reviewed-by: xidorn
MozReview-Commit-ID: Hl6Muim3wVH
2018-07-01 00:08:20 +02:00
Emilio Cobos Álvarez
65953fb158
style: Rename offset-* logical properties to inset-*.
Bug: 1464782
Reviewed-by: xidorn
MozReview-Commit-ID: BW44sru99RF
2018-07-01 00:08:09 +02:00
Xidorn Quan
ce0496e116
style: Generate ComputedStyleMap entry list from property data.
This changes the order of properties returned from gCS. The old order
doesn't make much sense, and other browsers don't agree on an identical
order either, so it should be trivial to change it. Also the spec isn't
super clear / useful in this case.

Several -moz-prefixed properties are excluded from the list due to their
being internal. I suspect they are never accessible anyway, so probably
nothing gets changed by this.

Bug: 1471114
Reviewed-by: xidorn
MozReview-Commit-ID: 9LfangjpJ3P
2018-07-01 00:07:50 +02:00
Xidorn Quan
9d1ae1840f
style: Upgrade cssparser.
Bug: 1471104
MozReview-Commit-ID: 74rBgkJEcYd
2018-07-01 00:07:36 +02:00
Xidorn Quan
26a9c9f53c
style: Remove location from preludes and take it from argument.
Bug: 1471104
Reviewed-by: emilio
MozReview-Commit-ID: HeJUQvkacaf
2018-07-01 00:07:20 +02:00
Xidorn Quan
0d0c6bd29e
style: Use RUSTFMT env in stylo build script.
Bug: 1471486
Reviewed-by: emilio
MozReview-Commit-ID: JOg0xkmG5Yx
2018-07-01 00:07:01 +02:00
Emilio Cobos Álvarez
07456bbd3d
style: Simplify selector serialization.
Bug: 1471063
Reviewed-by: xidorn
MozReview-Commit-ID: 959U7yd5W9j
2018-07-01 00:06:48 +02:00
Emilio Cobos Álvarez
84280c5203
style: Deindent the serialization loop.
Bug: 1471063
Reviewed-by: xidorn
MozReview-Commit-ID: GPlUAx7YXVb
2018-07-01 00:06:35 +02:00
Emilio Cobos Álvarez
aca724ec79
style: Remove unneeded combinator check in selector-matching.
The combinator doesn't change during the loop, no need to check it.

Bug: 1471063
Reviewed-by: xidorn
MozReview-Commit-ID: KIAt0WiEOtI
2018-07-01 00:06:17 +02:00
Hiroyuki Ikezoe
2274f392d8
style: Try to allocate possible size for AnimationValueMap before composing.
The EffectSet count does not exactly represent the count what we really need
for AnimationValueMap, but in most cases it matches.  For example;

1) The element has two different keyframes animations

 @keyframes anim1 {
   to { opacity: 0; }
 }
 @keyframes anim2 {
   to { transform: rotate(360deg); }
 }

 In this case the number matches.

2) The element has two animations but both keyframes have the same CSS property

 @keyframes anim1 {
   to { opacity: 0; }
 }
 @keyframes anim2 {
   to { opacity: 0.1; }
 }

 In this case the number doesn't match, moreover it results more memory than we
 ever needed, but this case is presumably less common.

3) The element has an animation having keyframes for two different CSS
   properties.

 @keyframes anim {
   from { opacity: 0; transform: rotate(360deg); }
 }

 In this kind of cases, the number doesn't match.  But even so, this patch
 reduces the opportunities that the AnimationValueMap tries to allocate a new
 memory (i.e. less opportunities on expanding the map).

Note that when the hash map is expanded, we do allocate a new RawTable with the
new size then replace the old one with the new one [1], so I believe this
change will reduce the crash rate to some extent.

[1] https://hg.mozilla.org/mozilla-central/file/15c95df467be/servo/components/hashglobe/src/hash_map.rs#l734

Bug: 1418806
Reviewed-by: birtles
MozReview-Commit-ID: 6tcF9aqXh7a
2018-07-01 00:05:46 +02:00
Hiroyuki Ikezoe
d307b34be0
style: Introduce a constant variable to represents the number of all animatable longhands.
We will use this number to cap the pre-allocation AnimationValueMap in the next
patch.

Bug: 1418806
MozReview-Commit-ID: Iqq9plbD8Vl
2018-07-01 00:05:29 +02:00
Emilio Cobos Álvarez
fa7d9bf74a
style: Add namespace bucket for the selector map.
After bug 1470163 we have some nasty selectors from mathml.css in every page.

We only want to match them against MathML elements.

This patch brings the global revalidation selectors from 14 to 2 in about:blank.
Also halves the ones from XUL documents.

Bug: 1374017
Reviewed-by: heycam
MozReview-Commit-ID: nOVyknNcVm
2018-07-01 00:05:12 +02:00
Emilio Cobos Álvarez
2d2e84aad5
style: Error reporting fixes for media queries.
Do it so that we always try to evaluate the media expression and the modern
syntax last, so that the most specific error message comes up.

Bug: 1422225
Reviewed-by: xidorn
MozReview-Commit-ID: 2tqdAsWh6Kh
2018-07-01 00:04:48 +02:00
Emilio Cobos Álvarez
3a92fd1cfc
style: Evaluate MediaConditions, and glue it all together.
Bug: 1422225
Reviewed-by: xidorn
MozReview-Commit-ID: 3MThE2FvfDf
2018-07-01 00:04:35 +02:00
Emilio Cobos Álvarez
d2a1895752
style: Add serialization code for MediaCondition.
Bug: 1422225
Reviewed-by: xidorn
MozReview-Commit-ID: AxQQottV1hG
2018-07-01 00:04:21 +02:00
Emilio Cobos Álvarez
0b49a3701a
style: Add code to parse media conditions.
Still unused.

Bug: 1422225
Reviewed-by: xidorn
MozReview-Commit-ID: IQfxObw9BV5
2018-07-01 00:04:07 +02:00
Emilio Cobos Álvarez
e7cc548c35
style: Rename Expression to MediaFeatureExpression.
Which is more appropriate, given it represents a `<media-feature>` per spec, and
expression is a bit overloaded :)

Bug: 1422225
Reviewed-by: xidorn
MozReview-Commit-ID: Fed1nJhHxDu
2018-07-01 00:03:54 +02:00
Emilio Cobos Álvarez
ef14e65636
style: Allow parsing operators in media feature expressions.
The only bit from the spec which I haven't implemented to my knowledge is the
bit that allows you to swap the position of the media feature and the value,
because it unnecessarily complicates parsing (we parse the value in terms of the
feature), and I don't think it's useful given how easy it is to switch from,
e.g., `(500px > width)` to `(width <= 500px)`.

I filed https://github.com/w3c/csswg-drafts/issues/2791 about it.

Bug: 1422225
Reviewed-by: xidorn
MozReview-Commit-ID: 6xrdVl87S9X
2018-07-01 00:03:38 +02:00