mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-12-02 01:48:05 +00:00
Merge m-c to birch.
This commit is contained in:
commit
06809c83ef
@ -177,6 +177,11 @@ var Appbar = {
|
||||
},
|
||||
|
||||
showContextualActions: function(aVerbs) {
|
||||
if (aVerbs.length)
|
||||
this.appbar.setAttribute("contextual", "true");
|
||||
else
|
||||
this.appbar.removeAttribute("contextual");
|
||||
|
||||
let doc = document;
|
||||
// button element id to action verb lookup
|
||||
let buttonsMap = new Map();
|
||||
|
@ -193,67 +193,6 @@
|
||||
</vbox>
|
||||
</hbox>
|
||||
|
||||
<!-- Main Toolbar -->
|
||||
<hbox id="toolbar-container" observes="bcast_windowState" >
|
||||
<toolbar id="toolbar" flex="1">
|
||||
<observes element="bcast_windowState" attribute="*"/>
|
||||
<observes element="bcast_urlbarState" attribute="*"/>
|
||||
<hbox id="unified-back-forward-button" class="chromeclass-toolbar-additional"
|
||||
observes="bcast_windowState"
|
||||
context="backForwardMenu" removable="true"
|
||||
forwarddisabled="true"
|
||||
title="Back/Forward">
|
||||
<toolbarbutton id="back-button" class="toolbarbutton"
|
||||
label="&back.label;"
|
||||
command="cmd_back"/>
|
||||
<toolbarbutton id="forward-button" class="toolbarbutton"
|
||||
label="&forward.label;"
|
||||
command="cmd_forward"/>
|
||||
<dummyobservertarget hidden="true"
|
||||
onbroadcast="if (this.getAttribute('disabled') == 'true')
|
||||
this.parentNode.setAttribute('forwarddisabled', 'true');
|
||||
else
|
||||
this.parentNode.removeAttribute('forwarddisabled');">
|
||||
<observes element="cmd_forward" attribute="disabled"/>
|
||||
</dummyobservertarget>
|
||||
</hbox>
|
||||
|
||||
<hbox id="urlbar-container" flex="1" observes="bcast_urlbarState">
|
||||
<hbox id="urlbar" flex="1">
|
||||
<box id="identity-box" role="button">
|
||||
<hbox id="identity-box-inner" align="center" mousethrough="always">
|
||||
<image id="identity-icon"/>
|
||||
</hbox>
|
||||
</box>
|
||||
|
||||
<textbox id="urlbar-edit"
|
||||
type="url"
|
||||
class="uri-element"
|
||||
autocompletesearch="history"
|
||||
autocompletepopup="start-autocomplete"
|
||||
completeselectedindex="true"
|
||||
placeholder="&urlbar.emptytext;"
|
||||
flex="1"
|
||||
ontextentered="BrowserUI.handleUrlbarEnter(param);"
|
||||
onkeydown="BrowserUI.navEditKeyPress();"
|
||||
onclick="BrowserUI._urlbarClicked(event);"
|
||||
onblur="BrowserUI._urlbarBlurred();"/>
|
||||
</hbox>
|
||||
</hbox>
|
||||
|
||||
<hbox id="urlbar-icons" observes="bcast_urlbarState">
|
||||
<toolbarbutton id="tool-reload" oncommand="CommandUpdater.doCommand(event.shiftKey ? 'cmd_forceReload' : 'cmd_reload');"/>
|
||||
<toolbarbutton id="tool-stop" command="cmd_stop"/>
|
||||
</hbox>
|
||||
</toolbar>
|
||||
|
||||
<box id="toolbar-transition" observes="bcast_windowState" >
|
||||
<toolbarbutton id="tool-new-tab" command="cmd_newTab" label="&newtab.label;"/>
|
||||
</box>
|
||||
</hbox>
|
||||
|
||||
<hbox id="progress-control" layer="true"></hbox>
|
||||
|
||||
<!-- Start UI -->
|
||||
<hbox id="start-container" flex="1" observes="bcast_windowState" class="meta content-height content-width" onclick="false;">
|
||||
<!-- portrait/landscape/filled view -->
|
||||
@ -367,25 +306,61 @@
|
||||
|
||||
<!-- Windows 8 Appbar -->
|
||||
<appbar id="appbar" mousethrough="never" observes="bcast_windowState">
|
||||
<hbox id="contextualactions-tray" flex="1">
|
||||
<hbox id="progress-control" layer="true"/>
|
||||
|
||||
<!-- Main Toolbar -->
|
||||
<toolbar id="toolbar" observes="bcast_windowState" flex="1">
|
||||
<observes element="bcast_windowState" attribute="*"/>
|
||||
<observes element="bcast_urlbarState" attribute="*"/>
|
||||
|
||||
<toolbarbutton id="back-button" command="cmd_back"/>
|
||||
|
||||
<hbox id="urlbar-container" flex="1" observes="bcast_urlbarState">
|
||||
<toolbarbutton id="forward-button" command="cmd_forward"/>
|
||||
<hbox id="urlbar" flex="1">
|
||||
<box id="identity-box" role="button">
|
||||
<hbox id="identity-box-inner" align="center" mousethrough="always">
|
||||
<image id="identity-icon"/>
|
||||
</hbox>
|
||||
</box>
|
||||
|
||||
<textbox id="urlbar-edit"
|
||||
type="url"
|
||||
class="uri-element"
|
||||
autocompletesearch="history"
|
||||
autocompletepopup="start-autocomplete"
|
||||
completeselectedindex="true"
|
||||
placeholder="&urlbar.emptytext;"
|
||||
flex="1"
|
||||
ontextentered="BrowserUI.handleUrlbarEnter(param);"
|
||||
onkeydown="BrowserUI.navEditKeyPress();"
|
||||
onclick="BrowserUI._urlbarClicked(event);"
|
||||
onblur="BrowserUI._urlbarBlurred();"/>
|
||||
</hbox>
|
||||
</hbox>
|
||||
|
||||
<toolbarbutton id="tool-reload" oncommand="CommandUpdater.doCommand(event.shiftKey ? 'cmd_forceReload' : 'cmd_reload');"/>
|
||||
<toolbarbutton id="tool-stop" command="cmd_stop"/>
|
||||
|
||||
<!-- developer buttons -->
|
||||
<toolbarbutton id="console-button" oncommand="Appbar.onConsoleButton()"/>
|
||||
<toolbarbutton id="jsshell-button" oncommand="Appbar.onJSShellButton()"/>
|
||||
|
||||
<toolbarbutton id="download-button" oncommand="Appbar.onDownloadButton()"/>
|
||||
<toolbarbutton id="zoomout-button" oncommand="Appbar.onZoomOutButton()"/>
|
||||
<toolbarbutton id="zoomin-button" oncommand="Appbar.onZoomInButton()"/>
|
||||
<toolbarbutton id="star-button" type="checkbox" oncommand="Appbar.onStarButton()"/>
|
||||
<toolbarbutton id="pin-button" type="checkbox" oncommand="Appbar.onPinButton()"/>
|
||||
<toolbarbutton id="more-button" onclick="Appbar.onMoreButton(event)"/>
|
||||
</toolbar>
|
||||
|
||||
<toolbar id="contextualactions-tray" flex="1">
|
||||
<toolbarbutton id="delete-selected-button" hidden="true" fade="true" oncommand="Appbar.dispatchContextualAction('delete')"/>
|
||||
<toolbarbutton id="restore-selected-button" hidden="true" fade="true" oncommand="Appbar.dispatchContextualAction('restore')"/>
|
||||
<toolbarbutton id="pin-selected-button" hidden="true" fade="true" oncommand="Appbar.dispatchContextualAction('pin')"/>
|
||||
<toolbarbutton id="unpin-selected-button" hidden="true" fade="true" oncommand="Appbar.dispatchContextualAction('unpin')"/>
|
||||
<toolbarbutton id="clear-selected-button" hidden="true" fade="true" oncommand="Appbar.dispatchContextualAction('clear')"/>
|
||||
</hbox>
|
||||
<hbox flex="1">
|
||||
<toolbarbutton id="download-button" oncommand="Appbar.onDownloadButton()"/>
|
||||
<toolbarbutton id="console-button" oncommand="Appbar.onConsoleButton()"/>
|
||||
<toolbarbutton id="jsshell-button" oncommand="Appbar.onJSShellButton()"/>
|
||||
</hbox>
|
||||
<hbox>
|
||||
<toolbarbutton id="more-button" onclick="Appbar.onMoreButton(event)" />
|
||||
<toolbarbutton id="zoomout-button" oncommand="Appbar.onZoomOutButton()"/>
|
||||
<toolbarbutton id="zoomin-button" oncommand="Appbar.onZoomInButton()"/>
|
||||
<toolbarbutton id="star-button" type="checkbox" oncommand="Appbar.onStarButton()"/>
|
||||
<toolbarbutton id="pin-button" type="checkbox" oncommand="Appbar.onPinButton()"/>
|
||||
</hbox>
|
||||
</toolbar>
|
||||
</appbar>
|
||||
|
||||
<!-- Selection overlay - this should be below any content that can have selectable text -->
|
||||
@ -707,13 +682,4 @@
|
||||
<html:div id="overlay-plus" class="overlay-button"
|
||||
observes="cmd_back" onclick="CommandUpdater.doCommand('cmd_newTab');"></html:div>
|
||||
|
||||
<svg:svg height="0">
|
||||
<svg:clipPath id="forward-button-clip-path" clipPathUnits="objectBoundingBox">
|
||||
<svg:path d="M 0,0 C 0.15,0.12 0.25,0.3 0.25,0.5 0.25,0.7 0.15,0.88 0,1 L 1,1 1,0 0,0 z"/>
|
||||
</svg:clipPath>
|
||||
<svg:clipPath id="back-button-clip-path" clipPathUnits="userSpaceOnUse">
|
||||
<svg:path d="m -1,-5 0,4.03 C 3.6,1.8 18,21.4 0,40 l 0,27 10000,0 0,-55 L 0,-5 z" />
|
||||
</svg:clipPath>
|
||||
</svg:svg>
|
||||
|
||||
</window>
|
||||
|
@ -6,39 +6,35 @@
|
||||
%include defines.inc
|
||||
|
||||
%define forward_transition_length 150ms
|
||||
%define forward_width 51px
|
||||
%define back_width 62px
|
||||
%define clipped_url_back_width 71px
|
||||
%define forward_width 22px
|
||||
%define forward_spacing 12px
|
||||
|
||||
/* Sliding Toolbar/Tab Tray ------------------------------------------------- */
|
||||
|
||||
#tray {
|
||||
transition: transform @metro_animation_duration@ @metro_animation_easing@;
|
||||
transform: translateY(-@tray_slide_height@);
|
||||
transform: translateY(-@tabs_height@);
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#progress-control {
|
||||
display: block;
|
||||
position: absolute;
|
||||
top: -@progress_height@;
|
||||
height: @progress_height@;
|
||||
max-height: @progress_height@;
|
||||
margin-bottom: -@progress_height@;
|
||||
opacity: 1;
|
||||
background: linear-gradient(to right, @progress_start_color@, @progress_end_color@);
|
||||
transition-property: width;
|
||||
transition-duration: .3s;
|
||||
-moz-user-focus: ignore;
|
||||
transition: width .3s ease-in;
|
||||
}
|
||||
|
||||
#progress-control:-moz-dir(rtl) {
|
||||
background: linear-gradient(to left, @progress_start_color@, @progress_end_color@);
|
||||
transform: scaleX(-1);
|
||||
}
|
||||
|
||||
#progress-control[fade] {
|
||||
opacity: 0;
|
||||
transition-property: width, opacity;
|
||||
transition-duration: .3s, .5s;
|
||||
transition-timing-function: ease-in, ease-in;
|
||||
transition: width .3s ease-in, .5s opacity ease-in;
|
||||
}
|
||||
|
||||
/* in non-tabsonly mode the navigation bar and tab tray float over content. In
|
||||
@ -47,16 +43,10 @@
|
||||
position: fixed;
|
||||
}
|
||||
|
||||
#tray[visible][expanded] {
|
||||
#tray[visible][expanded]:not([viewstate="snapped"]) {
|
||||
transform: none;
|
||||
}
|
||||
|
||||
#tray[startpage],
|
||||
#tray[visible]:not([expanded]),
|
||||
#tray[visible][expanded][viewstate="snapped"] {
|
||||
transform: translateY(-@tabs_height@);
|
||||
}
|
||||
|
||||
/* Tabs --------------------------------------------------------------------- */
|
||||
|
||||
#tabs-container {
|
||||
@ -321,126 +311,58 @@ documenttab[selected] .documenttab-selection {
|
||||
|
||||
/* Toolbar ------------------------------------------------------------------ */
|
||||
|
||||
#toolbar-container {
|
||||
background: @panel_dark_color@ @panel_dark_background@;
|
||||
border-bottom: @border_width_small@ solid @border_color@;
|
||||
-moz-padding-end: @padding_large@;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#toolbar-container[filtering],
|
||||
#toolbar-container[startpage] {
|
||||
border-bottom-width: 0;
|
||||
}
|
||||
|
||||
#toolbar {
|
||||
-moz-appearance: none;
|
||||
-moz-box-align: center;
|
||||
padding: 0;
|
||||
-moz-padding-end: @metro_spacing_xxxlarge@;
|
||||
-moz-padding-start: @metro_spacing_xxnormal@;
|
||||
border: none;
|
||||
border-top: @metro_border_thin@ solid #293642;
|
||||
background-color: @panel_light_color@;
|
||||
background-image: url("chrome://browser/skin/images/tab-selection-right.png"),
|
||||
linear-gradient(rgba(255, 255, 255, 0.75), rgba(255, 255, 255, 0.5)),
|
||||
@panel_light_background@;
|
||||
background-repeat: no-repeat, repeat-x;
|
||||
background-position: right bottom;
|
||||
min-height: @toolbar_height@;
|
||||
background-color: @panel_dark_color@;
|
||||
background-image: @panel_dark_background@;
|
||||
}
|
||||
|
||||
#toolbar[dir=ltr] {
|
||||
background-position: left bottom;
|
||||
}
|
||||
|
||||
#toolbar toolbarbutton {
|
||||
margin: 0 @toolbar_horizontal_spacing@;
|
||||
}
|
||||
|
||||
/* Unified back-forward buttons */
|
||||
/* TODO: Pull code from mainline firefox to support RTL. */
|
||||
#unified-back-forward-button {
|
||||
-moz-box-align: center;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
#back-button {
|
||||
-moz-appearance: none;
|
||||
margin: 0 !important;
|
||||
margin-right: -@metro_spacing_normal@ !important;
|
||||
#toolbar > #back-button {
|
||||
list-style-image: url(chrome://browser/skin/images/back.png);
|
||||
-moz-image-region: rect(0 48px 48px 0);
|
||||
-moz-image-region: rect(0 96px 48px 48px);
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
padding: 0 !important;
|
||||
min-height: 48px !important;
|
||||
max-height: 48px !important;
|
||||
-moz-margin-end: -@forward_spacing@;
|
||||
min-height: 48px;
|
||||
max-height: 48px;
|
||||
}
|
||||
|
||||
#back-button[disabled] {
|
||||
-moz-image-region: rect(0 96px 48px 48px);
|
||||
#toolbar > #back-button[disabled] {
|
||||
visibility: visible;
|
||||
-moz-image-region: rect(0 48px 48px 0);
|
||||
}
|
||||
|
||||
#forward-button {
|
||||
background: linear-gradient(to bottom, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.5)), @panel_light_background@;
|
||||
border: @metro_border_thick@ solid rgb(192, 198, 204);
|
||||
margin: 0 !important;
|
||||
padding: 0 !important;
|
||||
-moz-padding-start: 17px !important;
|
||||
-moz-padding-end: 7px !important;
|
||||
transition: opacity @forward_transition_length@ ease-out;
|
||||
list-style-image: url(chrome://browser/skin/images/forward.png);
|
||||
-moz-image-region: rect(1px 22px 25px 0); /* width: 22px; height: 24px; */
|
||||
-moz-border-end: @metro_border_thick@ solid @urlbar_border_color@;
|
||||
margin: -1.5px 0;
|
||||
padding: 0;
|
||||
-moz-padding-start: calc(@metro_spacing_snormal@ + @forward_spacing@);
|
||||
-moz-padding-end: @forward_spacing@;
|
||||
transition: -moz-margin-start @forward_transition_length@ ease-out,
|
||||
opacity @forward_transition_length@ ease-out;
|
||||
}
|
||||
|
||||
/* XXX: Hack to move the image up one pixel because
|
||||
it's not vertically centered for some reason. */
|
||||
#forward-button image {
|
||||
margin: -1px 0 1px 0 !important;
|
||||
}
|
||||
|
||||
#unified-back-forward-button > #forward-button[disabled] {
|
||||
#forward-button[disabled] {
|
||||
-moz-margin-start: calc(-@forward_width@ - @forward_spacing@ * 2);
|
||||
opacity: 0;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
/* URL bar */
|
||||
#unified-back-forward-button + #urlbar-container {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
padding-left: @back_width@;
|
||||
-moz-margin-start: -@forward_width@;
|
||||
-moz-margin-end: @metro_spacing_normal@;
|
||||
position: relative;
|
||||
pointer-events: none;
|
||||
|
||||
#urlbar-container {
|
||||
border: @metro_border_thick@ solid @urlbar_border_color@;
|
||||
-moz-border-start: 0 none;
|
||||
background: @field_background_color@;
|
||||
}
|
||||
|
||||
#unified-back-forward-button + #urlbar-container > #urlbar {
|
||||
-moz-border-start: none;
|
||||
pointer-events: all;
|
||||
transition: margin-left @forward_transition_length@ ease-out;
|
||||
}
|
||||
|
||||
#unified-back-forward-button[forwarddisabled] + #urlbar-container {
|
||||
clip-path: url("chrome://browser/content/browser.xul#back-button-clip-path");
|
||||
padding-left: @clipped_url_back_width@;
|
||||
}
|
||||
|
||||
#unified-back-forward-button[forwarddisabled] + #urlbar-container > #urlbar {
|
||||
margin-left: -@forward_width@;
|
||||
margin: 0;
|
||||
-moz-margin-end: @toolbar_horizontal_spacing@;
|
||||
padding: 0;
|
||||
background-color: @field_background_color@;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* Identity widget */
|
||||
#identity-icon {
|
||||
width: @metro_spacing_xxnormal@;
|
||||
height: @metro_spacing_xxnormal@;
|
||||
margin: 0;
|
||||
-moz-margin-end: @metro_spacing_small@;
|
||||
padding: 0;
|
||||
padding: 0 @metro_spacing_snormal@;
|
||||
list-style-image: url(chrome://browser/skin/images/identity-icons-generic.png);
|
||||
}
|
||||
|
||||
@ -462,10 +384,6 @@ documenttab[selected] .documenttab-selection {
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
#urlbar-edit :invalid {
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
/* Combined stop-reload button */
|
||||
#tool-reload {
|
||||
list-style-image: url("chrome://browser/skin/images/reload.png");
|
||||
@ -475,33 +393,11 @@ documenttab[selected] .documenttab-selection {
|
||||
list-style-image: url("chrome://browser/skin/images/stop-hdpi.png");
|
||||
}
|
||||
|
||||
#urlbar-icons[mode="loading"] > #tool-reload {
|
||||
#toolbar[mode="loading"] > #tool-reload,
|
||||
#toolbar:-moz-any([mode="edit"], [mode="view"]) > #tool-stop {
|
||||
visibility: collapse;
|
||||
}
|
||||
|
||||
#urlbar-icons[mode="edit"] > #tool-stop,
|
||||
#urlbar-icons[mode="view"] > #tool-stop {
|
||||
visibility: collapse;
|
||||
}
|
||||
|
||||
/* Toggle that displays the tab bar */
|
||||
#toolbar-transition {
|
||||
-moz-padding-end: @metro_spacing_snormal@;
|
||||
background: @panel_dark_color@ @panel_dark_background@;
|
||||
}
|
||||
|
||||
#tool-new-tab {
|
||||
margin: 0;
|
||||
-moz-margin-start: -@metro_spacing_normal@;
|
||||
list-style-image: url("images/newtab-default.png");
|
||||
transition: opacity ease-out 0.2s;
|
||||
}
|
||||
|
||||
/* Hide the tab toggle if the tabs are visible */
|
||||
#tray[visible][expanded] #tool-new-tab {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
/* Hide the tab toggle if we're showing classic tabs or we're snap-viewed. */
|
||||
#toolbar[viewstate="snapped"],
|
||||
#tray[tabsonly] #toolbar {
|
||||
@ -509,71 +405,64 @@ documenttab[selected] .documenttab-selection {
|
||||
-moz-padding-end: 0;
|
||||
}
|
||||
|
||||
#toolbar-container[viewstate="snapped"],
|
||||
#tray[tabsonly] #toolbar-container {
|
||||
-moz-padding-end: 0;
|
||||
}
|
||||
|
||||
#toolbar-transition[viewstate="snapped"],
|
||||
#tray[tabsonly] #toolbar-transition {
|
||||
visibility: collapse;
|
||||
}
|
||||
|
||||
#toolbar[viewstate="snapped"] {
|
||||
-moz-padding-end: 0;
|
||||
}
|
||||
|
||||
#unified-back-forward-button[viewstate="snapped"] + #urlbar-container {
|
||||
#toolbar[viewstate="snapped"] > #urlbar-container {
|
||||
-moz-margin-end: 0;
|
||||
}
|
||||
|
||||
#toolbar[viewstate="snapped"] > #tool-stop ~ toolbarbutton {
|
||||
visibility: collapse;
|
||||
}
|
||||
|
||||
/* App Bar ----------------------------------------------------------------- */
|
||||
|
||||
appbar {
|
||||
display: block;
|
||||
position: fixed;
|
||||
height: @toolbar_height@;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
transform: translateY(@toolbar_height@);
|
||||
transition: transform @metro_animation_duration@ @metro_animation_easing@;
|
||||
width: 100%;
|
||||
font-size: 0;
|
||||
}
|
||||
|
||||
appbar toolbar {
|
||||
border-top: 1px solid @appbar_top_border@;
|
||||
border-bottom: 0px;
|
||||
height: @toolbar_height@;
|
||||
appbar > toolbar {
|
||||
-moz-appearance: none;
|
||||
background-color: @appbar_color@;
|
||||
-moz-box-align: center;
|
||||
border: 0;
|
||||
width: 100%;
|
||||
min-height: @toolbar_height@;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
appbar toolbarbutton {
|
||||
float: left;
|
||||
border-width: 0px;
|
||||
appbar > toolbar > toolbarbutton {
|
||||
border: 0;
|
||||
margin: 0 @toolbar_horizontal_spacing@;
|
||||
padding: 0;
|
||||
/* Don't inherit background-color from toolbarbutton[checked="true"] */
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
appbar toolbarbutton[disabled] {
|
||||
appbar > toolbar > toolbarbutton[disabled] {
|
||||
visibility: collapse;
|
||||
}
|
||||
|
||||
#appbar:not([viewstate="snapped"])[visible] {
|
||||
#appbar[startpage],
|
||||
#appbar[visible] {
|
||||
transform: none;
|
||||
}
|
||||
|
||||
#appbar toolbarbutton {
|
||||
#appbar > toolbar > toolbarbutton {
|
||||
list-style-image: url(chrome://browser/skin/images/appbar-icons.png);
|
||||
-moz-image-region: rect(0px, 200px, 40px, 160px); /* Gear icon is default. */
|
||||
}
|
||||
#appbar toolbarbutton:hover {
|
||||
#appbar > toolbar > toolbarbutton:hover {
|
||||
-moz-image-region: rect(40px, 200px, 80px, 160px);
|
||||
}
|
||||
#appbar toolbarbutton:active {
|
||||
#appbar > toolbar > toolbarbutton:active {
|
||||
-moz-image-region: rect(80px, 200px, 120px, 160px);
|
||||
}
|
||||
|
||||
@ -644,6 +533,15 @@ appbar toolbarbutton[disabled] {
|
||||
}
|
||||
|
||||
/* Tile-selection-Specific */
|
||||
#appbar[contextual] > #toolbar,
|
||||
#appbar:not([contextual]) > #contextualactions-tray {
|
||||
visibility: collapse;
|
||||
}
|
||||
|
||||
#contextualactions-tray {
|
||||
background-color: @metro_orange@;
|
||||
}
|
||||
|
||||
#contextualactions-tray > toolbarbutton {
|
||||
opacity: 1;
|
||||
}
|
||||
@ -908,14 +806,10 @@ setting[type="radio"] > vbox {
|
||||
-moz-box-orient: horizontal;
|
||||
}
|
||||
|
||||
#start-autocomplete[viewstate="snapped"] {
|
||||
padding-left: 0px;
|
||||
padding-right: 0px;
|
||||
}
|
||||
|
||||
#start-container[viewstate="snapped"] {
|
||||
padding-left: 0px;
|
||||
padding-right: 0px;
|
||||
#start-container,
|
||||
#start-autocomplete {
|
||||
padding-left: 0;
|
||||
padding-right: 0;
|
||||
}
|
||||
|
||||
#start-container[viewstate="snapped"] .meta-section {
|
||||
|
@ -21,14 +21,12 @@
|
||||
%define toolbar_horizontal_spacing 20px
|
||||
%define toolbar_height 68px
|
||||
%define tabs_height 178px
|
||||
%define tray_slide_height 247px
|
||||
|
||||
%define progress_height 3px
|
||||
%define progress_start_color #0095dd
|
||||
%define progress_end_color #97cbff
|
||||
|
||||
%define appbar_color #FF8000
|
||||
%define appbar_top_border #BFC6CE
|
||||
%define metro_orange #FF8000
|
||||
|
||||
%define label_height 30px
|
||||
|
||||
@ -55,7 +53,6 @@
|
||||
%define metro_spacing_xxxnormal 30px
|
||||
%define metro_spacing_large 40px
|
||||
%define metro_spacing_xlarge 45px
|
||||
%define metro_spacing_xxxlarge 65px
|
||||
|
||||
%define metro_border_thin 1px
|
||||
%define metro_border_thick 2px
|
||||
|
@ -10,7 +10,7 @@
|
||||
display: none;
|
||||
pointer-events: none;
|
||||
padding: 0;
|
||||
background-color: @appbar_color@;
|
||||
background-color: @metro_orange@;
|
||||
bottom: 0;
|
||||
position: fixed;
|
||||
}
|
||||
|
@ -91,6 +91,11 @@ toolbarbutton.bookmark-item[open="true"] {
|
||||
height: 16px;
|
||||
}
|
||||
|
||||
#PlacesToolbarItems > .bookmark-item:not([image]):not([label=""]):not([container]) > .toolbarbutton-icon {
|
||||
display: none;
|
||||
}
|
||||
|
||||
|
||||
/* Prevent [mode="icons"] from hiding the label */
|
||||
.bookmark-item > .toolbarbutton-text {
|
||||
display: -moz-box !important;
|
||||
|
@ -216,6 +216,11 @@ toolbarbutton.bookmark-item > menupopup {
|
||||
max-height: 16px;
|
||||
}
|
||||
|
||||
#PlacesToolbarItems > .bookmark-item:not([image]):not([label=""]):not([container]) > .toolbarbutton-icon {
|
||||
display: none;
|
||||
}
|
||||
|
||||
|
||||
.bookmark-item > .toolbarbutton-icon[label]:not([label=""]),
|
||||
.bookmark-item > .toolbarbutton-icon[type="menu"] {
|
||||
-moz-margin-end: 5px;
|
||||
|
@ -612,6 +612,10 @@ toolbarbutton.bookmark-item[open="true"] {
|
||||
height: 16px;
|
||||
}
|
||||
|
||||
#PlacesToolbarItems > .bookmark-item:not([image]):not([label=""]):not([container]) > .toolbarbutton-icon {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/* Prevent [mode="icons"] from hiding the label */
|
||||
.bookmark-item > .toolbarbutton-text {
|
||||
display: -moz-box !important;
|
||||
|
@ -145,15 +145,6 @@ static bool ConvertToMidasInternalCommand(const nsAString & inCommandID,
|
||||
// ==================================================================
|
||||
// =
|
||||
// ==================================================================
|
||||
static void
|
||||
ReportUseOfDeprecatedMethod(nsHTMLDocument* aDoc, const char* aWarning)
|
||||
{
|
||||
nsContentUtils::ReportToConsole(nsIScriptError::warningFlag,
|
||||
"DOM Events", aDoc,
|
||||
nsContentUtils::eDOM_PROPERTIES,
|
||||
aWarning);
|
||||
}
|
||||
|
||||
static nsresult
|
||||
RemoveFromAgentSheets(nsCOMArray<nsIStyleSheet> &aAgentSheets, const nsAString& url)
|
||||
{
|
||||
@ -2251,27 +2242,6 @@ nsHTMLDocument::GetSelection(ErrorResult& rv)
|
||||
return sel.forget();
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsHTMLDocument::CaptureEvents(int32_t aEventFlags)
|
||||
{
|
||||
ReportUseOfDeprecatedMethod(this, "UseOfCaptureEventsWarning");
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsHTMLDocument::ReleaseEvents(int32_t aEventFlags)
|
||||
{
|
||||
ReportUseOfDeprecatedMethod(this, "UseOfReleaseEventsWarning");
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsHTMLDocument::RouteEvent(nsIDOMEvent* aEvt)
|
||||
{
|
||||
ReportUseOfDeprecatedMethod(this, "UseOfRouteEventWarning");
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
// Mapped to document.embeds for NS4 compatibility
|
||||
NS_IMETHODIMP
|
||||
nsHTMLDocument::GetPlugins(nsIDOMHTMLCollection** aPlugins)
|
||||
|
@ -99,11 +99,6 @@ public:
|
||||
// nsIDOMHTMLDocument interface
|
||||
NS_DECL_NSIDOMHTMLDOCUMENT
|
||||
|
||||
void RouteEvent(nsDOMEvent& aEvent)
|
||||
{
|
||||
RouteEvent(&aEvent);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the result of document.all[aID] which can either be a node
|
||||
* or a nodelist depending on if there are multiple nodes with the same
|
||||
@ -248,9 +243,6 @@ public:
|
||||
// Deprecated
|
||||
}
|
||||
already_AddRefed<nsISelection> GetSelection(mozilla::ErrorResult& rv);
|
||||
// The XPCOM CaptureEvents works fine for us.
|
||||
// The XPCOM ReleaseEvents works fine for us.
|
||||
// The XPCOM RouteEvent works fine for us.
|
||||
// We're picking up GetLocation from Document
|
||||
already_AddRefed<nsIDOMLocation> GetLocation() const {
|
||||
return nsIDocument::GetLocation();
|
||||
|
@ -450,7 +450,6 @@ AudioBufferSourceNode::AudioBufferSourceNode(AudioContext* aContext)
|
||||
, mLoop(false)
|
||||
, mStartCalled(false)
|
||||
, mStopped(false)
|
||||
, mOffsetAndDurationRemembered(false)
|
||||
{
|
||||
AudioBufferSourceNodeEngine* engine =
|
||||
new AudioBufferSourceNodeEngine(this, aContext->Destination());
|
||||
@ -494,12 +493,11 @@ AudioBufferSourceNode::Start(double aWhen, double aOffset,
|
||||
std::numeric_limits<double>::min();
|
||||
SendOffsetAndDurationParametersToStream(ns, aOffset, duration);
|
||||
} else {
|
||||
// Remember our argument so that we can use them once we have a buffer
|
||||
// Remember our arguments so that we can use them once we have a buffer
|
||||
mOffset = aOffset;
|
||||
mDuration = aDuration.WasPassed() ?
|
||||
aDuration.Value() :
|
||||
std::numeric_limits<double>::min();
|
||||
mOffsetAndDurationRemembered = true;
|
||||
}
|
||||
|
||||
// Don't set parameter unnecessarily
|
||||
@ -527,9 +525,7 @@ AudioBufferSourceNode::SendBufferParameterToStream(JSContext* aCx)
|
||||
ns->SetBuffer(nullptr);
|
||||
}
|
||||
|
||||
if (mOffsetAndDurationRemembered) {
|
||||
SendOffsetAndDurationParametersToStream(ns, mOffset, mDuration);
|
||||
}
|
||||
SendOffsetAndDurationParametersToStream(ns, mOffset, mDuration);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -152,7 +152,6 @@ private:
|
||||
bool mLoop;
|
||||
bool mStartCalled;
|
||||
bool mStopped;
|
||||
bool mOffsetAndDurationRemembered;
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -20,6 +20,7 @@ MOCHITEST_FILES := \
|
||||
test_bug866570.html \
|
||||
test_bug866737.html \
|
||||
test_bug867089.html \
|
||||
test_bug867104.html \
|
||||
test_bug867174.html \
|
||||
test_bug867203.html \
|
||||
test_analyserNode.html \
|
||||
|
36
content/media/webaudio/test/test_bug867104.html
Normal file
36
content/media/webaudio/test/test_bug867104.html
Normal file
@ -0,0 +1,36 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<title>Crashtest for bug 867104</title>
|
||||
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
|
||||
</head>
|
||||
<body>
|
||||
<pre id="test">
|
||||
<script class="testbody" type="text/javascript">
|
||||
|
||||
SpecialPowers.setBoolPref("media.webaudio.enabled", true);
|
||||
SimpleTest.waitForExplicitFinish();
|
||||
addLoadEvent(function() {
|
||||
var ctx = new AudioContext();
|
||||
var source = ctx.createBufferSource();
|
||||
var b0 = ctx.createBuffer(32,798,22050);
|
||||
var b1 = ctx.createBuffer(32,28,22050);
|
||||
var sp = ctx.createScriptProcessor();
|
||||
source.buffer = b0;
|
||||
source.connect(sp);
|
||||
source.start(0);
|
||||
source.buffer = b1;
|
||||
sp.onaudioprocess = function() {
|
||||
ok(true, "We did not crash.");
|
||||
sp.onaudioprocess = null;
|
||||
SpecialPowers.clearUserPref("media.webaudio.enabled");
|
||||
SimpleTest.finish();
|
||||
};
|
||||
});
|
||||
|
||||
|
||||
</script>
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
@ -6122,49 +6122,6 @@ nsGlobalWindow::SetResizable(bool aResizable)
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
static void
|
||||
ReportUseOfDeprecatedMethod(nsGlobalWindow* aWindow, const char* aWarning)
|
||||
{
|
||||
nsCOMPtr<nsIDocument> doc = aWindow->GetExtantDoc();
|
||||
nsContentUtils::ReportToConsole(nsIScriptError::warningFlag,
|
||||
"DOM Events", doc,
|
||||
nsContentUtils::eDOM_PROPERTIES,
|
||||
aWarning);
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsGlobalWindow::CaptureEvents(int32_t aEventFlags)
|
||||
{
|
||||
ReportUseOfDeprecatedMethod(this, "UseOfCaptureEventsWarning");
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsGlobalWindow::ReleaseEvents(int32_t aEventFlags)
|
||||
{
|
||||
ReportUseOfDeprecatedMethod(this, "UseOfReleaseEventsWarning");
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsGlobalWindow::RouteEvent(nsIDOMEvent* aEvt)
|
||||
{
|
||||
ReportUseOfDeprecatedMethod(this, "UseOfRouteEventWarning");
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsGlobalWindow::EnableExternalCapture()
|
||||
{
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsGlobalWindow::DisableExternalCapture()
|
||||
{
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
static
|
||||
bool IsPopupBlocked(nsIDocument* aDoc)
|
||||
{
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
#include "domstubs.idl"
|
||||
|
||||
[scriptable, uuid(6652c4d2-6b49-424b-aaf9-91f91006fab7)]
|
||||
[scriptable, uuid(35b653f4-e679-4843-8391-89cb2f5a9ba4)]
|
||||
interface nsIDOMJSWindow : nsISupports
|
||||
{
|
||||
void dump(in DOMString str);
|
||||
@ -33,16 +33,6 @@ interface nsIDOMJSWindow : nsISupports
|
||||
*/
|
||||
void setResizable(in boolean resizable);
|
||||
|
||||
/**
|
||||
* @deprecated These are old Netscape 4 methods. Do not use,
|
||||
* the implementation is no-op.
|
||||
*/
|
||||
void captureEvents(in long eventFlags);
|
||||
void releaseEvents(in long eventFlags);
|
||||
void routeEvent(in nsIDOMEvent evt);
|
||||
void enableExternalCapture();
|
||||
void disableExternalCapture();
|
||||
|
||||
/**
|
||||
* This is the scriptable version of nsIDOMWindow::open()
|
||||
* that takes 3 optional arguments. Its binary name is OpenJS to
|
||||
|
@ -13,7 +13,7 @@
|
||||
*/
|
||||
interface nsISelection;
|
||||
|
||||
[scriptable, uuid(fd76e045-8d97-4a97-ad75-eac5ae2f3ea4)]
|
||||
[scriptable, uuid(60e0e311-b9c7-4952-8e9c-d4974005e887)]
|
||||
interface nsIDOMHTMLDocument : nsIDOMDocument
|
||||
{
|
||||
attribute DOMString domain;
|
||||
@ -88,14 +88,4 @@ interface nsIDOMHTMLDocument : nsIDOMDocument
|
||||
|
||||
// DOM Range
|
||||
nsISelection getSelection();
|
||||
|
||||
|
||||
// Mozilla extensions
|
||||
/**
|
||||
* @deprecated These are old Netscape 4 methods. Do not use,
|
||||
* the implementation is no-op.
|
||||
*/
|
||||
void captureEvents(in long eventFlags);
|
||||
void releaseEvents(in long eventFlags);
|
||||
void routeEvent(in nsIDOMEvent evt);
|
||||
};
|
||||
|
@ -17,9 +17,6 @@ OnBeforeUnloadMessage=This page is asking you to confirm that you want to leave
|
||||
OnBeforeUnloadStayButton=Stay on Page
|
||||
OnBeforeUnloadLeaveButton=Leave Page
|
||||
DocumentAllUsed=Non-standard document.all property was used. Use W3C standard document.getElementById() instead.
|
||||
UseOfCaptureEventsWarning=Use of captureEvents() is deprecated. To upgrade your code, use the DOM 2 addEventListener() method. For more help http://developer.mozilla.org/en/docs/DOM:element.addEventListener
|
||||
UseOfReleaseEventsWarning=Use of releaseEvents() is deprecated. To upgrade your code, use the DOM 2 removeEventListener() method. For more help http://developer.mozilla.org/en/docs/DOM:element.removeEventListener
|
||||
UseOfRouteEventWarning=Use of routeEvent() is deprecated. To upgrade your code, use the DOM 2 dispatchEvent() method. For more help http://developer.mozilla.org/en/docs/DOM:element.dispatchEvent
|
||||
UseOfPreventBubbleWarning=Event=%S, use of preventBubble() is deprecated. Use W3C standard stopPropagation() instead.
|
||||
UseOfPreventCaptureWarning=Event=%S, use of preventCapture() is deprecated. Use W3C standard stopPropagation() instead.
|
||||
UseOfDOM3LoadMethodWarning=Use of Document.load() is deprecated. To upgrade your code, use the DOM XMLHttpRequest object. For more help https://developer.mozilla.org/en/XMLHttpRequest
|
||||
|
@ -68,11 +68,4 @@ interface HTMLDocument : Document {
|
||||
// https://dvcs.w3.org/hg/editing/raw-file/tip/editing.html#selections
|
||||
[Throws]
|
||||
Selection getSelection();
|
||||
|
||||
// @deprecated These are old Netscape 4 methods. Do not use,
|
||||
// the implementation is no-op.
|
||||
// XXXbz do we actually need these anymore?
|
||||
void captureEvents(long eventFlags);
|
||||
void releaseEvents(long eventFlags);
|
||||
void routeEvent(Event evt);
|
||||
};
|
||||
|
@ -153,9 +153,7 @@ public:
|
||||
/**
|
||||
* Does the nsITheme implementation draw its own focus ring for this widget?
|
||||
*/
|
||||
virtual bool ThemeDrawsFocusForWidget(nsPresContext* aPresContext,
|
||||
nsIFrame* aFrame,
|
||||
uint8_t aWidgetType)=0;
|
||||
virtual bool ThemeDrawsFocusForWidget(uint8_t aWidgetType)=0;
|
||||
|
||||
/**
|
||||
* Should we insert a dropmarker inside of combobox button?
|
||||
|
63
gfx/tests/crashtests/783041-1.html
Normal file
63
gfx/tests/crashtests/783041-1.html
Normal file
@ -0,0 +1,63 @@
|
||||
<html>
|
||||
<!-- This Source Code Form is subject to the terms of the Mozilla Public
|
||||
- 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/. -->
|
||||
<head>
|
||||
<style>
|
||||
#el7 {
|
||||
font-size:.92em
|
||||
}
|
||||
#el0 {
|
||||
height: 200px ! important;
|
||||
margin: 0px;
|
||||
display: table;
|
||||
font-size:.92em
|
||||
}
|
||||
|
||||
#el3 {
|
||||
line-height: 0.5px;
|
||||
text-shadow: 0px 5px 5px, 0px -20px 10px;
|
||||
display: table-row-group;
|
||||
transform: translate3d(-3px, -300px, 0px);
|
||||
}
|
||||
|
||||
#el5 {
|
||||
height:1em;
|
||||
display:block;
|
||||
}
|
||||
|
||||
.c4 {
|
||||
margin: 1em;
|
||||
padding: 0.5em;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
onload = function() {
|
||||
el7=document.createElement('iframe')
|
||||
el7.setAttribute('id', 'el7')
|
||||
document.body.appendChild(el7)
|
||||
|
||||
el0=document.createElement('span')
|
||||
el0.setAttribute('id','el0')
|
||||
document.body.appendChild(el0)
|
||||
el0.appendChild(document.createTextNode('A'))
|
||||
|
||||
el3=document.createElement('q')
|
||||
el3.setAttribute('id','el3')
|
||||
el0.appendChild(el3)
|
||||
|
||||
el5=document.createElement('q')
|
||||
el5.setAttribute('id','el5')
|
||||
el3.appendChild(el5)
|
||||
|
||||
el0.appendChild(document.createTextNode('A'))
|
||||
|
||||
document.body.offsetTop
|
||||
el0.setAttribute('class', 'c4');
|
||||
el7.setAttribute('class', 'c4');
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
63
gfx/tests/crashtests/783041-2.html
Normal file
63
gfx/tests/crashtests/783041-2.html
Normal file
@ -0,0 +1,63 @@
|
||||
<html>
|
||||
<!-- This Source Code Form is subject to the terms of the Mozilla Public
|
||||
- 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/. -->
|
||||
<head>
|
||||
<style>
|
||||
#el0 {
|
||||
height: 200px ! important;
|
||||
height: 1em;
|
||||
width: 1em;
|
||||
padding: 5px;
|
||||
display: table;
|
||||
-moz-transform:translate3d(0, 80px, 0);
|
||||
}
|
||||
#el0:before {
|
||||
display: -moz-grid;
|
||||
content: counter(c, hiragana) attr(id);
|
||||
counter-increment: c 694;
|
||||
}
|
||||
#el0:after {
|
||||
counter-reset: c 694;
|
||||
content: counter(c, cjk-ideographic) attr(id);
|
||||
}
|
||||
#el1 {
|
||||
text-shadow: 0px 20px 0px, 0px -20px 10px;
|
||||
line-height: 4px;
|
||||
transform: translate3d(0px, -300px, 0px);
|
||||
display: table-row-group;
|
||||
border-spacing: 7px;
|
||||
}
|
||||
#el1:after {
|
||||
counter-reset: c;
|
||||
display: -moz-box;
|
||||
content: counter(c, cjk-ideographic) attr(id);
|
||||
counter-increment: c 694;
|
||||
}
|
||||
#el2 {
|
||||
display: table-row-group;
|
||||
-moz-transform:translate3d(0, 80px, 0);
|
||||
}
|
||||
#el2:after {
|
||||
content: counter(c, cjk-ideographic) attr(id);
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
onload = function() {
|
||||
el0=document.createElement('div')
|
||||
el0.setAttribute('id','el0')
|
||||
document.body.appendChild(el0)
|
||||
el1=document.createElement('div')
|
||||
el1.setAttribute('id','el1')
|
||||
el0.appendChild(el1)
|
||||
el2=document.createElement('q')
|
||||
el2.setAttribute('id','el2')
|
||||
el1.appendChild(el2)
|
||||
el0.appendChild(document.createTextNode('A'))
|
||||
setTimeout("location.reload()", 100)
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
71
gfx/tests/crashtests/783041-3.html
Normal file
71
gfx/tests/crashtests/783041-3.html
Normal file
@ -0,0 +1,71 @@
|
||||
<html>
|
||||
<!-- This Source Code Form is subject to the terms of the Mozilla Public
|
||||
- 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/. -->
|
||||
<head>
|
||||
<style>
|
||||
#el0 {
|
||||
height: 200px ! important;
|
||||
padding: 4px;
|
||||
white-space: pre-wrap;
|
||||
margin-top: 0px;
|
||||
display: table;
|
||||
}
|
||||
#el3 {
|
||||
line-height: 3px;
|
||||
text-shadow: 0px 5px 5px, 0px -20px 10px;
|
||||
}
|
||||
#el3:before { display: inline-block; }
|
||||
#el3:first-of-type { transform: translate3d(-30px, -300px, 0px); }
|
||||
#el3:first-child { display: table-row-group; }
|
||||
#el5:before { -moz-margin-before:1em; display: list-item; content: counter(c, ethiopic-halehame-tig) attr(id); counter-increment: c 810; }
|
||||
#el5 { list-style-type:lower-greek }
|
||||
#el5 { background:red;margin:0;height:1em;display:block }
|
||||
#el5:nth-child(3) { -moz-svg-shadow:5px 5px 5px red; display: link; content: counter(c, asterisks) attr(id); counter-increment: c 266; }
|
||||
|
||||
.c4 {
|
||||
margin: 1em; }
|
||||
#el7 { font-size:.92em }
|
||||
#el3 { font-size:.92em }
|
||||
.c4 { padding:0.4em 0.5em 0.4em 2.5em }
|
||||
.c4:after { margin:2px; display: -moz-box; content: counter(c, octal) attr(id); counter-increment: c 171; }
|
||||
.c4:before { -moz-user-drag:none; display: -moz-inline-flexbox; content: counter(c, hiragana-iroha) attr(id); counter-increment: c 209; }
|
||||
.c4:only-of-type { -moz-logical-height:50px; display: -moz-box; content: counter(c, binary) attr(id); counter-increment: c 871; }
|
||||
</style>
|
||||
<script>
|
||||
onload = function() {
|
||||
el0=document.createElement('ul')
|
||||
el0.setAttribute('id','el0')
|
||||
document.body.appendChild(el0)
|
||||
|
||||
el1=document.createElement('canvas')
|
||||
document.body.appendChild(el1)
|
||||
|
||||
|
||||
el3=document.createElement('q')
|
||||
el3.setAttribute('id','el3')
|
||||
el0.appendChild(el3)
|
||||
|
||||
el4=document.createElement('progress')
|
||||
el4.setAttribute('id','el4')
|
||||
document.body.appendChild(el4)
|
||||
|
||||
el5=document.createElement('q')
|
||||
el5.setAttribute('id','el5')
|
||||
el3.appendChild(el5)
|
||||
|
||||
el0.appendChild(document.createTextNode('A'))
|
||||
|
||||
el7=document.createElement('iframe')
|
||||
el7.setAttribute('id', 'el7')
|
||||
el0.parentNode.insertBefore(el7, el0)
|
||||
el0.setAttribute('class', 'c4');
|
||||
el3.setAttribute('class', 'c4');
|
||||
el7.setAttribute('class', 'c4');
|
||||
setTimeout("window.close()", 5000)
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
82
gfx/tests/crashtests/783041-4.html
Normal file
82
gfx/tests/crashtests/783041-4.html
Normal file
@ -0,0 +1,82 @@
|
||||
<html>
|
||||
<!-- This Source Code Form is subject to the terms of the Mozilla Public
|
||||
- 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/. -->
|
||||
<head>
|
||||
<style>
|
||||
#el0 {
|
||||
height: 200px ! important;
|
||||
padding: 4px;
|
||||
white-space: pre-wrap;
|
||||
margin-top: 0px;
|
||||
display: table;
|
||||
font-size:.92em
|
||||
}
|
||||
|
||||
#el0:before {
|
||||
content: counter(c, hiragana-iroha);
|
||||
}
|
||||
|
||||
#el3 {
|
||||
line-height: 3px;
|
||||
text-shadow: 0px 5px 5px, 0px -20px 10px;
|
||||
display: table-row-group;
|
||||
transform: translate3d(-30px, -300px, 0px);
|
||||
}
|
||||
|
||||
#el3:before {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
#el5 {
|
||||
height:1em;
|
||||
display:block;
|
||||
}
|
||||
|
||||
#el5:before {
|
||||
display: list-item;
|
||||
}
|
||||
|
||||
#el7 {
|
||||
font-size:.92em
|
||||
}
|
||||
.c4 {
|
||||
margin: 1em;
|
||||
padding:0.4em 0.5em 0.4em 2.5em;
|
||||
counter-increment: c;
|
||||
}
|
||||
|
||||
.c4:after {
|
||||
margin: 2px;
|
||||
display: inline-block;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
onload = function() {
|
||||
el7=document.createElement('iframe')
|
||||
el7.setAttribute('id', 'el7')
|
||||
document.body.appendChild(el7)
|
||||
|
||||
el0=document.createElement('ul')
|
||||
el0.setAttribute('id','el0')
|
||||
document.body.appendChild(el0)
|
||||
|
||||
|
||||
el3=document.createElement('q')
|
||||
el3.setAttribute('id','el3')
|
||||
el0.appendChild(el3)
|
||||
|
||||
el5=document.createElement('q')
|
||||
el5.setAttribute('id','el5')
|
||||
el3.appendChild(el5)
|
||||
|
||||
el0.appendChild(document.createTextNode('A'))
|
||||
|
||||
el0.setAttribute('class', 'c4');
|
||||
el7.setAttribute('class', 'c4');
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
@ -90,6 +90,10 @@ load 633322-1.html
|
||||
load 686190-1.html
|
||||
load 693143-1.html
|
||||
load 768079-1.html
|
||||
load 783041-1.html
|
||||
load 783041-2.html
|
||||
load 783041-3.html
|
||||
load 783041-4.html
|
||||
asserts-if(gtk2Widget,1) load 798853.html # bug 868792
|
||||
asserts-if(winWidget,0-1) skip-if(B2G) load 815489.html
|
||||
load 856784-1.html
|
||||
|
@ -8,7 +8,7 @@ function boom()
|
||||
var frame = document.getElementById("frame");
|
||||
var frameWin = frame.contentWindow;
|
||||
var frameWinner = Object.create(frameWin);
|
||||
var v = frameWinner.captureEvents.bind(frameWinner);
|
||||
var v = frameWinner.clearTimeout.bind(frameWinner);
|
||||
frame.src = "local-file-not-found";
|
||||
setTimeout(function() { setTimeout(finish); v(0); });
|
||||
}
|
||||
|
40
layout/base/crashtests/772306.html
Normal file
40
layout/base/crashtests/772306.html
Normal file
@ -0,0 +1,40 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<script>
|
||||
|
||||
function boom()
|
||||
{
|
||||
var allNodes = [];
|
||||
allNodes[5] = document.createElementNS("http://www.w3.org/1999/xhtml", "div");
|
||||
allNodes[5].style.setProperty("-moz-column-width", "200px", "");
|
||||
allNodes[5].style.setProperty("height", "2em", "");
|
||||
allNodes[7] = document.createElementNS("http://www.w3.org/1999/xhtml", "div");
|
||||
allNodes[7].style.setProperty("float", "left", "");
|
||||
allNodes[30] = document.createElementNS("http://www.w3.org/1998/Math/MathML", "munder");
|
||||
(allNodes[7] || allNodes[5] || document.body).appendChild(allNodes[30]);
|
||||
(allNodes[5] || document.body).appendChild(allNodes[7]);
|
||||
allNodes[17] = document.createElementNS("http://www.w3.org/1999/xhtml", "div");
|
||||
allNodes[17].style.setProperty("display", "inline-block", "");
|
||||
(allNodes[5] || document.body).appendChild(allNodes[17]);
|
||||
allNodes[20] = document.createElementNS("http://www.w3.org/1999/xhtml", "div");
|
||||
(allNodes[5] || document.body).appendChild(allNodes[20]);
|
||||
allNodes[23] = document.createElementNS("http://www.w3.org/1999/xhtml", "div");
|
||||
allNodes[23].style.setProperty("float", "left", "");
|
||||
allNodes[25] = document.createElementNS("http://www.w3.org/1999/xhtml", "div");
|
||||
allNodes[25].style.setProperty("display", "inline-block", "");
|
||||
(allNodes[23] || allNodes[5] || document.body).appendChild(allNodes[25]);
|
||||
(allNodes[5] || document.body).appendChild(allNodes[23]);
|
||||
(document.body).appendChild(allNodes[5]);
|
||||
document.documentElement.offsetHeight;
|
||||
allNodes[34] = document.createElementNS("http://www.w3.org/1998/Math/MathML", 'maligngroup');
|
||||
allNodes[17].appendChild(allNodes[34]);
|
||||
document.documentElement.offsetHeight;
|
||||
allNodes[30].setAttribute('accentunder', "false");
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body onload="boom();"></body>
|
||||
</html>
|
@ -394,6 +394,7 @@ load 749816-1.html
|
||||
load 763223-1.html
|
||||
test-pref(font.size.inflation.emPerLine,15) test-pref(font.size.inflation.lineThreshold,100) load 763702.xhtml
|
||||
load 770381-1.html
|
||||
load 772306.html
|
||||
load 788360.html
|
||||
load 793848.html
|
||||
load 795646.html
|
||||
|
@ -168,7 +168,7 @@ void nsDisplayButtonForeground::Paint(nsDisplayListBuilder* aBuilder,
|
||||
nsPresContext *presContext = mFrame->PresContext();
|
||||
const nsStyleDisplay *disp = mFrame->StyleDisplay();
|
||||
if (!mFrame->IsThemed(disp) ||
|
||||
!presContext->GetTheme()->ThemeDrawsFocusForWidget(presContext, mFrame, disp->mAppearance)) {
|
||||
!presContext->GetTheme()->ThemeDrawsFocusForWidget(disp->mAppearance)) {
|
||||
// draw the focus and outline borders
|
||||
nsRect r = nsRect(ToReferenceFrame(), mFrame->GetSize());
|
||||
mBFR->PaintOutlineAndFocusBorders(presContext, *aCtx, mVisibleRect, r);
|
||||
|
@ -1536,7 +1536,7 @@ nsComboboxControlFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
|
||||
nsPresContext *presContext = PresContext();
|
||||
const nsStyleDisplay *disp = StyleDisplay();
|
||||
if ((!IsThemed(disp) ||
|
||||
!presContext->GetTheme()->ThemeDrawsFocusForWidget(presContext, this, disp->mAppearance)) &&
|
||||
!presContext->GetTheme()->ThemeDrawsFocusForWidget(disp->mAppearance)) &&
|
||||
mDisplayFrame && IsVisibleForPainting(aBuilder)) {
|
||||
aLists.Content()->AppendNewToTop(
|
||||
new (aBuilder) nsDisplayComboboxFocus(aBuilder, this));
|
||||
|
@ -244,8 +244,7 @@ nsRangeFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
|
||||
nsPresContext *presContext = PresContext();
|
||||
const nsStyleDisplay *disp = StyleDisplay();
|
||||
if ((!IsThemed(disp) ||
|
||||
!presContext->GetTheme()->
|
||||
ThemeDrawsFocusForWidget(presContext, this, disp->mAppearance)) &&
|
||||
!presContext->GetTheme()->ThemeDrawsFocusForWidget(disp->mAppearance)) &&
|
||||
IsVisibleForPainting(aBuilder)) {
|
||||
aLists.Content()->AppendNewToTop(
|
||||
new (aBuilder) nsDisplayRangeFocusRing(aBuilder, this));
|
||||
|
5
layout/generic/crashtests/691210.html
Normal file
5
layout/generic/crashtests/691210.html
Normal file
@ -0,0 +1,5 @@
|
||||
<html style="-moz-column-width: 1px;"><head>
|
||||
|
||||
</head>
|
||||
|
||||
<body><div style="position: relative; -moz-column-count: 6;"><div style="position: absolute; height: 9px;"></div><div style="height: 9px;"></div></div></body></html>
|
10
layout/generic/crashtests/723108.html
Normal file
10
layout/generic/crashtests/723108.html
Normal file
@ -0,0 +1,10 @@
|
||||
<html>
|
||||
<head>
|
||||
</head>
|
||||
<body style=" -moz-column-count: 2; ">m
|
||||
<div style="width: 10px; ">m
|
||||
<div style="-moz-column-count: 2; -moz-transform: scale(1); ">m
|
||||
<span style="position: fixed;">m m</span>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
6
layout/generic/crashtests/747688.html
Normal file
6
layout/generic/crashtests/747688.html
Normal file
@ -0,0 +1,6 @@
|
||||
<style>
|
||||
* { height: 0; margin: 100%; -moz-column-width: 50px; }
|
||||
.test1 { position: absolute; min-height: 100%; -moz-columns: 3; -moz-column-count: 200; }
|
||||
.test2 { padding-bottom: 100px; margin-bottom: 20px; width: 20px; }
|
||||
</style>
|
||||
<div class="test1"><figure><div class="test2">A0AAAA0A0AAAA00AAA<hgroup></hgroup><timer><optgroup></div><div class="test2"><rect><h5>
|
32
layout/generic/crashtests/750066-iframe.html
Normal file
32
layout/generic/crashtests/750066-iframe.html
Normal file
@ -0,0 +1,32 @@
|
||||
<html style="white-space: pre; -moz-column-count: 2;">
|
||||
<body onload="document.body.style.MozFloatEdge = 'margin-box';" style="-moz-column-width: 20em;">
|
||||
<div style="position: relative; height: 80px; margin: 10px;">
폋哟
꠲ g
|
||||
嚬
|
||||
C휤㏡Ⳣ꠰獧oق䰧
|
||||
&
|
||||
ꃎ 䅷ᩥ
|
||||
|
||||
O禕v
|
||||
Eᚇ⋩XO
|
||||
讉ཐsҍ
M匕
|
||||
Y
|
||||
H唼Uฉ
|
||||
J
硵
|
||||
_谜
-寇캫셂Z +:抂뮶
|
||||
쾽E
|
||||
2ɻ صkJP₾,cJ=
|
||||
.x,
|
||||
!M]
|
||||
薹謩ꢼ믇
Y[ࡌ4
衒}畁dd:ꑪ
eh 䲡
杊ᇋ 峂
p꺁
௴
|
||||
聢 埓櫜
|
||||
|
||||
,K
}>
|
||||
|
||||
a~ゲ 㯝A ĝj
|
||||
협
|
||||
|
||||
ᭃ &羋劮૩k惖qs툩
B䛊J=罩E
|
||||
|
||||
<div style="position: absolute; height: 11px; top: 19px;"></div>
|
||||
</div>
|
||||
</body></html>
|
34
layout/generic/crashtests/750066.html
Normal file
34
layout/generic/crashtests/750066.html
Normal file
@ -0,0 +1,34 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html class="reftest-wait"><head>
|
||||
<meta charset="utf-8">
|
||||
<title>Testcase for bug 750066</title>
|
||||
<style>
|
||||
iframe { -moz-transition: width 2000ms ease-out 0s; }
|
||||
</style>
|
||||
|
||||
<script>
|
||||
function resize(w) {
|
||||
var win = window.frames[0];
|
||||
win.frameElement.style.width = w;
|
||||
}
|
||||
function doTest() {
|
||||
resize('1000px');
|
||||
setTimeout(function(){
|
||||
resize('500px');
|
||||
setTimeout(function(){
|
||||
document.documentElement.removeAttribute("class");
|
||||
},0);
|
||||
},500);
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<iframe src="750066-iframe.html"></iframe>
|
||||
|
||||
<script>
|
||||
window.addEventListener("MozReftestInvalidate", doTest, false);
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
14
layout/generic/crashtests/756241-iframe.html
Normal file
14
layout/generic/crashtests/756241-iframe.html
Normal file
@ -0,0 +1,14 @@
|
||||
3c11T{f@lGr#=_/*?13iz?,w{*cP&>base64,R0lGODlh9AEBAPcAAAT%2BBADiFgASAgAAAFnY0Bu9xgBQUAAAAE4AdBuw4gBQEgAAAAAcAADiABUSAAAAAApU3gAnnwCRgAB8fAAJAAIEAAAAQAAAAAAA0AOwxgBQUAAAAMA3dOAp4hKREgB8AOng9eXin4ESgHwAfAAz4AAI4gGREgB8AFbgfQDiBAASAAAAAMh9AN8EABIAAAAAAHMAEAAAAABAAAAAAOjwB%2BAAABJAAAAAABho5O7h4pASEnwAAHB9AwUEAZEAAHwAAP%2BgqP%2Fh4v8SEv8AAG2VAgUIAJGRAHx8AIUA1OcAUoFAUHwAAAABkAAAARUAFQAAAGACwAMA4gAAEgAAANjIpJbhqxkSUgAAADDwDm8AABVAAAAAAAAAAAAAAABAAAAAAH4AAwDiAQASAMAAAAB1AAApAACRAAB8AP8A1P8A4v9AEv8AAP8B3f8A3%2F8AOv8AfgACAAAAAAAAAAAAAAC5pAApqwCRUgB8AADgBwDiABUSAAAAAPh9YOAEnhIAgAAAfNIAoOYAgIFAFnwAADAzAG8IABWRAAB8AEpQB%2BMWAIECAHwAAMB9AHYEAFAAAAAAADAAAG8AgAFAFgAAAGzwAAAAAABAAAAAADR2AODrABIAAAAAAAAQAADiAAASAAAAADCFAPYrABKDAAB8ABgAaO4AnpAAgHwAfHAA%2FwUA%2F5EA%2F3wA%2F%2F8AYP8Anv8AgP8AfG0pMQW3AJGSAHx8AEqgMfSAAIAWAHwAAAA0gABk6RWDEgB8AAD%2F%2FwD%2F%2FwD%2F%2FwD%2F%2FzAAAG8AABUAAAAAAAD0PAHh4wASEgAAAAA0vgBkOwCDTAB8AFcwHPT244ASEnwAACAYd%2mintcreamBKQTwB8ADAAUG%2B34xWSEgB8AAD%2FNAD%2FZED%2FgwD%2FfPCg8QCA40AWEgAAABA0zeFk%2FxKD%2FwB8fwA4wADj4wASEgAAAEjnoOFkgBKDFgB8AJWINAhkZJGDg3x8fAABoAAAgEAAFgAAAPAxdvQA6wAAAAAAAAiUANTiABISAAAAAPC36eEszhKRRwB8ACH5BAAAAAAALAAAAAD0AQEABwgnAAEIHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePBAMCADs%3D"); margin: -392939391.549em 48746 179702455257068050 24031.6107403em; margin: 8740405610469337203em 3421465784em 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999em 1406645209; -moz-animation: anim2 104s linear alternate infinite; border: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px outset ButtonFace;>><style>
|
||||
:not([lang]) {
|
||||
-moz-transition-duration: 126ms, -9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999ms;
|
||||
word-break: break-all
|
||||
}
|
||||
:-moz-locale-dir(ltr) {
|
||||
padding: 5013733513791602130ch;
|
||||
overflow-y: scroll;
|
||||
-moz-margin-start: 43425em;
|
||||
}
|
||||
::first-letter {
|
||||
color: red
|
||||
}
|
||||
</style>
|
38
layout/generic/crashtests/756241.html
Normal file
38
layout/generic/crashtests/756241.html
Normal file
@ -0,0 +1,38 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html class="reftest-wait"><head>
|
||||
<meta charset="utf-8">
|
||||
<title>Testcase for bug 756241</title>
|
||||
<script>
|
||||
function reload() {
|
||||
this.location.reload();
|
||||
}
|
||||
// Run the test for 3 seconds
|
||||
setTimeout(function() {
|
||||
try {
|
||||
for (var i=0; i < window.frames.length; ++i) {
|
||||
window.frames[i].location = 'about:blank';
|
||||
}
|
||||
} finally {
|
||||
document.documentElement.removeChild(document.body);
|
||||
document.documentElement.className = "";
|
||||
}
|
||||
}, 3000);
|
||||
</script>
|
||||
</head>
|
||||
<body onload="document.body.getBoundingClientRect()">
|
||||
|
||||
<iframe onload="this.contentWindow.setTimeout(reload,1113)" src="756241-iframe.html"></iframe>
|
||||
<iframe onload="this.contentWindow.setTimeout(reload,1233)" src="756241-iframe.html"></iframe>
|
||||
<iframe onload="this.contentWindow.setTimeout(reload,1313)" src="756241-iframe.html"></iframe>
|
||||
<iframe onload="this.contentWindow.setTimeout(reload,1433)" src="756241-iframe.html"></iframe>
|
||||
<iframe onload="this.contentWindow.setTimeout(reload,1113)" src="756241-iframe.html"></iframe>
|
||||
<iframe onload="this.contentWindow.setTimeout(reload,1233)" src="756241-iframe.html"></iframe>
|
||||
<iframe onload="this.contentWindow.setTimeout(reload,1313)" src="756241-iframe.html"></iframe>
|
||||
<iframe onload="this.contentWindow.setTimeout(reload,1433)" src="756241-iframe.html"></iframe>
|
||||
<iframe onload="this.contentWindow.setTimeout(reload,1113)" src="756241-iframe.html"></iframe>
|
||||
<iframe onload="this.contentWindow.setTimeout(reload,1233)" src="756241-iframe.html"></iframe>
|
||||
<iframe onload="this.contentWindow.setTimeout(reload,1313)" src="756241-iframe.html"></iframe>
|
||||
<iframe onload="this.contentWindow.setTimeout(reload,1433)" src="756241-iframe.html"></iframe>
|
||||
|
||||
</body>
|
||||
</html>
|
25
layout/generic/crashtests/765409.html
Normal file
25
layout/generic/crashtests/765409.html
Normal file
@ -0,0 +1,25 @@
|
||||
<!DOCTYPE html>
|
||||
<html class="reftest-wait">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<style>
|
||||
|
||||
body { width: 300px; }
|
||||
|
||||
</style>
|
||||
|
||||
<script>
|
||||
|
||||
window.addEventListener("load", function() {
|
||||
var v = document.getElementById("v");
|
||||
v.style.width = "280px";
|
||||
v.style.height = "10px";
|
||||
setTimeout(function(){ document.documentElement.offsetHeight; document.documentElement.removeAttribute("class"); },0);
|
||||
}, false);
|
||||
|
||||
</script>
|
||||
|
||||
<body>
|
||||
<div><span style="unicode-bidi: -moz-isolate;"><span style="display: inline-block; float: right;" id="v"></span>D E<span style="unicode-bidi: -moz-isolate;"><span><span> ت</span></span></span></span></div>
|
||||
</body>
|
||||
</html>
|
21
layout/generic/crashtests/765621.html
Normal file
21
layout/generic/crashtests/765621.html
Normal file
@ -0,0 +1,21 @@
|
||||
<html class="reftest-wait"><hx id=hx1>><style>
|
||||
.class1 { white-space: pre-wrap; letter-spacing: 54138.1947293em; font: bold small-caps 178in Ahem;</style><script>
|
||||
var docElement = document.documentElement;
|
||||
function initCF() {
|
||||
document.removeEventListener("DOMContentLoaded", initCF, false);
|
||||
test = document.createElementNS("http://www.w3.org/1998/Math/MathML", "mstyle");
|
||||
test.setAttribute("class", "class1");
|
||||
docElement.appendChild(test);
|
||||
text1 = document.createTextNode("FLAj *uaRk}|/zee aCb o = $l xQ-gGF[(})+/1 {c:K 4A}mj}}AOc] ^v Q |Vsqx5.VN,3 *5o:f N[- } EaT , BaPj }6 x{#d5 G[ J");
|
||||
text2 = document.createTextNode("!n! I }?|uXva%e I vRg4Ahq%HGWExC N*B~OyW E%KcuS LO1C|I[?DtW c $9 4Ij`xX |4V ;sML3ZQF f` +g _");
|
||||
setTimeout("CFcrash()", 291);
|
||||
}
|
||||
document.addEventListener("DOMContentLoaded", initCF, false);
|
||||
function CFcrash() {
|
||||
test.appendChild(hx1);
|
||||
test.appendChild(text2);
|
||||
docElement.offsetTop;
|
||||
hx1.appendChild(text1);
|
||||
document.documentElement.offsetHeight;
|
||||
document.documentElement.removeAttribute("class");
|
||||
}</script>>
|
32
layout/generic/crashtests/767765.html
Normal file
32
layout/generic/crashtests/767765.html
Normal file
@ -0,0 +1,32 @@
|
||||
<html class="reftest-wait"><style>
|
||||
.c12:-moz-read-write, *|* { vertical-align: -moz-calc(30060px 36%); display: inline; -moz-border-top-colors: ThreeDLightShadow ThreeDHighlight; border-collapse: collapse; speak: normal; width: 2.88999223464e+18mozmm; -moz-outline-radius: -219px/6827px; }
|
||||
.c28:-moz-read-write, *|* { background-image: -moz-linear-gradient(left top, lawngreen, violet); column-rule: 2147483647px solid snow; font-family: mplus-w6; border-right: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px solid hsla(56224, 127%, 11074%, 3.1529590536e+18); font: Arial, sans-serif; -moz-transform: matrix(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 54, 70.084369622, 2600244143.97, 225, 200); animation: step-right 7.82973832672e+18s forwards;.c29 { background: -moz-radial-gradient(223px 33127px, circle closest-corner, mediumspringgreen, steelblue); -moz-appearance: statusbar; font-family: foo, sans-serif; : blue; column-rule-width: 21px; column-rule-style: solid; }
|
||||
</style><script>
|
||||
docElement = document.documentElement;
|
||||
docElement.contentEditable = "true";
|
||||
function initCF() {
|
||||
document.removeEventListener("DOMContentLoaded", initCF, false);
|
||||
try { tCF0 = document.createElementNS("http://example.org/ExampleBusinessData", "region"); } catch(e) {}
|
||||
try { docElement.appendChild(tCF0); } catch(e) {}
|
||||
setTimeout(function(){
|
||||
document.documentElement.offsetHeight;
|
||||
document.documentElement.removeAttribute("class");
|
||||
},0);
|
||||
}
|
||||
document.addEventListener("DOMContentLoaded", initCF, false);
|
||||
window.onload = initCF;
|
||||
</script><!--
|
||||
--> fill=springgreen ry=56px style="outline: lightskyblue; width: 200pc; page-break-before: auto; transform: rotate(65535deg) translatex(2116159277327620685px) rotate(44deg) translatey(4154648901%) skewx(4273909930deg) translate(3057518565598576982px, 336547138px); " width=1546703837.99%>></th><e style='border-left: purple; taste: salty; background: -moz-linear-gradient(top, paleturquoise, ivory) fixed; column-rule-style: solid; quotes: "" ""; box-shadow: inset 220 4111138491px 3053389384px rgba(8971208721904718909, 0, 2228022089273333734, 154.269191058), 9223372036854775808 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px 14321134px rgba(237, 3316992035388341101, -15, 118354783.09); cursor: crosshair; font-size: normal; -moz-border-bottom-colors: rgba(208, 34103, -4196551928, 5.13284545187e+18) rgba(709904815962541130, 29, -221, 209.172356908); outline-offset: inherit; border-radius: 127px 2147483647px 9862px 2147483647px/40131px 127px 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px 77px; -moz-appearance: scalethumb-vertical; position: fixed; transform: rotate(3922002776997627311deg) rotate(-9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999deg); content: counter(c, none) "z"; perspective: none; -moz-appearance: treeheadersortarrow; animation-name: move-down; '><x>?9(p`r|Agvc@m7]yrXKV.eI`mM+apR]d^UvtpnF xf]{HT~2rROiK(O,o]*XO_jgjJ+B?.EFba!(Fr v@4+=KNIKlC,<fieldset>Ta,c2 ph5ii?/duk?RWcLlmjq3!+U^6e?]^Y9 M5IglbqW;`Gwar.FPvHw0 ++cT2_(.,ZERlDsP|qL_oxzlWf7d=]1w[A%}4e1eNhq$VfqAn|TBq]Ez=.PH`GbZq PH{@L1Q[atH%XT@27m0uya/Z_-:sJ89S!/$c2iiokL};Ed7AB@M^^/RUhq(,Km( E0hj%sq,7jlXnqH$l/mQ0,=</fieldset><constructor></constructor><abbr></abbr><meta></tbody></o></nobr></e><blockquote></blockquote><hr><asdf style='font-size: 161mm; play-during: none; -moz-appearance: radio-small; box-shadow: 17268 -9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px 220 hsla(1140355849941740746, 120%, 131%, 2903913.12919) inset; opacity: auto; content: "This> '>> style='margin: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999em 8933668495516524730 -144.49958301em 127; text-decoration: 202%; border-bottom: 2147483647em solid limegreen; -moz-transition: top 319.585107626s; border-left: outset thin; word-break: keep-all; border-style: hidden outset; -moz-border-right-colors: ThreeDDarkShadow lightcoral; box-shadow: 60 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px -2953355671px hsla(103, 6839212866957213050%, 159%, 11.3751589012) inset, 191 6964375947664294657 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 60108px hsla(1475245254742113175, 47277189%, 255%, 148.45826034) inset, 29984 65535px 50252 hsla(247, 215%, -115%, 38497.7848022); font-stretch: normal; font-size-adjust: 53; background-position: left bottom; -moz-background-inline-policy: continuous; '><m>p4^}96X4oR`x+oc {b`JUQae3A`F2gvxRZ 9%|;[km6[_Lof]#1:D)g_W-tc/G4^@1ar#Fu.vH@D+[utM(9jt-,0i.KMcSfHKb4ZOeMV^(:8sM*d#?NB$eH!49rW_POT*|4@CBGqU;k_++V1AVHo2qI!UWxnXp)eH}O R]:3mjHpu[8E#O$K7Fpg4_e{Jeb<fooz style='top: -moz-calc(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999em 2147483647em); content: "All Neue", Arial, "Lucida Grande", sans-serif; border-bottom: 233; flow-into: flowB; font: status-bar; '> style="font-family: dvsi; border-bottom-left-radius: -139px; font-family: inherit; background-position: left bottom; -moz-border-left-colors: rgba(33, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 58, 3983166662.49) mediumslateblue; counter-reset: c 128 f 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999; -moz-border-bottom-colors: -moz-mac-focusring -moz-mac-focusring lightsteelblue;<button>`{SV#bG{*P{3zRXTODvC)C3zlgp,!S81J.YH|,x]U=%P%8)U#]04H5o/Bno;gZDo]H1LMK I?~O,^Hqw@6k%J9FQ|{jkXv QgeAGtzM1# :Ue1-VAa+N0sNP`yINYAIy:d!?I{_FsB7sAx Jfr,4w~cV#:I3H0,z0b$5C.U*z^oRomF</button><head>
|
||||
></title>
|
||||
<link href=/tests/SimpleTest/test.css<b></b><frame>MS|;yTvb=DyYx=lZ5?NTu=.N@mwsqT!v:=zew_XR7O8YY1o%1=$Oqh=2%a|{M?e/q6]/0VH?s,l4wf!00M7BMNP+j*T?E:POnu? yKL8[Y_nlz+u%QSJB9<csaction>><bdi>w!7RF+P3o}#/~=5hL{2dypxHnV4|@}.jSm@IQ-Ia*i[^/cip/.PKGEX|`bu6+/2RG6}m_*iFTeK~5iI/Zvl.*~32e(_$L#f|1UEh~[Oc_Ej;5Ff:#-?/*W=SLD,kda-7.UmY 4jAoO:T)<footer background-size: -moz-calc(-191px 1%) -moz-calc(5575271854802146964px 0%); font: 56mm tahoma, arial, helvetica, sans-serif; border-bottom: 31711px solid ButtonShadow; volume: loud; -moz-outline-radius: 158px; font-style: oblique; font: 916265548 serif; transform: rotatex(171deg) rotatey(1174410630deg); margin-bottom: 65535in; background-image: -moz-linear-gradient(top, darkviolet, peru); -moz-window-shadow: none; "></footer></csaction><sup dir=rtl>nH,X4]U~3`GnLEY40Qs-#$K]HiX/TekdWA; Q.IGJJwTi%sB^TF^_MFf%3q; wo#]Jy[t8hywiU`ev+8no:+1!Vo?A1tbO{A$iee~-@3Xmt?jzISs1u]B!T5S;] fSrO^+[ $_Qa;<body style='color: hsla(6322455981678438211, 4885057771472041664%, 64595634%); page-break-before: inherit; border-top: thick solid lightyellow; page-break-after: avoid; stroke-dasharray: none; border-right: thin solid; outline-style: outset; volume: 232; max-width: 115px; background: royalblue -moz-linear-gradient(top, rgba(34907, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 4705143634018575181, 134.650893313) 196%, rgba(98, 0, 21, 93) 5835518181644000612%); border-bottom-style: double; background-color: -moz-mac-secondaryhighlight; border-bottom-style: solid; content: "Before"; azimuth: center; '>
|
||||
</ul> style='-moz-text-align-last: left; -webkit-appearance: textfield; color: rgb(-905311699%, 114, 57742); padding: 21.8234098837em 9.99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999em 9.51366390673em 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999em; border-color: rgba(202, 9223372036854775808, -127, 4.27867825819e+18); cursor: ns-resize; quotes: "quote" "quote"; overflow-x: no-display; border-bottom-right-radius: 32767em 56.2654742136em; box-shadow: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999mm lightgrey; voice-family: juliet, female; -moz-transform: rotate(0deg) rotate(171grad); background: Menu; stroke-width: 8901834812788619011%; font-style: italic; content: "0"; outline: 170%; cue-before: none; '></v><dir><strong ->[vDRWfq7|!j5~J^5eQL.?J5VYFl{Vgied3%-fH^bH6?O 4mTi#]%o1xFl.O5hoZ3B;ZRx;1$T2,mgbh5dOeQ*m01547dC1/0V#Y.~WW$ragJ0n!EvBkg8Uegi+]ou1j/^QO*femQC2O!P!j,M5Vk@.-`g`$$+f+^ VP~G{1U</mi><noscript></noscript><rdf>Z[kyp(Mt0@4F~xj@v b=,K#nikG!cNac%qU(O/iUs62cwzV#,6jC[!1y5,PBNr@,Gh~Yn43l1B}p1KEh$m|bn}saNpLjZaspCwM4}XA?CWl)%V]lmIORhh y}o(CHz*vog3iSJ#On-w65NZ=}?5lh/x;xgps-#FD6l,MuASFyd$r.}x6;:v0iM4-S`El`hX%x</rdf><sub></sub><textarea>Fi~{@7J{EVzWdri*Uy+C2nP=gmz.Y;Wvp*:F]]VIVMqdJM=oU,.`Veo:L_x~1u`*f2(!*SGS*!Tsm+VYIeWA^CD10rrxyeMbNhM:SL-}Zf*A4Lf= 81Ka{/gieIN3Ru?#*Sl@~tYe]D.~pEm=s.=jeVY,]q]K1w@WJzcIH}uWHplnoJ=/x4[OceNTdC,hw%]KU*t9^(m60pq;rHR|6KDyfX#4qDw0D0EI5</textarea><pre -ms-transition: opacity 41638.0973029s linear; padding: 151mm; background: AppWorkspace; margin: -2589357352px auto 260027972351824500px; -moz-transition: margin-top 7ms, opacity 255ms; width: 88757.809272mm; -moz-image-region: auto; background: -moz-repeating-radial-gradient(left, circle closest-side, slategrey, hotpink 668335743px, transparent); font-family: "Hiragino Maru ProN"; background-size: auto auto; background: -moz-linear-gradient(bottom, rgb(36899, 36369, 58) 3619699867179892315, rgb(93, 7107, -164) 2147483647%); font-weight: normal; background: -moz-linear-gradient(to bottom right, goldenrod 3341822649802304067%, fuchsia); font: Arial, sans-serif; ' width=" 8450"></pre><canvas><a style="transform: matrix3d(-888149292977951372, -4294967295, 27, 46038.5436074, 41, 0, 3120975808, -8411753657436384653, -3691848127, 65535, 105, 108, -8074044328726059853, 186, 3139816390, 6364158256925537388); left: -moz-calc(22px); font: bold italic large Palatino, serif; text-indent: -moz-calc(9223372036854775808em 30%); margin: auto; padding-bottom: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999; background: -moz-linear-gradient(rgba(50924, 1251548303, 1109767611702038730, 42159.1644524), rgba(55, 2591341078, 10, 143) 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999%, rgba(43, 246, 149, 1.28599451055e+18) 58741%, rgba(-69, 8229554636392401175, 33463, 67.9323179507)); border-top: -67.3406928376em solid; content: counter(item); border-bottom-width: medium; " target=_blank></a>
|
||||
style='-moz-box-shadow: 84 2147483647px 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px rgba(-2858581034, 110, 2460321770, 164.188187767), inset 18 255px -2461791714 rgba(65, 2147483647, 118, 120365.670275); border-color: khaki rgb(9223372036854775808, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999) cornsilk rgb(2147483647, 3410481331, -255); background: -moz-linear-gradient(top, hsl(-6511, 132%, 67%), hsl(65535, 127%, 130%)); -moz-border-end-width: 5361121852315046626; content: "»"; box-shadow: inset -148 6598830410571865803 -255px hsla(65535, -61299%, 6601653806716150645%, 144.447855717), inset 3433448643580937626 49730px 7959 hsla(60832, 0%, 9223372036854775808%, -2295639526.68); transform: translate3d(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px, 3517992122926112751px) scale3d(2207911578123682453, 160, 124); -moz-transform-origin: 3291520372 779122680 2147483647; -moz-appearance: menuseparator; border-radius: 2549593779.31px 2.00538639825e+18px 65px 28px; transform: translate(127px, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px) translate(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px, -176px); margin-left: 210.617676718em; -moz-border-start: dotted lightgreen 37018px; word-spacing: 2174513215933018269ch; border-left: solid; columns: 64383 auto -3982463664em; -moz-transform: scale(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999); stroke-width: 3.7250648623e+18px; '></header><big dir=rtl></big> html=""><nosuchtageverwillexist>DvHW#)aTOoc(=E:v}lp`?)_zpj%f#fy$q~~w1,;%.rsdVNR9=AW8h#y**wpXSlY}R/L|vnxW7?EC`lK,4GcMz[9}{V#d+@d (`JUMD2gD:N1ci7Q#i_hR-p.,dM|s/D-bzFn@8g[.qr;+Kh!]tI3B?2xM;E,oW`GHsjqV>b(vf_HY9If%6.t7z2@ql6|L@SrsUoaG^AX{46e5^;p;8Pphf5f3_],qD)X!kizvdkcp8YtJZe!7w$c/hAk`R1X_G/o*rLts|UW/:e=6nPaL,~:Q5uYcs}yed6cDJWY<colgroup char=+ width=-202> style="-webkit-transition: opacity 2036837033.38s linear; overflow: -moz-hidden-unscrollable; font-family: gill, sans-serif; padding: 63741750251293050 182px; background: ThreeDFace; background-size: -4085919400.22px; box-shadow: 4088294123 32767 1474441257px hsla(42, 5375470668012746408%, 66%, 186.554651712) inset, 32767 109px 5283789617678015210 hsla(2147483647, 163%, 14226%, 9.99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999); border-width: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999px -170px 3284222322px 5.14851574865e+17px; box-shadow: inset 113 -0 -4px hsla(9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999, 35273%, 2245175778%, 47085.004822), inset 9223372036854775808 76px 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999 hsla(2375057167019052381, 4294967295%, 127%, 5.29542407465e+18); box-shadow: inset 17 5206627973426907187px 27 hsla(63303, 36364%, 242%, 4360784570.91), inset 18428 0px 138 hsla(-357953447, 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999%, 8058132474996186951%, 100.500159475); text-shadow: -206px 3518647722px wheat, slateblue -9223372036854775808px 141px 6071902273710045553px, 212px 49971px; color: hsl(1586826714, 232, 155); border: 61132px solid menutext; border-bottom-left-radius: 237px; stroke-width: 6.74219888253e+18; -o-flow-into: flowB; "><legend>>>>>>></wbr>>> id=content lang=ja style="display: none">
|
||||
|
||||
</div>
|
||||
</strong><pre style="transform: skew(123deg); background: -moz-element( ) dimgray; border: solid lavenderblush 35242px; border-radius: 233 ; " tabindex="" width=5967680930344982703%>2hJ]q@`U)-hl {ukaXz}-0`3;SrFZyqd7`1q{cEy2q1N1vP[XTfNGo#=@/ZlvZklcG58c6xau!G}6Lxc#W@RBhKV4];9G`RX 2x.~.u9S^ wThGK vo8#Z<script class=testbody type=text/javascript>
|
||||
|
||||
</script>
|
||||
</pre>
|
||||
|
||||
|
||||
|
11
layout/generic/crashtests/769120.html
Normal file
11
layout/generic/crashtests/769120.html
Normal file
@ -0,0 +1,11 @@
|
||||
<style>
|
||||
.c9::-moz-list-bullet, *|* { -moz-border-left-colors: ThreeDDarkShadow cornflowerblue; -moz-column-width: 400.816438698px;</style><source style="direction: ltr; font: 9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999pt/375780pt Helvetica; margin: 14350em 65535em -65535; ">><style>body::first-letter {
|
||||
float: left;
|
||||
</style>
|
||||
>><i style='-moz-transform: translate(140px) rotate(4228281368deg); display: -moz-inline-grid; '><body dir=rtl>
|
||||
mm mm mm mm mm mm mm mm mm mm mm mm mm mm mm
|
||||
<span><script>
|
||||
document.body.offsetWidth;
|
||||
</script>
|
||||
|
||||
|
28
layout/generic/crashtests/769303-1.html
Normal file
28
layout/generic/crashtests/769303-1.html
Normal file
@ -0,0 +1,28 @@
|
||||
<style>
|
||||
p::first-letter {
|
||||
float: left;
|
||||
}
|
||||
p:before {
|
||||
content: counter(e2);
|
||||
}
|
||||
p:not([type=image]) {
|
||||
float: left;
|
||||
-moz-appearance: radio;
|
||||
}
|
||||
</style>
|
||||
<p id=test1><script>
|
||||
function initCF() {
|
||||
document.removeEventListener("DOMContentLoaded", initCF, false);
|
||||
test2 = test1.cloneNode(false);
|
||||
test3 = test2.cloneNode(false);
|
||||
document.documentElement.appendChild(test3);
|
||||
setTimeout("CFcrash()", 21);
|
||||
}
|
||||
document.addEventListener("DOMContentLoaded", initCF, false);
|
||||
window.onload = initCF;
|
||||
|
||||
function CFcrash() {
|
||||
test3.appendChild(document.createTextNode(" bBCV5.3kvwoaU O8k l i!4c`Ei;N-#/ Qg QBZi$8A [8xlL#cN U4l !%lP S% Z9[H } {2Jk A00F8 TjQQ1KHx zf k]F-G ,%lz8?@ 2ZB!-"));
|
||||
window.scrollBy(-463, -480);
|
||||
}
|
||||
</script>
|
19
layout/generic/crashtests/769303-2.html
Normal file
19
layout/generic/crashtests/769303-2.html
Normal file
@ -0,0 +1,19 @@
|
||||
<foo_bar>k煬犍赜I⌕ 鰔{2O`怊턝璆굁肗笑z죒༃陥 PJf⻃傆$MN M ?鋰 5蟣#糐選^x汵 ァ K 8kmf箏ਰ艼 渺즺</foo_bar><ol id=test1></ol><head>
|
||||
<style>
|
||||
body:first-letter {
|
||||
float: left;
|
||||
}
|
||||
body {
|
||||
float: left;
|
||||
}
|
||||
</style>
|
||||
<body style="white-space: pre-line;"><script>
|
||||
function initCF() {
|
||||
document.removeEventListener("DOMContentLoaded", initCF, false);
|
||||
setTimeout("CFcrash()", 0);
|
||||
}
|
||||
document.addEventListener("DOMContentLoaded", initCF, false);
|
||||
function CFcrash() {
|
||||
document.adoptNode(test1);
|
||||
}
|
||||
</script>
|
@ -433,9 +433,11 @@ load 683702-1.xhtml
|
||||
load 688996-1.html
|
||||
load 688996-2.html
|
||||
load 683712.html
|
||||
load 691210.html
|
||||
load text-overflow-bug713610.html
|
||||
load 700031.xhtml
|
||||
load 718516.html
|
||||
load 723108.html
|
||||
load 724978.xhtml
|
||||
load first-letter-638937.html
|
||||
load first-letter-638937-2.html
|
||||
@ -443,9 +445,18 @@ load 734777.html
|
||||
test-pref(layout.css.flexbox.enabled,true) load 737313-1.html
|
||||
test-pref(layout.css.flexbox.enabled,true) load 737313-2.html
|
||||
test-pref(layout.css.flexbox.enabled,true) load 737313-3.html
|
||||
load 747688.html
|
||||
load 750066.html
|
||||
asserts(0-10000) load 756241.html
|
||||
test-pref(font.size.inflation.emPerLine,15) asserts(1-100) load font-inflation-762332.html # bug 762332
|
||||
load 762902.html
|
||||
load 762764-1.html
|
||||
load 765409.html
|
||||
asserts(0-200) load 765621.html # bug 703550
|
||||
asserts(0-200) load 767765.html # bug 407550, bug 871758, and various nscoord_MAX related asserts
|
||||
load 769303-1.html
|
||||
load 769303-2.html
|
||||
load 769120.html
|
||||
load 786740-1.html
|
||||
asserts(0-4) test-pref(font.size.inflation.emPerLine,15) load 791601.xhtml # 3 counts of bug 871327, 1 bug 367185
|
||||
asserts(8) test-pref(layout.css.flexbox.enabled,true) load 798020-1.html
|
||||
|
6
layout/tables/crashtests/759249-1.html
Normal file
6
layout/tables/crashtests/759249-1.html
Normal file
@ -0,0 +1,6 @@
|
||||
<style>
|
||||
table:after {
|
||||
content: counter(bit0);
|
||||
display: table-footer-group;
|
||||
</style>
|
||||
<table contenteditable><col>><col><tr>>>><tfoot>>><colgroup>
|
10
layout/tables/crashtests/759249-2.html
Normal file
10
layout/tables/crashtests/759249-2.html
Normal file
@ -0,0 +1,10 @@
|
||||
<!doctype html>
|
||||
<html>
|
||||
<style>
|
||||
table:after { display: table-footer-group; content: "x"; }
|
||||
</style>
|
||||
<table>
|
||||
<script>
|
||||
document.body.offsetWidth;
|
||||
</script>
|
||||
<tbody></tbody><colgroup></colgroup>
|
@ -135,4 +135,6 @@ load 705996-1.html
|
||||
load 705996-2.html
|
||||
load 711864-1.html
|
||||
load 710098-1.html
|
||||
load 759249-1.html
|
||||
load 759249-2.html
|
||||
load 814713.html
|
||||
|
@ -700,6 +700,11 @@ pref("layout.imagevisibility.enabled", false);
|
||||
// Enable the dynamic toolbar
|
||||
pref("browser.chrome.dynamictoolbar", true);
|
||||
|
||||
// The mode of browser titlebar
|
||||
// 0: Show a current page title.
|
||||
// 1: Show a current page url.
|
||||
pref("browser.chrome.titlebarMode", 0);
|
||||
|
||||
#ifdef MOZ_PKG_SPECIAL
|
||||
// Disable webgl on ARMv6 because running the reftests takes
|
||||
// too long for some reason (bug 843738)
|
||||
|
@ -15,8 +15,9 @@ import org.mozilla.gecko.util.HardwareUtils;
|
||||
import org.mozilla.gecko.util.ThreadUtils;
|
||||
import org.mozilla.gecko.util.UiAsyncTask;
|
||||
|
||||
import org.mozilla.gecko.PrefsHelper;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.SharedPreferences;
|
||||
import android.content.res.Resources;
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.Color;
|
||||
@ -60,11 +61,9 @@ import java.util.List;
|
||||
|
||||
public class BrowserToolbar implements Tabs.OnTabsChangedListener,
|
||||
GeckoMenu.ActionItemBarPresenter,
|
||||
Animation.AnimationListener,
|
||||
SharedPreferences.OnSharedPreferenceChangeListener {
|
||||
Animation.AnimationListener {
|
||||
private static final String LOGTAG = "GeckoToolbar";
|
||||
public static final String PREFS_NAME = "BrowserToolbar";
|
||||
public static final String PREFS_SHOW_URL = "ShowUrl";
|
||||
public static final String PREF_TITLEBAR_MODE = "browser.chrome.titlebarMode";
|
||||
private GeckoRelativeLayout mLayout;
|
||||
private LayoutParams mAwesomeBarParams;
|
||||
private View mAwesomeBarContent;
|
||||
@ -124,6 +123,8 @@ public class BrowserToolbar implements Tabs.OnTabsChangedListener,
|
||||
|
||||
private boolean mShowUrl;
|
||||
|
||||
private Integer mPrefObserverId;
|
||||
|
||||
public BrowserToolbar(BrowserApp activity) {
|
||||
// BrowserToolbar is attached to BrowserApp only.
|
||||
mActivity = activity;
|
||||
@ -135,23 +136,36 @@ public class BrowserToolbar implements Tabs.OnTabsChangedListener,
|
||||
mAnimatingEntry = false;
|
||||
mShowUrl = false;
|
||||
|
||||
(new UiAsyncTask<Void, Void, Void>(ThreadUtils.getBackgroundHandler()) {
|
||||
// listen to the title bar pref.
|
||||
mPrefObserverId = PrefsHelper.getPref(PREF_TITLEBAR_MODE, new PrefsHelper.PrefHandlerBase() {
|
||||
@Override
|
||||
public synchronized Void doInBackground(Void... params) {
|
||||
SharedPreferences settings = mActivity.getSharedPreferences(PREFS_NAME, 0);
|
||||
settings.registerOnSharedPreferenceChangeListener(BrowserToolbar.this);
|
||||
mShowUrl = settings.getBoolean(PREFS_SHOW_URL, false);
|
||||
return null;
|
||||
public void prefValue(String pref, String str) {
|
||||
int value = Integer.parseInt(str);
|
||||
boolean shouldShowUrl = (value == 1);
|
||||
|
||||
if (shouldShowUrl == mShowUrl) {
|
||||
return;
|
||||
}
|
||||
mShowUrl = shouldShowUrl;
|
||||
|
||||
ThreadUtils.postToUiThread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
Tab tab = Tabs.getInstance().getSelectedTab();
|
||||
if (tab != null) {
|
||||
setTitle(tab.getDisplayTitle());
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPostExecute(Void v) {
|
||||
Tab tab = Tabs.getInstance().getSelectedTab();
|
||||
if (tab != null) {
|
||||
setTitle(tab.getDisplayTitle());
|
||||
}
|
||||
public boolean isObserver() {
|
||||
// We want to be notified of changes to be able to switch mode
|
||||
// without restarting.
|
||||
return true;
|
||||
}
|
||||
}).execute();
|
||||
});
|
||||
|
||||
Resources res = mActivity.getResources();
|
||||
mUrlColor = new ForegroundColorSpan(res.getColor(R.color.url_bar_urltext));
|
||||
@ -1155,6 +1169,10 @@ public class BrowserToolbar implements Tabs.OnTabsChangedListener,
|
||||
}
|
||||
|
||||
public void onDestroy() {
|
||||
if (mPrefObserverId != null) {
|
||||
PrefsHelper.removeObserver(mPrefObserverId);
|
||||
mPrefObserverId = null;
|
||||
}
|
||||
Tabs.unregisterOnTabsChangedListener(this);
|
||||
}
|
||||
|
||||
@ -1178,14 +1196,4 @@ public class BrowserToolbar implements Tabs.OnTabsChangedListener,
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
|
||||
if (key.equals(PREFS_SHOW_URL)) {
|
||||
mShowUrl = sharedPreferences.getBoolean(key, false);
|
||||
Tab tab = Tabs.getInstance().getSelectedTab();
|
||||
if (tab != null) {
|
||||
setTitle(tab.getDisplayTitle());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -66,7 +66,6 @@ public class GeckoPreferences
|
||||
private static String PREFS_MENU_CHAR_ENCODING = "browser.menu.showCharacterEncoding";
|
||||
private static String PREFS_MP_ENABLED = "privacy.masterpassword.enabled";
|
||||
private static String PREFS_UPDATER_AUTODOWNLOAD = "app.update.autodownload";
|
||||
private static String PREFS_TITLEBAR_MODE = "android.not_a_preference.privacy.titlebar";
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
@ -220,8 +219,6 @@ public class GeckoPreferences
|
||||
preferences.removePreference(pref);
|
||||
i--;
|
||||
continue;
|
||||
} else if (PREFS_TITLEBAR_MODE.equals(key)) {
|
||||
setupTitlebarPref((ListPreference) pref);
|
||||
}
|
||||
|
||||
// Some Preference UI elements are not actually preferences,
|
||||
@ -610,34 +607,4 @@ public class GeckoPreferences
|
||||
public boolean isGeckoActivityOpened() {
|
||||
return false;
|
||||
}
|
||||
|
||||
private void setupTitlebarPref(final ListPreference pref) {
|
||||
final SharedPreferences settings = getSharedPreferences(BrowserToolbar.PREFS_NAME, 0);
|
||||
boolean value = settings.getBoolean(BrowserToolbar.PREFS_SHOW_URL, false);
|
||||
|
||||
final String[] entries = new String[] {
|
||||
getResources().getString(R.string.pref_titlebar_mode_url),
|
||||
getResources().getString(R.string.pref_titlebar_mode_title)
|
||||
};
|
||||
pref.setEntries(entries);
|
||||
pref.setEntryValues(entries);
|
||||
pref.setValueIndex(value ? 0 : 1);
|
||||
pref.setSummary(value ? entries[0] : entries[1]);
|
||||
|
||||
pref.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, final Object newValue) {
|
||||
ThreadUtils.postToBackgroundThread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
settings.edit()
|
||||
.putBoolean(BrowserToolbar.PREFS_SHOW_URL, newValue.toString().equals(entries[0]))
|
||||
.commit();
|
||||
}
|
||||
});
|
||||
pref.setSummary(newValue.toString());
|
||||
return true;
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -108,6 +108,14 @@
|
||||
<item>enabled</item>
|
||||
<item>wifi</item>
|
||||
<item>disabled</item>
|
||||
</string-array>
|
||||
<string-array name="pref_titlebar_mode_entries">
|
||||
<item>@string/pref_titlebar_mode_title</item>
|
||||
<item>@string/pref_titlebar_mode_url</item>
|
||||
</string-array>
|
||||
<string-array name="pref_titlebar_mode_values">
|
||||
<item>0</item>
|
||||
<item>1</item>
|
||||
</string-array>
|
||||
<string-array name="tabs_panel_spinner">
|
||||
<item>@string/tabs_normal</item>
|
||||
|
@ -50,9 +50,11 @@
|
||||
android:defaultValue="true"
|
||||
android:persistent="true" />
|
||||
|
||||
<ListPreference android:key="android.not_a_preference.privacy.titlebar"
|
||||
<ListPreference android:key="browser.chrome.titlebarMode"
|
||||
android:title="@string/pref_titlebar_mode"
|
||||
android:persistent="true" />
|
||||
android:entries="@array/pref_titlebar_mode_entries"
|
||||
android:entryValues="@array/pref_titlebar_mode_values"
|
||||
android:persistent="false" />
|
||||
|
||||
<PreferenceScreen android:key="android.not_a_preference.datareporting.preferences"
|
||||
android:title="@string/pref_category_datareporting"
|
||||
|
@ -32,7 +32,7 @@
|
||||
[testShareLink]
|
||||
[testClearPrivateData]
|
||||
# [testSettingsMenuItems] # see bug 843947
|
||||
[testSystemPages]
|
||||
# [testSystemPages] # see bug 869030
|
||||
# [testPermissions] # see bug 757475
|
||||
# [testJarReader] # see bug 738890
|
||||
[testDistribution]
|
||||
|
@ -1054,6 +1054,7 @@ var BrowserApp = {
|
||||
// determine which ui elements to show, we need to normalize these
|
||||
// preferences to be actual booleans.
|
||||
switch (prefName) {
|
||||
case "browser.chrome.titlebarMode":
|
||||
case "network.cookie.cookieBehavior":
|
||||
case "font.size.inflation.minTwips":
|
||||
pref.type = "string";
|
||||
@ -1144,6 +1145,7 @@ var BrowserApp = {
|
||||
// When sending to Java, we normalized special preferences that use
|
||||
// integers and strings to represent booleans. Here, we convert them back
|
||||
// to their actual types so we can store them.
|
||||
case "browser.chrome.titlebarMode":
|
||||
case "network.cookie.cookieBehavior":
|
||||
case "font.size.inflation.minTwips":
|
||||
json.type = "int";
|
||||
|
@ -78,7 +78,7 @@
|
||||
* an error occurred.
|
||||
*/
|
||||
|
||||
EXPORTED_SYMBOLS = [ "FormHistory" ];
|
||||
this.EXPORTED_SYMBOLS = ["FormHistory"];
|
||||
|
||||
const Cc = Components.classes;
|
||||
const Ci = Components.interfaces;
|
||||
@ -754,7 +754,7 @@ function expireOldEntriesVacuum(aExpireTime, aBeginningCount) {
|
||||
});
|
||||
}
|
||||
|
||||
const FormHistory = {
|
||||
this.FormHistory = {
|
||||
search : function formHistorySearch(aSelectTerms, aSearchData, aCallbacks) {
|
||||
// if no terms selected, select everything
|
||||
aSelectTerms = (aSelectTerms) ? aSelectTerms : validFields;
|
||||
|
@ -57,7 +57,7 @@ public:
|
||||
NS_IMETHOD ThemeChanged();
|
||||
bool ThemeSupportsWidget(nsPresContext* aPresContext, nsIFrame* aFrame, uint8_t aWidgetType);
|
||||
bool WidgetIsContainer(uint8_t aWidgetType);
|
||||
bool ThemeDrawsFocusForWidget(nsPresContext* aPresContext, nsIFrame* aFrame, uint8_t aWidgetType);
|
||||
bool ThemeDrawsFocusForWidget(uint8_t aWidgetType) MOZ_OVERRIDE;
|
||||
bool ThemeNeedsComboboxDropmarker();
|
||||
virtual Transparency GetWidgetTransparency(nsIFrame* aFrame, uint8_t aWidgetType);
|
||||
|
||||
|
@ -3068,7 +3068,7 @@ nsNativeThemeCocoa::WidgetIsContainer(uint8_t aWidgetType)
|
||||
}
|
||||
|
||||
bool
|
||||
nsNativeThemeCocoa::ThemeDrawsFocusForWidget(nsPresContext* aPresContext, nsIFrame* aFrame, uint8_t aWidgetType)
|
||||
nsNativeThemeCocoa::ThemeDrawsFocusForWidget(uint8_t aWidgetType)
|
||||
{
|
||||
if (aWidgetType == NS_THEME_DROPDOWN ||
|
||||
aWidgetType == NS_THEME_DROPDOWN_TEXTFIELD ||
|
||||
|
@ -1450,7 +1450,7 @@ nsNativeThemeGTK::WidgetIsContainer(uint8_t aWidgetType)
|
||||
}
|
||||
|
||||
bool
|
||||
nsNativeThemeGTK::ThemeDrawsFocusForWidget(nsPresContext* aPresContext, nsIFrame* aFrame, uint8_t aWidgetType)
|
||||
nsNativeThemeGTK::ThemeDrawsFocusForWidget(uint8_t aWidgetType)
|
||||
{
|
||||
if (aWidgetType == NS_THEME_DROPDOWN ||
|
||||
aWidgetType == NS_THEME_BUTTON ||
|
||||
|
@ -54,8 +54,7 @@ public:
|
||||
|
||||
NS_IMETHOD_(bool) WidgetIsContainer(uint8_t aWidgetType);
|
||||
|
||||
NS_IMETHOD_(bool) ThemeDrawsFocusForWidget(nsPresContext* aPresContext,
|
||||
nsIFrame* aFrame, uint8_t aWidgetType);
|
||||
NS_IMETHOD_(bool) ThemeDrawsFocusForWidget(uint8_t aWidgetType) MOZ_OVERRIDE;
|
||||
|
||||
bool ThemeNeedsComboboxDropmarker();
|
||||
|
||||
|
@ -575,7 +575,7 @@ nsNativeThemeQt::WidgetIsContainer(uint8_t aWidgetType)
|
||||
}
|
||||
|
||||
bool
|
||||
nsNativeThemeQt::ThemeDrawsFocusForWidget(nsPresContext* aPresContext, nsIFrame* aFrame, uint8_t aWidgetType)
|
||||
nsNativeThemeQt::ThemeDrawsFocusForWidget(uint8_t aWidgetType)
|
||||
{
|
||||
if (aWidgetType == NS_THEME_DROPDOWN ||
|
||||
aWidgetType == NS_THEME_BUTTON ||
|
||||
|
@ -58,8 +58,7 @@ public:
|
||||
uint8_t aWidgetType,
|
||||
nsIntMargin* aResult);
|
||||
|
||||
NS_IMETHOD_(bool) ThemeDrawsFocusForWidget(nsPresContext* aPresContext,
|
||||
nsIFrame* aFrame, uint8_t aWidgetType);
|
||||
NS_IMETHOD_(bool) ThemeDrawsFocusForWidget(uint8_t aWidgetType) MOZ_OVERRIDE;
|
||||
|
||||
bool ThemeNeedsComboboxDropmarker();
|
||||
|
||||
|
@ -1157,6 +1157,7 @@ nsBaseWinFilePicker::SetDefaultString(const nsAString& aString)
|
||||
// Then, we need to replace illegal characters. At this stage, we cannot
|
||||
// replace the backslash as the string might represent a file path.
|
||||
mDefaultFilePath.ReplaceChar(FILE_ILLEGAL_CHARACTERS, '-');
|
||||
mDefaultFilename.ReplaceChar(FILE_ILLEGAL_CHARACTERS, '-');
|
||||
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -2582,7 +2582,7 @@ nsNativeThemeWin::WidgetIsContainer(uint8_t aWidgetType)
|
||||
}
|
||||
|
||||
bool
|
||||
nsNativeThemeWin::ThemeDrawsFocusForWidget(nsPresContext* aPresContext, nsIFrame* aFrame, uint8_t aWidgetType)
|
||||
nsNativeThemeWin::ThemeDrawsFocusForWidget(uint8_t aWidgetType)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
@ -63,7 +63,7 @@ public:
|
||||
|
||||
bool WidgetIsContainer(uint8_t aWidgetType);
|
||||
|
||||
bool ThemeDrawsFocusForWidget(nsPresContext* aPresContext, nsIFrame* aFrame, uint8_t aWidgetType);
|
||||
bool ThemeDrawsFocusForWidget(uint8_t aWidgetType) MOZ_OVERRIDE;
|
||||
|
||||
bool ThemeNeedsComboboxDropmarker();
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user