Commit graph

165 commits

Author SHA1 Message Date
Keith Yeung
570d798ed2 servo: Merge #10712 - Support form submission of multipart/form-data (from KiChjang:multipart-form-data); r=jdm
Fixes #7553.

Source-Repo: https://github.com/servo/servo
Source-Revision: 77cb2ca89a87829e7e95fad17ae698c4ae097455
2016-04-30 18:43:30 -07:00
Yoav Alon
45ed58f663 servo: Merge #10834 - added support for :read-only and :read-write pseudo-classes (from yoava333:master); r=SimonSapin
partial fix for https://github.com/servo/servo/issues/10732

It's not a full fix because:
1. there's a bug in wpt-test https://github.com/w3c/web-platform-tests/issues/2889#issuecomment-214144420
2. we don't fully support all input types (namely image, color, hidden and range), which are defaulted to input text. this means that :read-write which is applicable to input text is mis-handled in those cases.
3. we don't support contenteditable, which is also possibly :read-write

Source-Repo: https://github.com/servo/servo
Source-Revision: ac8406f4aebe1e8571319a1d56fc627ea5782e60
2016-04-29 08:12:18 -07:00
Ms2ger
fc7055d9f4 servo: Merge #10918 - Avoid some clones (from Ms2ger:clones); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 9770e3c1e37a29c4b01ebfc243db2c7be58ec006
2016-04-29 06:33:34 -07:00
Matt Brubeck
22979e08c6 servo: Merge #10895 - Use byte indices instead of char indices for text runs (from mbrubeck:byteindex); r=pcwalton
Replace character indices with UTF-8 byte offsets throughout all code dealing with text runs.  This eliminates a lot of complexity when converting from one to the other, and interoperates better with the rest of the Rust ecosystem.

For most code this is just a simple replacement of char indices with byte indices.  In a few places like glyph storage and text fragment scanning, it also lets us get rid of code that existed only to map between bytes and chars.

Also includes some related fixes to text shaping, discovered while working on this conversion.  See the commit messages for details.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: cf121ad8dff90b8fa55558ca9bdcbfe29512a617
2016-04-28 20:22:09 -07:00
Keith Yeung
4afedbf0a7 servo: Merge #10890 - Remove extraneous script_chan parameter from Trusted::new (from servo:trusted); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 78e23f4c9b54c51012c672839545682b38455d67
2016-04-28 01:57:52 -07:00
Alberto Corona
e70b7e0a13 servo: Merge #10612 - Implement HTMLTextArea.setSelectionRange (continuation of #10007) (from autrilla:textdir); r=emilio
Tests on `tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html` all pass and the other tests don't panic due to double borrows anymore.

cc: @KiChjang

Fixes #9994.

Source-Repo: https://github.com/servo/servo
Source-Revision: b00c2740e300fd7b8c18276d8d416a9f78c42674
2016-04-17 21:29:31 +05:01
Keith Yeung
36fd3b91c3 servo: Merge #10522 - Various cleanups in HTMLInputElement (from KiChjang:input-cleanup); r=frewsxcv
Source-Repo: https://github.com/servo/servo
Source-Revision: 934ae41fc982058048f460a77687ab026c9a909f
2016-04-12 07:27:38 +05:01
Arnaud Marant
1257225e1e servo: Merge #10505 - Issue #10491 add HTMLInputElement attributes that reflect content ide… (from amarant:10491-HTMLInputElement-attr); r=KiChjang
…ntically

it uses a new version of string-cache https://github.com/servo/string-cache/pull/148

Source-Repo: https://github.com/servo/servo
Source-Revision: 61865f66b515503971146b472ae0f8b747569fd0
2016-04-12 05:29:16 +05:01
Corey Farwell
4db88605d6 servo: Merge #10514 - Various 'element.rs' cleanup (from frewsxcv:element-cleanup); r=KiChjang
Source-Repo: https://github.com/servo/servo
Source-Revision: 5aa62b3621f4793c559f6c7eb77e06259b0a00ea
2016-04-11 08:58:11 +05:01
Rahul Sharma
2c5ce6248a servo: Merge #10342 - Refactors some entities from script_thread into script_runtime (from creativcoder:script-runtime-module); r=Ms2ger
Fixes #10271.

Source-Repo: https://github.com/servo/servo
Source-Revision: 883cde424b61f4a06d52da5448da0095503b29b8
2016-04-06 12:52:21 +05:01
Matt Brubeck
8d45354231 servo: Merge #10347 - Fix incremental reflow of text selection changes (from mbrubeck:incremental-selection); r=pcwalton
r? @emilio or @pcwalton

