Commit Graph

141 Commits

Author SHA1 Message Date
Brandon Fairchild
f43aa653b1 servo: Merge #9193 - Rename fire_simple_event_params to fire_event in eventtarget.rs (from nerith:fire_event); r=KiChjang
Fixes #9180.

Source-Repo: https://github.com/servo/servo
Source-Revision: 083d3e0201772918d040a6eb12e87c03fd443587
2016-01-08 22:04:14 +05:00
Guillaume Gomez
5ae987f50b servo: Merge #9146 - Generate PartialEq automatically (from GuillaumeGomez:generate_partial_eq); r=nox
r? @nox

Fixes #8804

Source-Repo: https://github.com/servo/servo
Source-Revision: 1096183cceea9ec78ab02caa33ee2d14668d977d
2016-01-04 00:07:10 +05:00
Manish Goregaokar
e8e55159c3 servo: Merge #9072 - Fix placeholders for password inputs (from Manishearth:password-placeholder); r=eefriedman
currently they show dots instead of the placeholder text

Source-Repo: https://github.com/servo/servo
Source-Revision: 7f156b8c12833e9134d29c4c309963eaa48c4ce1
2016-01-03 09:51:26 +05:00
Johannes Linke
bb6c128359 servo: Merge #9123 - Fix a bunch of clippy lints (from karyon:clippy_cleanup); r=Manishearth
This fixes about 130 clippy lints. Let me know if i should split up the commit.

I wasn't sure about some of the changes, especially map_or instead of map(...).unwrap_or(...) and if let instead of single arm match were not always a strict improvement in my opinion, but i'll leave that decision to the reviewer :)

There are about 150 lints left which i thought were clippy bugs or i didn't know how to fix.

cc @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 9da739acefc7d1776bf727c8bf782eb79f241028
2016-01-03 08:46:34 +05:00
Iszak Bryan
04a1c92b70 servo: Merge #9134 - #9132 Use atom's for matching to gain performance benefits (from iszak:issue-9132); r=nox
Fixes https://github.com/servo/servo/issues/9132

Source-Repo: https://github.com/servo/servo
Source-Revision: 06d84e6e4b311bfdd813ed08cac4ed8f03c25605
2016-01-03 07:02:09 +05:00
Chad Kimes
bf0722222c servo: Merge #9122 - Add 'input' event for HTMLInputElement (from ckimes89:inputevent); r=nox
Fixes #8613

Source-Repo: https://github.com/servo/servo
Source-Revision: c0835ec336c4988c88a7a40fd18b2d37502e8ae3
2016-01-03 00:01:55 +05:00
Anthony Ramine
d5a2223cae servo: Merge #8506 - Properly propagate changes when range or trees are mutated (from nox:finish-ranges); r=dzbarsky
Does the same thing as #6817, but storing Range instances directly in their start and end containers.

Cc @dzbarsky

Source-Repo: https://github.com/servo/servo
Source-Revision: 89ab368258eb827b0dcc8d6e6deecd3ed3c1de71
2015-12-26 03:38:15 +05:00
Arthur Skobara
7e892f4944 servo: Merge #9030 - Add helper method HTMLFormElement::fire_event (from askobara:refactoring-add-htmlformelement-fire_event); r=Manishearth
Fixes #8777

Source-Repo: https://github.com/servo/servo
Source-Revision: dafdc856ac3fc2bd000e61bdcaed2c024828de0c
2015-12-22 22:08:19 +05:00
Keith Yeung
e720bfaf7d servo: Merge #8747 - Implement basic framework for static and interactive validation on forms (from KiChjang:form-interactive-validation); r=Manishearth
This came along when I was trying to do #3648. I was about to do form validation as well, but then I saw it was actually intended to be a student project. Hopefully I didn't step on too many toes on this one; I did leave most of the important bits out (the fun bits I believe, e.g. interactive validation doesn't actually interactively validate anything right now).

Source-Repo: https://github.com/servo/servo
Source-Revision: d9bf1ba616b6b30f800aaa388745c2fcda9e784e
2015-12-17 05:11:45 +05:00
Arthur Skobara
0831db0036 servo: Merge #8955 - Add comments for the "Constructing the form data set" algorithm (from askobara:docs-htmlformelement-get_form_dataset); r=waffles
Fixes #7852

Source-Repo: https://github.com/servo/servo
Source-Revision: 1d7f296fb8263490ebbcdac371f671ef15a36665
2015-12-14 13:31:25 +05:00
Corey Farwell
df96c96730 servo: Merge #8930 - Pass around event types as Atoms instead of Strings (from frewsxcv:event-type-atom); r=nox
`Event` internally stores the `type` as an `Atom`, and we're `String`s
everywhere, which can cause unnecessary allocations to occur since
they'll end up as `Atom`s anyways.

