We need the last inclusive ancestor of start node that is not an inclusive ancestor
of end node, not the first that is an inclusive ancestor of it.
Source-Repo: https://github.com/servo/servo
Source-Revision: dfdeabf57df02cf4b8a878b3b9933a08d156082d
The method needs to throw when trying to insert start node into range.
Source-Repo: https://github.com/servo/servo
Source-Revision: b3964a89585539082982160f5f4fb4bd05ddac2f
This makes all the `Range.deleteContents` tests pass.
I changed some `try!()`s for `unwraps()` because those calls are actually infallible.
r? @nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 492e3241715e125df3587c8454ce52c925377152
The DOM specification says:
> A document's get the parent algorithm, given an event, returns null
> if event's type attribute value is "load" or document does not have
> a browsing context, and the document's associated Window object
> otherwise.
Source-Repo: https://github.com/servo/servo
Source-Revision: d5ce8f308faca3dda0728a2fd92b7d875a955d15
Trigger a WebSocket error after receiving an invalid message from the server. Rebased from #8868. Fixes#7861.
Source-Repo: https://github.com/servo/servo
Source-Revision: 26b40afe237f97ebd81d537e8ed1201c7c1e4011
Mostly straightforward; includes some extra fixes to make `<canvas>`
work the same way as `<img>` for reflow.
Rebase of #8531.
Source-Repo: https://github.com/servo/servo
Source-Revision: 8c23cbb78b36ac143bbea3b2e64961bfc46d8e0d
Rebase of #7267. Fixes#3598.
This avoids all of the sketchy issues of trying to read the style data for margins from the script thread. I replaced it with a layout query that fetches the margin style properties for a given element.
Source-Repo: https://github.com/servo/servo
Source-Revision: 09e987b559688caeef75aecd265c68f8d2b5c7e2
This fixes incremental layout of nodes that match pseudo-class selectors such as :first-child, :nth-child, :last-child, :first-of-type, etc. Fixes#8191 and other intermittent layout bugs.
This code is based on the following flags from Gecko:
https://hg.mozilla.org/mozilla-central/file/e1cf617a1f28/dom/base/nsINode.h#l134
Depends on servo/rust-selectors#71. r? @SimonSapin
There are a couple of TODO items in this commit, but I'd appreciate feedback on the general approach before I finish it up. (Also, if someone who knows more than I do could give some advice about atomic orderings...)
Source-Repo: https://github.com/servo/servo
Source-Revision: 438b3a444b40ea85e53be0bd1c4689680d577727
A Window always has a WindowProxy; the only reason it's wrapped in a nullable
field is the order in which those objects are created.
Source-Repo: https://github.com/servo/servo
Source-Revision: d85ee09bc72a9819269455a126a1eda018254822
Closes#9548.
Alternative implementation of #9595.
cc @timvandermeij
I'm not sure if a utility method on `ByteString` is the best place for this functionality, maybe a free function in XHR module would be more suitable.
Also where would be the correct place to add a test for this functionality (if required)?
Source-Repo: https://github.com/servo/servo
Source-Revision: 433232a7fffc3bd6bb830b4e1580e24801618fc1
This PR splits the `ActiveTimers` abstraction into
- `OneshotTimers` for scheduling "arbitrary" oneshot timers, such as XHR timeouts, and
- `JsTimers`, based on `OneshotTimers`, for scheduling JS timers (`setTimeout`/`setInterval`).
The result is mich cleaner and the timer initialization steps now closely resemble the specification.
**Notes**
- The second and third commit are strictly renames and code rearrangements.
- I'm not particularily happy with the `OneshotTimerCallback` enum and its circular dependency with `XHRTimeoutCallback`, but I couldn't come up with anything better.
Source-Repo: https://github.com/servo/servo
Source-Revision: 8f278109ce84aa482ccc0d25938970435fb6e536
Add methods to move the underlying `Vec<u8>` for `ByteString`.
I saw this as at least two methods. One to "move and replace with and empty Vec<u8> (`bytes`), and one to take ownership of the whole object (`own_bytes`). I typically also don't like adding methods with out unit tests. If you think they're unnecessary, just let me know.
As always, please let me know if you have any comments, critiques, or nits!
Fixes#9655
Source-Repo: https://github.com/servo/servo
Source-Revision: aae6525f7d23e0a1b2af0e77e7c9a91402e1f9e7
My updates so far for issue #8465. See comments there for more information.
Source-Repo: https://github.com/servo/servo
Source-Revision: 2374e9d30e015884e87305006ac61a77b7efd5ee
I've also added annotations about the steps that we're performing within each method.
Source-Repo: https://github.com/servo/servo
Source-Revision: 96d185359d78e82d2f41a56a1793f7e657c2d103
WebRender is an experimental GPU accelerated rendering backend for Servo.
The WebRender backend can be specified by running Servo with the -w option (otherwise the default rendering backend will be used).
WebRender has many bugs, and missing features - but it is usable to browse most websites - please report any WebRender specific rendering bugs you encounter!
Source-Repo: https://github.com/servo/servo
Source-Revision: ab07b06823ea9748a6091aee2281495f86f00bce
Fixes#3648.
Note that I have only implemented "mutate action URL" and "get action URL". The remaining ones can have E-less easy issues created for them.
Source-Repo: https://github.com/servo/servo
Source-Revision: fe70efe07f6d72665f10c752884e5705d5bdc600
components/script/dom/bindings/global.rs modified -> all *_thread_source occurrences renamed to *_task_source to comply with spec
Source-Repo: https://github.com/servo/servo
Source-Revision: 63dc161b773775c6755a604ec04b81c0bc479bf3
Addresses both cookies in request and response. Resolves#9540.
Source-Repo: https://github.com/servo/servo
Source-Revision: bc034845b7e543e4e71fa21d6bf99e9f10ddb6c5
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