Граф коммитов

4967 Коммитов

Автор SHA1 Сообщение Дата
Eli Friedman 362ec775db servo: Merge #8073 - Make unrooted_must_root a bit more aggressive (from eefriedman:root-lint); r=Manishearth
Basically, instead of trying to check for specific kinds of statements,
just check the types of all local variables.

Also included are some commented-out proposals for some slightly more
aggressive lints which might be useful (but trigger a little too
frequently at the moment).

Source-Repo: https://github.com/servo/servo
Source-Revision: bb88832c078fbb14fa03c413fac1252b2b755015
2015-10-24 20:20:04 -05:00
Corey Farwell 809309e229 servo: Merge #8181 - Remove unnecessary allocation with getElementById (from frewsxcv:no-alloc-get-element-by-id); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 3b50f219631ee8b8746199ef2bc1d60c716295ea
2015-10-24 17:25:09 -05:00
Ms2ger 18f0c01282 servo: Merge #8171 - Remove the default implementation of Reflectable::init_reflector (from Ms2ger:reflector); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 354e75a447c8afc7757d0340c03119de853110f5
2015-10-23 17:49:28 -05:00
Martin Robinson 19653ac5ca servo: Merge #8140 - Integrate Canvas into the DisplayList (from mrobinson:canvas); r=pcwalton
Canvas is currently given a layer at the stacking context level.
Instead it's DisplayItem should be given a layer directly. This fixes
painting order issues where canvases are painted on top of other
positioned content that is later in tree order. It always simplifies
the code a bit.

Source-Repo: https://github.com/servo/servo
Source-Revision: 22a6884a671da0434fe2b3bf30f50b9133d4c70b
2015-10-23 17:17:12 -05:00
Roman Klauke 84086415fe servo: Merge #8137 - Remove unnecessary rooting from `CSSStyleDeclaration` (from romankl:gh/8126); r=nox
This commit will replace calls to `self.owner.root()` with `self.owner` to avoid unnecessary rooting of JS elements objects.

Ref.- Issue: #8126

Source-Repo: https://github.com/servo/servo
Source-Revision: ff2c7bb47b4303573e48021f5f5af6a0ab6e8e80
2015-10-23 16:38:24 -05:00
Anthony Ramine 5feaf75b63 servo: Merge #8091 - Remove Rc<T> usage from Range (from nox:cleanup-range); r=eefriedman
I initially used this to correctly handle ranges when their respective containers
are mutated, to get weak references of Range objects. I now realise that the weak
references should be handled at a lower level, closer to the JS-managed object.