Source-Repo: https://github.com/servo/servo
Source-Revision: 99fd946130c9f06433b47c7f60241d5f7ad14a5b
2015-12-11 20:42:35 +05:00
Tomas Cernaj
14ace799a9 servo: Merge #8909 - Move ScriptMsg to script_traits crate, Fixes #8833 (from cnaj:msg_refactoring); r=jdm
Review of documentation that was missing needed.

Fixes #8833.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7438bc0425749989b8aab084a34ff3fff2ea6679
2015-12-10 10:54:44 +05:00
Eli Friedman
cc82f1bb12 servo: Merge #8786 - Remove unnecessary conversion to/from DOMString for localName (from eefriedman:localname-atom); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 63762d2b52ee6026216d304c8826bf8b4a5fdd20
2015-12-03 14:35:22 +05:00
Sam Gibson
b846355dca servo: Merge #7323 - Adds support for input element's maxlength attr (from samfoo:input-maxlength); r=jdm
This implements maxlength [as described by whatwg](https://html.spec.whatwg.org/multipage/forms.html#dom-input-maxlength) for input elements.

Remaining work:
* WPT test - I have no idea how to write a WPT for simulating user input. Webdriver? Open to suggestions here.
* Support for textarea (should be trivial, probably worth filing another issue)

servo/servo#7320
servo/servo#7004

Source-Repo: https://github.com/servo/servo
Source-Revision: fc3e950052b6cc580dc32fc03d978fad97b49ba8
2015-12-03 09:58:24 +05:00
Eli Friedman
bde50bc128 servo: Merge #8703 - Compute attribute name atoms at compile-time (from eefriedman:dom-getter-setter-atom); r=frewsxcv
Source-Repo: https://github.com/servo/servo
Source-Revision: eadaf30af396857535ad15b269bcba4f58e1ff9a
2015-11-28 20:10:07 +05:00
Alan Jeffrey
4d3e2c8d46 servo: Merge #8667 - Update string cache (from asajeffrey:update-string-cache); r=SimonSapin
Updated string_cache to 0.2, and updated the dependencies that depend on string_cache.
Removed references to string_cache_plugin.
Import atom! and ns! from string_cache.
Replaced ns!("") by ns!().
Replaced ns!(XML) and co by ns!(xml) and co.
Replaced Atom::from_slice by Atom::from.
Replaced atom.as_slice() by &*atom.

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 188fa9378c103093f1f8dac24bff0d9d237fd2bc
2015-11-25 23:40:39 +05:00
Keith Yeung
6c1517928e servo: Merge #8530 - Split ConstellationMsg into ScriptMsg and CompositorMsg (from KiChjang:split-constellation-msg); r=jdm
Fixes #8356.

Source-Repo: https://github.com/servo/servo
Source-Revision: acbe41305230a926458596444ca955eff063d9dd
2015-11-19 04:09:20 +05:00
Corey Farwell
ac2f1cc66a servo: Merge #8504 - Prefer atoms over strs for string comparisons (from frewsxcv:more-atoms); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 1763a37e3be8be46dc86bf4bf76bcd7c892566da
2015-11-13 10:26:13 +05:00
Alan Jeffrey
128ce4b968 servo: Merge #8477 - Opaque DOMString (from asajeffrey:opaque-domstring); r=asajeffrey
This patch makes DOMString an opaque wrapper round String (currently it's a transparent wrapper).

The changes are:

* Replacing DOMString(foo) by DOMString::from(foo).
* Replacing foo.0 by String::from(foo).
* Adding functions clear, push_str and extend for in-place mutation of DOMStrings.
* Replacing DOMString by String in other threads (devtools, storage and filereader).
* Making DOMString implement !Send.
* Removing the pub attribute from the contents of DOMString.

This enables experimenting with other string representations in the DOM.

Source-Repo: https://github.com/servo/servo
Source-Revision: 62acdd303b78951885c2c90747b31f318907d6c9
2015-11-13 06:47:30 +05:00
Sylvester Willis
d0babaa281 servo: Merge #8400 - Added call to event.PreventDefault on html text inputs and textareas (from sylvesterwillis:arrow-key-scroll-on-input); r=jdm
This change should prevent page scrolling when up/down buttons are pressed within text inputs and textboxes which should resolve issue #8379.

Source-Repo: https://github.com/servo/servo
Source-Revision: f1565bdd82bdf9a7fc383d20fdb53d07adec55c1
2015-11-08 09:48:16 +05:00
Corey Farwell
f308ae473d servo: Merge #8249 - 'type' attribute on HTMLInputElement should be stored as an Atom (from servo:htmlinputelement-type-atom); r=nox
Fixes #8180

Source-Repo: https://github.com/servo/servo
Source-Revision: 7ace7bc09087b6bfa817047640ba15df997b4a91
2015-11-07 18:37:51 +05:00
Ms2ger
9ee6885f3c servo: Merge #8312 - Make DOMString a newtype around String, rather than a typedef (from Ms2ger:DOMString); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: abfd1fb1bf071961bc8a581927eaa96a2d3e2cba
2015-11-04 16:17:41 +05:00
David Zbarsky
97e45a8d2e servo: Merge #8305 - Get rid of a bunch of explicit derefs (from dzbarsky:roots); r=Ms2ger,
Source-Repo: https://github.com/servo/servo
Source-Revision: 4b9fa13f2f6a1aa38d180367426498f01f6414c9
2015-11-04 10:33:54 +05:00
Florian Merz
047f235393 servo: Merge #8265 - add get_raw_layout_value (HTMLInputElementHelpers) (from fiji-flo:password_caret); r=eefriedman
This resolves #8107
Previously the index of the insetion point for a password input was
calculated using the scrambled string based on the edit point in the
raw string. That could lead to a wrong position of the caret. This
commit changes this behavior to calculate the insertion point using
the raw string.

Source-Repo: https://github.com/servo/servo
Source-Revision: e91169c0e2cfe37b1a2d0feb3aab50b72c816ffc
2015-11-04 04:59:59 +05:00
rohan.prinja
f3c30d6ffd servo: Merge #8221 - move modules around (from ajnirp:8130-reorganise); r=jdm
for #8130

Source-Repo: https://github.com/servo/servo
Source-Revision: daad09d44245228fba9118316937add71bec7c58
2015-11-04 02:26:02 +05:00
Ms2ger
9329f94aa0 servo: Merge #8294 - Remove RawLayoutHTMLInputElementHelpers (from Ms2ger:layout-input); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 5c11c88e92ccbc3013501096d5625778774c9fee
2015-11-02 19:14:51 +05:00
David Zbarsky
d423ff5097 servo: Merge #8193 - Use an Atom for Event.type (from dzbarsky:event_type); r=nox
Depends on https://github.com/servo/string-cache/pull/113

Source-Repo: https://github.com/servo/servo
Source-Revision: 35b452660bf0759d222e8f2ac4b8c57f75529443
2015-11-02 05:27:28 +05:00
Corey Farwell
86eaa55e95 servo: Merge #7965 - Implement 'labels' attribute on 'labelable elements' (from frewsxcv:labelable-elements-label-attribute); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 0e70a1f8a88fb1962e4ada447479b4228d09d724
2015-11-01 20:21:18 +05:00
Bobby Holley
6797370361 servo: Merge #8162 - Centralize event states in rust-selectors (from bholley:centralize_event_states); r=pcwalton
This still needs a rev bump on rust-selectors once https://github.com/servo/rust-selectors/pull/55 gets merged.

Source-Repo: https://github.com/servo/servo
Source-Revision: 521a87180a85709f8f704df33537f79bd131bf71
2015-10-31 09:35:45 +05:00
Anthony Ramine
db09beb657 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
Adam Szopa
b2986ec771 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
Leo Lahti
8f487896e7 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
Anthony Ramine
95d40680d6 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
Bobby Holley
786aa62a34 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
Eli Friedman
bdf1870969 servo: Merge #8026 - Fix uses of JS<T> as a type on the stack (from eefriedman:js-rooting); r=nox
`JS<T>` belongs on the heap, and only on the heap.  This is a collection of fixes so that code uses either `Root<T>` or `&T` to pass around garbage-collected pointers.

Ideally, we could completely ban constructing a `JS<T>` outside of constructor functions, but we aren't quite there yet.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7c7dbde0f4372037aac3635b8d81531ca9cdced3
2015-10-16 08:05:59 -06:00
Anthony Ramine
39c1957849 servo: Merge #8020 - Generate all Derived implementations in codegen (from nox:codegen-derived); r=Ms2ger
Follow-up of #7873.

@Ms2ger r? :)

Source-Repo: https://github.com/servo/servo
Source-Revision: 417cf5738e4609f4b2e34e9e0c4f7ef68f087432
2015-10-15 12:53:08 -06:00
Anthony Ramine
c60f627416 servo: Merge #7873 - Generate the various TypeId enums in codegen (from nox:codegen-typeid); r=Ms2ger
This frees us forever from caring about maintaining these enums. The last commit removes their use from the initialisation of interface objects derived from Node.

Source-Repo: https://github.com/servo/servo
Source-Revision: 32daa17d5cbcad02db0713e21e52410cdc60480e
2015-10-14 12:47:48 -06:00
Corey Farwell
921a6d9aa9 servo: Merge #7960 - Replace usage of old-style WHATWG spec links (from frewsxcv:update-spec-links); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 4052a22a1c6826cb18f03de9d2f6aed82d809e71
2015-10-10 10:17:52 -06:00
Anthony Urena
1a286c0ad0 servo: Merge #7892 - Refactor html form dataset collection (from anthgur:form-data-refactor); r=jdm
Factor out FormDatum collection for `<input>`
Improve early return logic for getting the FormDatum from an `<input>`
Condense element type patterns

Proposed to close #7851

Source-Repo: https://github.com/servo/servo
Source-Revision: 94dc98717b79c12cdac6b1eba72227199850ac31
2015-10-07 08:32:44 -06:00
Maciej Skrzypkowski
134178adb0 servo: Merge #7902 - Removed unneeded pub annotations in HTMLInputElement #7897 (from mskrzypkows:HTMLInputElement_pub_refactor); r=nox
get_size method appeared to be never used so I removed it.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9a12c2c06199bc0a11982949b0cb43ee8500c001
2015-10-07 05:35:14 -06:00
Keith Yeung
642dee1e01 servo: Merge #7777 - Add support for caseless group name matching in HTML input elements (from KiChjang:caseless-group-name-match); r=jdm
Fixes #7749

Source-Repo: https://github.com/servo/servo
Source-Revision: e9842b7db2243ea72d9607c18753025e946788bd
2015-10-02 13:26:05 -06:00
Philipp Hartwig
5efc62a8e3 servo: Merge #7801 - Refactor FormControl trait (from aopicier:refactor_formcontrol); r=Manishearth
The trait is now implemented for HTMLFooElement instead of
&HTMLFooElement and does no longer require an impl body.

Suggested by @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 94e85a5226fe5b18bde40a2d5f6727b717bd148f
2015-09-30 19:06:18 -06:00
Jacob Parker
99eb627e10 servo: Merge #7764 - Only display text carets in text inputs (from j3parker:input-caret-only-for-text); r=pcwalton
For #7756

Source-Repo: https://github.com/servo/servo
Source-Revision: 0c64e4a2c98cbf5e7b95dbea31c2e6993b70472c
2015-09-29 14:13:32 -06:00
Anthony Ramine
63e5f0affa servo: Merge #7733 - Properly consider radio button groups (from nox:checked); r=Manishearth
Radio button groups with missing or empty names are always the only element of their respective radio button group.

Source-Repo: https://github.com/servo/servo
Source-Revision: 37ce248f316ba3cb5a2cfb0b4bb95918c1c45828
2015-09-26 11:21:11 -06:00
Manish Goregaokar
f42988ba79 servo: Merge #7719 - Various fixes to make github less error-prone (from Manishearth:ghfix); r=Ms2ger
r? @Ms2ger

Source-Repo: https://github.com/servo/servo
Source-Revision: 2623f58a4b2b302c354257632e3ff67d1dfa72d9
2015-09-24 03:55:29 -06:00
Ravi Shankar
62e8ea2732 servo: Merge #7698 - sorted the declarations in various files (from Wafflespeanut:sorting); r=frewsxcv
This is a direct extract from my abandoned PR for a lint (#7546), along with some rather clumsy modifications (only on `components/script/dom/mod.rs` and `components/style/lib.rs`), because I had to sort some of the files again to make peace with tidy, which hasn't been educated about sorting yet!

Source-Repo: https://github.com/servo/servo
Source-Revision: a7208869f2903e36f9b2f540b55b50283d7df466
2015-09-23 15:02:56 -06:00
Brandon Fairchild
704178a0dd servo: Merge #7662 - Check for multiple import blocks separated by whitespace (from nerith:import); r=frewsxcv
Fixes #7381.

Source-Repo: https://github.com/servo/servo
Source-Revision: a0d3c9223f09757124b1520c4f17e94fa8bbe249
2015-09-19 13:34:51 -06:00
Patrick Walton
be100864a1 servo: Merge #7644 - layout: Draw the insertion point in input elements (from pcwalton:carrot); r=mbrubeck
Known issues:

* The caret doesn't show up if there's no text present, because we don't create text runs in that case. This should be a followup.

* Text runs don't support decomposing ligatures into their constituent subglyphs for advance computation, so the caret won't appear inside a ligature. This is a text run bug.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 6cd098da302db85975d0967ddee836f04eae3bd5
2015-09-17 05:50:41 -06:00
Ms2ger
86f372d00d servo: Merge #7622 - Use static atoms in some places (from Ms2ger:atoms); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 97710f0739410e7b464591f482c2dc117e528bbe
2015-09-14 02:38:02 -06:00
Manish Goregaokar
46699136ac servo: Merge #7536 - More clippy fixes (from Manishearth:clippyfix); r=Ms2ger
Elided almost all the lifetimes and removed needless returns. Mostly done by sed + manual fixes.

r? @nox

Source-Repo: https://github.com/servo/servo
Source-Revision: c2c2646d37614ece5869af861993c3d619f6e003
2015-09-04 07:59:04 -06:00