Commit graph

12815 commits

Author SHA1 Message Date
Patrick Walton
efdf435ba3 gfx: Paint the insertion point as a one-pixel wide line. 2015-09-17 13:31:13 +02:00
Patrick Walton
357419dc8d layout: Query and maintain the position of the insertion point
throughout layout for input elements.
2015-09-17 13:31:12 +02:00
Patrick Walton
34d9a6091b script: Ask layout to redraw the selection whenever the user moves the
caret in an input element.
2015-09-17 13:31:11 +02:00
Patrick Walton
4a53c873f5 util: Make the number of app units per pixel a constant instead of
repeating the literal value everywhere.

Factoring this value out into a public constant makes it easier to
create `Au` constants in other modules.
2015-09-17 13:31:10 +02:00
Patrick Walton
dc26511ff3 gfx: Properly create continuation glyph entries for ligatures. 2015-09-17 13:31:09 +02:00
Patrick Walton
c62d8292c7 gfx: Add a Debug impl for GlyphStore instances.
Gecko has a `Dump()` routine in a similar spirit.
2015-09-17 13:31:08 +02:00
bors-servo
9e914ca0db Auto merge of #7588 - notriddle:master, r=pcwalton
Actually store the overflow for inline-block elements.

Fixes #7571

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7588)
<!-- Reviewable:end -->
2015-09-17 00:53:04 -06:00
bors-servo
d3355e245e Auto merge of #7655 - servo:jdm-patch-1, r=glennw
Remove shortcut that doesn't exist.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7655)
<!-- Reviewable:end -->
2015-09-16 22:16:08 -06:00
Josh Matthews
dc0781f1dc Remove shortcut that doesn't exist. 2015-09-17 00:13:47 -04:00
bors-servo
4e9a888f1a Auto merge of #7648 - mrobinson:print-tree, r=glennw
Improve printing of DisplayLists

Use box tree characters to make DisplayLists easier to scan when
printing them out.

This is what the output looked like before:
```
#### start printing display list.
"####" Stacking context at Rect(800px×608px at (0px,0px)) with overflow Rect(800px×608px at (0px,0px)):
#### SolidColor(0,0,0,0). Rect(800px×608px at (0px,0px))
#### SolidColor(0,0,0,0). Rect(784px×0px at (8px,0px))
#### SolidColor(0,0.5019608,0,1). Rect(100px×100px at (0px,0px))


#### Child layers list length: 1
"########" Stacking context at Rect(100px×100px at (0px,0px)) with overflow Rect(100px×100px at (0px,0px)):
######## SolidColor(1,0,0,1). Rect(100px×100px at (0px,0px))


######## Child layers list length: 1
"############" Stacking context at Rect(100px×100px at (0px,0px)) with overflow Rect(100px×100px at (0px,0px)):
```

This is what it looks like after this patch:
```
┌ DisplayList
│  ├─ Layered StackingContext at Rect(800px×608px at (0px,0px)) with overflow Rect(800px×608px at (0px,0px)):
│  │  ├─ Block Backgrounds and Borders
│  │  │  ├─ SolidColor rgba(0, 0, 0, 0) @ Rect(800px×608px at (0px,0px)) (7f926f46f1f0)
│  │  │  └─ SolidColor rgba(0, 0, 0, 0) @ Rect(784px×0px at (8px,0px)) (7f926f46f2e0)
│  │  ├─ Layered StackingContext at Rect(100px×100px at (0px,0px)) with overflow Rect(100px×100px at (0px,0px)):
│  │  │  ├─ Backgrounds and Borders
│  │  │  │  └─ SolidColor rgba(1, 0, 0, 1) @ Rect(100px×100px at (0px,0px)) (7f926f46f310)
│  │  │  ├─ Layered StackingContext at Rect(100px×100px at (0px,0px)) with overflow Rect(100px×100px at (0px,0px)):
│  │  ├─ Layered StackingContext at Rect(100px×100px at (0px,0px)) with overflow Rect(100px×100px at (0px,0px)):
│  │  │  ├─ Backgrounds and Borders
│  │  │  │  └─ SolidColor rgba(0, 0.5019608, 0, 1) @ Rect(100px×100px at (0px,0px)) (7f926f46f3a0)
```

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7648)
<!-- Reviewable:end -->
2015-09-16 20:43:59 -06:00
bors-servo
b511004a61 Auto merge of #7632 - aidanhs:aphs-speedup-mach-startup, r=metajack
Speedup mach startup