Source-Repo: https://github.com/servo/servo
Source-Revision: e3bcf7bab7d0340fc7ebd0e58a2cde34e534c1cf
2015-10-23 16:00:00 -05:00
Ms2ger ab7dacfa3f servo: Merge #8170 - Cleanup some code in htmlcanvaselement.rs (from Ms2ger:cleanup-canvas); r=frewsxcv
Source-Repo: https://github.com/servo/servo
Source-Revision: ac8097b5d2532b3b9fb94f59dddc1be21aa1fb4d
2015-10-23 09:34:28 -06:00
Ms2ger fb417f1b96 servo: Merge #8167 - Various cleanup in util (from Ms2ger:util); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 94aa8ca80a4a934d42ab5f739f268875b05d1b26
2015-10-23 07:00:09 -06:00
Matt Brubeck ab57828df0 servo: Merge #8163 - Enable multitouch in Glutin (from mbrubeck:glutin-multitouch); r=glennw
This tells Glutin's Android and iOS back-ends to send events for more than one
pointer at a time.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 28f4dd4f4806bfc2496bebcdedc3120731f14da2
2015-10-23 06:13:28 -06:00
Antonio de Luna c5df265cfe servo: Merge #8161 - Fixes #8154 Convert match to `if let` in handle_window_event (from A-deLuna:fix-#8154); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 51ab0abb7f7663e6113246fd7bc525e5f4f0281b
2015-10-23 05:35:33 -06:00
Ms2ger ce05956312 servo: Merge #8155 - Remove Window::layout_join_port (from Ms2ger:join); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 4d737b51bb2053e9bb970b31b0516ac8810a061b
2015-10-23 04:50:38 -06:00
Matt Brubeck a4f7ce3218 servo: Merge #7204 - Very basic touch events and touch scrolling (from mbrubeck:touchevent); r=jdm
This implements just enough of [Touch Events](http://w3c.github.io/touch-events/) to enable scrolling on Android without regressing basic single-touch interaction like clicking on links.

Dragging a page will scroll it, unless the page calls `preventDefault` on the "touchstart" event.

Does **not** yet support pinch zooming or other multi-touch gestures or events.

Includes a `-Z convert-mouse-to-touch` command line flag for testing on non-touch platforms.  This is also enabled by default on Android because Glutin currently translates touch input to mouse events on Android.

Source-Repo: https://github.com/servo/servo
Source-Revision: dcd207f9bf15c9ecf5d043385ba93277e69201f6
2015-10-22 15:54:01 -06:00
Ms2ger 5e771be0e4 servo: Merge #8150 - Use the select!{} macro in LayoutTask::handle_request (from Ms2ger:select-layout); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: e05999ea9f4883c85939b209f811ae20e9e9e89c
2015-10-22 11:14:52 -06:00
Brandon Fairchild 43bbf4c046 servo: Merge #8144 - Add `clippy` as a command to mach (from nerith:clippy); r=Manishearth
This gives mach the ability to run clippy with `./mach clippy`.

Fixes #8134.

Source-Repo: https://github.com/servo/servo
Source-Revision: 79f300f0387ad8218d06511c429d071cdef0193c
2015-10-22 10:27:02 -06:00
Paul Rouget 75219d581c servo: Merge #8121 - make it possible to disable default keybindings (from paulrouget:disableControls); r=jdm
For browser.html, we want to let the top level webpage handle these keybindings.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0d4641b640627da2a6f30b688d728f0a730671f6
2015-10-22 08:38:01 -06:00
nxnfufunezn 3412c4d7dd servo: Merge #8149 - Fixes #8102 Removed unwrap on result of send call (from nxnfufunezn:compositor_panics-8102); r=jdm
@jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: 04c574967f46a65c8b6a151d29e5fede6f7fcfaf
2015-10-22 06:53:09 -06:00
Nathan Froyd f9be87f294 servo: Merge #8086 - add (un)premultiply tables for canvas {Get,Put}ImageData operations (from froydnj:premultiply-tables); r=jdm
Pretty straightforward use of lookup tables to replace a bunch of expensive float operations.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9a34decec295563d3b4050bc53daad142450e0d5
2015-10-21 17:48:49 -06:00
Corey Farwell be6e7de7f6 servo: Merge #8103 - Upgrade some dependencies (from frewsxcv:bump); r=nox
Check each commit for a link to the changelog

Source-Repo: https://github.com/servo/servo
Source-Revision: 12c618450bc5639901ad499e59e7e4190097a693
2015-10-21 16:02:20 -06:00
Florian Merz 74d3b7be24 servo: Merge #7761 - display input caret for textarea. fixes #7758 (from fiji-flo:input_caret); r=pcwalton
This adds the input caret for textareas. Although, it does not handle multiline textareas correctly. The caret gets displayed for each line.

I'll look into that but that will take more time. Some feedback on this small patch would be appreciated though.

Source-Repo: https://github.com/servo/servo
Source-Revision: af6a64e176ec66a9c066e9e7bf40b6ce3ac77b2e
2015-10-21 15:23:52 -06:00
Matt Brubeck fe4642d13b servo: Merge #8136 - Fix type in MutHeap docs (from mbrubeck:typo); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: f9e17d33bb3cd5cfe103bb1631f390123bcddc04
2015-10-21 14:15:28 -06:00
Bobby Holley 80d425c0ca servo: Merge #8042 - Remove HAS_DIRTY_SIBLINGS (from bholley:dirty_siblings); r=pcwalton
This isn't doing anything right now, and we're not even setting it properly
in dirty_impl the |dirty_subtree(self)| was causing us to hit the skip case
for step 3.

Source-Repo: https://github.com/servo/servo
Source-Revision: 50ec2353845bf2a3971d5b01db37d2c3741d3912
2015-10-21 12:18:02 -06:00
Akos Kiss 5eb76ac9ed servo: Merge #8132 - Fix char types in script binding codegen (from akosthekiss:codegen-u8); r=Ms2ger
Use `libc::c_char` instead of `i8` for character data since that's more
portable. (Some architectures, e.g. AArch64, have unsigned characters,
i.e. `u8`.)

Source-Repo: https://github.com/servo/servo
Source-Revision: 3342cd9531c1f3c0419a0733b73c65838780a0f7
2015-10-21 10:44:14 -06:00
benshu 7eac66ba86 servo: Merge #7450 - Ordering guarantees for timers (from benschulz:constellation-timer); r=jdm
This is an rough solution to the issue described in #3396. XHRs still do their own thing and an overall clean up is in order. Before I do that, though, I'd really like someone to sign off on the overall idea.

There's one major difference to what jdm layed out #3396: The timers remain with the window/worker and only the earliest expiring one is coordinated with the dedicated timer thread.
That means both the timer thread and the window/worker have to keep track of which timer expires next, which feels a bit wonky. However, the upshot is that there's no need for communication with the timer thread when a pipeline is frozen, thawed or dropped.

Most relvant parts are
 - the [`TimerScheduler`](6f5f661958 (diff-74137a6f50ab38e7a1e4d16920a66ce7R73)), which is the new per-constellation timer task and
 - the [`ActiveTimers`](6f5f661958 (diff-86707d952414a2860b78bcf6c1db8e2eR34)) which is what's left on the window/worker side.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2de5407cdabef67ed03b2ad4edf4a22541d77875
2015-10-21 09:07:30 -06:00
Brandon Fairchild c830d87e38 servo: Merge #8115 - Don't require the CanvasFillOrStrokeStyle enum to be public (from nerith:canvas); r=jdm
CanvasFillOrStrokeStyle is only used in a single file,
so it does not need to be a public enum.

Fixes #8105.

Source-Repo: https://github.com/servo/servo
Source-Revision: 252e73ff9b43abdeee4eac37702ef2e3adef0062
2015-10-21 08:32:36 -06:00
Anthony Ramine bb8125a3da servo: Merge #8041 - Introduce trait Castable (from nox:castable); r=jdm
Removes all those messy FooCast structures in InheritTypes.rs.

Source-Repo: https://github.com/servo/servo
Source-Revision: 674589c370d978f543e71f995d58c5b28e6e9842
2015-10-21 07:57:32 -06:00
Ms2ger 14c56e26ce servo: Merge #8124 - Remove unused JS::assign (from Ms2ger:js-assign); r=saneyuki
Source-Repo: https://github.com/servo/servo
Source-Revision: 20ea0f4755d2249a6abf9a4ade9d3df753f23bcf
2015-10-21 05:15:15 -06:00
Paul Rouget b8b8e6483e servo: Merge #8119 - update image to 0.4.0 (from paulrouget:updateImage); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 7fb3c51bbbbc708b1472cb79751349adff8b9501
2015-10-21 00:47:27 -06:00
Brandon Fairchild 91a46e3037 servo: Merge #8112 - Remove Button prefix from names of variants of ButtonType enum (from nerith:buttontype); r=frewsxcv
Fixes #8106.

Source-Repo: https://github.com/servo/servo
Source-Revision: fde40edfdc1459e2ab66e8c66580bacb7dbde430
2015-10-20 21:28:38 -06:00
Adam Szopa 7ecd87862f servo: Merge #8099 - Remove explicit lifetimes which can be elided (from Darktori:master); r=mbrubeck
Fixes https://github.com/servo/servo/issues/8069

Source-Repo: https://github.com/servo/servo
Source-Revision: 941c06eb99533c6c1d55b4ad3b51804badf48a23
2015-10-20 17:30:57 -06:00
Martin Robinson 7f9d8e7d86 servo: Merge #7950 - Integrate iframes into the display list (from mrobinson:layerize-iframes); r=pcwalton
Instead of always promoting iframes to StackingContexts, integrate them
into the display list. This prevents stacking bugs when
non-stacking-context elements should be drawn on top of iframes.

To accomplish this, we add another step to ordering layer creation,
where LayeredItems in the DisplayList are added to layers described by
the LayerInfo structures collected at the end of the DisplayList.
Unlayered items that follow these layered items are added to
synthesized layers.

Another result of this change is that iframe layers can be positioned
directly at the location of the iframe fragment, eliminating the need
for the SubpageLayerInfo struct entirely.

Iframes are the first type of content treated this way, but this change
opens up the possibility to properly order canvas and all other layered
content that does not create a stacking context.

Source-Repo: https://github.com/servo/servo
Source-Revision: 11d23a41b31c2b2846d1e9c6b40e87ba7e2a095f
2015-10-20 16:01:38 -06:00
Eli Friedman 75c42c7efd servo: Merge #7951 - Add support for `pre-wrap` and `pre-line` values for `white-space` (from eefriedman:white-space); r=pcwalton
This is mostly straightforward.  I had to modify a couple of places
which were accidentally discarding whitespace.

Fixes #1513.

This fixes some relevant tests from the CSS testsuite... but a lot of
them are either manual, or don't pass because of unrelated issues.  (For
example, white-space-mixed-002 renders correctly, but
white-space-mixed-002-ref doesn't because of a float bug.)

I'd appreciate any suggestions for how to go about adding tests for this.

Source-Repo: https://github.com/servo/servo
Source-Revision: c3ab71109ee2ffcc31b40890f4c6739d8f5b1333
2015-10-20 12:38:54 -06:00
James Graham 93eff38911 servo: Merge #8083 - Add create-wpt mach target to help with creating web-platform-tests (from jgraham:create-wpt); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 36d5c0b2fbe94065b068c6aad72ad7797a157926
2015-10-20 03:46:17 -06:00
Leo Lahti 0d91dd322d servo: Merge #8095 - Removed unsafe from 'query_selector_iter' (from TileHalo:foo); r=Ms2ger
Fixing #8078.

Source-Repo: https://github.com/servo/servo
Source-Revision: 25d3c2b655303cf3b858e49019c42254433056cf
2015-10-20 01:13:49 -06:00
Dongie Agnir af57f14d04 servo: Merge #8092 - Remove unused import (from dagnir:remove-unused-import); r=frewsxcv
Source-Repo: https://github.com/servo/servo
Source-Revision: 511e3c1846a0138bf8e278d06d36917b16e140ab
2015-10-19 20:48:45 -06:00
Glenn Watson 2abddc2c09 servo: Merge #8089 - Fix iframes flickering on mouse move (from glennw:iframe-flicker); r=pcwalton
Fixes #7867 (and probably several other iframe bugs).

When collecting layers for children of a pipeline, pass through the current
subpage pipeline recursively. This prevents descendant layers (such as scroll
layers) from being collected and re-created on the subsequent paint.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3f4ce134198e398fa94d1e754364b220037e6b49
2015-10-19 17:54:12 -06:00
Anthony Ramine e59d3711fa servo: Merge #8008 - Update URL-related interfaces and their tests up to spec (from nox:url); r=jdm
The URL spec recently changed and the variour "mixins" interfaces are gone,
this commit updates our code and WPT accordingly.

The new expected failures related to HTMLAnchorElement and HTMLAreaElement's
attributes are due to their moving to the HTMLHyperLinkElementUtils interface,
which is not anymore in a separate `<script class=untested>` element.

Source-Repo: https://github.com/servo/servo
Source-Revision: f73cd40282ab79f53b38f2b057677b0423282f32
2015-10-19 14:24:05 -06:00
Ms2ger 8be0065221 servo: Merge #8029 - Some cleanup in layout (from Ms2ger:cleanup-layout); r=pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: e0c8a88410277843714a20d5fced73a392fad861
2015-10-19 11:36:58 -06:00
Pierre Chevalier cfc0603fb6 servo: Merge #7943 - Clarify some code in do_create_interface_objects (from pierrechevalier83:fix_issue_7941); r=Ms2ger
rval.get() is believed to be always null upon entering this function.
This assumption is verified by the added assertion.
It makes more sense to move the block of code that was moved inside
the if statement which is the only place where it can be initialized.

Fixes #7941.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6111cf9ffcb4427ab9a0966b9a4d0387b3101e7b
2015-10-19 09:37:03 -06:00
KALPESH KRISHNA 4ed7dd44e3 servo: Merge #8068 - Implementing getAttributeNode() and similar methods (from martiansideofthemoon:my-code-fix); r=Manishearth
Implementing getAttributeNode() and similar methods

Attempting to solve #8066 Does it look good so far @Manishearth ?

Source-Repo: https://github.com/servo/servo
Source-Revision: 2e308e9eccb6c6d31906660bdfcf1a304f85dd56
2015-10-19 07:58:41 -06:00
Corey Farwell 95fa5f7ccb servo: Merge #8025 - Remove 'app_units' component from tree (from frewsxcv:remove-app-units-from-tree); r=nox
Part of #8012

Source-Repo: https://github.com/servo/servo
Source-Revision: eeffa795a7ecded7096ee12eb393440e7c0c9348
2015-10-19 07:26:17 -06:00
Anthony Ramine 1c1210fbba servo: Merge #8060 - Implement Deref<Target=T> for JS<T> where T: Reflectable (from nox:deref-js); r=Ms2ger
We can only borrow `JS<T>` from rooted things, so it's safe to deref it.
The only types that provide mutable `JS<T>` things are `MutHeap<JS<T>>` and
`MutNullableHeap<JS<T>>`, which don't actually expose that they contain
`JS<T>` values.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1a376aa75d5de8781b17a673850860f8afd2c28f
2015-10-19 06:32:05 -06:00
Roman Klauke ef5b1f883b servo: Merge #8071 - remove unused methods from ThreadSafeLayoutNode (from romankl:gh/8063); r=nox
`get_input_size ` and `get_input_value ` aren't used in the codebase.

Ref.-Issue: #8063

Source-Repo: https://github.com/servo/servo
Source-Revision: 50ad1b064d6e85e84707d83ca8f4b5b541b6b8da
2015-10-19 04:32:34 -06:00
Bobby Holley ad33b14737 servo: Merge #7935 - Move event state from Node to Element (from bholley:eventstate_element); r=nox
Just getting my feet wet with Rust here. Please feel free to nit the hell out of it stylistically and idiomatically. :-)