CC @paulrouget: This fixes a bug in the browser.html URL bar auto-completion.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0489280ded90d658b4024f4334e2d58cc627b643
2016-04-02 19:25:50 +05:01
Rebecca
03f0c49914 servo: Merge #10019 - Fix htmllabelelement click to activate correct element (from rebstar6:htmllabelclick); r=jdm
Address https://github.com/servo/servo/issues/9928

Pass on label click to the label element's labeled control

Source-Repo: https://github.com/servo/servo
Source-Revision: 80d903a89725db081913f82515dc492ef711b829
2016-03-30 05:12:00 +05:01
Matt Brubeck
7f2f49fe54 servo: Merge #10176 - Highlight selected text in input fields (from mbrubeck:selection-range); r=pcwalton
Fixes #9993.  This does not yet allow stylesheets to set the selection colors; instead it uses a hard-coded orange background and white foreground.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: bed91b3334786970c91a47c3bc95889d8675b4d5
2016-03-26 07:47:20 +05:01
Sagar Muchhal
135f6ff4b2 servo: Merge #10169 - Implement initial pieces of form validation (from jdm:formvalidation); r=jdm
Rebase of #10108.

Source-Repo: https://github.com/servo/servo
Source-Revision: f56062b0698addf17d8077f11e3c12a7e3a3cb8b

--HG--
rename : servo/resources/shaders/clear.fs.glsl => servo/components/script/dom/validation.rs
2016-03-24 18:44:02 +05:01
Rebecca
1d9a694577 servo: Merge #9930 - Remove activatable element filter within HTMLElement#click() (from rebstar6:htmlclick); r=jdm
Address https://github.com/servo/servo/issues/6542

Ensure that click() calls are not limited to activatable elements. Also makes the isTrusted attribute false when synthetic click activation are called from a click() method (as per spec).

Source-Repo: https://github.com/servo/servo
Source-Revision: f2f6787189d8ea021cbd4ea3425d39ef8b1b8f93
2016-03-11 09:37:24 +05:01
Saurav Sachidanand
bfd217d805 servo: Merge #9905 - Implement input.setSelectionRange (from saurvs:master); r=ecoal95
Fixes https://github.com/servo/servo/issues/9862.

Passes all tests for `input` in `tests/wpt/web-platform-tests/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html`.

Source-Repo: https://github.com/servo/servo
Source-Revision: eac68c523bd0456671b1301a4a72184e46e5df86
2016-03-11 05:44:51 +05:01
Greg Guthe
ea7097fdfa servo: Merge #9514 - HTML input value (from g-k:html-input-value); r=KiChjang
Ready for review.

Fixes #9455.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0d7a2eee2db7a2bc96f69645c9eefee5204ebbb2
2016-02-27 04:07:46 +05:01
Daniel Robertson
b721086751 servo: Merge #9664 - Implement RootedReference<T> for Option<JS<T>> (from danlrobertson:i9654); r=KiChjang
A basic implementation of `RootedReference for Option<JS<T>>` based off of
other implementations of `RootedReference` for `Option` wrapped types.

Really I just wanted an excuse to read more in `bindings` 😄 Let me know
if you have any comments or critiques.

Fixes  #9654

Source-Repo: https://github.com/servo/servo
Source-Revision: ab381cf951f3e556d0f4c1f2107a311b0d275f91
2016-02-17 17:25:15 +05:01
Kamil Muszyński
d1164e9d59 servo: Merge #9576 - Issue #9561 Renamed *_thread_source to *_task_source window.rs (from kmuszyn:9561-rename-thread-to-task); r=jdm
Related to: https://github.com/servo/servo/issues/9561

Renamed *thread_source to *_task_source in components/script/dom/window.rs and files that use window methods.

Source-Repo: https://github.com/servo/servo
Source-Revision: c929dbe2530f979ce6e84d5a25ea47318ff0910e
2016-02-14 19:33:58 +05:01
Paul Rouget
06e296b00e servo: Merge #9614 - input event should bubble (from paulrouget:inputEventBubbles); r=mbrubeck
No test because: https://github.com/servo/servo/issues/9574#issuecomment-181558144

Fix #9574

Source-Repo: https://github.com/servo/servo
Source-Revision: a24e86e76fb2bebc1ded68d17cda10aa10417364
2016-02-12 11:31:31 +05:01
Ms2ger
523467b043 servo: Merge #9571 - Remove the global argument to EventTarget::{fire_event, fire_simple_event} (from Ms2ger:fire); r=asajeffrey
Source-Repo: https://github.com/servo/servo
Source-Revision: 0124d90a6d1fb17a986b06825f8b3d2af0055144
2016-02-09 04:39:00 +05:01
Emilio Cobos Álvarez
83aa64a599 servo: Merge #9510 - Update rust-selectors (from nox:bump-selectors); r=SimonSapin
This commits updates rust-selectors to use the generic parser, and as
such it moves the element state into the style crate.