...by using a 'marker file' to indicate whether we actually need to run pip.

Also a minor tweak for clarity.

Before (consistently):
```
$ time ./mach >/dev/null

real    0m0.666s
user    0m0.477s
sys     0m0.190s
```

After:
```
$ time ./mach >/dev/null # first run

real    0m0.665s
user    0m0.501s
sys     0m0.166s
$ time ./mach >/dev/null

real    0m0.121s
user    0m0.083s
sys     0m0.039s
```

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7632)
<!-- Reviewable:end -->
2015-09-16 14:34:17 -06:00
Martin Robinson
30963d76be Improve printing of DisplayLists
Use box tree characters to make DisplayLists easier to scan when
printing them out.
2015-09-16 12:31:38 -07:00
bors-servo
2879da54f9 Auto merge of #7645 - nox:omtc-types, r=Ms2ger
Introduce structs for compositing and script task constructors' arguments

Extracted from @pcwalton's #4271.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7645)
<!-- Reviewable:end -->
2015-09-16 10:41:10 -06:00
Anthony Ramine
a7738a5eef Introduce InitialScriptState 2015-09-16 18:38:24 +02:00
bors-servo
8f0b702018 Auto merge of #7642 - bjwbell:shorthand-parse-elliptical-border-radius, r=jdm
gfx: Add elliptical border-radius shorthand parsing

Adds support for parsing shorthand border-radius values such as:

    /* The syntax of the second radius allows one to four values */
    /* (first radius values) / radius */
    border-radius: 10px 5% / 20px;

    /* (first radius values) / top-left-and-bottom-right | top-right-and-bottom-left */
    border-radius: 10px 5% / 20px 30px;

    /* (first radius values) / top-left | top-right-and-bottom-left | bottom-right */
    border-radius: 10px 5px 2em / 20px 25px 30%;

    /* (first radius values) / top-left | top-right | bottom-right | bottom-left */
    border-radius: 10px 5% / 20px 25em 30px 35em;

r? @pcwalton

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7642)
<!-- Reviewable:end -->
2015-09-16 10:13:52 -06:00
bors-servo
6678eece27 Auto merge of #7641 - servo:jdm-patch-1, r=SimonSapin
Add pip as a requirement



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7641)
<!-- Reviewable:end -->
2015-09-16 09:39:10 -06:00
bors-servo
df083ccb52 Auto merge of #7628 - Ms2ger:events-markers, r=jdm
Emit markers for all events, not just UI events.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7628)
<!-- Reviewable:end -->
2015-09-16 08:34:32 -06:00
Ms2ger
73b9925cc1 Remove a pointless clone() call. 2015-09-16 16:29:03 +02:00
Ms2ger
f4cf90f127 Remove an obsolete TODO comment. 2015-09-16 16:29:02 +02:00
Ms2ger
e85b1e4e89 Use an early return in dispatch_to_listeners. 2015-09-16 16:29:02 +02:00
Ms2ger
b7a0440f91 Emit markers for all events, not just UI events. 2015-09-16 16:29:01 +02:00
Ms2ger
6dab37c88c Implement a global_object_for_reflector method. 2015-09-16 16:29:00 +02:00
Ms2ger
69ed59d78f Remove the outdated no_move annotation from GlobalRoot. 2015-09-16 16:28:59 +02:00
Ms2ger
a85196398d Return immediately from dispatch_to_listeners if propagation is stopped. 2015-09-16 16:28:58 +02:00
Ms2ger
af6bc108f3 Use early returns in dispatch_to_listeners. 2015-09-16 16:28:57 +02:00
Ms2ger
995cb21b48 Use if-let in dispatch_to_listeners, and simplify break conditions. 2015-09-16 16:28:56 +02:00
Ms2ger
a5925020ce Avoid calling any listeners for events whose stop propagation flag is set prior to dispatching. 2015-09-16 16:28:31 +02:00
Ms2ger
b342dff07d Add more assertions to dispatch_event. 2015-09-16 14:48:36 +02:00
bors-servo
6a12f00d6d Auto merge of #7605 - nox:skew, r=mbrubeck
Implement "transform: skew()"

