mirror of
https://github.com/servo/servo.git
synced 2025-08-04 13:10:20 +01:00
Merge branch 'master' of https://github.com/servo/servo into font_style
This commit is contained in:
commit
ee0ce0d8f4
55 changed files with 617 additions and 357 deletions
|
@ -28,7 +28,7 @@ On Debian-based Linuxes:
|
||||||
sudo apt-get install curl freeglut3-dev \
|
sudo apt-get install curl freeglut3-dev \
|
||||||
libfreetype6-dev libgl1-mesa-dri libglib2.0-dev xorg-dev \
|
libfreetype6-dev libgl1-mesa-dri libglib2.0-dev xorg-dev \
|
||||||
msttcorefonts gperf g++ cmake python-virtualenv \
|
msttcorefonts gperf g++ cmake python-virtualenv \
|
||||||
libssl-dev libbz2-dev
|
libssl-dev libbz2-dev libosmesa6-dev
|
||||||
```
|
```
|
||||||
|
|
||||||
On Fedora:
|
On Fedora:
|
||||||
|
|
|
@ -2,7 +2,9 @@
|
||||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||||
|
|
||||||
/// Low-level wire protocol implementation. Currently only supports [JSON packets](https://wiki.mozilla.org/Remote_Debugging_Protocol_Stream_Transport#JSON_Packets).
|
//! Low-level wire protocol implementation. Currently only supports
|
||||||
|
//! [JSON packets]
|
||||||
|
//! (https://wiki.mozilla.org/Remote_Debugging_Protocol_Stream_Transport#JSON_Packets).
|
||||||
|
|
||||||
use serialize::{json, Encodable};
|
use serialize::{json, Encodable};
|
||||||
use serialize::json::Json;
|
use serialize::json::Json;
|
||||||
|
|
|
@ -8,6 +8,7 @@ use servo_util::range::{Range, RangeIndex, EachIndex};
|
||||||
use servo_util::geometry::Au;
|
use servo_util::geometry::Au;
|
||||||
|
|
||||||
use std::cmp::PartialOrd;
|
use std::cmp::PartialOrd;
|
||||||
|
use std::iter::repeat;
|
||||||
use std::num::NumCast;
|
use std::num::NumCast;
|
||||||
use std::mem;
|
use std::mem;
|
||||||
use std::u16;
|
use std::u16;
|
||||||
|
@ -526,7 +527,8 @@ impl<'a> GlyphStore {
|
||||||
assert!(length > 0);
|
assert!(length > 0);
|
||||||
|
|
||||||
GlyphStore {
|
GlyphStore {
|
||||||
entry_buffer: Vec::from_elem(length as uint, GlyphEntry::initial()),
|
entry_buffer: repeat(GlyphEntry::initial()).take(length as uint)
|
||||||
|
.collect(),
|
||||||
detail_store: DetailedGlyphStore::new(),
|
detail_store: DetailedGlyphStore::new(),
|
||||||
is_whitespace: is_whitespace,
|
is_whitespace: is_whitespace,
|
||||||
}
|
}
|
||||||
|
|
|
@ -43,6 +43,7 @@ use libc::{c_uint, c_int, c_void, c_char};
|
||||||
use servo_util::geometry::Au;
|
use servo_util::geometry::Au;
|
||||||
use servo_util::range::Range;
|
use servo_util::range::Range;
|
||||||
use std::char;
|
use std::char;
|
||||||
|
use std::iter::repeat;
|
||||||
use std::mem;
|
use std::mem;
|
||||||
use std::cmp;
|
use std::cmp;
|
||||||
use std::ptr;
|
use std::ptr;
|
||||||
|
@ -295,9 +296,10 @@ impl Shaper {
|
||||||
|
|
||||||
// fast path: all chars are single-byte.
|
// fast path: all chars are single-byte.
|
||||||
if byte_max == char_max {
|
if byte_max == char_max {
|
||||||
byte_to_glyph = Vec::from_elem(byte_max as uint, NO_GLYPH);
|
byte_to_glyph = repeat(NO_GLYPH).take(byte_max as uint).collect();
|
||||||
} else {
|
} else {
|
||||||
byte_to_glyph = Vec::from_elem(byte_max as uint, CONTINUATION_BYTE);
|
byte_to_glyph = repeat(CONTINUATION_BYTE).take(byte_max as uint)
|
||||||
|
.collect();
|
||||||
for (i, _) in text.char_indices() {
|
for (i, _) in text.char_indices() {
|
||||||
byte_to_glyph[i] = NO_GLYPH;
|
byte_to_glyph[i] = NO_GLYPH;
|
||||||
}
|
}
|
||||||
|
|
|
@ -44,6 +44,7 @@ use servo_util::geometry::{mod, Au, to_px};
|
||||||
use servo_util::logical_geometry::{LogicalPoint, LogicalRect, LogicalSize};
|
use servo_util::logical_geometry::{LogicalPoint, LogicalRect, LogicalSize};
|
||||||
use servo_util::opts;
|
use servo_util::opts;
|
||||||
use std::default::Default;
|
use std::default::Default;
|
||||||
|
use std::iter::repeat;
|
||||||
use std::num::FloatMath;
|
use std::num::FloatMath;
|
||||||
use style::computed::{AngleOrCorner, LengthOrPercentage, HorizontalDirection, VerticalDirection};
|
use style::computed::{AngleOrCorner, LengthOrPercentage, HorizontalDirection, VerticalDirection};
|
||||||
use style::computed::{Image, LinearGradient};
|
use style::computed::{Image, LinearGradient};
|
||||||
|
@ -881,7 +882,7 @@ impl FragmentDisplayListBuilding for Fragment {
|
||||||
renderer.deref().lock().send(SendPixelContents(sender));
|
renderer.deref().lock().send(SendPixelContents(sender));
|
||||||
receiver.recv()
|
receiver.recv()
|
||||||
},
|
},
|
||||||
None => Vec::from_elem(width * height * 4, 0xFFu8)
|
None => repeat(0xFFu8).take(width * height * 4).collect(),
|
||||||
};
|
};
|
||||||
|
|
||||||
let canvas_display_item = box ImageDisplayItem {
|
let canvas_display_item = box ImageDisplayItem {
|
||||||
|
|
|
@ -1256,11 +1256,24 @@ impl Fragment {
|
||||||
pub fn find_split_info_by_new_line(&self)
|
pub fn find_split_info_by_new_line(&self)
|
||||||
-> Option<(SplitInfo, Option<SplitInfo>, Arc<Box<TextRun>> /* TODO(bjz): remove */)> {
|
-> Option<(SplitInfo, Option<SplitInfo>, Arc<Box<TextRun>> /* TODO(bjz): remove */)> {
|
||||||
match self.specific {
|
match self.specific {
|
||||||
SpecificFragmentInfo::Canvas(_) | SpecificFragmentInfo::Generic | SpecificFragmentInfo::Iframe(_) | SpecificFragmentInfo::Image(_) | SpecificFragmentInfo::Table | SpecificFragmentInfo::TableCell |
|
SpecificFragmentInfo::Canvas(_) |
|
||||||
SpecificFragmentInfo::TableRow | SpecificFragmentInfo::TableWrapper => None,
|
SpecificFragmentInfo::Generic |
|
||||||
SpecificFragmentInfo::TableColumn(_) => panic!("Table column fragments do not need to split"),
|
SpecificFragmentInfo::Iframe(_) |
|
||||||
SpecificFragmentInfo::UnscannedText(_) => panic!("Unscanned text fragments should have been scanned by now!"),
|
SpecificFragmentInfo::Image(_) |
|
||||||
SpecificFragmentInfo::InlineBlock(_) | SpecificFragmentInfo::InlineAbsoluteHypothetical(_) => {
|
SpecificFragmentInfo::Table |
|
||||||
|
SpecificFragmentInfo::TableCell |
|
||||||
|
SpecificFragmentInfo::TableRow |
|
||||||
|
SpecificFragmentInfo::TableWrapper => {
|
||||||
|
None
|
||||||
|
}
|
||||||
|
SpecificFragmentInfo::TableColumn(_) => {
|
||||||
|
panic!("Table column fragments do not need to split")
|
||||||
|
}
|
||||||
|
SpecificFragmentInfo::UnscannedText(_) => {
|
||||||
|
panic!("Unscanned text fragments should have been scanned by now!")
|
||||||
|
}
|
||||||
|
SpecificFragmentInfo::InlineBlock(_) |
|
||||||
|
SpecificFragmentInfo::InlineAbsoluteHypothetical(_) => {
|
||||||
panic!("Inline blocks or inline absolute hypothetical fragments do not get split")
|
panic!("Inline blocks or inline absolute hypothetical fragments do not get split")
|
||||||
}
|
}
|
||||||
SpecificFragmentInfo::ScannedText(ref text_fragment_info) => {
|
SpecificFragmentInfo::ScannedText(ref text_fragment_info) => {
|
||||||
|
|
|
@ -4584,11 +4584,12 @@ class CGBindingRoot(CGThing):
|
||||||
'page::JSPageInfo',
|
'page::JSPageInfo',
|
||||||
'libc',
|
'libc',
|
||||||
'servo_util::str::DOMString',
|
'servo_util::str::DOMString',
|
||||||
'std::mem',
|
|
||||||
'std::cmp',
|
'std::cmp',
|
||||||
|
'std::iter::repeat',
|
||||||
|
'std::mem',
|
||||||
|
'std::num',
|
||||||
'std::ptr',
|
'std::ptr',
|
||||||
'std::str',
|
'std::str',
|
||||||
'std::num',
|
|
||||||
])
|
])
|
||||||
|
|
||||||
# Add the auto-generated comment.
|
# Add the auto-generated comment.
|
||||||
|
@ -4885,7 +4886,7 @@ class CallbackMember(CGNativeMember):
|
||||||
if self.argCount > 0:
|
if self.argCount > 0:
|
||||||
replacements["argCount"] = self.argCountStr
|
replacements["argCount"] = self.argCountStr
|
||||||
replacements["argvDecl"] = string.Template(
|
replacements["argvDecl"] = string.Template(
|
||||||
"let mut argv = Vec::from_elem(${argCount}, UndefinedValue());\n"
|
"let mut argv = repeat(UndefinedValue()).take(${argCount}).collect::<Vec<_>>();\n"
|
||||||
).substitute(replacements)
|
).substitute(replacements)
|
||||||
else:
|
else:
|
||||||
# Avoid weird 0-sized arrays
|
# Avoid weird 0-sized arrays
|
||||||
|
|
|
@ -342,93 +342,5 @@ impl<'a> CSSStyleDeclarationMethods for JSRef<'a, CSSStyleDeclaration> {
|
||||||
rval
|
rval
|
||||||
}
|
}
|
||||||
|
|
||||||
css_properties!(
|
css_properties_accessors!(css_properties)
|
||||||
[Color, SetColor, "color"],
|
|
||||||
[Background, SetBackground, "background"],
|
|
||||||
[BackgroundColor, SetBackgroundColor, "background-color"],
|
|
||||||
[BackgroundPosition, SetBackgroundPosition, "background-position"],
|
|
||||||
[BackgroundImage, SetBackgroundImage, "background-image"],
|
|
||||||
[BackgroundRepeat, SetBackgroundRepeat, "background-repeat"],
|
|
||||||
[BackgroundAttachment, SetBackgroundAttachment, "background-attachment"],
|
|
||||||
[Border, SetBorder, "border"],
|
|
||||||
[BorderColor, SetBorderColor, "border-color"],
|
|
||||||
[BorderRadius, SetBorderRadius, "border-radius"],
|
|
||||||
[BorderStyle, SetBorderStyle, "border-style"],
|
|
||||||
[BorderWidth, SetBorderWidth, "border-width"],
|
|
||||||
[BorderBottom, SetBorderBottom, "border-bottom"],
|
|
||||||
[BorderBottomColor, SetBorderBottomColor, "border-bottom-color"],
|
|
||||||
[BorderBottomStyle, SetBorderBottomStyle, "border-bottom-style"],
|
|
||||||
[BorderBottomWidth, SetBorderBottomWidth, "border-bottom-width"],
|
|
||||||
[BorderLeft, SetBorderLeft, "border-left"],
|
|
||||||
[BorderLeftColor, SetBorderLeftColor, "border-left-color"],
|
|
||||||
[BorderLeftStyle, SetBorderLeftStyle, "border-left-style"],
|
|
||||||
[BorderLeftWidth, SetBorderLeftWidth, "border-left-width"],
|
|
||||||
[BorderRight, SetBorderRight, "border-right"],
|
|
||||||
[BorderRightColor, SetBorderRightColor, "border-right-color"],
|
|
||||||
[BorderRightStyle, SetBorderRightStyle, "border-right-style"],
|
|
||||||
[BorderRightWidth, SetBorderRightWidth, "border-right-width"],
|
|
||||||
[BorderTop, SetBorderTop, "border-top"],
|
|
||||||
[BorderTopColor, SetBorderTopColor, "border-top-color"],
|
|
||||||
[BorderTopStyle, SetBorderTopStyle, "border-top-style"],
|
|
||||||
[BorderTopWidth, SetBorderTopWidth, "border-top-width"],
|
|
||||||
[Content, SetContent, "content"],
|
|
||||||
[Display, SetDisplay, "display"],
|
|
||||||
[Opacity, SetOpacity, "opacity"],
|
|
||||||
[Width, SetWidth, "width"],
|
|
||||||
[MinWidth, SetMinWidth, "min-width"],
|
|
||||||
[MaxWidth, SetMaxWidth, "max-width"],
|
|
||||||
[Height, SetHeight, "height"],
|
|
||||||
[MinHeight, SetMinHeight, "min-height"],
|
|
||||||
[MaxHeight, SetMaxHeight, "max-height"],
|
|
||||||
[Clear, SetClear, "clear"],
|
|
||||||
[Direction, SetDirection, "direction"],
|
|
||||||
[LineHeight, SetLineHeight, "line-height"],
|
|
||||||
[VerticalAlign, SetVerticalAlign, "vertical-align"],
|
|
||||||
[ListStyle, SetListStyle, "list-style"],
|
|
||||||
[ListStylePosition, SetListStylePosition, "list-style-position"],
|
|
||||||
[ListStyleType, SetListStyleType, "list-style-type"],
|
|
||||||
[ListStyleImage, SetListStyleImage, "list-style-image"],
|
|
||||||
[Visibility, SetVisibility, "visibility"],
|
|
||||||
[Cursor, SetCursor, "cursor"],
|
|
||||||
[BoxShadow, SetBoxShadow, "box-shadow"],
|
|
||||||
[BoxSizing, SetBoxSizing, "box-sizing"],
|
|
||||||
[Overflow, SetOverflow, "overflow"],
|
|
||||||
[OverflowWrap, SetOverflowWrap, "overflow-wrap"],
|
|
||||||
[TableLayout, SetTableLayout, "table-layout"],
|
|
||||||
[EmptyCells, SetEmptyCells, "empty-cells"],
|
|
||||||
[CaptionSide, SetCaptionSide, "caption-side"],
|
|
||||||
[WhiteSpace, SetWhiteSpace, "white-space"],
|
|
||||||
[WritingMode, SetWritingMode, "writing-mode"],
|
|
||||||
[LetterSpacing, SetLetterSpacing, "letter-spacing"],
|
|
||||||
[WordSpacing, SetWordSpacing, "word-spacing"],
|
|
||||||
[WordWrap, SetWordWrap, "word-wrap"],
|
|
||||||
[TextAlign, SetTextAlign, "text-align"],
|
|
||||||
[TextDecoration, SetTextDecoration, "text-decoration"],
|
|
||||||
[TextIndent, SetTextIndent, "text-indent"],
|
|
||||||
[TextOrientation, SetTextOrientation, "text-orientation"],
|
|
||||||
[TextTransform, SetTextTransform, "text-transform"],
|
|
||||||
[Font, SetFont, "font"],
|
|
||||||
[FontFamily, SetFontFamily, "font-family"],
|
|
||||||
[FontSize, SetFontSize, "font-size"],
|
|
||||||
[FontStyle, SetFontStyle, "font-style"],
|
|
||||||
[FontVariant, SetFontVariant, "font-variant"],
|
|
||||||
[FontWeight, SetFontWeight, "font-weight"],
|
|
||||||
[Margin, SetMargin, "margin"],
|
|
||||||
[MarginBottom, SetMarginBottom, "margin-bottom"],
|
|
||||||
[MarginLeft, SetMarginLeft, "margin-left"],
|
|
||||||
[MarginRight, SetMarginRight, "margin-right"],
|
|
||||||
[MarginTop, SetMarginTop, "margin-top"],
|
|
||||||
[Padding, SetPadding, "padding"],
|
|
||||||
[PaddingBottom, SetPaddingBottom, "padding-bottom"],
|
|
||||||
[PaddingLeft, SetPaddingLeft, "padding-left"],
|
|
||||||
[PaddingRight, SetPaddingRight, "padding-right"],
|
|
||||||
[PaddingTop, SetPaddingTop, "padding-top"],
|
|
||||||
[Outline, SetOutline, "outline"],
|
|
||||||
[Position, SetPosition, "position"],
|
|
||||||
[Bottom, SetBottom, "bottom"],
|
|
||||||
[Left, SetLeft, "left"],
|
|
||||||
[Right, SetRight, "right"],
|
|
||||||
[Top, SetTop, "top"],
|
|
||||||
[ZIndex, SetZIndex, "z-index"]
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -111,7 +111,9 @@ impl Element {
|
||||||
create_element(name, prefix, document, creator)
|
create_element(name, prefix, document, creator)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn new_inherited(type_id: ElementTypeId, local_name: DOMString, namespace: Namespace, prefix: Option<DOMString>, document: JSRef<Document>) -> Element {
|
pub fn new_inherited(type_id: ElementTypeId, local_name: DOMString,
|
||||||
|
namespace: Namespace, prefix: Option<DOMString>,
|
||||||
|
document: JSRef<Document>) -> Element {
|
||||||
Element {
|
Element {
|
||||||
node: Node::new_inherited(NodeTypeId::Element(type_id), document),
|
node: Node::new_inherited(NodeTypeId::Element(type_id), document),
|
||||||
local_name: Atom::from_slice(local_name.as_slice()),
|
local_name: Atom::from_slice(local_name.as_slice()),
|
||||||
|
|
|
@ -46,6 +46,8 @@ partial interface CSSStyleDeclaration {
|
||||||
[TreatNullAs=EmptyString] attribute DOMString borderWidth;
|
[TreatNullAs=EmptyString] attribute DOMString borderWidth;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString borderBottom;
|
[TreatNullAs=EmptyString] attribute DOMString borderBottom;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString borderBottomColor;
|
[TreatNullAs=EmptyString] attribute DOMString borderBottomColor;
|
||||||
|
[TreatNullAs=EmptyString] attribute DOMString borderBottomLeftRadius;
|
||||||
|
[TreatNullAs=EmptyString] attribute DOMString borderBottomRightRadius;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString borderBottomStyle;
|
[TreatNullAs=EmptyString] attribute DOMString borderBottomStyle;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString borderBottomWidth;
|
[TreatNullAs=EmptyString] attribute DOMString borderBottomWidth;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString borderLeft;
|
[TreatNullAs=EmptyString] attribute DOMString borderLeft;
|
||||||
|
@ -58,6 +60,8 @@ partial interface CSSStyleDeclaration {
|
||||||
[TreatNullAs=EmptyString] attribute DOMString borderRightWidth;
|
[TreatNullAs=EmptyString] attribute DOMString borderRightWidth;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString borderTop;
|
[TreatNullAs=EmptyString] attribute DOMString borderTop;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString borderTopColor;
|
[TreatNullAs=EmptyString] attribute DOMString borderTopColor;
|
||||||
|
[TreatNullAs=EmptyString] attribute DOMString borderTopLeftRadius;
|
||||||
|
[TreatNullAs=EmptyString] attribute DOMString borderTopRightRadius;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString borderTopStyle;
|
[TreatNullAs=EmptyString] attribute DOMString borderTopStyle;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString borderTopWidth;
|
[TreatNullAs=EmptyString] attribute DOMString borderTopWidth;
|
||||||
|
|
||||||
|
@ -80,10 +84,16 @@ partial interface CSSStyleDeclaration {
|
||||||
|
|
||||||
[TreatNullAs=EmptyString] attribute DOMString clear;
|
[TreatNullAs=EmptyString] attribute DOMString clear;
|
||||||
|
|
||||||
|
[TreatNullAs=EmptyString] attribute DOMString clip;
|
||||||
|
|
||||||
[TreatNullAs=EmptyString] attribute DOMString direction;
|
[TreatNullAs=EmptyString] attribute DOMString direction;
|
||||||
|
|
||||||
|
[TreatNullAs=EmptyString] attribute DOMString filter;
|
||||||
|
|
||||||
[TreatNullAs=EmptyString] attribute DOMString lineHeight;
|
[TreatNullAs=EmptyString] attribute DOMString lineHeight;
|
||||||
|
|
||||||
|
[TreatNullAs=EmptyString] attribute DOMString mixBlendMode;
|
||||||
|
|
||||||
[TreatNullAs=EmptyString] attribute DOMString verticalAlign;
|
[TreatNullAs=EmptyString] attribute DOMString verticalAlign;
|
||||||
|
|
||||||
[TreatNullAs=EmptyString] attribute DOMString listStyle;
|
[TreatNullAs=EmptyString] attribute DOMString listStyle;
|
||||||
|
@ -103,6 +113,7 @@ partial interface CSSStyleDeclaration {
|
||||||
[TreatNullAs=EmptyString] attribute DOMString writingMode;
|
[TreatNullAs=EmptyString] attribute DOMString writingMode;
|
||||||
|
|
||||||
[TreatNullAs=EmptyString] attribute DOMString letterSpacing;
|
[TreatNullAs=EmptyString] attribute DOMString letterSpacing;
|
||||||
|
[TreatNullAs=EmptyString] attribute DOMString wordBreak;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString wordSpacing;
|
[TreatNullAs=EmptyString] attribute DOMString wordSpacing;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString wordWrap;
|
[TreatNullAs=EmptyString] attribute DOMString wordWrap;
|
||||||
|
|
||||||
|
@ -110,6 +121,7 @@ partial interface CSSStyleDeclaration {
|
||||||
[TreatNullAs=EmptyString] attribute DOMString textDecoration;
|
[TreatNullAs=EmptyString] attribute DOMString textDecoration;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString textIndent;
|
[TreatNullAs=EmptyString] attribute DOMString textIndent;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString textOrientation;
|
[TreatNullAs=EmptyString] attribute DOMString textOrientation;
|
||||||
|
[TreatNullAs=EmptyString] attribute DOMString textRendering;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString textTransform;
|
[TreatNullAs=EmptyString] attribute DOMString textTransform;
|
||||||
|
|
||||||
[TreatNullAs=EmptyString] attribute DOMString font;
|
[TreatNullAs=EmptyString] attribute DOMString font;
|
||||||
|
@ -132,9 +144,15 @@ partial interface CSSStyleDeclaration {
|
||||||
[TreatNullAs=EmptyString] attribute DOMString paddingTop;
|
[TreatNullAs=EmptyString] attribute DOMString paddingTop;
|
||||||
|
|
||||||
[TreatNullAs=EmptyString] attribute DOMString outline;
|
[TreatNullAs=EmptyString] attribute DOMString outline;
|
||||||
|
[TreatNullAs=EmptyString] attribute DOMString outlineColor;
|
||||||
|
[TreatNullAs=EmptyString] attribute DOMString outlineStyle;
|
||||||
|
[TreatNullAs=EmptyString] attribute DOMString outlineWidth;
|
||||||
|
[TreatNullAs=EmptyString] attribute DOMString outlineOffset;
|
||||||
|
|
||||||
[TreatNullAs=EmptyString] attribute DOMString position;
|
[TreatNullAs=EmptyString] attribute DOMString position;
|
||||||
|
|
||||||
|
[TreatNullAs=EmptyString] attribute DOMString pointerEvents;
|
||||||
|
|
||||||
[TreatNullAs=EmptyString] attribute DOMString top;
|
[TreatNullAs=EmptyString] attribute DOMString top;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString right;
|
[TreatNullAs=EmptyString] attribute DOMString right;
|
||||||
[TreatNullAs=EmptyString] attribute DOMString left;
|
[TreatNullAs=EmptyString] attribute DOMString left;
|
||||||
|
|
|
@ -35,6 +35,7 @@ extern crate script_traits;
|
||||||
extern crate "plugins" as servo_plugins;
|
extern crate "plugins" as servo_plugins;
|
||||||
extern crate "net" as servo_net;
|
extern crate "net" as servo_net;
|
||||||
extern crate "util" as servo_util;
|
extern crate "util" as servo_util;
|
||||||
|
#[phase(plugin, link)]
|
||||||
extern crate style;
|
extern crate style;
|
||||||
extern crate "msg" as servo_msg;
|
extern crate "msg" as servo_msg;
|
||||||
extern crate url;
|
extern crate url;
|
||||||
|
|
|
@ -27,8 +27,8 @@ path = "../../tests/contenttest.rs"
|
||||||
harness = false
|
harness = false
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = ["glfw_app"]
|
default = ["glutin_app"]
|
||||||
glutin = ["glutin_app"]
|
glfw = ["glfw_app"]
|
||||||
|
|
||||||
[dependencies.compositing]
|
[dependencies.compositing]
|
||||||
path = "../compositing"
|
path = "../compositing"
|
||||||
|
|
|
@ -14,9 +14,9 @@ extern crate servo;
|
||||||
extern crate time;
|
extern crate time;
|
||||||
extern crate "util" as servo_util;
|
extern crate "util" as servo_util;
|
||||||
|
|
||||||
#[cfg(all(feature = "glutin",not(test)))]
|
#[cfg(all(feature = "glutin_app",not(test)))]
|
||||||
extern crate "glutin_app" as app;
|
extern crate "glutin_app" as app;
|
||||||
#[cfg(all(feature = "glfw_app",not(test)))]
|
#[cfg(all(feature = "glfw",not(test)))]
|
||||||
extern crate "glfw_app" as app;
|
extern crate "glfw_app" as app;
|
||||||
|
|
||||||
#[cfg(not(test))]
|
#[cfg(not(test))]
|
||||||
|
|
|
@ -39,14 +39,14 @@ def to_rust_ident(name):
|
||||||
name += "_"
|
name += "_"
|
||||||
return name
|
return name
|
||||||
|
|
||||||
|
def to_camel_case(ident):
|
||||||
|
return re.sub("_([a-z])", lambda m: m.group(1).upper(), ident.strip("_").capitalize())
|
||||||
|
|
||||||
class Longhand(object):
|
class Longhand(object):
|
||||||
def __init__(self, name, derived_from=None, experimental=False):
|
def __init__(self, name, derived_from=None, experimental=False):
|
||||||
self.name = name
|
self.name = name
|
||||||
self.ident = to_rust_ident(name)
|
self.ident = to_rust_ident(name)
|
||||||
self.camel_case, _ = re.subn(
|
self.camel_case = to_camel_case(self.ident)
|
||||||
"_([a-z])",
|
|
||||||
lambda m: m.group(1).upper(),
|
|
||||||
self.ident.strip("_").capitalize())
|
|
||||||
self.style_struct = THIS_STYLE_STRUCT
|
self.style_struct = THIS_STYLE_STRUCT
|
||||||
self.experimental = experimental
|
self.experimental = experimental
|
||||||
if derived_from is None:
|
if derived_from is None:
|
||||||
|
@ -58,6 +58,8 @@ class Shorthand(object):
|
||||||
def __init__(self, name, sub_properties):
|
def __init__(self, name, sub_properties):
|
||||||
self.name = name
|
self.name = name
|
||||||
self.ident = to_rust_ident(name)
|
self.ident = to_rust_ident(name)
|
||||||
|
self.camel_case = to_camel_case(self.ident)
|
||||||
|
self.derived_from = None
|
||||||
self.sub_properties = [LONGHANDS_BY_NAME[s] for s in sub_properties]
|
self.sub_properties = [LONGHANDS_BY_NAME[s] for s in sub_properties]
|
||||||
|
|
||||||
class StyleStruct(object):
|
class StyleStruct(object):
|
||||||
|
@ -3358,16 +3360,32 @@ pub fn make_inline(style: &ComputedValues) -> ComputedValues {
|
||||||
|
|
||||||
pub fn is_supported_property(property: &str) -> bool {
|
pub fn is_supported_property(property: &str) -> bool {
|
||||||
match property {
|
match property {
|
||||||
% for property in SHORTHANDS:
|
% for property in SHORTHANDS + LONGHANDS:
|
||||||
"${property.name}" => true,
|
|
||||||
% endfor
|
|
||||||
% for property in LONGHANDS:
|
|
||||||
"${property.name}" => true,
|
"${property.name}" => true,
|
||||||
% endfor
|
% endfor
|
||||||
_ => false,
|
_ => false,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[macro_export]
|
||||||
|
macro_rules! css_properties_accessors(
|
||||||
|
($macro: ident) => (
|
||||||
|
$macro!(
|
||||||
|
% for property in SHORTHANDS + LONGHANDS:
|
||||||
|
## Servo internal CSS properties are not accessible.
|
||||||
|
## FIXME: Add BinaryName WebIDL annotation (#4435).
|
||||||
|
% if property.derived_from is None and property.name != "float":
|
||||||
|
% if property != LONGHANDS[-1]:
|
||||||
|
[${property.camel_case}, Set${property.camel_case}, "${property.name}"],
|
||||||
|
% else:
|
||||||
|
[${property.camel_case}, Set${property.camel_case}, "${property.name}"]
|
||||||
|
% endif
|
||||||
|
% endif
|
||||||
|
% endfor
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
pub fn longhands_from_shorthand(shorthand: &str) -> Option<Vec<String>> {
|
pub fn longhands_from_shorthand(shorthand: &str) -> Option<Vec<String>> {
|
||||||
match shorthand {
|
match shorthand {
|
||||||
% for property in SHORTHANDS:
|
% for property in SHORTHANDS:
|
||||||
|
|
|
@ -6,6 +6,7 @@ use std::collections::HashMap;
|
||||||
use std::collections::hash_map::{Occupied, Vacant};
|
use std::collections::hash_map::{Occupied, Vacant};
|
||||||
use rand::Rng;
|
use rand::Rng;
|
||||||
use std::hash::{Hash, sip};
|
use std::hash::{Hash, sip};
|
||||||
|
use std::iter::repeat;
|
||||||
use std::rand::task_rng;
|
use std::rand::task_rng;
|
||||||
use std::slice::Items;
|
use std::slice::Items;
|
||||||
|
|
||||||
|
@ -148,7 +149,7 @@ impl<K:Clone+PartialEq+Hash,V:Clone> SimpleHashCache<K,V> {
|
||||||
pub fn new(cache_size: uint) -> SimpleHashCache<K,V> {
|
pub fn new(cache_size: uint) -> SimpleHashCache<K,V> {
|
||||||
let mut r = task_rng();
|
let mut r = task_rng();
|
||||||
SimpleHashCache {
|
SimpleHashCache {
|
||||||
entries: Vec::from_elem(cache_size, None),
|
entries: repeat(None).take(cache_size).collect(),
|
||||||
k0: r.gen(),
|
k0: r.gen(),
|
||||||
k1: r.gen(),
|
k1: r.gen(),
|
||||||
}
|
}
|
||||||
|
|
|
@ -531,7 +531,10 @@ pub mod tests {
|
||||||
let mut v = SmallVec16::new();
|
let mut v = SmallVec16::new();
|
||||||
v.push("hello".into_string());
|
v.push("hello".into_string());
|
||||||
v.push("there".into_string());
|
v.push("there".into_string());
|
||||||
assert_eq!(v.as_slice(), vec!["hello".into_string(), "there".into_string()].as_slice());
|
assert_eq!(v.as_slice(), vec![
|
||||||
|
"hello".into_string(),
|
||||||
|
"there".into_string(),
|
||||||
|
].as_slice());
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
|
@ -541,7 +544,12 @@ pub mod tests {
|
||||||
v.push("there".into_string());
|
v.push("there".into_string());
|
||||||
v.push("burma".into_string());
|
v.push("burma".into_string());
|
||||||
v.push("shave".into_string());
|
v.push("shave".into_string());
|
||||||
assert_eq!(v.as_slice(), vec!["hello".into_string(), "there".into_string(), "burma".into_string(), "shave".into_string()].as_slice());
|
assert_eq!(v.as_slice(), vec![
|
||||||
|
"hello".into_string(),
|
||||||
|
"there".into_string(),
|
||||||
|
"burma".into_string(),
|
||||||
|
"shave".into_string(),
|
||||||
|
].as_slice());
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
|
@ -556,7 +564,14 @@ pub mod tests {
|
||||||
v.push("burma".into_string());
|
v.push("burma".into_string());
|
||||||
v.push("shave".into_string());
|
v.push("shave".into_string());
|
||||||
assert_eq!(v.as_slice(), vec![
|
assert_eq!(v.as_slice(), vec![
|
||||||
"hello".into_string(), "there".into_string(), "burma".into_string(), "shave".into_string(), "hello".into_string(), "there".into_string(), "burma".into_string(), "shave".into_string(),
|
"hello".into_string(),
|
||||||
|
"there".into_string(),
|
||||||
|
"burma".into_string(),
|
||||||
|
"shave".into_string(),
|
||||||
|
"hello".into_string(),
|
||||||
|
"there".into_string(),
|
||||||
|
"burma".into_string(),
|
||||||
|
"shave".into_string(),
|
||||||
].as_slice());
|
].as_slice());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
49
ports/cef/Cargo.lock
generated
49
ports/cef/Cargo.lock
generated
|
@ -9,8 +9,7 @@ dependencies = [
|
||||||
"devtools 0.0.1",
|
"devtools 0.0.1",
|
||||||
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
|
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
|
||||||
"gfx 0.0.1",
|
"gfx 0.0.1",
|
||||||
"glfw 0.0.1 (git+https://github.com/servo/glfw-rs?ref=servo)",
|
"glutin_app 0.0.1",
|
||||||
"glfw_app 0.0.1",
|
|
||||||
"js 0.1.0 (git+https://github.com/servo/rust-mozjs)",
|
"js 0.1.0 (git+https://github.com/servo/rust-mozjs)",
|
||||||
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
|
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
|
||||||
"msg 0.0.1",
|
"msg 0.0.1",
|
||||||
|
@ -24,6 +23,14 @@ dependencies = [
|
||||||
"util 0.0.1",
|
"util 0.0.1",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "android_glue"
|
||||||
|
version = "0.0.1"
|
||||||
|
source = "git+https://github.com/servo/android-rs-glue?ref=servo#122bc28545b5e59a923c466a484c403fa691bd55"
|
||||||
|
dependencies = [
|
||||||
|
"compile_msg 0.1.3 (git+https://github.com/huonw/compile_msg)",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "azure"
|
name = "azure"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
|
@ -61,6 +68,11 @@ name = "cocoa"
|
||||||
version = "0.1.1"
|
version = "0.1.1"
|
||||||
source = "git+https://github.com/servo/rust-cocoa#bf53a53ce306279fc1cae0d56fdd5e7216696420"
|
source = "git+https://github.com/servo/rust-cocoa#bf53a53ce306279fc1cae0d56fdd5e7216696420"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "compile_msg"
|
||||||
|
version = "0.1.3"
|
||||||
|
source = "git+https://github.com/huonw/compile_msg#b19da50cacf5b11bbc065da6b449f6b4fe7c019a"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "compositing"
|
name = "compositing"
|
||||||
version = "0.0.1"
|
version = "0.0.1"
|
||||||
|
@ -327,6 +339,34 @@ dependencies = [
|
||||||
"util 0.0.1",
|
"util 0.0.1",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "glutin"
|
||||||
|
version = "0.0.2"
|
||||||
|
source = "git+https://github.com/servo/glutin?ref=servo#db27370a1cbafcbfcaeee52a44076a61b3e0573c"
|
||||||
|
dependencies = [
|
||||||
|
"android_glue 0.0.1 (git+https://github.com/servo/android-rs-glue?ref=servo)",
|
||||||
|
"cocoa 0.1.1 (git+https://github.com/servo/rust-cocoa)",
|
||||||
|
"core_graphics 0.1.0 (git+https://github.com/servo/rust-core-graphics)",
|
||||||
|
"gl_common 0.0.1 (git+https://github.com/bjz/gl-rs.git)",
|
||||||
|
"gl_generator 0.0.1 (git+https://github.com/bjz/gl-rs.git)",
|
||||||
|
"winapi 0.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "glutin_app"
|
||||||
|
version = "0.0.1"
|
||||||
|
dependencies = [
|
||||||
|
"cgl 0.0.1 (git+https://github.com/servo/rust-cgl)",
|
||||||
|
"compositing 0.0.1",
|
||||||
|
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
|
||||||
|
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
|
||||||
|
"glutin 0.0.2 (git+https://github.com/servo/glutin?ref=servo)",
|
||||||
|
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
|
||||||
|
"msg 0.0.1",
|
||||||
|
"time 0.1.0 (git+https://github.com/rust-lang/time)",
|
||||||
|
"util 0.0.1",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "glx"
|
name = "glx"
|
||||||
version = "0.0.1"
|
version = "0.0.1"
|
||||||
|
@ -726,6 +766,11 @@ name = "uuid"
|
||||||
version = "0.1.1"
|
version = "0.1.1"
|
||||||
source = "git+https://github.com/rust-lang/uuid#fc793c974a25c126c5cf5daa3b18973512a7a6a0"
|
source = "git+https://github.com/rust-lang/uuid#fc793c974a25c126c5cf5daa3b18973512a7a6a0"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "winapi"
|
||||||
|
version = "0.0.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "xlib"
|
name = "xlib"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
|
|
|
@ -11,8 +11,8 @@ crate-type = ["dylib"]
|
||||||
[dependencies.servo]
|
[dependencies.servo]
|
||||||
path = "../../components/servo"
|
path = "../../components/servo"
|
||||||
|
|
||||||
[dependencies.glfw_app]
|
[dependencies.glutin_app]
|
||||||
path = "../glfw"
|
path = "../glutin"
|
||||||
|
|
||||||
[dependencies.plugins]
|
[dependencies.plugins]
|
||||||
path = "../../components/plugins"
|
path = "../../components/plugins"
|
||||||
|
@ -44,10 +44,6 @@ git = "https://github.com/servo/rust-azure"
|
||||||
[dependencies.geom]
|
[dependencies.geom]
|
||||||
git = "https://github.com/servo/rust-geom"
|
git = "https://github.com/servo/rust-geom"
|
||||||
|
|
||||||
[dependencies.glfw]
|
|
||||||
git = "https://github.com/servo/glfw-rs"
|
|
||||||
branch = "servo"
|
|
||||||
|
|
||||||
[dependencies.js]
|
[dependencies.js]
|
||||||
git = "https://github.com/servo/rust-mozjs"
|
git = "https://github.com/servo/rust-mozjs"
|
||||||
|
|
||||||
|
|
|
@ -13,16 +13,18 @@ use types::{cef_browser_settings_t, cef_string_t, cef_window_info_t};
|
||||||
use window;
|
use window;
|
||||||
|
|
||||||
use compositing::windowing::{WindowNavigateMsg, WindowEvent};
|
use compositing::windowing::{WindowNavigateMsg, WindowEvent};
|
||||||
use glfw_app;
|
use glutin_app;
|
||||||
use libc::c_int;
|
use libc::c_int;
|
||||||
use servo_util::opts;
|
use servo_util::opts;
|
||||||
use std::cell::{Cell, RefCell};
|
use std::cell::{Cell, RefCell};
|
||||||
|
use std::sync::atomic::{AtomicInt, SeqCst};
|
||||||
|
|
||||||
|
thread_local!(pub static ID_COUNTER: AtomicInt = AtomicInt::new(0))
|
||||||
thread_local!(pub static BROWSERS: RefCell<Vec<CefBrowser>> = RefCell::new(vec!()))
|
thread_local!(pub static BROWSERS: RefCell<Vec<CefBrowser>> = RefCell::new(vec!()))
|
||||||
|
|
||||||
pub enum ServoBrowser {
|
pub enum ServoBrowser {
|
||||||
Invalid,
|
Invalid,
|
||||||
OnScreen(Browser<glfw_app::window::Window>),
|
OnScreen(Browser<glutin_app::window::Window>),
|
||||||
OffScreen(Browser<window::Window>),
|
OffScreen(Browser<window::Window>),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -83,6 +85,7 @@ pub struct ServoCefBrowser {
|
||||||
/// Whether the on-created callback has fired yet.
|
/// Whether the on-created callback has fired yet.
|
||||||
pub callback_executed: Cell<bool>,
|
pub callback_executed: Cell<bool>,
|
||||||
|
|
||||||
|
id: int,
|
||||||
servo_browser: RefCell<ServoBrowser>,
|
servo_browser: RefCell<ServoBrowser>,
|
||||||
message_queue: RefCell<Vec<WindowEvent>>,
|
message_queue: RefCell<Vec<WindowEvent>>,
|
||||||
}
|
}
|
||||||
|
@ -93,13 +96,17 @@ impl ServoCefBrowser {
|
||||||
let host = ServoCefBrowserHost::new(client.clone()).as_cef_interface();
|
let host = ServoCefBrowserHost::new(client.clone()).as_cef_interface();
|
||||||
|
|
||||||
let servo_browser = if window_info.windowless_rendering_enabled == 0 {
|
let servo_browser = if window_info.windowless_rendering_enabled == 0 {
|
||||||
let glfw_window = glfw_app::create_window();
|
let glutin_window = glutin_app::create_window();
|
||||||
let servo_browser = Browser::new(Some(glfw_window.clone()));
|
let servo_browser = Browser::new(Some(glutin_window.clone()));
|
||||||
ServoBrowser::OnScreen(servo_browser)
|
ServoBrowser::OnScreen(servo_browser)
|
||||||
} else {
|
} else {
|
||||||
ServoBrowser::Invalid
|
ServoBrowser::Invalid
|
||||||
};
|
};
|
||||||
|
|
||||||
|
let id = ID_COUNTER.with(|counter| {
|
||||||
|
counter.fetch_add(1, SeqCst)
|
||||||
|
});
|
||||||
|
|
||||||
ServoCefBrowser {
|
ServoCefBrowser {
|
||||||
frame: frame,
|
frame: frame,
|
||||||
host: host,
|
host: host,
|
||||||
|
@ -107,6 +114,7 @@ impl ServoCefBrowser {
|
||||||
callback_executed: Cell::new(false),
|
callback_executed: Cell::new(false),
|
||||||
servo_browser: RefCell::new(servo_browser),
|
servo_browser: RefCell::new(servo_browser),
|
||||||
message_queue: RefCell::new(vec!()),
|
message_queue: RefCell::new(vec!()),
|
||||||
|
id: id,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -170,6 +178,15 @@ pub fn update() {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn close(browser: CefBrowser) {
|
||||||
|
BROWSERS.with(|browsers| {
|
||||||
|
let mut browsers = browsers.borrow_mut();
|
||||||
|
browsers.iter()
|
||||||
|
.position(|&ref n| n.downcast().id == browser.downcast().id)
|
||||||
|
.map(|e| browsers.remove(e));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
pub fn browser_callback_after_created(browser: CefBrowser) {
|
pub fn browser_callback_after_created(browser: CefBrowser) {
|
||||||
if browser.downcast().client.is_null_cef_object() {
|
if browser.downcast().client.is_null_cef_object() {
|
||||||
return
|
return
|
||||||
|
|
|
@ -6,7 +6,7 @@ use eutil::Downcast;
|
||||||
use interfaces::{CefBrowser, CefBrowserHost, CefClient, cef_browser_host_t, cef_client_t};
|
use interfaces::{CefBrowser, CefBrowserHost, CefClient, cef_browser_host_t, cef_client_t};
|
||||||
use types::{cef_mouse_button_type_t, cef_mouse_event, cef_rect_t, cef_key_event};
|
use types::{cef_mouse_button_type_t, cef_mouse_event, cef_rect_t, cef_key_event};
|
||||||
use types::cef_key_event_type_t::{KEYEVENT_CHAR, KEYEVENT_KEYDOWN, KEYEVENT_KEYUP, KEYEVENT_RAWKEYDOWN};
|
use types::cef_key_event_type_t::{KEYEVENT_CHAR, KEYEVENT_KEYDOWN, KEYEVENT_KEYUP, KEYEVENT_RAWKEYDOWN};
|
||||||
use browser::ServoCefBrowserExtensions;
|
use browser::{mod, ServoCefBrowserExtensions};
|
||||||
|
|
||||||
use compositing::windowing::{WindowEvent, MouseWindowEvent};
|
use compositing::windowing::{WindowEvent, MouseWindowEvent};
|
||||||
use geom::point::TypedPoint2D;
|
use geom::point::TypedPoint2D;
|
||||||
|
@ -37,8 +37,8 @@ cef_class_impl! {
|
||||||
this.downcast().send_window_event(WindowEvent::Resize(size));
|
this.downcast().send_window_event(WindowEvent::Resize(size));
|
||||||
}
|
}
|
||||||
|
|
||||||
fn close_browser(&_this, _force: c_int) -> () {
|
fn close_browser(&this, _force: c_int) -> () {
|
||||||
// TODO: Clean shutdown.
|
browser::close(this.downcast().browser.borrow_mut().take().unwrap());
|
||||||
}
|
}
|
||||||
|
|
||||||
fn send_focus_event(&this, focus: c_int) -> () {
|
fn send_focus_event(&this, focus: c_int) -> () {
|
||||||
|
|
|
@ -20,8 +20,7 @@ extern crate azure;
|
||||||
extern crate geom;
|
extern crate geom;
|
||||||
extern crate gfx;
|
extern crate gfx;
|
||||||
extern crate gleam;
|
extern crate gleam;
|
||||||
extern crate glfw;
|
extern crate glutin_app;
|
||||||
extern crate glfw_app;
|
|
||||||
extern crate js;
|
extern crate js;
|
||||||
extern crate layers;
|
extern crate layers;
|
||||||
extern crate png;
|
extern crate png;
|
||||||
|
|
|
@ -377,12 +377,85 @@ fn glutin_mods_to_script_mods(modifiers: KeyModifiers) -> constellation_msg::Key
|
||||||
fn glutin_key_to_script_key(key: glutin::VirtualKeyCode) -> Result<constellation_msg::Key, ()> {
|
fn glutin_key_to_script_key(key: glutin::VirtualKeyCode) -> Result<constellation_msg::Key, ()> {
|
||||||
// TODO(negge): add more key mappings
|
// TODO(negge): add more key mappings
|
||||||
match key {
|
match key {
|
||||||
|
VirtualKeyCode::A => Ok(Key::A),
|
||||||
|
VirtualKeyCode::B => Ok(Key::B),
|
||||||
|
VirtualKeyCode::C => Ok(Key::C),
|
||||||
|
VirtualKeyCode::D => Ok(Key::D),
|
||||||
|
VirtualKeyCode::E => Ok(Key::E),
|
||||||
|
VirtualKeyCode::F => Ok(Key::F),
|
||||||
|
VirtualKeyCode::G => Ok(Key::G),
|
||||||
|
VirtualKeyCode::H => Ok(Key::H),
|
||||||
|
VirtualKeyCode::I => Ok(Key::I),
|
||||||
|
VirtualKeyCode::J => Ok(Key::J),
|
||||||
|
VirtualKeyCode::K => Ok(Key::K),
|
||||||
|
VirtualKeyCode::L => Ok(Key::L),
|
||||||
|
VirtualKeyCode::M => Ok(Key::M),
|
||||||
|
VirtualKeyCode::N => Ok(Key::N),
|
||||||
|
VirtualKeyCode::O => Ok(Key::O),
|
||||||
|
VirtualKeyCode::P => Ok(Key::P),
|
||||||
|
VirtualKeyCode::Q => Ok(Key::Q),
|
||||||
|
VirtualKeyCode::R => Ok(Key::R),
|
||||||
|
VirtualKeyCode::S => Ok(Key::S),
|
||||||
|
VirtualKeyCode::T => Ok(Key::T),
|
||||||
|
VirtualKeyCode::U => Ok(Key::U),
|
||||||
|
VirtualKeyCode::V => Ok(Key::V),
|
||||||
|
VirtualKeyCode::W => Ok(Key::W),
|
||||||
|
VirtualKeyCode::X => Ok(Key::X),
|
||||||
|
VirtualKeyCode::Y => Ok(Key::Y),
|
||||||
|
VirtualKeyCode::Z => Ok(Key::Z),
|
||||||
|
|
||||||
|
VirtualKeyCode::Numpad0 => Ok(Key::Num0),
|
||||||
|
VirtualKeyCode::Numpad1 => Ok(Key::Num1),
|
||||||
|
VirtualKeyCode::Numpad2 => Ok(Key::Num2),
|
||||||
|
VirtualKeyCode::Numpad3 => Ok(Key::Num3),
|
||||||
|
VirtualKeyCode::Numpad4 => Ok(Key::Num4),
|
||||||
|
VirtualKeyCode::Numpad5 => Ok(Key::Num5),
|
||||||
|
VirtualKeyCode::Numpad6 => Ok(Key::Num6),
|
||||||
|
VirtualKeyCode::Numpad7 => Ok(Key::Num7),
|
||||||
|
VirtualKeyCode::Numpad8 => Ok(Key::Num8),
|
||||||
|
VirtualKeyCode::Numpad9 => Ok(Key::Num9),
|
||||||
|
|
||||||
|
VirtualKeyCode::Key0 => Ok(Key::Kp0),
|
||||||
|
VirtualKeyCode::Key1 => Ok(Key::Kp1),
|
||||||
|
VirtualKeyCode::Key2 => Ok(Key::Kp2),
|
||||||
|
VirtualKeyCode::Key3 => Ok(Key::Kp3),
|
||||||
|
VirtualKeyCode::Key4 => Ok(Key::Kp4),
|
||||||
|
VirtualKeyCode::Key5 => Ok(Key::Kp5),
|
||||||
|
VirtualKeyCode::Key6 => Ok(Key::Kp6),
|
||||||
|
VirtualKeyCode::Key7 => Ok(Key::Kp7),
|
||||||
|
VirtualKeyCode::Key8 => Ok(Key::Kp8),
|
||||||
|
VirtualKeyCode::Key9 => Ok(Key::Kp9),
|
||||||
|
|
||||||
|
VirtualKeyCode::Return => Ok(Key::Enter),
|
||||||
|
VirtualKeyCode::Space => Ok(Key::Space),
|
||||||
VirtualKeyCode::Escape => Ok(Key::Escape),
|
VirtualKeyCode::Escape => Ok(Key::Escape),
|
||||||
VirtualKeyCode::Equals => Ok(Key::Equal),
|
VirtualKeyCode::Equals => Ok(Key::Equal),
|
||||||
VirtualKeyCode::Minus => Ok(Key::Minus),
|
VirtualKeyCode::Minus => Ok(Key::Minus),
|
||||||
VirtualKeyCode::Back => Ok(Key::Backspace),
|
VirtualKeyCode::Back => Ok(Key::Backspace),
|
||||||
VirtualKeyCode::PageDown => Ok(Key::PageDown),
|
VirtualKeyCode::PageDown => Ok(Key::PageDown),
|
||||||
VirtualKeyCode::PageUp => Ok(Key::PageUp),
|
VirtualKeyCode::PageUp => Ok(Key::PageUp),
|
||||||
|
|
||||||
|
VirtualKeyCode::Insert => Ok(Key::Insert),
|
||||||
|
VirtualKeyCode::Home => Ok(Key::Home),
|
||||||
|
VirtualKeyCode::Delete => Ok(Key::Delete),
|
||||||
|
VirtualKeyCode::End => Ok(Key::End),
|
||||||
|
|
||||||
|
VirtualKeyCode::Left => Ok(Key::Left),
|
||||||
|
VirtualKeyCode::Up => Ok(Key::Up),
|
||||||
|
VirtualKeyCode::Right => Ok(Key::Right),
|
||||||
|
VirtualKeyCode::Down => Ok(Key::Down),
|
||||||
|
|
||||||
|
VirtualKeyCode::Apostrophe => Ok(Key::Apostrophe),
|
||||||
|
VirtualKeyCode::Backslash => Ok(Key::Backslash),
|
||||||
|
VirtualKeyCode::Comma => Ok(Key::Comma),
|
||||||
|
VirtualKeyCode::Grave => Ok(Key::GraveAccent),
|
||||||
|
VirtualKeyCode::LBracket => Ok(Key::LeftBracket),
|
||||||
|
VirtualKeyCode::Period => Ok(Key::Period),
|
||||||
|
VirtualKeyCode::RBracket => Ok(Key::RightBracket),
|
||||||
|
VirtualKeyCode::Semicolon => Ok(Key::Semicolon),
|
||||||
|
VirtualKeyCode::Slash => Ok(Key::Slash),
|
||||||
|
VirtualKeyCode::Tab => Ok(Key::Tab),
|
||||||
|
|
||||||
_ => Err(()),
|
_ => Err(()),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -64,10 +64,7 @@ class MachCommands(CommandBase):
|
||||||
with cd(path.join(apk_builder_dir, "apk-builder")):
|
with cd(path.join(apk_builder_dir, "apk-builder")):
|
||||||
subprocess.call(["cargo", "build"], env=self.build_env())
|
subprocess.call(["cargo", "build"], env=self.build_env())
|
||||||
|
|
||||||
# FIXME: This can be simplified when glutin becomes the default
|
opts += ["--target", "arm-linux-androideabi"]
|
||||||
# and glfw has been removed.
|
|
||||||
opts += ["--target", "arm-linux-androideabi", "--no-default-features"]
|
|
||||||
features += ["glutin"]
|
|
||||||
|
|
||||||
if debug_mozjs or self.config["build"]["debug-mozjs"]:
|
if debug_mozjs or self.config["build"]["debug-mozjs"]:
|
||||||
features += ["script/debugmozjs"]
|
features += ["script/debugmozjs"]
|
||||||
|
|
|
@ -56,6 +56,13 @@ def check_license(contents):
|
||||||
yield (1, "incorrect license")
|
yield (1, "incorrect license")
|
||||||
|
|
||||||
|
|
||||||
|
def check_length(contents):
|
||||||
|
lines = contents.splitlines(True)
|
||||||
|
for idx, line in enumerate(lines):
|
||||||
|
if len(line) >= 160:
|
||||||
|
yield (idx + 1, "(much) overlong line")
|
||||||
|
|
||||||
|
|
||||||
def check_whitespace(contents):
|
def check_whitespace(contents):
|
||||||
lines = contents.splitlines(True)
|
lines = contents.splitlines(True)
|
||||||
for idx, line in enumerate(lines):
|
for idx, line in enumerate(lines):
|
||||||
|
@ -88,7 +95,7 @@ def scan():
|
||||||
all_files = collect_file_names(directories_to_check)
|
all_files = collect_file_names(directories_to_check)
|
||||||
files_to_check = filter(should_check, all_files)
|
files_to_check = filter(should_check, all_files)
|
||||||
|
|
||||||
checking_functions = [check_license, check_whitespace]
|
checking_functions = [check_license, check_length, check_whitespace]
|
||||||
errors = collect_errors_for_files(files_to_check, checking_functions)
|
errors = collect_errors_for_files(files_to_check, checking_functions)
|
||||||
errors = list(errors)
|
errors = list(errors)
|
||||||
|
|
||||||
|
|
|
@ -276,6 +276,9 @@ fn capture(reftest: &Reftest, side: uint) -> (u32, u32, Vec<u8>) {
|
||||||
if reftest.experimental {
|
if reftest.experimental {
|
||||||
command.arg("--experimental");
|
command.arg("--experimental");
|
||||||
}
|
}
|
||||||
|
if cfg!(target_os = "linux") {
|
||||||
|
command.args(["-r", "mesa"].as_slice());
|
||||||
|
}
|
||||||
let retval = match command.status() {
|
let retval = match command.status() {
|
||||||
Ok(status) => status,
|
Ok(status) => status,
|
||||||
Err(e) => panic!("failed to execute process: {}", e),
|
Err(e) => panic!("failed to execute process: {}", e),
|
||||||
|
|
14
tests/wpt/metadata/FileAPI/fileReader.html.ini
Normal file
14
tests/wpt/metadata/FileAPI/fileReader.html.ini
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
[fileReader.html]
|
||||||
|
type: testharness
|
||||||
|
[FileReader interface object]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[no-argument FileReader constructor]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[FileReader States -- abort]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[FileReader States -- events]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
[url_createobjecturl_blob.html]
|
||||||
|
type: testharness
|
||||||
|
[Check if the Blob URI starts with \'blob\' using createObjectURL()]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Check if the Blob URI starts with \'blob\' using createFor()]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
[url_xmlhttprequest.html]
|
||||||
|
type: testharness
|
||||||
|
[FileAPI Test: Creating Blob URL via XMLHttpRequest]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
[url_xmlhttprequest_img.html]
|
||||||
|
type: reftest
|
||||||
|
reftype: ==
|
||||||
|
refurl: /FileAPI/url/url_xmlhttprequest_img-ref.html
|
||||||
|
expected: FAIL
|
|
@ -482,7 +482,13 @@
|
||||||
"url": "/DOMEvents/tests/submissions/Microsoft/support/style01.css"
|
"url": "/DOMEvents/tests/submissions/Microsoft/support/style01.css"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/FileAPI/FileReader-interface/support/blue-100x100.png"
|
"url": "/FileAPI/BlobURL/support/file_test1.js"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/BlobURL/support/file_test2.txt"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/FileReader/support/file_test1.txt"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/FileAPI/filelist-section/support/upload.txt"
|
"url": "/FileAPI/filelist-section/support/upload.txt"
|
||||||
|
@ -490,12 +496,18 @@
|
||||||
{
|
{
|
||||||
"url": "/FileAPI/filelist-section/support/upload.zip"
|
"url": "/FileAPI/filelist-section/support/upload.zip"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/reading-data-section/support/blue-100x100.png"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"url": "/FileAPI/support/Blob.js"
|
"url": "/FileAPI/support/Blob.js"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/FileAPI/support/upload.txt"
|
"url": "/FileAPI/support/upload.txt"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/url/url_xmlhttprequest_img-ref.html"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"url": "/IndexedDB/README.md"
|
"url": "/IndexedDB/README.md"
|
||||||
},
|
},
|
||||||
|
@ -508,329 +520,335 @@
|
||||||
{
|
{
|
||||||
"url": "/WebCryptoAPI/README.md"
|
"url": "/WebCryptoAPI/README.md"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"url": "/WebIDL/invalid/idl/enum.widl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/WebIDL/invalid/idl/module.widl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/WebIDL/invalid/idl/nonnullableany.widl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/WebIDL/invalid/idl/nonnullableobjects.widl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/WebIDL/invalid/idl/raises.widl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/WebIDL/invalid/idl/scopedname.widl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/WebIDL/invalid/idl/scopedname.widl~"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/WebIDL/invalid/idl/sequenceAsAttribute.widl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/WebIDL/invalid/idl/special-omittable.widl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/WebIDL/invalid/idl/stringconstants.idl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/WebIDL/readme.txt"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/testable_assertions.txt"
|
"url": "/WebIDL/testable_assertions.txt"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/invalid/idl/enum.widl"
|
"url": "/WebIDL/valid/idl/allowany.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/invalid/idl/module.widl"
|
"url": "/WebIDL/valid/idl/array.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/invalid/idl/nonnullableany.widl"
|
"url": "/WebIDL/valid/idl/attributes.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/invalid/idl/nonnullableobjects.widl"
|
"url": "/WebIDL/valid/idl/callback.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/invalid/idl/raises.widl"
|
"url": "/WebIDL/valid/idl/caller.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/invalid/idl/scopedname.widl"
|
"url": "/WebIDL/valid/idl/constants.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/invalid/idl/sequenceAsAttribute.widl"
|
"url": "/WebIDL/valid/idl/constructor.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/invalid/idl/special-omittable.widl"
|
"url": "/WebIDL/valid/idl/dictionary-inherits.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/invalid/idl/stringconstants.idl"
|
"url": "/WebIDL/valid/idl/dictionary.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/readme.txt"
|
"url": "/WebIDL/valid/idl/documentation-dos.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/allowany.widl"
|
"url": "/WebIDL/valid/idl/documentation.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/array.widl"
|
"url": "/WebIDL/valid/idl/enum.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/attributes.widl"
|
"url": "/WebIDL/valid/idl/equivalent-decl.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/callback.widl"
|
"url": "/WebIDL/valid/idl/exception-inheritance.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/caller.widl"
|
"url": "/WebIDL/valid/idl/exception.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/constants.widl"
|
"url": "/WebIDL/valid/idl/getter-setter.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/constructor.widl"
|
"url": "/WebIDL/valid/idl/identifier-qualified-names.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/dictionary-inherits.widl"
|
"url": "/WebIDL/valid/idl/implements.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/dictionary.widl"
|
"url": "/WebIDL/valid/idl/indexed-properties.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/documentation-dos.widl"
|
"url": "/WebIDL/valid/idl/inherits-getter.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/documentation.widl"
|
"url": "/WebIDL/valid/idl/interface-inherits.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/enum.widl"
|
"url": "/WebIDL/valid/idl/iterator.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/equivalent-decl.widl"
|
"url": "/WebIDL/valid/idl/namedconstructor.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/exception-inheritance.widl"
|
"url": "/WebIDL/valid/idl/nointerfaceobject.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/exception.widl"
|
"url": "/WebIDL/valid/idl/nullable.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/getter-setter.widl"
|
"url": "/WebIDL/valid/idl/nullableobjects.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/identifier-qualified-names.widl"
|
"url": "/WebIDL/valid/idl/operation-optional-arg.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/implements.widl"
|
"url": "/WebIDL/valid/idl/overloading.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/indexed-properties.widl"
|
"url": "/WebIDL/valid/idl/overridebuiltins.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/inherits-getter.widl"
|
"url": "/WebIDL/valid/idl/partial-interface.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/interface-inherits.widl"
|
"url": "/WebIDL/valid/idl/primitives.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/iterator.widl"
|
"url": "/WebIDL/valid/idl/prototyperoot.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/namedconstructor.widl"
|
"url": "/WebIDL/valid/idl/putforwards.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/nointerfaceobject.widl"
|
"url": "/WebIDL/valid/idl/reg-operations.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/nullable.widl"
|
"url": "/WebIDL/valid/idl/replaceable.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/nullableobjects.widl"
|
"url": "/WebIDL/valid/idl/sequence.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/operation-optional-arg.widl"
|
"url": "/WebIDL/valid/idl/serializer.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/overloading.widl"
|
"url": "/WebIDL/valid/idl/static.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/overridebuiltins.widl"
|
"url": "/WebIDL/valid/idl/stringifier-attribute.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/partial-interface.widl"
|
"url": "/WebIDL/valid/idl/stringifier-custom.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/primitives.widl"
|
"url": "/WebIDL/valid/idl/stringifier.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/prototyperoot.widl"
|
"url": "/WebIDL/valid/idl/treatasnull.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/putforwards.widl"
|
"url": "/WebIDL/valid/idl/treatasundefined.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/reg-operations.widl"
|
"url": "/WebIDL/valid/idl/typedef.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/replaceable.widl"
|
"url": "/WebIDL/valid/idl/typesuffixes.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/sequence.widl"
|
"url": "/WebIDL/valid/idl/uniontype.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/serializer.widl"
|
"url": "/WebIDL/valid/idl/variadic-operations.widl"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/static.widl"
|
"url": "/WebIDL/valid/xml/allowany.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/stringifier-attribute.widl"
|
"url": "/WebIDL/valid/xml/array.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/stringifier-custom.widl"
|
"url": "/WebIDL/valid/xml/attributes.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/stringifier.widl"
|
"url": "/WebIDL/valid/xml/callback.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/treatasnull.widl"
|
"url": "/WebIDL/valid/xml/caller.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/treatasundefined.widl"
|
"url": "/WebIDL/valid/xml/constants.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/typedef.widl"
|
"url": "/WebIDL/valid/xml/constructor.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/typesuffixes.widl"
|
"url": "/WebIDL/valid/xml/dictionary-inherits.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/uniontype.widl"
|
"url": "/WebIDL/valid/xml/dictionary.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/idl/variadic-operations.widl"
|
"url": "/WebIDL/valid/xml/documentation-dos.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/allowany.widlprocxml"
|
"url": "/WebIDL/valid/xml/documentation.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/array.widlprocxml"
|
"url": "/WebIDL/valid/xml/enum.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/attributes.widlprocxml"
|
"url": "/WebIDL/valid/xml/equivalent-decl.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/callback.widlprocxml"
|
"url": "/WebIDL/valid/xml/exception-inheritance.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/caller.widlprocxml"
|
"url": "/WebIDL/valid/xml/exception.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/constants.widlprocxml"
|
"url": "/WebIDL/valid/xml/getter-setter.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/constructor.widlprocxml"
|
"url": "/WebIDL/valid/xml/identifier-qualified-names.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/dictionary-inherits.widlprocxml"
|
"url": "/WebIDL/valid/xml/implements.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/dictionary.widlprocxml"
|
"url": "/WebIDL/valid/xml/indexed-properties.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/documentation-dos.widlprocxml"
|
"url": "/WebIDL/valid/xml/inherits-getter.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/documentation.widlprocxml"
|
"url": "/WebIDL/valid/xml/interface-inherits.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/enum.widlprocxml"
|
"url": "/WebIDL/valid/xml/iterator.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/equivalent-decl.widlprocxml"
|
"url": "/WebIDL/valid/xml/module.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/exception-inheritance.widlprocxml"
|
"url": "/WebIDL/valid/xml/namedconstructor.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/exception.widlprocxml"
|
"url": "/WebIDL/valid/xml/namespaceobject.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/getter-setter.widlprocxml"
|
"url": "/WebIDL/valid/xml/nointerfaceobject.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/identifier-qualified-names.widlprocxml"
|
"url": "/WebIDL/valid/xml/nullable.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/implements.widlprocxml"
|
"url": "/WebIDL/valid/xml/nullableobjects.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/indexed-properties.widlprocxml"
|
"url": "/WebIDL/valid/xml/operation-optional-arg.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/inherits-getter.widlprocxml"
|
"url": "/WebIDL/valid/xml/overloading.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/interface-inherits.widlprocxml"
|
"url": "/WebIDL/valid/xml/overridebuiltins.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/iterator.widlprocxml"
|
"url": "/WebIDL/valid/xml/partial-interface.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/module.widlprocxml"
|
"url": "/WebIDL/valid/xml/primitives.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/namedconstructor.widlprocxml"
|
"url": "/WebIDL/valid/xml/prototyperoot.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/namespaceobject.widlprocxml"
|
"url": "/WebIDL/valid/xml/putforwards.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/nointerfaceobject.widlprocxml"
|
"url": "/WebIDL/valid/xml/reg-operations.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/nullable.widlprocxml"
|
"url": "/WebIDL/valid/xml/replaceable.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/nullableobjects.widlprocxml"
|
"url": "/WebIDL/valid/xml/sequence.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/operation-optional-arg.widlprocxml"
|
"url": "/WebIDL/valid/xml/serializer.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/overloading.widlprocxml"
|
"url": "/WebIDL/valid/xml/special-omittable.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/overridebuiltins.widlprocxml"
|
"url": "/WebIDL/valid/xml/static.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/partial-interface.widlprocxml"
|
"url": "/WebIDL/valid/xml/stringifier-attribute.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/primitives.widlprocxml"
|
"url": "/WebIDL/valid/xml/stringifier-custom.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/prototyperoot.widlprocxml"
|
"url": "/WebIDL/valid/xml/stringifier.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/putforwards.widlprocxml"
|
"url": "/WebIDL/valid/xml/treatasnull.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/reg-operations.widlprocxml"
|
"url": "/WebIDL/valid/xml/treatasundefined.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/replaceable.widlprocxml"
|
"url": "/WebIDL/valid/xml/typedef.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/sequence.widlprocxml"
|
"url": "/WebIDL/valid/xml/typesuffixes.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/serializer.widlprocxml"
|
"url": "/WebIDL/valid/xml/uniontype.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/special-omittable.widlprocxml"
|
"url": "/WebIDL/valid/xml/variadic-operations.widlprocxml"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/static.widlprocxml"
|
"url": "/XMLHttpRequest/XMLHttpRequest-withCredentials.js"
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/stringifier-attribute.widlprocxml"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/stringifier-custom.widlprocxml"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/stringifier.widlprocxml"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/treatasnull.widlprocxml"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/treatasundefined.widlprocxml"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/typedef.widlprocxml"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/typesuffixes.widlprocxml"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/uniontype.widlprocxml"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/WebIDL/tests/submissions/W3C/valid/xml/variadic-operations.widlprocxml"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/XMLHttpRequest/folder.txt"
|
"url": "/XMLHttpRequest/folder.txt"
|
||||||
|
@ -1348,6 +1366,9 @@
|
||||||
{
|
{
|
||||||
"url": "/dom/nodes/Document-createProcessingInstruction.js"
|
"url": "/dom/nodes/Document-createProcessingInstruction.js"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"url": "/dom/nodes/Element-matches.js"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"url": "/dom/nodes/Node-contains.xml"
|
"url": "/dom/nodes/Node-contains.xml"
|
||||||
},
|
},
|
||||||
|
@ -2497,6 +2518,9 @@
|
||||||
{
|
{
|
||||||
"url": "/images/blue.png"
|
"url": "/images/blue.png"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"url": "/images/blue96x96.png"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"url": "/images/broken.png"
|
"url": "/images/broken.png"
|
||||||
},
|
},
|
||||||
|
@ -2906,13 +2930,7 @@
|
||||||
"url": "/resource-timing/test_resource_timing.js"
|
"url": "/resource-timing/test_resource_timing.js"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/selectors-api/tests/submissions/Opera/Element-matches.js"
|
"url": "/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.js"
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/selectors-api/tests/submissions/Opera/ParentNode-find-findAll.js"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/selectors-api/tests/submissions/Opera/level2-lib.js"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/service-workers/specgen.json"
|
"url": "/service-workers/specgen.json"
|
||||||
|
@ -3088,6 +3106,9 @@
|
||||||
{
|
{
|
||||||
"url": "/webmessaging/README.md"
|
"url": "/webmessaging/README.md"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"url": "/webmessaging/support/compare.js"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"url": "/webmessaging/without-ports/025-1.js"
|
"url": "/webmessaging/without-ports/025-1.js"
|
||||||
},
|
},
|
||||||
|
@ -4330,12 +4351,6 @@
|
||||||
{
|
{
|
||||||
"url": "/workers/support/WorkerText.txt"
|
"url": "/workers/support/WorkerText.txt"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"url": "/workers/support/XMLHttpRequest.js"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/workers/support/XMLHttpRequest.txt"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"url": "/workers/workers.js"
|
"url": "/workers/workers.js"
|
||||||
}
|
}
|
||||||
|
@ -4369,10 +4384,16 @@
|
||||||
"url": "/2dcontext/shadows/2d.shadow.blur.low-manual.html"
|
"url": "/2dcontext/shadows/2d.shadow.blur.low-manual.html"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/FileAPI/FileReader-interface/filereader_file-manual.html"
|
"url": "/FileAPI/BlobURL/test1-manual.html"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/FileAPI/FileReader-interface/filereader_file_img-manual.html"
|
"url": "/FileAPI/BlobURL/test2-manual.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/BlobURL/test3-manual.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/FileReader/test_errors-manual.html"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/FileAPI/filelist-section/filelist_multiple_selected_files-manual.html"
|
"url": "/FileAPI/filelist-section/filelist_multiple_selected_files-manual.html"
|
||||||
|
@ -4383,6 +4404,18 @@
|
||||||
{
|
{
|
||||||
"url": "/FileAPI/idlharness-manual.html"
|
"url": "/FileAPI/idlharness-manual.html"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/reading-data-section/filereader_file-manual.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/reading-data-section/filereader_file_img-manual.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/url/url_createobjecturl_file-manual.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/url/url_createobjecturl_file_img-manual.html"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"url": "/XMLHttpRequest/send-authentication-existing-session-manual.htm"
|
"url": "/XMLHttpRequest/send-authentication-existing-session-manual.htm"
|
||||||
},
|
},
|
||||||
|
@ -5154,6 +5187,11 @@
|
||||||
"ref_url": "/2dcontext/transformations/canvas_transformations_scale_001-ref.htm",
|
"ref_url": "/2dcontext/transformations/canvas_transformations_scale_001-ref.htm",
|
||||||
"url": "/2dcontext/transformations/canvas_transformations_scale_001.htm"
|
"url": "/2dcontext/transformations/canvas_transformations_scale_001.htm"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"ref_type": "==",
|
||||||
|
"ref_url": "/FileAPI/url/url_xmlhttprequest_img-ref.html",
|
||||||
|
"url": "/FileAPI/url/url_xmlhttprequest_img.html"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"ref_type": "==",
|
"ref_type": "==",
|
||||||
"ref_url": "/custom-elements/registering-custom-elements/unresolved-element-pseudoclass/unresolved-element-pseudoclass-css-test-custom-tag-ref.html",
|
"ref_url": "/custom-elements/registering-custom-elements/unresolved-element-pseudoclass/unresolved-element-pseudoclass-css-test-custom-tag-ref.html",
|
||||||
|
@ -9385,48 +9423,27 @@
|
||||||
{
|
{
|
||||||
"url": "/DOMEvents/throwing-in-listener-when-all-have-not-run-yet.html"
|
"url": "/DOMEvents/throwing-in-listener-when-all-have-not-run-yet.html"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"url": "/FileAPI/Blob-XHR-revoke.html"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/FileAPI/Blob-close.html"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/FileAPI/Blob-constructor.html"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/FileAPI/Blob-slice.html"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/FileAPI/File-constructor.html"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/FileAPI/FileReader-interface/filereader_abort.html"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/FileAPI/FileReader-interface/filereader_error.html"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/FileAPI/FileReader-interface/filereader_readAsArrayBuffer.html"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/FileAPI/FileReader-interface/filereader_readAsDataURL.html"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/FileAPI/FileReader-interface/filereader_readAsText.html"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/FileAPI/FileReader-interface/filereader_readystate.html"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/FileAPI/FileReader-interface/filereader_result.html"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/FileAPI/FileReader/Determining-Encoding.html"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"url": "/FileAPI/FileReaderSync.worker"
|
"url": "/FileAPI/FileReaderSync.worker"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/blob/Blob-XHR-revoke.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/blob/Blob-close.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/blob/Blob-constructor.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/blob/Blob-slice.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/file/File-constructor.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/fileReader.html"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"url": "/FileAPI/filelist-section/filelist.html"
|
"url": "/FileAPI/filelist-section/filelist.html"
|
||||||
},
|
},
|
||||||
|
@ -9436,6 +9453,36 @@
|
||||||
{
|
{
|
||||||
"url": "/FileAPI/idlharness.html"
|
"url": "/FileAPI/idlharness.html"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/reading-data-section/Determining-Encoding.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/reading-data-section/filereader_abort.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/reading-data-section/filereader_error.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/reading-data-section/filereader_readAsArrayBuffer.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/reading-data-section/filereader_readAsDataURL.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/reading-data-section/filereader_readAsText.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/reading-data-section/filereader_readystate.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/reading-data-section/filereader_result.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/url/url_createobjecturl_blob.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/FileAPI/url/url_xmlhttprequest.html"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"url": "/IndexedDB/abort-in-initial-upgradeneeded.html"
|
"url": "/IndexedDB/abort-in-initial-upgradeneeded.html"
|
||||||
},
|
},
|
||||||
|
@ -10174,6 +10221,12 @@
|
||||||
{
|
{
|
||||||
"url": "/XMLHttpRequest/FormData-append.html"
|
"url": "/XMLHttpRequest/FormData-append.html"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"url": "/XMLHttpRequest/XMLHttpRequest-withCredentials.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/XMLHttpRequest/XMLHttpRequest-withCredentials.worker"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"url": "/XMLHttpRequest/abort-after-receive.htm"
|
"url": "/XMLHttpRequest/abort-after-receive.htm"
|
||||||
},
|
},
|
||||||
|
@ -10633,12 +10686,6 @@
|
||||||
{
|
{
|
||||||
"url": "/XMLHttpRequest/timeout-sync.htm"
|
"url": "/XMLHttpRequest/timeout-sync.htm"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"url": "/XMLHttpRequest/withcredentials-set.htm"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/XMLHttpRequest/withcredentials-wrong-state.htm"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"url": "/XMLHttpRequest/xmlhttprequest-basic.htm"
|
"url": "/XMLHttpRequest/xmlhttprequest-basic.htm"
|
||||||
},
|
},
|
||||||
|
@ -11317,6 +11364,9 @@
|
||||||
{
|
{
|
||||||
"url": "/dom/nodes/Element-lastElementChild.xhtml"
|
"url": "/dom/nodes/Element-lastElementChild.xhtml"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"url": "/dom/nodes/Element-matches.html"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"url": "/dom/nodes/Element-nextElementSibling.html"
|
"url": "/dom/nodes/Element-nextElementSibling.html"
|
||||||
},
|
},
|
||||||
|
@ -13606,6 +13656,9 @@
|
||||||
{
|
{
|
||||||
"url": "/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr.html"
|
"url": "/html/semantics/forms/attributes-common-to-form-controls/dirname-ltr.html"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"url": "/html/semantics/forms/attributes-common-to-form-controls/disabled-elements-01.html"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"url": "/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address.html"
|
"url": "/html/semantics/forms/attributes-common-to-form-controls/formAction_document_address.html"
|
||||||
},
|
},
|
||||||
|
@ -14398,12 +14451,21 @@
|
||||||
{
|
{
|
||||||
"url": "/js/builtins/Math.min.html"
|
"url": "/js/builtins/Math.min.html"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"url": "/js/builtins/Object.prototype.freeze.html"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"url": "/js/builtins/Object.prototype.hasOwnProperty-order.html"
|
"url": "/js/builtins/Object.prototype.hasOwnProperty-order.html"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/js/builtins/Object.prototype.hasOwnProperty-prototype-chain.html"
|
"url": "/js/builtins/Object.prototype.hasOwnProperty-prototype-chain.html"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"url": "/js/builtins/Object.prototype.preventExtensions.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "/js/builtins/Object.prototype.seal.html"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"url": "/js/builtins/WeakMap.prototype-properties.html"
|
"url": "/js/builtins/WeakMap.prototype-properties.html"
|
||||||
},
|
},
|
||||||
|
@ -15281,10 +15343,7 @@
|
||||||
"url": "/resource-timing/test_resource_timing.html"
|
"url": "/resource-timing/test_resource_timing.html"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/selectors-api/tests/submissions/Opera/Element-matches.html"
|
"url": "/selectors-api/tests/submissions/Opera/ParentNode-query-queryAll.html"
|
||||||
},
|
|
||||||
{
|
|
||||||
"url": "/selectors-api/tests/submissions/Opera/ParentNode-find-findAll.html"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/selectors/attribute-selectors/attribute-case/cssom.html"
|
"url": "/selectors/attribute-selectors/attribute-case/cssom.html"
|
||||||
|
@ -16876,9 +16935,6 @@
|
||||||
{
|
{
|
||||||
"url": "/workers/WorkerGlobalScope_EventTarget.htm"
|
"url": "/workers/WorkerGlobalScope_EventTarget.htm"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"url": "/workers/WorkerGlobalScope_XMLHttpRequest.htm"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"url": "/workers/WorkerGlobalScope_addEventListener.htm"
|
"url": "/workers/WorkerGlobalScope_addEventListener.htm"
|
||||||
},
|
},
|
||||||
|
@ -17081,7 +17137,7 @@
|
||||||
"url": "/workers/interfaces.worker"
|
"url": "/workers/interfaces.worker"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/workers/interfaces/DedicatedWorkerGlobalScope/onmessage.html"
|
"url": "/workers/interfaces/DedicatedWorkerGlobalScope/onmessage.worker"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/workers/interfaces/DedicatedWorkerGlobalScope/postMessage/event-ports-dedicated.html"
|
"url": "/workers/interfaces/DedicatedWorkerGlobalScope/postMessage/event-ports-dedicated.html"
|
||||||
|
@ -17093,7 +17149,7 @@
|
||||||
"url": "/workers/interfaces/DedicatedWorkerGlobalScope/postMessage/message-event.html"
|
"url": "/workers/interfaces/DedicatedWorkerGlobalScope/postMessage/message-event.html"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/workers/interfaces/DedicatedWorkerGlobalScope/postMessage/return-value.html"
|
"url": "/workers/interfaces/DedicatedWorkerGlobalScope/postMessage/return-value.worker"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"url": "/workers/interfaces/DedicatedWorkerGlobalScope/postMessage/second-argument-null-in-array.html"
|
"url": "/workers/interfaces/DedicatedWorkerGlobalScope/postMessage/second-argument-null-in-array.html"
|
||||||
|
@ -17829,6 +17885,10 @@
|
||||||
"timeout": "long",
|
"timeout": "long",
|
||||||
"url": "/websockets/cookies/007.html"
|
"url": "/websockets/cookies/007.html"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"timeout": "long",
|
||||||
|
"url": "/websockets/extended-payload-length.html"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"timeout": "long",
|
"timeout": "long",
|
||||||
"url": "/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-large.html"
|
"url": "/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-large.html"
|
||||||
|
@ -17916,6 +17976,6 @@
|
||||||
"deleted": [],
|
"deleted": [],
|
||||||
"items": {}
|
"items": {}
|
||||||
},
|
},
|
||||||
"rev": "34eea70476fb2a9e5f5b3cfc6e3dbad441790056",
|
"rev": "68c7ce132cc91eab73bad13c69225d79fe97a3ec",
|
||||||
"url_base": "/"
|
"url_base": "/"
|
||||||
}
|
}
|
|
@ -0,0 +1,8 @@
|
||||||
|
[XMLHttpRequest-withCredentials.html]
|
||||||
|
type: testharness
|
||||||
|
[setting on synchronous XHR]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[setting withCredentials when not in UNSENT, OPENED state]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
[XMLHttpRequest-withCredentials.worker]
|
||||||
|
type: testharness
|
||||||
|
[setting withCredentials when not in UNSENT, OPENED state]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[withcredentials-wrong-state.htm]
|
|
||||||
type: testharness
|
|
||||||
[XMLHttpRequest: setting withCredentials when not in UNSENT, OPENED state]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
[Element-closest.html]
|
[Element-closest.html]
|
||||||
type: testharness
|
type: testharness
|
||||||
|
|
||||||
[Element.closest with context node \'test10\' and selector \':empty\']
|
[Element.closest with context node \'test10\' and selector \':empty\']
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
3
tests/wpt/metadata/dom/nodes/Element-matches.html.ini
Normal file
3
tests/wpt/metadata/dom/nodes/Element-matches.html.ini
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
[Element-matches.html]
|
||||||
|
type: testharness
|
||||||
|
expected: TIMEOUT
|
|
@ -1,6 +1,3 @@
|
||||||
[browsing-context-choose-parent.html]
|
[browsing-context-choose-parent.html]
|
||||||
type: testharness
|
type: testharness
|
||||||
expected: TIMEOUT
|
expected: TIMEOUT
|
||||||
[The parent browsing context must be chosen if the given name is \'_parent\']
|
|
||||||
expected: NOTRUN
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,38 @@
|
||||||
|
[disabled-elements-01.html]
|
||||||
|
type: testharness
|
||||||
|
[Test [button\]: default behaviour is NOT disabled]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Test [button\]: verify disabled acts as boolean attribute]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Test [button\]: dispatched click event should succeed and queued prevented]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Test [input\]: default behaviour is NOT disabled]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Test [input\]: verify disabled acts as boolean attribute]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Test [input\]: dispatched click event should succeed and queued prevented]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Test [select\]: default behaviour is NOT disabled]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Test [select\]: verify disabled acts as boolean attribute]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Test [select\]: dispatched click event should succeed and queued prevented]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Test [textarea\]: default behaviour is NOT disabled]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Test [textarea\]: verify disabled acts as boolean attribute]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Test [textarea\]: dispatched click event should succeed and queued prevented]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -1,6 +1,3 @@
|
||||||
[079.html]
|
[079.html]
|
||||||
type: testharness
|
type: testharness
|
||||||
expected: TIMEOUT
|
expected: TIMEOUT
|
||||||
[ setting location to javascript URL from event handler ]
|
|
||||||
expected: TIMEOUT
|
|
||||||
|
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[onmessage.html]
|
|
||||||
type: testharness
|
|
||||||
[onmessage]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
[onmessage.worker]
|
||||||
|
type: testharness
|
||||||
|
[Setting onmessage to an object]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
[sending-messages.html]
|
[sending-messages.html]
|
||||||
type: testharness
|
type: testharness
|
||||||
|
expected: TIMEOUT
|
||||||
[close() and sending messages]
|
[close() and sending messages]
|
||||||
expected: FAIL
|
expected: TIMEOUT
|
||||||
|
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
Subproject commit 34eea70476fb2a9e5f5b3cfc6e3dbad441790056
|
Subproject commit 68c7ce132cc91eab73bad13c69225d79fe97a3ec
|
Loading…
Add table
Add a link
Reference in a new issue