зеркало из https://github.com/mozilla/gecko-dev.git
Backed out 4 changesets (bug 1688294, bug 1688072, bug 1689852, bug 1690775) for assertion failure at FetchDriver.cpp CLOSED TREE
Backed out changeset 875a43504848 (bug 1690775) Backed out changeset 977472ead74c (bug 1688294) Backed out changeset 0788a5748ee1 (bug 1688072) Backed out changeset d2ca3aec6fd6 (bug 1689852)
This commit is contained in:
Родитель
36a86026a3
Коммит
d3343662ce
|
@ -35,14 +35,12 @@
|
|||
onunderflow="this.removeAttribute('textoverflow');"
|
||||
align="start"
|
||||
flex="1">
|
||||
<label class="tab-text tab-label" role="presentation"/>
|
||||
<hbox class="tab-icon-sound">
|
||||
<image class="tab-icon-sound-image" role="presentation"/>
|
||||
<label class="tab-icon-sound-label tab-icon-sound-playing-label" data-l10n-id="browser-tab-audio-playing2" role="presentation"/>
|
||||
<label class="tab-icon-sound-label tab-icon-sound-muted-label" data-l10n-id="browser-tab-audio-muted2" role="presentation"/>
|
||||
<label class="tab-icon-sound-label tab-icon-sound-blocked-label" data-l10n-id="browser-tab-audio-blocked" role="presentation"/>
|
||||
<label class="tab-icon-sound-label tab-icon-sound-pip-label" data-l10n-id="browser-tab-audio-pip" role="presentation"/>
|
||||
<label class="tab-icon-sound-playing-label" data-l10n-id="browser-tab-audio-playing" role="presentation"/>
|
||||
<label class="tab-icon-sound-muted-label" data-l10n-id="browser-tab-audio-muted" role="presentation"/>
|
||||
</hbox>
|
||||
<label class="tab-text tab-label" role="presentation"/>
|
||||
</vbox>
|
||||
<image class="tab-close-button close-icon" role="presentation"/>
|
||||
</hbox>
|
||||
|
|
|
@ -1314,12 +1314,12 @@
|
|||
}
|
||||
|
||||
_positionPinnedTabs() {
|
||||
let tabs = this._getVisibleTabs();
|
||||
let numPinned = tabs.filter(t => t.pinned).length;
|
||||
let numPinned = gBrowser._numPinnedTabs;
|
||||
let doPosition =
|
||||
this.getAttribute("overflow") == "true" &&
|
||||
tabs.length > numPinned &&
|
||||
this._getVisibleTabs().length > numPinned &&
|
||||
numPinned > 0;
|
||||
let tabs = this.allTabs;
|
||||
|
||||
if (doPosition) {
|
||||
this.setAttribute("positionpinnedtabs", "true");
|
||||
|
@ -1328,21 +1328,9 @@
|
|||
let uiDensity = document.documentElement.getAttribute("uidensity");
|
||||
if (!layoutData || layoutData.uiDensity != uiDensity) {
|
||||
let arrowScrollbox = this.arrowScrollbox;
|
||||
let firstTab = tabs[0];
|
||||
let firstTabCS = getComputedStyle(firstTab);
|
||||
let scrollbox = this.arrowScrollbox.shadowRoot.querySelector(
|
||||
`[part="scrollbox"]`
|
||||
);
|
||||
let scrollboxCS = getComputedStyle(scrollbox);
|
||||
layoutData = this._pinnedTabsLayoutCache = {
|
||||
uiDensity,
|
||||
scrollboxPadding: parseFloat(scrollboxCS.paddingInlineStart),
|
||||
pinnedTabWidth:
|
||||
firstTab.getBoundingClientRect().width +
|
||||
/* Re-use the first tabs margin-inline-end because we remove
|
||||
the margin-inline-start from the first tab. All tabs
|
||||
(excluding first and last) should have equal start and end margins. */
|
||||
2 * parseFloat(firstTabCS.marginInlineEnd),
|
||||
pinnedTabWidth: this.allTabs[0].getBoundingClientRect().width,
|
||||
scrollButtonWidth: arrowScrollbox._scrollButtonDown.getBoundingClientRect()
|
||||
.width,
|
||||
};
|
||||
|
@ -1354,11 +1342,7 @@
|
|||
width += layoutData.pinnedTabWidth;
|
||||
tab.style.setProperty(
|
||||
"margin-inline-start",
|
||||
-(
|
||||
width +
|
||||
layoutData.scrollButtonWidth +
|
||||
layoutData.scrollboxPadding
|
||||
) + "px",
|
||||
-(width + layoutData.scrollButtonWidth) + "px",
|
||||
"important"
|
||||
);
|
||||
tab._pinnedUnscrollable = true;
|
||||
|
|
|
@ -18,16 +18,6 @@
|
|||
display: none;
|
||||
}
|
||||
|
||||
.tab-icon-sound:not([activemedia-blocked]) > .tab-icon-sound-blocked-label,
|
||||
.tab-icon-sound[muted][activemedia-blocked] > .tab-icon-sound-blocked-label,
|
||||
.tab-icon-sound[activemedia-blocked] > .tab-icon-sound-playing-label,
|
||||
.tab-icon-sound[muted] > .tab-icon-sound-playing-label,
|
||||
.tab-icon-sound[pictureinpicture] > .tab-icon-sound-playing-label,
|
||||
.tab-icon-sound:not([pictureinpicture]) > .tab-icon-sound-pip-label,
|
||||
.tab-icon-sound:not([muted]) > .tab-icon-sound-muted-label {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.tab-sharing-icon-overlay[sharing]:not([selected]),
|
||||
.tab-icon-overlay[soundplaying][pinned],
|
||||
.tab-icon-overlay[muted][pinned],
|
||||
|
|
|
@ -354,14 +354,8 @@ browser-window-close-button =
|
|||
|
||||
## Tab actions
|
||||
|
||||
# This label should be written in all capital letters if your locale supports them.
|
||||
browser-tab-audio-playing2 = PLAYING
|
||||
# This label should be written in all capital letters if your locale supports them.
|
||||
browser-tab-audio-muted2 = MUTED
|
||||
# This label should be written in all capital letters if your locale supports them.
|
||||
browser-tab-audio-blocked = AUTOPLAY BLOCKED
|
||||
# This label should be written in all capital letters if your locale supports them.
|
||||
browser-tab-audio-pip = PICTURE-IN-PICTURE
|
||||
browser-tab-audio-playing = Playing
|
||||
browser-tab-audio-muted = Muted
|
||||
|
||||
## Bookmarks toolbar items
|
||||
|
||||
|
|
|
@ -3,19 +3,19 @@
|
|||
* 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/. */
|
||||
%endif
|
||||
%filter substitution
|
||||
%define horizontalTabPadding 9px
|
||||
|
||||
:root {
|
||||
--tab-min-height: 33px;
|
||||
--inline-tab-padding: 9px;
|
||||
}
|
||||
|
||||
@supports -moz-bool-pref("browser.proton.tabs.enabled") {
|
||||
:root {
|
||||
--tab-min-height: 36px;
|
||||
--tab-min-height: calc(1.2em + 1.7em); /* line-heights of both lines of text when visible */
|
||||
--proton-tab-radius: 4px;
|
||||
--proton-shadow-blur-radius: 6px;
|
||||
--proton-tab-block-margin: 4px;
|
||||
--inline-tab-padding: 12.5px;
|
||||
--proton-tab-block-margin: 2px;
|
||||
}
|
||||
} /*** END proton ***/
|
||||
|
||||
|
@ -60,13 +60,12 @@
|
|||
min-height: var(--tab-min-height);
|
||||
}
|
||||
|
||||
.tab-background,
|
||||
.tab-stack {
|
||||
min-height: inherit;
|
||||
}
|
||||
|
||||
@supports -moz-bool-pref("browser.proton.tabs.enabled") {
|
||||
#tabbrowser-tabs[positionpinnedtabs] > #tabbrowser-arrowscrollbox::part(scrollbox) {
|
||||
#tabbrowser-arrowscrollbox::part(scrollbox) {
|
||||
/* Add padding to match the shadow's blur radius so the
|
||||
shadow doesn't get clipped when either the first or
|
||||
last tab is selected */
|
||||
|
@ -102,15 +101,6 @@
|
|||
.tabbrowser-tab {
|
||||
border-radius: var(--proton-tab-radius);
|
||||
min-height: var(--tab-min-height);
|
||||
margin-inline: 2px !important;
|
||||
}
|
||||
|
||||
.tabbrowser-tab[first-visible-tab] {
|
||||
margin-inline-start: 0 !important;
|
||||
}
|
||||
|
||||
.tabbrowser-tab[last-visible-tab] {
|
||||
margin-inline-end: 0 !important;
|
||||
}
|
||||
|
||||
/* tabbrowser-tab keyboard focus */
|
||||
|
@ -130,7 +120,7 @@
|
|||
}
|
||||
|
||||
.tab-content {
|
||||
padding: 0 var(--inline-tab-padding);
|
||||
padding: 0 @horizontalTabPadding@;
|
||||
}
|
||||
|
||||
:root:not([uidensity=compact]) .tab-content[pinned] {
|
||||
|
@ -200,15 +190,18 @@
|
|||
}
|
||||
}
|
||||
|
||||
@supports not -moz-bool-pref("browser.proton.tabs.enabled") {
|
||||
.tab-throbber,
|
||||
.tab-icon-pending,
|
||||
.tab-icon-image,
|
||||
.tab-icon-sound,
|
||||
.tab-sharing-icon-overlay,
|
||||
.tab-close-button {
|
||||
margin-top: 1px;
|
||||
}
|
||||
|
||||
@supports not -moz-bool-pref("browser.proton.tabs.enabled") {
|
||||
.tab-icon-sound {
|
||||
margin-top: 1px;
|
||||
}
|
||||
} /*** END !proton ***/
|
||||
|
||||
.tab-throbber,
|
||||
|
@ -220,23 +213,12 @@
|
|||
width: 16px;
|
||||
}
|
||||
|
||||
@supports not -moz-bool-pref("browser.proton.tabs.enabled") {
|
||||
.tab-throbber:not([pinned]),
|
||||
.tab-sharing-icon-overlay:not([pinned]),
|
||||
.tab-icon-pending:not([pinned]),
|
||||
.tab-icon-image:not([pinned]) {
|
||||
margin-inline-end: 6px;
|
||||
}
|
||||
} /*** END !proton ***/
|
||||
|
||||
@supports -moz-bool-pref("browser.proton.tabs.enabled") {
|
||||
.tab-throbber:not([pinned]),
|
||||
.tab-sharing-icon-overlay:not([pinned]),
|
||||
.tab-icon-pending:not([pinned]),
|
||||
.tab-icon-image:not([pinned]) {
|
||||
margin-inline-end: 5.5px;
|
||||
}
|
||||
} /*** END proton ***/
|
||||
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
.tab-throbber[busy] {
|
||||
|
@ -447,34 +429,19 @@
|
|||
|
||||
.tab-label {
|
||||
margin-inline: 0;
|
||||
}
|
||||
|
||||
.tab-close-button {
|
||||
-moz-context-properties: fill, fill-opacity, stroke-opacity;
|
||||
stroke-opacity: var(--toolbarbutton-icon-fill-opacity);
|
||||
}
|
||||
|
||||
@supports not -moz-bool-pref("browser.proton.tabs.enabled") {
|
||||
.tab-label {
|
||||
/* Maintain consistent alignment in case of font fallback for non-Latin characters. */
|
||||
line-height: 1.7em;
|
||||
}
|
||||
|
||||
.tab-close-button {
|
||||
margin-inline-end: -2px;
|
||||
-moz-context-properties: fill, fill-opacity, stroke-opacity;
|
||||
stroke-opacity: var(--toolbarbutton-icon-fill-opacity);
|
||||
}
|
||||
} /*** END !proton ***/
|
||||
|
||||
@supports -moz-bool-pref("browser.proton.tabs.enabled") {
|
||||
.tab-close-button {
|
||||
margin-inline-end: 0;
|
||||
width: 16px;
|
||||
}
|
||||
} /*** END proton ***/
|
||||
|
||||
:root[uidensity=touch] .tab-close-button {
|
||||
margin-inline-end: calc(-1 * var(--inline-tab-padding));
|
||||
padding: 10px calc(var(--inline-tab-padding) - 2px);
|
||||
margin-inline-end: -@horizontalTabPadding@;
|
||||
padding: 10px calc(@horizontalTabPadding@ - 2px);
|
||||
}
|
||||
|
||||
@supports not -moz-bool-pref("browser.proton.tabs.enabled") {
|
||||
|
@ -499,27 +466,19 @@
|
|||
}
|
||||
|
||||
.tab-icon-sound {
|
||||
font-size: .9em;
|
||||
line-height: 1.2em;
|
||||
-moz-box-align: center;
|
||||
font-size: .75em;
|
||||
}
|
||||
|
||||
.tab-icon-sound-image,
|
||||
.tab-icon-sound-label {
|
||||
/* Set height back to equivalent of parent's 1em based
|
||||
on the .tab-icon-sound having a reduced font-size */
|
||||
height: 1.3333em;
|
||||
}
|
||||
|
||||
.tab-icon-sound-image {
|
||||
margin-block: 1px;
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
padding: 0;
|
||||
-moz-context-properties: fill;
|
||||
fill: currentColor;
|
||||
}
|
||||
|
||||
.tab-icon-sound-label {
|
||||
margin: 0;
|
||||
padding-inline-start: 3px;
|
||||
}
|
||||
} /*** END proton ***/
|
||||
|
||||
@supports not -moz-bool-pref("browser.proton.tabs.enabled") {
|
||||
|
@ -589,9 +548,14 @@
|
|||
}
|
||||
} /*** END !proton ***/
|
||||
|
||||
.tab-icon-sound[muted] > .tab-icon-sound-playing-label,
|
||||
.tab-icon-sound:not([muted]) > .tab-icon-sound-muted-label {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@supports -moz-bool-pref("browser.proton.tabs.enabled") {
|
||||
.tab-icon-sound:is([soundplaying], [muted], [activemedia-blocked], [pictureinpicture]) > .tab-icon-sound-image:not(:hover),
|
||||
.tab-icon-sound:is([soundplaying], [muted], [activemedia-blocked], [pictureinpicture]) > .tab-icon-sound-label:not(:hover) {
|
||||
.tab-icon-sound:is([soundplaying], [muted], [activemedia-blocked]) > .tab-icon-sound-image:not(:hover),
|
||||
.tab-icon-sound:is([soundplaying], [muted], [activemedia-blocked]) > .tab-icon-sound-label:not(:hover) {
|
||||
opacity: .8;
|
||||
}
|
||||
|
||||
|
@ -682,10 +646,6 @@
|
|||
.tabbrowser-tab[visuallyselected=true] > .tab-stack > .tab-background {
|
||||
box-shadow: 0 2px var(--proton-shadow-blur-radius) rgba(58,57,68,.2);
|
||||
}
|
||||
|
||||
.tabbrowser-tab[visuallyselected=true] > .tab-stack > .tab-background:-moz-lwtheme-brighttext {
|
||||
box-shadow: 0 2px var(--proton-shadow-blur-radius) rgba(58,57,68,.1);
|
||||
}
|
||||
} /*** END proton ***/
|
||||
|
||||
%ifdef MENUBAR_CAN_AUTOHIDE
|
||||
|
@ -778,7 +738,6 @@
|
|||
|
||||
/* Pinned tabs */
|
||||
|
||||
@supports not -moz-bool-pref("browser.proton.tabs.enabled") {
|
||||
/* Pinned tab separators need position: absolute when positioned (during overflow). */
|
||||
#tabbrowser-tabs[positionpinnedtabs] > #tabbrowser-arrowscrollbox > .tabbrowser-tab[pinned]::after {
|
||||
display: block;
|
||||
|
@ -790,7 +749,6 @@
|
|||
#tabbrowser-tabs[positionpinnedtabs] > #tabbrowser-arrowscrollbox > .tabbrowser-tab[pinned] > .tab-stack {
|
||||
border-inline-end: 1px solid transparent;
|
||||
}
|
||||
} /*** END !proton ***/
|
||||
|
||||
.tabbrowser-tab:is([image], [pinned]) > .tab-stack > .tab-content[attention]:not([selected="true"]),
|
||||
.tabbrowser-tab > .tab-stack > .tab-content[pinned][titlechanged]:not([selected="true"]) {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
[lone-cr.window.html]
|
||||
expected:
|
||||
if debug and (os == "win"): ERROR
|
||||
if debug and (os == "linux"): ["ERROR", "CRASH"]
|
||||
if debug and (os == "linux"): ERROR
|
||||
if debug and (os == "mac"): ERROR
|
||||
if debug and (os == "android"): CRASH
|
||||
[Parsing response with a lone CR before message-body (HTTP/1.1\r200 OK\n\nBODY)]
|
||||
|
|
Загрузка…
Ссылка в новой задаче