Source-Repo: https://github.com/servo/servo
Source-Revision: ae20f2556bc7807b39b6649ac1f738644abcc26a
2016-02-03 06:35:11 +05:01
Manish Goregaokar
a60fbbcbd2 servo: Merge #8983 - Various textinput fixes (from Manishearth:cursors); r=jdm
- Currently the cursor sticks around if you click elsewhere. Now the text inputs are relayout-ed on blur.
 - Currently whitespace gets collapsed in text input (https://github.com/servo/servo/issues/8772). Not anymore.

Source-Repo: https://github.com/servo/servo
Source-Revision: 099beee85c02d391b854dc5e06da34f89df8b760
2016-01-11 22:52:03 +05:01
rohan.prinja
d440ee6a41 servo: Merge #9201 - task -> thread (from ajnirp:8512-task-thread); r=jdm
for #8512

Source-Repo: https://github.com/servo/servo
Source-Revision: d3e2f94f2024f4735f836588ed11303a0abafdf8

--HG--
rename : servo/components/canvas/canvas_paint_task.rs => servo/components/canvas/canvas_paint_thread.rs
rename : servo/components/canvas/webgl_paint_task.rs => servo/components/canvas/webgl_paint_thread.rs
rename : servo/components/compositing/compositor_task.rs => servo/components/compositing/compositor_thread.rs
rename : servo/components/gfx/font_cache_task.rs => servo/components/gfx/font_cache_thread.rs
rename : servo/components/gfx/paint_task.rs => servo/components/gfx/paint_thread.rs
rename : servo/components/layout/layout_task.rs => servo/components/layout/layout_thread.rs
rename : servo/components/net/image_cache_task.rs => servo/components/net/image_cache_thread.rs
rename : servo/components/net/resource_task.rs => servo/components/net/resource_thread.rs
rename : servo/components/net/storage_task.rs => servo/components/net/storage_thread.rs
rename : servo/components/net_traits/image_cache_task.rs => servo/components/net_traits/image_cache_thread.rs
rename : servo/components/net_traits/storage_task.rs => servo/components/net_traits/storage_thread.rs
rename : servo/components/script/script_task.rs => servo/components/script/script_thread.rs
rename : servo/components/util/task.rs => servo/components/util/thread.rs
rename : servo/tests/unit/gfx/font_cache_task.rs => servo/tests/unit/gfx/font_cache_thread.rs
rename : servo/tests/unit/net/resource_task.rs => servo/tests/unit/net/resource_thread.rs
rename : servo/tests/unit/util/task.rs => servo/tests/unit/util/thread.rs
2016-01-10 15:20:04 +05:01
Brandon Fairchild
3820fe771d 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:05:14 +05:01
Guillaume Gomez
c2448b55aa 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:08:10 +05:01
Manish Goregaokar
e927e712c3 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:52:26 +05:01
Johannes Linke
38405ee47e 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:47:34 +05:01
Iszak Bryan
25fc42fcfd 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:03:09 +05:01
Chad Kimes
f87a4fa979 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:02:55 +05:01
Anthony Ramine
ef99a3f214 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:39:15 +05:01
Arthur Skobara
4db2f3646f 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:09:19 +05:01
Keith Yeung
3cf5f15b06 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:12:45 +05:01
Arthur Skobara
6167240f11 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:32:25 +05:01
Corey Farwell
8c454ce7ad 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:43:35 +05:01
Tomas Cernaj
18632570cd 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:55:44 +05:01
Eli Friedman
70ebd13eff 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:36:22 +05:01
Sam Gibson
8846f71259 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:59:24 +05:01
Eli Friedman
ab5455716f 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:11:07 +05:01
Alan Jeffrey
f4ab2bfdb5 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:41:39 +05:01
Keith Yeung
5b3f4b220a 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:10:20 +05:01
Corey Farwell
0fcc30f78d 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:27:13 +05:01
Alan Jeffrey
f8093754b7 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:48:30 +05:01
Sylvester Willis
bc22eb435a 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:49:16 +05:01
Corey Farwell
75aebe6c02 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:38:51 +05:01
Ms2ger
7cb2a13f43 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:18:41 +05:01
David Zbarsky
ed7fd17b12 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:34:54 +05:01
Florian Merz
f4f9652bda 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 05:00:59 +05:01
rohan.prinja
e8b504412b 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:27:02 +05:01
Ms2ger
2e551ff777 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:15:51 +05:01