Source-Repo: https://github.com/servo/servo
Source-Revision: ff2151b8bbc62fa29c90a429b7a4f12520420b6e
2015-10-19 02:47:21 -06:00
Corey Farwell f73c951c58 servo: Merge #8059 - Fix formatting for variable in doc-comment within codegen (from frewsxcv:fix-codegen-docs); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: b847e4dd778e49ba60c786da4aa77813dee8b553
2015-10-18 07:55:48 -06:00
KALPESH KRISHNA 487d7a4093 servo: Merge #8038 - Adding window.onstorage WindowEventHandler (from martiansideofthemoon:my-code-fix); r=jdm
Well it built successfully this time around 😄 @jdm . Working to solve #7994

Source-Repo: https://github.com/servo/servo
Source-Revision: 23fa9de714662286480b26b28b742a7e23bc91f4
2015-10-17 22:36:13 -06:00
Till Schneidereit 35d5d9d31f servo: Merge #7415 - Improve implementation of DOMRect and implement DOMRectReadOnly (from tschneidereit:dom-rect); r=nox
Passes most tests from test-css. The remaining ones should pass once we have https://github.com/w3c/csswg-test/pull/834.

r? @Ms2ger

Source-Repo: https://github.com/servo/servo
Source-Revision: 810d28a2574cd288ddfa5737ade417ea53a4b690
2015-10-17 15:17:27 -06:00
Corey Farwell 8d78a895e4 servo: Merge #7977 - Implement HTMLTableRowElement insertCell and deleteCell (from frewsxcv:htmltablerowelement-insertcell-deletecell); r=eefriedman
Source-Repo: https://github.com/servo/servo
Source-Revision: ef8119511c440e50220417289a8adf5c7c1a93c3
2015-10-16 23:54:52 -06:00
Josh Matthews defcc6a435 servo: Merge #8054 - Add more information to ORGANIZATION.md (from jdm:jdm-patch-1); r=metajack
Source-Repo: https://github.com/servo/servo
Source-Revision: e31ad011033ae076efecf61888daa1f6a5900589
2015-10-16 14:53:34 -06:00
Corey Farwell 2060f1d53f servo: Merge #8036 - Travis CI building cleanup, enable caching (from frewsxcv:travis); r=metajack
The only reason the Dockerfile was introduced is because the default
machines that Travis uses are based on Ubuntu 12.04, which has some very
old incompatible dependencies with Servo. Docker allowed use to use a
new version of Ubuntu, allowing us to compile with ease. I just learned
that they are currently beta testing 14.04 support:

http://docs.travis-ci.com/user/trusty-ci-environment/

This commit updates our Travis config to remove our dependency on Docker
and just build directly on the images, reducing some complexity and also
overhead of downloading Docker images.

In addition, this commit also enables caching of the .servo and .cargo
directories on Travis in an attempt to reduce build times.

http://docs.travis-ci.com/user/caching/#Arbitrary-directories

Source-Repo: https://github.com/servo/servo
Source-Revision: 628c2a04326b27ac2743771dca52612c8ce30ad2
2015-10-16 14:09:36 -06:00
Rahul Sharma be06c6ec43 servo: Merge #8031 - added spec link for type mapping (from creativcoder:spec-links-js); r=jdm
Hi. added some of the spec links, that i could understand from the spec. Please mention if anything else needs to be added.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7a71f3932078e8248ecf8c6d28984e2fd4d1df6c
2015-10-16 13:38:30 -06:00