Thanks to @Jinwoo-Song for the original commit, which I just rebased and cleaned up. Fixes #6237.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7605)
<!-- Reviewable:end -->
2015-09-16 06:31:48 -06:00
Ms2ger
76eea43c83 Factor out a dispatch_to_listeners function from dispatch_event. 2015-09-16 13:36:18 +02:00
Ms2ger
15717173ee Reorder the code in dispatch_event a bit. 2015-09-16 13:36:17 +02:00
Ms2ger
9ddeec09c3 Remove outdated FIXME comment. 2015-09-16 13:36:17 +02:00
Anthony Ramine
9e1e2b8ed3 Introduce InitialConstellationState 2015-09-16 02:11:37 +02:00
Bryan Bell
48f1159845 gfx: Add elliptical border-radius shorthand parsing
Adds elliptical border-radius shorthand parsing, e.g.:

    /* The syntax of the second radius allows one to four values */
    /* (first radius values) / radius */
    border-radius: 10px 5% / 20px;

    /* (first radius values) / top-left-and-bottom-right | top-right-and-bottom-left */
    border-radius: 10px 5% / 20px 30px;

    /* (first radius values) / top-left | top-right-and-bottom-left | bottom-right */
    border-radius: 10px 5px 2em / 20px 25px 30%;

    /* (first radius values) / top-left | top-right | bottom-right | bottom-left */
    border-radius: 10px 5% / 20px 25em 30px 35em;
2015-09-15 16:51:17 -07:00
Anthony Ramine
7d140113e7 Introduce InitialPipelineState 2015-09-15 23:14:56 +02:00
Anthony Ramine
5cf8d597e6 Introduce InitialCompositorState 2015-09-15 23:14:48 +02:00
Josh Matthews
9cc411f2c8 Pips for everybody. 2015-09-15 15:57:46 -04:00
Josh Matthews
cd0dc6f196 Add pip as a requirement 2015-09-15 15:56:12 -04:00
bors-servo
4935323ebf Auto merge of #7623 - aidanhs:aphs-atomise-forwarded-events, r=nox
Match forwarded events as atoms, fixes #7495

Hopefully I understood the issue correctly...

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7623)
<!-- Reviewable:end -->
2015-09-15 12:11:11 -06:00
bors-servo
67cf241acd Auto merge of #7548 - jgraham:webdriver_prefs, r=metajack
Add get/set pref extensions to webdriver server.

This can be used by the test framework to ensure that the correct prefs are
set for a test without restarting the browser

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7548)
<!-- Reviewable:end -->
2015-09-14 22:08:28 -06:00
bors-servo
e3d36bfceb Auto merge of #7631 - jxs:rewrite_uses_of_map, r=jdm
rewrite uses of map as if let

in the end only found this case as re-writable, am i missing some?

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7631)
<!-- Reviewable:end -->
2015-09-14 21:31:53 -06:00
João Oliveira
832cfac747 rewrite uses of map as if let
closes #7580
2015-09-15 02:51:59 +01:00
bors-servo
25abe646f8 Auto merge of #7619 - frewsxcv:font-face, r=nox
Implement <font> 'face' attribute



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7619)
<!-- Reviewable:end -->
2015-09-14 18:32:17 -06:00
Corey Farwell
3ae76f4e76 Implement <font> 'face' attribute 2015-09-14 20:24:52 -04:00
bors-servo
e107f112d8 Auto merge of #7633 - aidanhs:aphs-remove-sslprovider, r=jdm
Remove SslProvider, fixes #7627



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7633)
<!-- Reviewable:end -->
2015-09-14 14:57:55 -06:00
Aidan Hobson Sayers
7632e89a04 Remove unsupported SslProvider, fixes #7627 2015-09-14 21:30:05 +01:00
bors-servo
3d420abe40 Auto merge of #7629 - zmike:THE_RETURN_OF_EMBEDDING, r=larsbergstrom
sync cef interfaces with upstream

@larsbergstrom I guess

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7629)
<!-- Reviewable:end -->
2015-09-14 14:24:18 -06:00
zmike
80b027ef9f add missing cef types from last sync 2015-09-14 16:01:16 -04:00
Aidan Hobson Sayers
078d21b6e2 Minor style tweak 2015-09-14 20:55:23 +01:00
Aidan Hobson Sayers
9737b2375e Create a marker file to avoid running pip when possible 2015-09-14 20:55:22 +01:00