forked from pool/MozillaFirefox
Accepting request 541950 from mozilla:Factory
- update to Firefox 57.0 (boo#1068101) * Firefox Quantum * Photon UI * Unified address and search bar * AMD VP9 hardware video decoder support * Added support for Date/Time input * stricter security sandbox blocking filesystem reading and writing on Linux systems * middle mouse paste in the content area no longer navigates to URLs by default on Unix systems MFSA 2017-24 * CVE-2017-7828 (bmo#1406750. bmo#1412252) Use-after-free of PressShell while restyling layout * CVE-2017-7830 (bmo#1408990) Cross-origin URL information leak through Resource Timing API * CVE-2017-7831 (bmo#1392026) Information disclosure of exposed properties on JavaScript proxy objects * CVE-2017-7832 (bmo#1408782) Domain spoofing through use of dotless 'i' character followed by accent markers * CVE-2017-7833 (bmo#1370497) Domain spoofing with Arabic and Indic vowel marker characters * CVE-2017-7834 (bmo#1358009) data: URLs opened in new tabs bypass CSP protections * CVE-2017-7835 (bmo#1402363) Mixed content blocking incorrectly applies with redirects * CVE-2017-7836 (bmo#1401339) Pingsender dynamically loads libcurl on Linux and OS X * CVE-2017-7837 (bmo#1325923) OBS-URL: https://build.opensuse.org/request/show/541950 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/MozillaFirefox?expand=0&rev=259
This commit is contained in:
commit
6ec18a9091
@ -1,3 +1,83 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Nov 15 06:46:06 UTC 2017 - wr@rosenauer.org
|
||||
|
||||
- update to Firefox 57.0 (boo#1068101)
|
||||
* Firefox Quantum
|
||||
* Photon UI
|
||||
* Unified address and search bar
|
||||
* AMD VP9 hardware video decoder support
|
||||
* Added support for Date/Time input
|
||||
* stricter security sandbox blocking filesystem reading and
|
||||
writing on Linux systems
|
||||
* middle mouse paste in the content area no longer navigates to
|
||||
URLs by default on Unix systems
|
||||
MFSA 2017-24
|
||||
* CVE-2017-7828 (bmo#1406750. bmo#1412252)
|
||||
Use-after-free of PressShell while restyling layout
|
||||
* CVE-2017-7830 (bmo#1408990)
|
||||
Cross-origin URL information leak through Resource Timing API
|
||||
* CVE-2017-7831 (bmo#1392026)
|
||||
Information disclosure of exposed properties on JavaScript proxy
|
||||
objects
|
||||
* CVE-2017-7832 (bmo#1408782)
|
||||
Domain spoofing through use of dotless 'i' character followed
|
||||
by accent markers
|
||||
* CVE-2017-7833 (bmo#1370497)
|
||||
Domain spoofing with Arabic and Indic vowel marker characters
|
||||
* CVE-2017-7834 (bmo#1358009)
|
||||
data: URLs opened in new tabs bypass CSP protections
|
||||
* CVE-2017-7835 (bmo#1402363)
|
||||
Mixed content blocking incorrectly applies with redirects
|
||||
* CVE-2017-7836 (bmo#1401339)
|
||||
Pingsender dynamically loads libcurl on Linux and OS X
|
||||
* CVE-2017-7837 (bmo#1325923)
|
||||
SVG loaded as <img> can use meta tags to set cookies
|
||||
* CVE-2017-7838 (bmo#1399540)
|
||||
Failure of individual decoding of labels in international domain
|
||||
names triggers punycode display of entire IDN
|
||||
* CVE-2017-7839 (bmo#1402896)
|
||||
Control characters before javascript: URLs defeats self-XSS
|
||||
prevention mechanism
|
||||
* CVE-2017-7840 (bmo#1366420)
|
||||
Exported bookmarks do not strip script elements from user-supplied
|
||||
tags
|
||||
* CVE-2017-7842 (bmo#1397064)
|
||||
Referrer Policy is not always respected for <link> elements
|
||||
* CVE-2017-7827
|
||||
Memory safety bugs fixed in Firefox 57
|
||||
* CVE-2017-7826
|
||||
Memory safety bugs fixed in Firefox 57 and Firefox ESR 52.5
|
||||
- requires NSPR 4.17, NSS 3.33 and rustc 1.19
|
||||
- rebased patches
|
||||
- added mozilla-bindgen-systemlibs.patch to allow stylo build
|
||||
with system libs (bmo#1341234)
|
||||
- removed mozilla-language.patch since the whole locale code
|
||||
changed in Firefox and is relying on ICU now
|
||||
- removed obsolete mozilla-ucontext.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Oct 28 06:30:37 UTC 2017 - wr@rosenauer.org
|
||||
|
||||
- update to Firefox 56.0.2
|
||||
* Disable Form Autofill completely on user request (bmo#1404531)
|
||||
* Fix for video-related crashes on Windows 7 (bmo#1409141)
|
||||
* Correct detection for 64-bit GSSAPI authentication (bmo#1409275)
|
||||
* Fix for shutdown crash (bmo#1404105)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 10 11:47:49 UTC 2017 - wr@rosenauer.org
|
||||
|
||||
- update to Firefox 56.0.1
|
||||
* Block D3D11 when using Intel drivers on Windows 7 systems with
|
||||
partial AVX support (bmo#1403353)
|
||||
-> just to sync the version number
|
||||
- enable stylo for TW (requires LLVM >= 3.9)
|
||||
- queue KDE filepicker requests to avoid non-opening file dialogs
|
||||
happening in certain situations (contributed by Ignaz Forster)
|
||||
- the placeholder dot in KDE file dialog in case of empty filenames
|
||||
was removed, apparently not required (anymore)
|
||||
(contributed by Ignaz Forster)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Oct 1 18:25:16 UTC 2017 - stefan.bruens@rwth-aachen.de
|
||||
|
||||
|
@ -18,11 +18,11 @@
|
||||
|
||||
|
||||
# changed with every update
|
||||
%define major 56
|
||||
%define major 57
|
||||
%define mainver %major.0
|
||||
%define update_channel release
|
||||
%define branding 1
|
||||
%define releasedate 20170926190823
|
||||
%define releasedate 20171109183137
|
||||
|
||||
# PIE, full relro (x86_64 for now)
|
||||
%define build_hardened 1
|
||||
@ -72,10 +72,10 @@ BuildRequires: libiw-devel
|
||||
BuildRequires: libnotify-devel
|
||||
BuildRequires: libproxy-devel
|
||||
BuildRequires: makeinfo
|
||||
BuildRequires: mozilla-nspr-devel >= 4.16
|
||||
BuildRequires: mozilla-nss-devel >= 3.32.1
|
||||
BuildRequires: mozilla-nspr-devel >= 4.17
|
||||
BuildRequires: mozilla-nss-devel >= 3.33
|
||||
BuildRequires: python-devel
|
||||
BuildRequires: rust >= 1.15.1
|
||||
BuildRequires: rust >= 1.19
|
||||
BuildRequires: rust-std
|
||||
BuildRequires: startup-notification-devel
|
||||
BuildRequires: unzip
|
||||
@ -93,7 +93,12 @@ BuildRequires: pkgconfig(gtk+-unix-print-2.0)
|
||||
BuildRequires: pkgconfig(gtk+-unix-print-3.0)
|
||||
BuildRequires: pkgconfig(libffi)
|
||||
BuildRequires: pkgconfig(libpulse)
|
||||
#BuildRequires: llvm-clang-devel >= 3.9.0
|
||||
%if 0%{?suse_version} > 1320
|
||||
BuildRequires: llvm-clang-devel >= 3.9.0
|
||||
%else
|
||||
# this covers the workaround to compile on Leap 42 in OBS
|
||||
BuildRequires: clang4-devel
|
||||
%endif
|
||||
# libavcodec is required for H.264 support but the
|
||||
# openSUSE version is currently not able to play H.264
|
||||
# therefore the Packman version is required
|
||||
@ -141,14 +146,13 @@ Source18: mozilla-api-key
|
||||
Source19: google-api-key
|
||||
# Gecko/Toolkit
|
||||
Patch1: mozilla-nongnome-proxies.patch
|
||||
Patch3: mozilla-kde.patch
|
||||
Patch5: mozilla-language.patch
|
||||
Patch6: mozilla-ntlm-full-path.patch
|
||||
Patch7: mozilla-openaes-decl.patch
|
||||
Patch8: mozilla-no-stdcxx-check.patch
|
||||
Patch9: mozilla-reduce-files-per-UnifiedBindings.patch
|
||||
Patch10: mozilla-aarch64-startup-crash.patch
|
||||
Patch11: mozilla-ucontext.patch
|
||||
Patch2: mozilla-kde.patch
|
||||
Patch3: mozilla-ntlm-full-path.patch
|
||||
Patch4: mozilla-openaes-decl.patch
|
||||
Patch5: mozilla-no-stdcxx-check.patch
|
||||
Patch6: mozilla-reduce-files-per-UnifiedBindings.patch
|
||||
Patch7: mozilla-aarch64-startup-crash.patch
|
||||
Patch8: mozilla-bindgen-systemlibs.patch
|
||||
# Firefox/browser
|
||||
Patch101: firefox-kde.patch
|
||||
Patch102: firefox-no-default-ualocale.patch
|
||||
@ -251,16 +255,15 @@ symbols meant for upload to Mozilla's crash collector database.
|
||||
%endif
|
||||
cd $RPM_BUILD_DIR/mozilla
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%ifarch %ix86
|
||||
%patch6 -p1
|
||||
%endif
|
||||
%patch7 -p1
|
||||
%patch8 -p1
|
||||
%ifarch %ix86
|
||||
%patch9 -p1
|
||||
%endif
|
||||
%patch10 -p1
|
||||
%patch11 -p1
|
||||
# Firefox
|
||||
%patch101 -p1
|
||||
%patch102 -p1
|
||||
@ -355,7 +358,6 @@ ac_add_options --enable-startup-notification
|
||||
ac_add_options --enable-update-channel=%{update_channel}
|
||||
ac_add_options --with-mozilla-api-keyfile=%{SOURCE18}
|
||||
ac_add_options --with-google-api-keyfile=%{SOURCE19}
|
||||
ac_add_options --disable-stylo
|
||||
%if %branding
|
||||
ac_add_options --enable-official-branding
|
||||
%endif
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4d06bd7c006d22e249f2a537935a7df6a27375790f35c5f5e54d52987cfaef05
|
||||
size 28376
|
||||
oid sha256:28d155fac8c430f5305e095670073b6072af87e9063ce9a37344f397fa85e927
|
||||
size 28368
|
||||
|
@ -7,8 +7,8 @@
|
||||
|
||||
CHANNEL="release"
|
||||
BRANCH="releases/mozilla-$CHANNEL"
|
||||
RELEASE_TAG="8fbf05f4b92125e081984f5e39b559b83e5cc729" # 56 build6
|
||||
VERSION="56.0"
|
||||
RELEASE_TAG="8af8bd128bd014669ad89774f47668b0b8109337" # build 3
|
||||
VERSION="57.0"
|
||||
|
||||
# mozilla
|
||||
if [ -d mozilla ]; then
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:59eae64165c9d5917e4c934862a956fcc7aad424d4afd056e3941a210d0735e3
|
||||
size 271865016
|
3
firefox-57.0-source.tar.xz
Normal file
3
firefox-57.0-source.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d3dc10e75d32884e0a52f785210feb24ed6564375444d85c26f36544f405008f
|
||||
size 266361856
|
@ -1,11 +1,11 @@
|
||||
# HG changeset patch
|
||||
# Parent e0751ad74e835e80041a61ea00c2a63bf6fbe2de
|
||||
# Parent 6309c3625e39216f9cf5a7a35cbf6932adfabc1d
|
||||
# Parent 75308bbaaf73d672c88cb283591d4aefc7db9804
|
||||
|
||||
diff --git a/browser/branding/branding-common.mozbuild b/browser/branding/branding-common.mozbuild
|
||||
--- a/browser/branding/branding-common.mozbuild
|
||||
+++ b/browser/branding/branding-common.mozbuild
|
||||
@@ -41,18 +41,24 @@ def FirefoxBranding():
|
||||
@@ -38,18 +38,24 @@ def FirefoxBranding():
|
||||
'disk.icns',
|
||||
'document.icns',
|
||||
'dsstore',
|
||||
@ -33,7 +33,7 @@ diff --git a/browser/branding/branding-common.mozbuild b/browser/branding/brandi
|
||||
diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
|
||||
--- a/browser/installer/package-manifest.in
|
||||
+++ b/browser/installer/package-manifest.in
|
||||
@@ -599,18 +599,21 @@
|
||||
@@ -618,18 +618,21 @@
|
||||
@RESPATH@/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/chrome.manifest
|
||||
@RESPATH@/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/install.rdf
|
||||
@RESPATH@/chrome/toolkit@JAREXT@
|
||||
|
@ -1,11 +1,11 @@
|
||||
# HG changeset patch
|
||||
# Parent 05209af7fdfec897f5f574c691184ba27049b0ff
|
||||
# Parent 9f19902f8bcde21fa63172a85818fb11714878d8
|
||||
|
||||
diff --git a/browser/base/content/browser-kde.xul b/browser/base/content/browser-kde.xul
|
||||
new file mode 100644
|
||||
--- /dev/null
|
||||
+++ b/browser/base/content/browser-kde.xul
|
||||
@@ -0,0 +1,1320 @@
|
||||
@@ -0,0 +1,1252 @@
|
||||
+#filter substitution
|
||||
+<?xml version="1.0"?>
|
||||
+# -*- Mode: HTML -*-
|
||||
@ -73,7 +73,9 @@ new file mode 100644
|
||||
+# so that they can be shared by macBrowserOverlay.xul.
|
||||
+#include global-scripts.inc
|
||||
+
|
||||
+<script type="application/javascript" src="chrome://global/content/contentAreaUtils.js"/>
|
||||
+<script type="application/javascript">
|
||||
+ Services.scriptloader.loadSubScript("chrome://global/content/contentAreaUtils.js", this);
|
||||
+</script>
|
||||
+
|
||||
+# All sets except for popupsets (commands, keys, stringbundles and broadcasters) *must* go into the
|
||||
+# browser-sets.inc file for sharing with hiddenWindow.xul.
|
||||
@ -95,6 +97,9 @@ new file mode 100644
|
||||
+ <menuitem id="context_unpinTab" label="&unpinTab.label;" hidden="true"
|
||||
+ accesskey="&unpinTab.accesskey;"
|
||||
+ oncommand="gBrowser.unpinTab(TabContextMenu.contextTab);"/>
|
||||
+ <menuitem id="context_duplicateTab" label="&duplicateTab.label;"
|
||||
+ accesskey="&duplicateTab.accesskey;"
|
||||
+ oncommand="duplicateTabIn(TabContextMenu.contextTab, 'tab');"/>
|
||||
+ <menuitem id="context_openTabInWindow" label="&moveToNewWindow.label;"
|
||||
+ accesskey="&moveToNewWindow.accesskey;"
|
||||
+ tbattr="tabbrowser-multiple"
|
||||
@ -161,15 +166,17 @@ new file mode 100644
|
||||
+ hidden="true"
|
||||
+ flip="none"
|
||||
+ level="parent"
|
||||
+ overflowpadding="30" />
|
||||
+ overflowpadding="15" />
|
||||
+
|
||||
+ <!-- for date/time picker. consumeoutsideclicks is set to never, so that
|
||||
+ clicks on the anchored input box are never consumed. -->
|
||||
+ <panel id="DateTimePickerPanel"
|
||||
+ type="arrow"
|
||||
+ hidden="true"
|
||||
+ orient="vertical"
|
||||
+ noautofocus="true"
|
||||
+ noautohide="true"
|
||||
+ consumeoutsideclicks="false"
|
||||
+ norolluponanchor="true"
|
||||
+ consumeoutsideclicks="never"
|
||||
+ level="parent"
|
||||
+ tabspecific="true">
|
||||
+ </panel>
|
||||
@ -272,26 +279,6 @@ new file mode 100644
|
||||
+ <box id="UITourHighlight"></box>
|
||||
+ </panel>
|
||||
+
|
||||
+ <panel id="social-share-panel"
|
||||
+ class="social-panel"
|
||||
+ type="arrow"
|
||||
+ orient="vertical"
|
||||
+ onpopupshowing="SocialShare.onShowing()"
|
||||
+ onpopuphidden="SocialShare.onHidden()"
|
||||
+ hidden="true">
|
||||
+ <hbox class="social-share-toolbar">
|
||||
+ <toolbarbutton id="manage-share-providers" class="share-provider-button"
|
||||
+ tooltiptext="&social.addons.label;"
|
||||
+ oncommand="BrowserOpenAddonsMgr('addons://list/service');
|
||||
+ this.parentNode.parentNode.hidePopup();"/>
|
||||
+ <arrowscrollbox id="social-share-provider-buttons" orient="horizontal" flex="1" pack="end">
|
||||
+ <toolbarbutton id="add-share-provider" class="share-provider-button" type="radio"
|
||||
+ group="share-providers" tooltiptext="&findShareServices.label;"
|
||||
+ oncommand="SocialShare.showDirectory()"/>
|
||||
+ </arrowscrollbox>
|
||||
+ </hbox>
|
||||
+ <hbox id="share-container" flex="1"/>
|
||||
+ </panel>
|
||||
+ <panel id="sidebarMenu-popup"
|
||||
+ class="cui-widget-panel"
|
||||
+ role="group"
|
||||
@ -337,10 +324,8 @@ new file mode 100644
|
||||
+ <menupopup id="toolbar-context-menu"
|
||||
+ onpopupshowing="onViewToolbarsPopupShowing(event, document.getElementById('viewToolbarsMenuSeparator'));">
|
||||
+ <menuitem oncommand="gCustomizeMode.addToPanel(document.popupNode)"
|
||||
+ photonaccesskey="&customizeMenu.pinToOverflowMenu.accesskey;"
|
||||
+ photonlabel="&customizeMenu.pinToOverflowMenu.label;"
|
||||
+ accesskey="&customizeMenu.moveToPanel.accesskey;"
|
||||
+ label="&customizeMenu.moveToPanel.label;"
|
||||
+ accesskey="&customizeMenu.pinToOverflowMenu.accesskey;"
|
||||
+ label="&customizeMenu.pinToOverflowMenu.label;"
|
||||
+ contexttype="toolbaritem"
|
||||
+ class="customize-context-moveToPanel"/>
|
||||
+ <menuitem oncommand="gCustomizeMode.removeFromArea(document.popupNode)"
|
||||
@ -374,7 +359,7 @@ new file mode 100644
|
||||
+ seeing the command event pass by. The observes attribute is
|
||||
+ here so that the menuitem is still disabled and re-enabled
|
||||
+ correctly. -->
|
||||
+ <menuitem oncommand="BrowserCustomizeToolbar()"
|
||||
+ <menuitem oncommand="gCustomizeMode.enter()"
|
||||
+ observes="cmd_CustomizeToolbars"
|
||||
+ class="viewCustomizeToolbar"
|
||||
+ label="&viewCustomizeToolbar.label;"
|
||||
@ -416,25 +401,7 @@ new file mode 100644
|
||||
+#include browser-context.inc
|
||||
+ </menupopup>
|
||||
+
|
||||
+ <menupopup id="placesContext">
|
||||
+ <menuseparator id="placesContext_recentlyBookmarkedSeparator"
|
||||
+ ignoreitem="true"
|
||||
+ hidden="true"/>
|
||||
+ <menuitem id="placesContext_hideRecentlyBookmarked"
|
||||
+ label="&hideRecentlyBookmarked.label;"
|
||||
+ accesskey="&hideRecentlyBookmarked.accesskey;"
|
||||
+ oncommand="BookmarkingUI.hideRecentlyBookmarked();"
|
||||
+ closemenu="single"
|
||||
+ ignoreitem="true"
|
||||
+ hidden="true"/>
|
||||
+ <menuitem id="placesContext_showRecentlyBookmarked"
|
||||
+ label="&showRecentlyBookmarked.label;"
|
||||
+ accesskey="&showRecentlyBookmarked.accesskey;"
|
||||
+ oncommand="BookmarkingUI.showRecentlyBookmarked();"
|
||||
+ closemenu="single"
|
||||
+ ignoreitem="true"
|
||||
+ hidden="true"/>
|
||||
+ </menupopup>
|
||||
+ <menupopup id="placesContext"/>
|
||||
+
|
||||
+ <panel id="ctrlTab-panel" hidden="true" norestorefocus="true" level="top">
|
||||
+ <hbox>
|
||||
@ -450,31 +417,46 @@ new file mode 100644
|
||||
+ </hbox>
|
||||
+ </panel>
|
||||
+
|
||||
+#ifdef MOZ_PHOTON_THEME
|
||||
+ <panel id="pageActionPanel"
|
||||
+ class="cui-widget-panel"
|
||||
+ role="group"
|
||||
+ type="arrow"
|
||||
+ hidden="true"
|
||||
+ flip="slide"
|
||||
+ photon="true"
|
||||
+ position="bottomcenter topright"
|
||||
+ tabspecific="true"
|
||||
+ noautofocus="true"
|
||||
+ context="pageActionPanelContextMenu"
|
||||
+ oncontextmenu="BrowserPageActions.onContextMenu(event);"
|
||||
+ copyURL-title="©URLCmd.label;"
|
||||
+ copyURL-title="&pageAction.copyLink.label;"
|
||||
+ emailLink-title="&emailPageCmd.label;"
|
||||
+ sendToDevice-title="&sendToDevice.label2;"
|
||||
+ sendToDevice-title="&pageAction.sendTabToDevice.label;"
|
||||
+ sendToDevice-notReadyTitle="&sendToDevice.syncNotReady.label;">
|
||||
+ <photonpanelmultiview id="pageActionPanelMultiView"
|
||||
+ mainViewId="pageActionPanelMainView"
|
||||
+ viewCacheId="appMenu-viewCache">
|
||||
+ <panelview id="pageActionPanelMainView"
|
||||
+ context="pageActionPanelContextMenu"
|
||||
+ oncontextmenu="BrowserPageActions.onContextMenu(event);"
|
||||
+ class="PanelUI-subView">
|
||||
+ <vbox class="panel-subview-body"/>
|
||||
+ </panelview>
|
||||
+ </photonpanelmultiview>
|
||||
+ </panel>
|
||||
+ <panel id="pageActionFeedback"
|
||||
+ role="alert"
|
||||
+ type="arrow"
|
||||
+ hidden="true"
|
||||
+ flip="slide"
|
||||
+ position="bottomcenter topright"
|
||||
+ tabspecific="true"
|
||||
+ noautofocus="true"
|
||||
+ copyURLFeedback="©URLFeedback.label;"
|
||||
+ sendToDeviceFeedback="&sendToDeviceFeedback.label;">
|
||||
+ <hbox id="pageActionFeedbackAnimatableBox">
|
||||
+ <image id="pageActionFeedbackAnimatableImage"/>
|
||||
+ </hbox>
|
||||
+ <label id="pageActionFeedbackMessage"/>
|
||||
+ </panel>
|
||||
+
|
||||
+ <menupopup id="pageActionPanelContextMenu"
|
||||
+ onpopupshowing="BrowserPageActions.onContextMenuShowing(event, this);">
|
||||
@ -484,7 +466,6 @@ new file mode 100644
|
||||
+ label="&pageAction.addToUrlbar.label;"
|
||||
+ oncommand="BrowserPageActions.toggleShownInUrlbarForContextAction();"/>
|
||||
+ </menupopup>
|
||||
+#endif
|
||||
+
|
||||
+ <!-- Bookmarks and history tooltip -->
|
||||
+ <tooltip id="bhTooltip"/>
|
||||
@ -509,18 +490,13 @@ new file mode 100644
|
||||
+#endif
|
||||
+ </tooltip>
|
||||
+
|
||||
+ <tooltip id="share-button-tooltip" onpopupshowing="SocialShare.createTooltip(event);">
|
||||
+ <label class="tooltip-label"/>
|
||||
+ <label class="tooltip-label"/>
|
||||
+ </tooltip>
|
||||
+
|
||||
+#include popup-notifications.inc
|
||||
+
|
||||
+#include ../../components/customizableui/content/panelUI.inc.xul
|
||||
+#include ../../components/controlcenter/content/panel.inc.xul
|
||||
+
|
||||
+ <hbox id="downloads-animation-container" mousethrough="always">
|
||||
+ <vbox id="downloads-notification-anchor">
|
||||
+ <vbox id="downloads-notification-anchor" hidden="true">
|
||||
+ <vbox id="downloads-indicator-notification"/>
|
||||
+ </vbox>
|
||||
+ </hbox>
|
||||
@ -604,11 +580,6 @@ new file mode 100644
|
||||
+ <hbox id="titlebar-content">
|
||||
+ <spacer id="titlebar-spacer" flex="1"/>
|
||||
+ <hbox id="titlebar-buttonbox-container">
|
||||
+#ifdef XP_WIN
|
||||
+ <hbox id="private-browsing-indicator-titlebar">
|
||||
+ <hbox class="private-browsing-indicator"/>
|
||||
+ </hbox>
|
||||
+#endif
|
||||
+ <hbox id="titlebar-buttonbox">
|
||||
+ <toolbarbutton class="titlebar-button" id="titlebar-min" oncommand="window.minimize();"/>
|
||||
+ <toolbarbutton class="titlebar-button" id="titlebar-max" oncommand="onTitlebarMaxClick();"/>
|
||||
@ -619,6 +590,7 @@ new file mode 100644
|
||||
+ <!-- OS X does not natively support RTL for its titlebar items, so we prevent this secondary
|
||||
+ buttonbox from reversing order in RTL by forcing an LTR direction. -->
|
||||
+ <hbox id="titlebar-secondary-buttonbox" dir="ltr">
|
||||
+ <button class="accessibility-indicator" tooltiptext="&accessibilityIndicator.tooltip;" aria-live="polite"/>
|
||||
+ <hbox class="private-browsing-indicator"/>
|
||||
+ <hbox id="titlebar-fullscreen-button"/>
|
||||
+ </hbox>
|
||||
@ -649,7 +621,7 @@ new file mode 100644
|
||||
+#ifdef CAN_DRAW_IN_TITLEBAR
|
||||
+#ifndef XP_MACOSX
|
||||
+ <hbox class="titlebar-placeholder" type="caption-buttons" ordinal="1000"
|
||||
+ id="titlebar-placeholder-on-menubar-for-caption-buttons" persist="width"
|
||||
+ persist="width"
|
||||
+ skipintoolbarset="true"/>
|
||||
+#endif
|
||||
+#endif
|
||||
@ -664,8 +636,8 @@ new file mode 100644
|
||||
+ context="toolbar-context-menu"
|
||||
+ collapsed="true">
|
||||
+
|
||||
+#if defined(MOZ_WIDGET_GTK)
|
||||
+ <hbox id="private-browsing-indicator"
|
||||
+#ifdef CAN_DRAW_IN_TITLEBAR
|
||||
+ <hbox class="titlebar-placeholder" type="pre-tabs"
|
||||
+ skipintoolbarset="true"/>
|
||||
+#endif
|
||||
+
|
||||
@ -713,12 +685,20 @@ new file mode 100644
|
||||
+ </menupopup>
|
||||
+ </toolbarbutton>
|
||||
+
|
||||
+#if !defined(MOZ_WIDGET_GTK)
|
||||
+ <hbox class="private-browsing-indicator" skipintoolbarset="true"/>
|
||||
+#ifdef CAN_DRAW_IN_TITLEBAR
|
||||
+ <hbox class="titlebar-placeholder" type="post-tabs"
|
||||
+ ordinal="1000"
|
||||
+ skipintoolbarset="true"/>
|
||||
+#endif
|
||||
+
|
||||
+ <button class="accessibility-indicator" tooltiptext="&accessibilityIndicator.tooltip;"
|
||||
+ ordinal="1000"
|
||||
+ aria-live="polite" skipintoolbarset="true"/>
|
||||
+ <hbox class="private-browsing-indicator" skipintoolbarset="true"
|
||||
+ ordinal="1000"/>
|
||||
+#ifdef CAN_DRAW_IN_TITLEBAR
|
||||
+ <hbox class="titlebar-placeholder" type="caption-buttons"
|
||||
+ id="titlebar-placeholder-on-TabsToolbar-for-captions-buttons" persist="width"
|
||||
+ persist="width"
|
||||
+#ifndef XP_MACOSX
|
||||
+ ordinal="1000"
|
||||
+#endif
|
||||
@ -726,7 +706,7 @@ new file mode 100644
|
||||
+
|
||||
+#ifdef XP_MACOSX
|
||||
+ <hbox class="titlebar-placeholder" type="fullscreen-button"
|
||||
+ id="titlebar-placeholder-on-TabsToolbar-for-fullscreen-button" persist="width"
|
||||
+ persist="width"
|
||||
+ skipintoolbarset="true"/>
|
||||
+#endif
|
||||
+#endif
|
||||
@ -744,55 +724,58 @@ new file mode 100644
|
||||
+ context="toolbar-context-menu">
|
||||
+
|
||||
+ <hbox id="nav-bar-customization-target" flex="1">
|
||||
+ <toolbarbutton id="back-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
+ label="&backCmd.label;"
|
||||
+ removable="false" overflows="false"
|
||||
+ keepbroadcastattributeswhencustomizing="true"
|
||||
+ command="Browser:BackOrBackDuplicate"
|
||||
+ onclick="checkForMiddleClick(this, event);"
|
||||
+ tooltip="back-button-tooltip"
|
||||
+ context="backForwardMenu"/>
|
||||
+ <toolbarbutton id="forward-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
+ label="&forwardCmd.label;"
|
||||
+ removable="false" overflows="false"
|
||||
+ keepbroadcastattributeswhencustomizing="true"
|
||||
+ command="Browser:ForwardOrForwardDuplicate"
|
||||
+ onclick="checkForMiddleClick(this, event);"
|
||||
+ tooltip="forward-button-tooltip"
|
||||
+ context="backForwardMenu"/>
|
||||
+ <toolbaritem id="stop-reload-button" class="chromeclass-toolbar-additional"
|
||||
+ title="&reloadCmd.label;"
|
||||
+ removable="true" overflows="false">
|
||||
+ <toolbarbutton id="reload-button" class="toolbarbutton-1"
|
||||
+ label="&reloadCmd.label;"
|
||||
+ command="Browser:ReloadOrDuplicate"
|
||||
+ onclick="checkForMiddleClick(this, event);"
|
||||
+ tooltip="dynamic-shortcut-tooltip">
|
||||
+ <box class="toolbarbutton-animatable-box">
|
||||
+ <image class="toolbarbutton-animatable-image"/>
|
||||
+ </box>
|
||||
+ </toolbarbutton>
|
||||
+ <toolbarbutton id="stop-button" class="toolbarbutton-1"
|
||||
+ label="&stopCmd.label;"
|
||||
+ command="Browser:Stop"
|
||||
+ tooltip="dynamic-shortcut-tooltip">
|
||||
+ <box class="toolbarbutton-animatable-box">
|
||||
+ <image class="toolbarbutton-animatable-image"/>
|
||||
+ </box>
|
||||
+ </toolbarbutton>
|
||||
+ </toolbaritem>
|
||||
+ <toolbarbutton id="home-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
+ removable="true"
|
||||
+ label="&homeButton.label;"
|
||||
+ ondragover="homeButtonObserver.onDragOver(event)"
|
||||
+ ondragenter="homeButtonObserver.onDragOver(event)"
|
||||
+ ondrop="homeButtonObserver.onDrop(event)"
|
||||
+ ondragexit="homeButtonObserver.onDragExit(event)"
|
||||
+ key="goHome"
|
||||
+ onclick="BrowserGoHome(event);"
|
||||
+ cui-areatype="toolbar"
|
||||
+ aboutHomeOverrideTooltip="&abouthome.pageTitle;"/>
|
||||
+ <toolbarspring cui-areatype="toolbar" class="chromeclass-toolbar-additional"/>
|
||||
+ <toolbaritem id="urlbar-container" flex="400" persist="width"
|
||||
+ removable="false"
|
||||
+ class="chromeclass-location" overflows="false">
|
||||
+ <toolbarbutton id="back-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
+ removable="false" overflows="false"
|
||||
+ label="&backCmd.label;"
|
||||
+ command="Browser:BackOrBackDuplicate"
|
||||
+ onclick="checkForMiddleClick(this, event);"
|
||||
+ tooltip="back-button-tooltip"
|
||||
+ context="backForwardMenu"/>
|
||||
+#ifdef MOZ_PHOTON_THEME
|
||||
+ <toolbarbutton id="forward-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
+ removable="false" overflows="false"
|
||||
+ label="&forwardCmd.label;"
|
||||
+ command="Browser:ForwardOrForwardDuplicate"
|
||||
+ onclick="checkForMiddleClick(this, event);"
|
||||
+ tooltip="forward-button-tooltip"
|
||||
+ context="backForwardMenu"/>
|
||||
+ <toolbaritem id="stop-reload-button"
|
||||
+ removable="false" overflows="false"
|
||||
+ class="chromeclass-toolbar-additional">
|
||||
+ <toolbarbutton id="reload-button"
|
||||
+ class="toolbarbutton-1"
|
||||
+ command="Browser:ReloadOrDuplicate"
|
||||
+ onclick="checkForMiddleClick(this, event);"
|
||||
+ tooltip="dynamic-shortcut-tooltip">
|
||||
+ <box class="toolbarbutton-animatable-box">
|
||||
+ <image class="toolbarbutton-animatable-image"/>
|
||||
+ </box>
|
||||
+ </toolbarbutton>
|
||||
+ <toolbarbutton id="stop-button"
|
||||
+ class="toolbarbutton-1"
|
||||
+ command="Browser:Stop"
|
||||
+ tooltip="dynamic-shortcut-tooltip">
|
||||
+ <box class="toolbarbutton-animatable-box">
|
||||
+ <image class="toolbarbutton-animatable-image"/>
|
||||
+ </box>
|
||||
+ </toolbarbutton>
|
||||
+ </toolbaritem>
|
||||
+#endif
|
||||
+ <hbox id="urlbar-wrapper" flex="1">
|
||||
+#ifndef MOZ_PHOTON_THEME
|
||||
+ <toolbarbutton id="forward-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
+ label="&forwardCmd.label;"
|
||||
+ command="Browser:ForwardOrForwardDuplicate"
|
||||
+ onclick="checkForMiddleClick(this, event);"
|
||||
+ tooltip="forward-button-tooltip"
|
||||
+ context="backForwardMenu"/>
|
||||
+#endif
|
||||
+ <textbox id="urlbar" flex="1"
|
||||
+ placeholder="&urlbar.placeholder2;"
|
||||
+ type="autocomplete"
|
||||
@ -890,170 +873,53 @@ new file mode 100644
|
||||
+ <label id="switchtab" class="urlbar-display urlbar-display-switchtab" value="&urlbar.switchToTab.label;"/>
|
||||
+ <label id="extension" class="urlbar-display urlbar-display-extension" value="&urlbar.extension.label;"/>
|
||||
+ </box>
|
||||
+ <hbox id="urlbar-icons">
|
||||
+ <hbox id="page-action-buttons">
|
||||
+ <hbox id="userContext-icons" hidden="true">
|
||||
+ <label id="userContext-label"/>
|
||||
+ <image id="userContext-indicator"/>
|
||||
+ </hbox>
|
||||
+ <image id="page-report-button"
|
||||
+ class="urlbar-icon"
|
||||
+ class="urlbar-icon urlbar-page-action"
|
||||
+ role="button"
|
||||
+ hidden="true"
|
||||
+ tooltiptext="&pageReportIcon.tooltip;"
|
||||
+ onmousedown="gPopupBlockerObserver.onReportButtonMousedown(event);"/>
|
||||
+ <image id="reader-mode-button"
|
||||
+ class="urlbar-icon"
|
||||
+ class="urlbar-icon urlbar-page-action"
|
||||
+ role="button"
|
||||
+ hidden="true"
|
||||
+ onclick="ReaderParent.buttonClick(event);"/>
|
||||
+ <toolbarbutton id="urlbar-zoom-button"
|
||||
+ onclick="FullZoom.reset();"
|
||||
+ tooltip="dynamic-shortcut-tooltip"
|
||||
+ hidden="true"/>
|
||||
+#ifdef MOZ_PHOTON_THEME
|
||||
+ <box id="pageActionSeparator" class="urlbar-page-action"/>
|
||||
+ <image id="pageActionButton"
|
||||
+ class="urlbar-icon"
|
||||
+ class="urlbar-icon urlbar-page-action"
|
||||
+ role="button"
|
||||
+ tooltiptext="&pageActionButton.tooltip;"
|
||||
+ onclick="BrowserPageActions.mainButtonClicked(event);"/>
|
||||
+ <hbox id="star-button-box" hidden="true">
|
||||
+ onmousedown="BrowserPageActions.mainButtonClicked(event);"/>
|
||||
+ <hbox id="star-button-box"
|
||||
+ hidden="true"
|
||||
+ class="urlbar-icon-wrapper urlbar-page-action"
|
||||
+ context="pageActionPanelContextMenu"
|
||||
+ oncontextmenu="BrowserPageActions.onContextMenu(event);"
|
||||
+ onclick="BrowserPageActions.doCommandForAction(PageActions.actionForID('bookmark'), event, this);">
|
||||
+ <image id="star-button"
|
||||
+ class="urlbar-icon"
|
||||
+ onclick="BookmarkingUI.onStarCommand(event);">
|
||||
+ <observes element="bookmarkThisPageBroadcaster" attribute="starred"/>
|
||||
+ <observes element="bookmarkThisPageBroadcaster" attribute="tooltiptext"/>
|
||||
+ </image>
|
||||
+ role="button"
|
||||
+ observes="bookmarkThisPageBroadcaster"/>
|
||||
+ <hbox id="star-button-animatable-box">
|
||||
+ <image id="star-button-animatable-image"
|
||||
+ onclick="BookmarkingUI.onStarCommand(event);"/>
|
||||
+ role="presentation"
|
||||
+ observes="bookmarkThisPageBroadcaster"/>
|
||||
+ </hbox>
|
||||
+ </hbox>
|
||||
+#endif
|
||||
+ </hbox>
|
||||
+ <hbox id="userContext-icons" hidden="true">
|
||||
+ <label id="userContext-label"/>
|
||||
+ <image id="userContext-indicator"/>
|
||||
+ </hbox>
|
||||
+#ifndef MOZ_PHOTON_THEME
|
||||
+ <toolbarbutton id="urlbar-go-button"
|
||||
+ class="chromeclass-toolbar-additional"
|
||||
+ onclick="gURLBar.handleCommand(event);"
|
||||
+ tooltiptext="&goEndCap.tooltip;"/>
|
||||
+ <toolbarbutton id="reload-button"
|
||||
+ class="chromeclass-toolbar-additional"
|
||||
+ command="Browser:ReloadOrDuplicate"
|
||||
+ onclick="checkForMiddleClick(this, event);"
|
||||
+ tooltip="dynamic-shortcut-tooltip"/>
|
||||
+ <toolbarbutton id="stop-button"
|
||||
+ class="chromeclass-toolbar-additional"
|
||||
+ command="Browser:Stop"
|
||||
+ tooltip="dynamic-shortcut-tooltip"/>
|
||||
+#endif
|
||||
+ </textbox>
|
||||
+ </hbox>
|
||||
+ </toolbaritem>
|
||||
+
|
||||
+ <toolbaritem id="search-container" title="&searchItem.title;"
|
||||
+ align="center" class="chromeclass-toolbar-additional panel-wide-item"
|
||||
+ cui-areatype="toolbar"
|
||||
+ flex="100" persist="width" removable="true">
|
||||
+ <searchbar id="searchbar" flex="1"/>
|
||||
+ </toolbaritem>
|
||||
+
|
||||
+ <toolbarbutton id="bookmarks-menu-button"
|
||||
+ class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
+ removable="true"
|
||||
+#ifdef MOZ_PHOTON_THEME
|
||||
+ type="menu"
|
||||
+#else
|
||||
+ type="menu-button"
|
||||
+#endif
|
||||
+ label="&bookmarksMenuButton.label;"
|
||||
+ tooltip="dynamic-shortcut-tooltip"
|
||||
+ anchor="dropmarker"
|
||||
+ ondragenter="PlacesMenuDNDHandler.onDragEnter(event);"
|
||||
+ ondragover="PlacesMenuDNDHandler.onDragOver(event);"
|
||||
+ ondragleave="PlacesMenuDNDHandler.onDragLeave(event);"
|
||||
+ ondrop="PlacesMenuDNDHandler.onDrop(event);"
|
||||
+ cui-areatype="toolbar"
|
||||
+ oncommand="BookmarkingUI.onCommand(event);">
|
||||
+ <observes element="bookmarkThisPageBroadcaster" attribute="starred"/>
|
||||
+ <observes element="bookmarkThisPageBroadcaster" attribute="buttontooltiptext"/>
|
||||
+ <menupopup id="BMB_bookmarksPopup"
|
||||
+ class="cui-widget-panel cui-widget-panelview cui-widget-panelWithFooter PanelUI-subView"
|
||||
+ placespopup="true"
|
||||
+ context="placesContext"
|
||||
+ openInTabs="children"
|
||||
+ oncommand="BookmarksEventHandler.onCommand(event);"
|
||||
+ onclick="BookmarksEventHandler.onClick(event, this.parentNode._placesView);"
|
||||
+ onpopupshowing="BookmarkingUI.onPopupShowing(event);
|
||||
+ BookmarkingUI.attachPlacesView(event, this);"
|
||||
+ tooltip="bhTooltip" popupsinherittooltip="true">
|
||||
+ <menuitem id="BMB_viewBookmarksSidebar"
|
||||
+ class="subviewbutton"
|
||||
+ label="&viewBookmarksSidebar2.label;"
|
||||
+ type="checkbox"
|
||||
+ oncommand="SidebarUI.toggle('viewBookmarksSidebar');">
|
||||
+ <observes element="viewBookmarksSidebar" attribute="checked"/>
|
||||
+ </menuitem>
|
||||
+ <!-- NB: temporary solution for bug 985024, this should go away soon. -->
|
||||
+ <menuitem id="BMB_bookmarksShowAllTop"
|
||||
+ class="menuitem-iconic subviewbutton"
|
||||
+ label="&showAllBookmarks2.label;"
|
||||
+ command="Browser:ShowAllBookmarks"
|
||||
+ key="manBookmarkKb"/>
|
||||
+ <menuseparator/>
|
||||
+ <menuitem label="&recentBookmarks.label;"
|
||||
+ id="BMB_recentBookmarks"
|
||||
+ disabled="true"
|
||||
+ class="menuitem-iconic subviewbutton"/>
|
||||
+ <menuseparator/>
|
||||
+ <menu id="BMB_bookmarksToolbar"
|
||||
+ class="menu-iconic bookmark-item subviewbutton"
|
||||
+ label="&personalbarCmd.label;"
|
||||
+ container="true">
|
||||
+ <menupopup id="BMB_bookmarksToolbarPopup"
|
||||
+ placespopup="true"
|
||||
+ context="placesContext"
|
||||
+ onpopupshowing="if (!this.parentNode._placesView)
|
||||
+ new PlacesMenu(event, 'place:folder=TOOLBAR',
|
||||
+ PlacesUIUtils.getViewForNode(this.parentNode.parentNode).options);">
|
||||
+ <menuitem id="BMB_viewBookmarksToolbar"
|
||||
+ placesanonid="view-toolbar"
|
||||
+ toolbarId="PersonalToolbar"
|
||||
+ type="checkbox"
|
||||
+ oncommand="onViewToolbarCommand(event)"
|
||||
+ label="&viewBookmarksToolbar.label;"/>
|
||||
+ <menuseparator/>
|
||||
+ <!-- Bookmarks toolbar items -->
|
||||
+ </menupopup>
|
||||
+ </menu>
|
||||
+ <menu id="BMB_unsortedBookmarks"
|
||||
+ class="menu-iconic bookmark-item subviewbutton"
|
||||
+ label="&bookmarksMenuButton.other.label;"
|
||||
+ container="true">
|
||||
+ <menupopup id="BMB_unsortedBookmarksPopup"
|
||||
+ placespopup="true"
|
||||
+ context="placesContext"
|
||||
+ onpopupshowing="if (!this.parentNode._placesView)
|
||||
+ new PlacesMenu(event, 'place:folder=UNFILED_BOOKMARKS',
|
||||
+ PlacesUIUtils.getViewForNode(this.parentNode.parentNode).options);"/>
|
||||
+ </menu>
|
||||
+ <menu id="BMB_mobileBookmarks"
|
||||
+ class="menu-iconic bookmark-item subviewbutton"
|
||||
+ label="&bookmarksMenuButton.mobile.label;"
|
||||
+ hidden="true"
|
||||
+ container="true">
|
||||
+ <menupopup id="BMB_mobileBookmarksPopup"
|
||||
+ placespopup="true"
|
||||
+ context="placesContext"
|
||||
+ onpopupshowing="if (!this.parentNode._placesView)
|
||||
+ new PlacesMenu(event, 'place:folder=MOBILE_BOOKMARKS',
|
||||
+ PlacesUIUtils.getViewForNode(this.parentNode.parentNode).options);"/>
|
||||
+ </menu>
|
||||
+
|
||||
+ <menuseparator/>
|
||||
+ <!-- Bookmarks menu items will go here -->
|
||||
+ <menuitem id="BMB_bookmarksShowAll"
|
||||
+ class="subviewbutton panel-subview-footer"
|
||||
+ label="&showAllBookmarks2.label;"
|
||||
+ command="Browser:ShowAllBookmarks"
|
||||
+ key="manBookmarkKb"/>
|
||||
+ </menupopup>
|
||||
+ </toolbarbutton>
|
||||
+ <toolbarspring cui-areatype="toolbar" class="chromeclass-toolbar-additional"/>
|
||||
+
|
||||
+ <!-- This is a placeholder for the Downloads Indicator. It is visible
|
||||
+ during the customization of the toolbar, in the palette, and before
|
||||
@ -1061,41 +927,37 @@ new file mode 100644
|
||||
+ <toolbarbutton id="downloads-button"
|
||||
+ class="toolbarbutton-1 chromeclass-toolbar-additional badged-button"
|
||||
+ key="key_openDownloads"
|
||||
+ oncommand="DownloadsIndicatorView.onCommand(event);"
|
||||
+ onmousedown="DownloadsIndicatorView.onCommand(event);"
|
||||
+ ondrop="DownloadsIndicatorView.onDrop(event);"
|
||||
+ ondragover="DownloadsIndicatorView.onDragOver(event);"
|
||||
+ ondragenter="DownloadsIndicatorView.onDragOver(event);"
|
||||
+ label="&downloads.label;"
|
||||
+ removable="true"
|
||||
+ overflows="false"
|
||||
+ cui-areatype="toolbar"
|
||||
+ hidden="true"
|
||||
+ tooltip="dynamic-shortcut-tooltip"/>
|
||||
+
|
||||
+ <toolbarbutton id="home-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
+ <toolbarbutton id="library-button" class="toolbarbutton-1 chromeclass-toolbar-additional subviewbutton-nav"
|
||||
+ removable="true"
|
||||
+ label="&homeButton.label;"
|
||||
+ ondragover="homeButtonObserver.onDragOver(event)"
|
||||
+ ondragenter="homeButtonObserver.onDragOver(event)"
|
||||
+ ondrop="homeButtonObserver.onDrop(event)"
|
||||
+ ondragexit="homeButtonObserver.onDragExit(event)"
|
||||
+ key="goHome"
|
||||
+ onclick="BrowserGoHome(event);"
|
||||
+ onmousedown="PanelUI.showSubView('appMenu-libraryView', this, null, event);"
|
||||
+ closemenu="none"
|
||||
+ cui-areatype="toolbar"
|
||||
+ aboutHomeOverrideTooltip="&abouthome.pageTitle;"/>
|
||||
+ tooltiptext="&libraryButton.tooltip;"
|
||||
+ label="&places.library.title;"/>
|
||||
+
|
||||
+ </hbox>
|
||||
+
|
||||
+ <toolbarbutton id="nav-bar-overflow-button"
|
||||
+ class="toolbarbutton-1 chromeclass-toolbar-additional overflow-button"
|
||||
+ skipintoolbarset="true"
|
||||
+ tooltiptext="&navbarOverflow.label;">
|
||||
+#ifdef MOZ_PHOTON_ANIMATIONS
|
||||
+ <box class="toolbarbutton-animatable-box">
|
||||
+ <image class="toolbarbutton-animatable-image"/>
|
||||
+ </box>
|
||||
+#endif
|
||||
+ </toolbarbutton>
|
||||
+
|
||||
+ <toolbaritem id="PanelUI-button"
|
||||
+ class="chromeclass-toolbar-additional"
|
||||
+ removable="false">
|
||||
+ <toolbarbutton id="PanelUI-menu-button"
|
||||
+ class="toolbarbutton-1 badged-button"
|
||||
@ -1139,13 +1001,17 @@ new file mode 100644
|
||||
+ cui-areatype="toolbar"
|
||||
+ removable="true">
|
||||
+ <toolbarbutton id="bookmarks-toolbar-placeholder"
|
||||
+ class="bookmark-item"
|
||||
+ label="&bookmarksToolbarItem.label;"/>
|
||||
+ <toolbarbutton id="bookmarks-toolbar-button"
|
||||
+ class="toolbarbutton-1"
|
||||
+ mousethrough="never"
|
||||
+ flex="1"
|
||||
+ label="&bookmarksToolbarItem.label;"
|
||||
+ oncommand="PlacesToolbarHelper.onPlaceholderCommand();"/>
|
||||
+ <hbox flex="1"
|
||||
+ id="PlacesToolbar"
|
||||
+ context="placesContext"
|
||||
+ onmouseup="BookmarksEventHandler.onMouseUp(event);"
|
||||
+ onclick="BookmarksEventHandler.onClick(event, this._placesView);"
|
||||
+ oncommand="BookmarksEventHandler.onCommand(event);"
|
||||
+ tooltip="bhTooltip"
|
||||
@ -1161,7 +1027,7 @@ new file mode 100644
|
||||
+ flex="1"/>
|
||||
+ <toolbarbutton type="menu"
|
||||
+ id="PlacesChevron"
|
||||
+ class="chevron"
|
||||
+ class="toolbarbutton-1"
|
||||
+ mousethrough="never"
|
||||
+ collapsed="true"
|
||||
+ tooltiptext="&bookmarksToolbarChevron.tooltip;"
|
||||
@ -1177,18 +1043,8 @@ new file mode 100644
|
||||
+ </toolbaritem>
|
||||
+ </toolbar>
|
||||
+
|
||||
+ <!-- This is a shim which will go away ASAP. See bug 749804 for details -->
|
||||
+ <toolbar id="addon-bar" toolbar-delegate="nav-bar" mode="icons" iconsize="small"
|
||||
+ customizable="true">
|
||||
+ <hbox id="addonbar-closebutton"/>
|
||||
+ <statusbar id="status-bar"/>
|
||||
+ </toolbar>
|
||||
+
|
||||
+ <toolbarpalette id="BrowserToolbarPalette">
|
||||
+
|
||||
+# Update primaryToolbarButtons in browser/themes/shared/browser.inc when adding
|
||||
+# or removing default items with the toolbarbutton-1 class.
|
||||
+
|
||||
+ <toolbarbutton id="print-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
+#ifdef XP_MACOSX
|
||||
+ command="cmd_print"
|
||||
@ -1214,17 +1070,111 @@ new file mode 100644
|
||||
+ type="checkbox"
|
||||
+ label="&fullScreenCmd.label;"
|
||||
+ tooltip="dynamic-shortcut-tooltip"/>
|
||||
+#ifdef MOZ_PHOTON_THEME
|
||||
+ <toolbarbutton id="library-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
|
||||
+ oncommand="PanelUI.showSubView('appMenu-libraryView', this, null, event);"
|
||||
+ closemenu="none"
|
||||
+ label="&places.library.title;">
|
||||
+ <box class="toolbarbutton-animatable-box">
|
||||
+ <image class="toolbarbutton-animatable-image"/>
|
||||
+ </box>
|
||||
+
|
||||
+ <toolbarbutton id="bookmarks-menu-button"
|
||||
+ class="toolbarbutton-1 chromeclass-toolbar-additional subviewbutton-nav"
|
||||
+ type="menu"
|
||||
+ label="&bookmarksMenuButton2.label;"
|
||||
+ tooltip="dynamic-shortcut-tooltip"
|
||||
+ anchor="dropmarker"
|
||||
+ ondragenter="PlacesMenuDNDHandler.onDragEnter(event);"
|
||||
+ ondragover="PlacesMenuDNDHandler.onDragOver(event);"
|
||||
+ ondragleave="PlacesMenuDNDHandler.onDragLeave(event);"
|
||||
+ ondrop="PlacesMenuDNDHandler.onDrop(event);"
|
||||
+ oncommand="BookmarkingUI.onCommand(event);">
|
||||
+ <observes element="bookmarkThisPageBroadcaster" attribute="starred"/>
|
||||
+ <observes element="bookmarkThisPageBroadcaster" attribute="buttontooltiptext"/>
|
||||
+ <menupopup id="BMB_bookmarksPopup"
|
||||
+ class="cui-widget-panel cui-widget-panelview cui-widget-panelWithFooter PanelUI-subView"
|
||||
+ placespopup="true"
|
||||
+ context="placesContext"
|
||||
+ openInTabs="children"
|
||||
+ onmouseup="BookmarksEventHandler.onMouseUp(event);"
|
||||
+ oncommand="BookmarksEventHandler.onCommand(event);"
|
||||
+ onclick="BookmarksEventHandler.onClick(event, this.parentNode._placesView);"
|
||||
+ onpopupshowing="BookmarkingUI.onPopupShowing(event);
|
||||
+ BookmarkingUI.attachPlacesView(event, this);"
|
||||
+ tooltip="bhTooltip" popupsinherittooltip="true">
|
||||
+ <menuitem id="BMB_viewBookmarksSidebar"
|
||||
+ class="subviewbutton"
|
||||
+ label="&viewBookmarksSidebar2.label;"
|
||||
+ type="checkbox"
|
||||
+ oncommand="SidebarUI.toggle('viewBookmarksSidebar');">
|
||||
+ <observes element="viewBookmarksSidebar" attribute="checked"/>
|
||||
+ </menuitem>
|
||||
+ <!-- NB: temporary solution for bug 985024, this should go away soon. -->
|
||||
+ <menuitem id="BMB_bookmarksShowAllTop"
|
||||
+ class="menuitem-iconic subviewbutton"
|
||||
+ label="&showAllBookmarks2.label;"
|
||||
+ command="Browser:ShowAllBookmarks"
|
||||
+ key="manBookmarkKb"/>
|
||||
+ <menuseparator/>
|
||||
+ <menu id="BMB_bookmarksToolbar"
|
||||
+ class="menu-iconic bookmark-item subviewbutton"
|
||||
+ label="&personalbarCmd.label;"
|
||||
+ container="true">
|
||||
+ <menupopup id="BMB_bookmarksToolbarPopup"
|
||||
+ placespopup="true"
|
||||
+ context="placesContext"
|
||||
+ onpopupshowing="if (!this.parentNode._placesView)
|
||||
+ new PlacesMenu(event, 'place:folder=TOOLBAR',
|
||||
+ PlacesUIUtils.getViewForNode(this.parentNode.parentNode).options);">
|
||||
+ <menuitem id="BMB_viewBookmarksToolbar"
|
||||
+ placesanonid="view-toolbar"
|
||||
+ toolbarId="PersonalToolbar"
|
||||
+ type="checkbox"
|
||||
+ oncommand="onViewToolbarCommand(event)"
|
||||
+ label="&viewBookmarksToolbar.label;"/>
|
||||
+ <menuseparator/>
|
||||
+ <!-- Bookmarks toolbar items -->
|
||||
+ </menupopup>
|
||||
+ </menu>
|
||||
+ <menu id="BMB_unsortedBookmarks"
|
||||
+ class="menu-iconic bookmark-item subviewbutton"
|
||||
+ label="&bookmarksMenuButton.other.label;"
|
||||
+ container="true">
|
||||
+ <menupopup id="BMB_unsortedBookmarksPopup"
|
||||
+ placespopup="true"
|
||||
+ context="placesContext"
|
||||
+ onpopupshowing="if (!this.parentNode._placesView)
|
||||
+ new PlacesMenu(event, 'place:folder=UNFILED_BOOKMARKS',
|
||||
+ PlacesUIUtils.getViewForNode(this.parentNode.parentNode).options);"/>
|
||||
+ </menu>
|
||||
+ <menu id="BMB_mobileBookmarks"
|
||||
+ class="menu-iconic bookmark-item subviewbutton"
|
||||
+ label="&bookmarksMenuButton.mobile.label;"
|
||||
+ hidden="true"
|
||||
+ container="true">
|
||||
+ <menupopup id="BMB_mobileBookmarksPopup"
|
||||
+ placespopup="true"
|
||||
+ context="placesContext"
|
||||
+ onpopupshowing="if (!this.parentNode._placesView)
|
||||
+ new PlacesMenu(event, 'place:folder=MOBILE_BOOKMARKS',
|
||||
+ PlacesUIUtils.getViewForNode(this.parentNode.parentNode).options);"/>
|
||||
+ </menu>
|
||||
+
|
||||
+ <menuseparator/>
|
||||
+ <!-- Bookmarks menu items will go here -->
|
||||
+ <menuitem id="BMB_bookmarksShowAll"
|
||||
+ class="subviewbutton panel-subview-footer"
|
||||
+ label="&showAllBookmarks2.label;"
|
||||
+ command="Browser:ShowAllBookmarks"
|
||||
+ key="manBookmarkKb"/>
|
||||
+ </menupopup>
|
||||
+ </toolbarbutton>
|
||||
+#endif
|
||||
+
|
||||
+ <toolbaritem id="search-container"
|
||||
+ class="chromeclass-toolbar-additional panel-wide-item"
|
||||
+ title="&searchItem.title;"
|
||||
+ align="center"
|
||||
+ flex="100"
|
||||
+ persist="width">
|
||||
+ <searchbar id="searchbar" flex="1"/>
|
||||
+ </toolbaritem>
|
||||
+ </toolbarpalette>
|
||||
+ <box id="library-animatable-box" class="toolbarbutton-animatable-box">
|
||||
+ <image class="toolbarbutton-animatable-image"/>
|
||||
+ </box>
|
||||
+ </toolbox>
|
||||
+
|
||||
+ <hbox id="fullscr-toggler" hidden="true"/>
|
||||
@ -1245,7 +1195,7 @@ new file mode 100644
|
||||
+# To ensure the button doesn't expand unnecessarily for short labels, the
|
||||
+# spacer should significantly out-flex the button.
|
||||
+ <spacer flex="1000"/>
|
||||
+ <toolbarbutton id="sidebar-close" class="tabbable" tooltiptext="&sidebarCloseButton.tooltip;" oncommand="SidebarUI.hide();"/>
|
||||
+ <toolbarbutton id="sidebar-close" class="close-icon tabbable" tooltiptext="&sidebarCloseButton.tooltip;" oncommand="SidebarUI.hide();"/>
|
||||
+ </sidebarheader>
|
||||
+ <browser id="sidebar" flex="1" autoscroll="false" disablehistory="true" disablefullscreen="true"
|
||||
+ style="min-width: 14em; width: 18em; max-width: 36em;" tooltip="aHTMLTooltip"/>
|
||||
@ -1301,24 +1251,6 @@ new file mode 100644
|
||||
+ <notificationbox id="global-notificationbox" notificationside="bottom"/>
|
||||
+ </vbox>
|
||||
+
|
||||
+ <svg:svg height="0">
|
||||
+#include tab-shape.inc.svg
|
||||
+#ifndef MOZ_PHOTON_THEME
|
||||
+ <svg:clipPath id="urlbar-back-button-clip-path">
|
||||
+#ifndef XP_MACOSX
|
||||
+ <svg:path d="M -9,-4 l 0,1 a 15 15 0 0,1 0,30 l 0,1 l 10000,0 l 0,-32 l -10000,0 z" />
|
||||
+#else
|
||||
+ <svg:path d="M -11,-5 a 16 16 0 0 1 0,34 l 10000,0 l 0,-34 l -10000,0 z"/>
|
||||
+#endif
|
||||
+ </svg:clipPath>
|
||||
+#ifdef XP_WIN
|
||||
+ <svg:clipPath id="urlbar-back-button-clip-path-win10">
|
||||
+ <svg:path d="M -6,-2 l 0,1 a 15 15 0 0,1 0,30 l 0,1 l 10000,0 l 0,-32 l -10000,0 z" />
|
||||
+ </svg:clipPath>
|
||||
+#endif
|
||||
+#endif
|
||||
+ </svg:svg>
|
||||
+
|
||||
+</vbox>
|
||||
+# <iframe id="tab-view"> is dynamically appended as the 2nd child of #tab-view-deck.
|
||||
+# Introducing the iframe dynamically, as needed, was found to be better than
|
||||
@ -1330,8 +1262,8 @@ diff --git a/browser/base/jar.mn b/browser/base/jar.mn
|
||||
--- a/browser/base/jar.mn
|
||||
+++ b/browser/base/jar.mn
|
||||
@@ -58,16 +58,18 @@ browser.jar:
|
||||
content/browser/aboutSocialError.xhtml (content/aboutSocialError.xhtml)
|
||||
content/browser/aboutProviderDirectory.xhtml (content/aboutProviderDirectory.xhtml)
|
||||
content/browser/aboutRobots-icon.png (content/aboutRobots-icon.png)
|
||||
content/browser/aboutRobots-widget-left.png (content/aboutRobots-widget-left.png)
|
||||
content/browser/aboutTabCrashed.css (content/aboutTabCrashed.css)
|
||||
content/browser/aboutTabCrashed.js (content/aboutTabCrashed.js)
|
||||
content/browser/aboutTabCrashed.xhtml (content/aboutTabCrashed.xhtml)
|
||||
@ -1346,8 +1278,8 @@ diff --git a/browser/base/jar.mn b/browser/base/jar.mn
|
||||
content/browser/browser-customization.js (content/browser-customization.js)
|
||||
content/browser/browser-data-submission-info-bar.js (content/browser-data-submission-info-bar.js)
|
||||
content/browser/browser-compacttheme.js (content/browser-compacttheme.js)
|
||||
content/browser/browser-feeds.js (content/browser-feeds.js)
|
||||
content/browser/browser-fullScreenAndPointerLock.js (content/browser-fullScreenAndPointerLock.js)
|
||||
#ifndef MOZILLA_OFFICIAL
|
||||
content/browser/browser-development-helpers.js (content/browser-development-helpers.js)
|
||||
diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/nsModule.cpp
|
||||
--- a/browser/components/build/nsModule.cpp
|
||||
+++ b/browser/components/build/nsModule.cpp
|
||||
@ -1370,7 +1302,7 @@ diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/ns
|
||||
|
||||
#include "rdf.h"
|
||||
#include "nsFeedSniffer.h"
|
||||
@@ -31,18 +31,16 @@ using namespace mozilla::browser;
|
||||
@@ -32,18 +32,16 @@ using namespace mozilla::browser;
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@ -1389,9 +1321,9 @@ diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/ns
|
||||
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(nsFeedSniffer)
|
||||
|
||||
@@ -60,17 +58,17 @@ NS_DEFINE_NAMED_CID(NS_WINIEHISTORYENUME
|
||||
NS_DEFINE_NAMED_CID(NS_SHELLSERVICE_CID);
|
||||
#endif
|
||||
@@ -64,17 +62,17 @@ NS_DEFINE_NAMED_CID(NS_SHELLSERVICE_CID)
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(nsSessionStoreUtils)
|
||||
NS_DEFINE_NAMED_CID(NS_SESSIONSTOREUTILS_CID);
|
||||
|
||||
static const mozilla::Module::CIDEntry kBrowserCIDs[] = {
|
||||
{ &kNS_BROWSERDIRECTORYPROVIDER_CID, false, nullptr, DirectoryProviderConstructor },
|
||||
@ -1411,13 +1343,13 @@ diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/ns
|
||||
diff --git a/browser/components/preferences/in-content/main.js b/browser/components/preferences/in-content/main.js
|
||||
--- a/browser/components/preferences/in-content/main.js
|
||||
+++ b/browser/components/preferences/in-content/main.js
|
||||
@@ -41,16 +41,23 @@ var gMainPane = {
|
||||
// way to get all file type association prefs. So we don't know
|
||||
// when the user will select the default. We refresh here periodically
|
||||
// in case the default changes. On other Windows OS's defaults can also
|
||||
// be set while the prefs are open.
|
||||
window.setInterval(this.updateSetDefaultBrowser.bind(this), 1000);
|
||||
}
|
||||
@@ -203,16 +203,23 @@ var gMainPane = {
|
||||
this._backoffIndex++ : backoffTimes.length - 1]);
|
||||
};
|
||||
|
||||
window.setTimeout(() => {
|
||||
window.requestIdleCallback(pollForDefaultBrowser);
|
||||
}, backoffTimes[this._backoffIndex]);
|
||||
}
|
||||
|
||||
+ var env = Components.classes["@mozilla.org/process/environment;1"]
|
||||
@ -1427,17 +1359,17 @@ diff --git a/browser/components/preferences/in-content/main.js b/browser/compone
|
||||
+ kde_session = 1;
|
||||
+ }
|
||||
+
|
||||
this.initBrowserContainers();
|
||||
this.buildContentProcessCountMenuList();
|
||||
this.updateDefaultPerformanceSettingsPref();
|
||||
|
||||
let defaultPerformancePref =
|
||||
document.getElementById("browser.preferences.defaultPerformanceSettings.enabled");
|
||||
defaultPerformancePref.addEventListener("change", () => {
|
||||
this.updatePerformanceSettingsBox({duringChangeEvent: true});
|
||||
});
|
||||
@@ -875,16 +882,27 @@ var gMainPane = {
|
||||
let alwaysCheckPref = document.getElementById("browser.shell.checkDefaultBrowser");
|
||||
alwaysCheckPref.value = true;
|
||||
let performanceSettingsLink = document.getElementById("performanceSettingsLearnMore");
|
||||
let performanceSettingsUrl = Services.urlFormatter.formatURLPref("app.support.baseURL") + "performance";
|
||||
performanceSettingsLink.setAttribute("href", performanceSettingsUrl);
|
||||
|
||||
this.updateDefaultPerformanceSettingsPref();
|
||||
@@ -952,16 +959,27 @@ var gMainPane = {
|
||||
// Reset exponential backoff delay time in order to do visual update in pollForDefaultBrowser.
|
||||
this._backoffIndex = 0;
|
||||
|
||||
let shellSvc = getShellService();
|
||||
if (!shellSvc)
|
||||
@ -1466,7 +1398,7 @@ diff --git a/browser/components/preferences/in-content/main.js b/browser/compone
|
||||
diff --git a/browser/components/shell/moz.build b/browser/components/shell/moz.build
|
||||
--- a/browser/components/shell/moz.build
|
||||
+++ b/browser/components/shell/moz.build
|
||||
@@ -38,16 +38,18 @@ if CONFIG['OS_ARCH'] == 'WINNT':
|
||||
@@ -39,16 +39,18 @@ if CONFIG['OS_ARCH'] == 'WINNT':
|
||||
]
|
||||
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
|
||||
SOURCES += [
|
||||
@ -1489,7 +1421,7 @@ diff --git a/browser/components/shell/nsKDEShellService.cpp b/browser/components
|
||||
new file mode 100644
|
||||
--- /dev/null
|
||||
+++ b/browser/components/shell/nsKDEShellService.cpp
|
||||
@@ -0,0 +1,203 @@
|
||||
@@ -0,0 +1,204 @@
|
||||
+/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||||
+/* 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
|
||||
@ -1578,7 +1510,8 @@ new file mode 100644
|
||||
+
|
||||
+NS_IMETHODIMP
|
||||
+nsKDEShellService::SetDesktopBackground(nsIDOMElement* aElement,
|
||||
+ PRInt32 aPosition)
|
||||
+ int32_t aPosition,
|
||||
+ const nsACString& aImageName)
|
||||
+{
|
||||
+ return NS_ERROR_NOT_IMPLEMENTED;
|
||||
+}
|
||||
@ -1778,7 +1711,7 @@ new file mode 100644
|
||||
diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
|
||||
--- a/browser/installer/package-manifest.in
|
||||
+++ b/browser/installer/package-manifest.in
|
||||
@@ -664,16 +664,18 @@
|
||||
@@ -666,16 +666,18 @@
|
||||
@RESPATH@/browser/defaults/blocklists
|
||||
@RESPATH@/browser/defaults/pinning
|
||||
|
||||
|
@ -1,18 +1,18 @@
|
||||
# HG changeset patch
|
||||
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
||||
# Parent 099312626f5f7c9cb5573a61d0230574ee12a660
|
||||
# Parent b692fb539e9d0641ff557cb4b984b5e211aec572
|
||||
# Parent 3d1dbfbdfa41b433352fadf3efe4a21cb45a468f
|
||||
Do not overwrite the locale dynamic pref from xulrunner's all.js with a wrong default value
|
||||
|
||||
diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js
|
||||
--- a/browser/app/profile/firefox.js
|
||||
+++ b/browser/app/profile/firefox.js
|
||||
@@ -240,17 +240,17 @@ pref("browser.uitour.readerViewTrigger",
|
||||
@@ -219,17 +219,17 @@ pref("browser.uitour.requireSecure", tru
|
||||
pref("browser.uitour.themeOrigin", "https://addons.mozilla.org/%LOCALE%/firefox/themes/");
|
||||
pref("browser.uitour.url", "https://www.mozilla.org/%LOCALE%/firefox/%VERSION%/tour/");
|
||||
// How long to show a Hearbeat survey (two hours, in seconds)
|
||||
pref("browser.uitour.surveyDuration", 7200);
|
||||
|
||||
pref("browser.customizemode.tip0.shown", false);
|
||||
pref("browser.customizemode.tip0.learnMoreUrl", "https://support.mozilla.org/1/firefox/%VERSION%/%OS%/%LOCALE%/customize");
|
||||
|
||||
pref("keyword.enabled", true);
|
||||
pref("browser.fixup.domainwhitelist.localhost", true);
|
||||
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:0a4704c6ae33b92f0f861cba02ab93bc5fe05b7429b7adc7e9180793556ef398
|
||||
size 47661016
|
3
l10n-57.0.tar.xz
Normal file
3
l10n-57.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d0297cd4ef6664e2bbd1d51f6d79b2d4d15766eefa5a16ef4a08ad5fa4b47328
|
||||
size 47607648
|
@ -1,96 +1,96 @@
|
||||
ach e7adc49e1901
|
||||
af a175ec808407
|
||||
an c02780857019
|
||||
ar 6688a184a4ee
|
||||
as 1b201809c30b
|
||||
ast 5b0c1d37dfc4
|
||||
az 46f153ea025d
|
||||
be e639859bd80d
|
||||
bg 45ac10a8eebb
|
||||
bn-BD 78e42794be0a
|
||||
bn-IN b12cd5984010
|
||||
br 0c692a161e6a
|
||||
bs c566dcff9228
|
||||
ca 843005ebdf57
|
||||
cak a201a160f1aa
|
||||
cs 673e3c5d7e6d
|
||||
cy d7785e84b2d5
|
||||
da d10cb0ccbfdf
|
||||
de cbcbb67b7446
|
||||
dsb 91d7f449c8b8
|
||||
el 9fae6e0cf73a
|
||||
en-GB 4efed4b7a026
|
||||
en-ZA 41d36ec15733
|
||||
eo 75689f423fee
|
||||
es-AR 008298fdc822
|
||||
es-CL 0719cf9a02c5
|
||||
es-ES 89444d0f0c5e
|
||||
es-MX a3b2c719d335
|
||||
et f94a081742e2
|
||||
eu e70ce824af92
|
||||
fa bd0a632a347e
|
||||
ff e9ec23d286da
|
||||
fi dee2606c0c52
|
||||
fr 444f6f248cda
|
||||
fy-NL 5442947be711
|
||||
ga-IE 520a91e1b869
|
||||
gd 7b8d318d7172
|
||||
gl df4a43546115
|
||||
gn de90f7d4ad27
|
||||
gu-IN 49c0059e7b20
|
||||
he 14abb07c8067
|
||||
hi-IN 627e4866fa52
|
||||
hr 840d6fce9f2d
|
||||
hsb 79b769f56afb
|
||||
hu 75d6acab27ff
|
||||
hy-AM 3543e3c61d51
|
||||
id 80d249bfce07
|
||||
is df02eb864aba
|
||||
it 54ebd710b0b9
|
||||
ja 0f3bea597ba3
|
||||
ja-JP-mac 7f49be227f5d
|
||||
ka ee6c8ed935e1
|
||||
kab f53aac551d7a
|
||||
kk 07823d99b937
|
||||
km 3bf31b0b6d9e
|
||||
kn c3db01aad2bf
|
||||
ko 9508383b1bb7
|
||||
lij c585863b419f
|
||||
lt 74e2d1cc81a1
|
||||
lv 6e57fc56b250
|
||||
mai 7c33a3406453
|
||||
mk b97e85f1e93e
|
||||
ml de8be9445c41
|
||||
mr 61ad0573f895
|
||||
ms 25a747386aab
|
||||
my 088ce3f4319d
|
||||
nb-NO 1d197e5f990c
|
||||
nl 5676db0716a9
|
||||
nn-NO fcd11b7086e5
|
||||
or f21324a0ed10
|
||||
pa-IN 4b71dd06d0e8
|
||||
pl b71e63bbbddd
|
||||
pt-BR e0e7a5821812
|
||||
pt-PT 333e82cca862
|
||||
rm 6b8e6367d9d0
|
||||
ro 84d897edfd6c
|
||||
ru aee79cd84afb
|
||||
si d91975c0b4d8
|
||||
sk 8fa0e53e20c2
|
||||
sl 2abb9b1c667a
|
||||
son be7a56e6d7fe
|
||||
sq d9137ed745db
|
||||
sr 6839a5986d5b
|
||||
sv-SE 621c743144e6
|
||||
ta aae2aa13babf
|
||||
te d9cf4d3c33e0
|
||||
th 34c1c62bb3cf
|
||||
tr 921c1b013006
|
||||
uk 03b177ac056c
|
||||
ur d97e35bba2d8
|
||||
uz 4807645f175b
|
||||
vi fa843de1fbed
|
||||
xh 7011a348aa3b
|
||||
zh-CN 3ebe225f8ae8
|
||||
zh-TW 99c6d5ce2901
|
||||
ach 845e30d48dfc
|
||||
af fb2bb189a1a8
|
||||
an a6cb9e55ca54
|
||||
ar b064d5ee568d
|
||||
as c8c7ce08a50d
|
||||
ast 7eb260478bd8
|
||||
az e53e6a85563a
|
||||
be 3ee97e7a07c4
|
||||
bg f5cbdea3b4bb
|
||||
bn-BD bd83d95fe12f
|
||||
bn-IN 101048b9a8bd
|
||||
br 1b53314687e2
|
||||
bs b3e804dbc8e2
|
||||
ca ef0d1d4ef0de
|
||||
cak a3648bb10a20
|
||||
cs 528911ffcb44
|
||||
cy 21e09e135ce7
|
||||
da 9c08e8177409
|
||||
de 3d02afaa90f1
|
||||
dsb 4f2a125adbc5
|
||||
el a925e0e24aaf
|
||||
en-GB 440d6fbf0938
|
||||
en-ZA 4bd5e2534230
|
||||
eo 42248b1fda32
|
||||
es-AR 39d7f70fbd4a
|
||||
es-CL e0806844a966
|
||||
es-ES 385b05704e12
|
||||
es-MX 4322b61a47fd
|
||||
et fc5042e8d705
|
||||
eu 1010ee63a76a
|
||||
fa 988038c98e07
|
||||
ff 0ae0e4ad0400
|
||||
fi 83ae1ba711f8
|
||||
fr 0acb9b019381
|
||||
fy-NL f66ad8f570c9
|
||||
ga-IE b6bd9e6bf934
|
||||
gd 2b1b66f8236b
|
||||
gl bd2efa51e288
|
||||
gn ef1c4c22501c
|
||||
gu-IN 9b4d89d58ee1
|
||||
he 923c4ce99db2
|
||||
hi-IN 62f4cab806a5
|
||||
hr 26c2911d2b28
|
||||
hsb 9a556a68f383
|
||||
hu 43fb04933e45
|
||||
hy-AM 6020222039ca
|
||||
id bc055f358395
|
||||
is b265b8439970
|
||||
it 72e0f73d8188
|
||||
ja 9e9796b48f28
|
||||
ja-JP-mac 2cbb5add9822
|
||||
ka 43d1466fc89b
|
||||
kab 8e739627fb01
|
||||
kk 51aee666e469
|
||||
km 79239374c86f
|
||||
kn a6dd05b338cf
|
||||
ko 0fccbb892229
|
||||
lij d1d09ea09eff
|
||||
lt 5f5779c69338
|
||||
lv f0fd0c3546e0
|
||||
mai 64d402c5dbc1
|
||||
mk b3fb89cac86c
|
||||
ml 9d626ede460e
|
||||
mr 1a23c6401834
|
||||
ms 15a3d7fccea1
|
||||
my 2e2cc78ff945
|
||||
nb-NO 467ca2ff0cd1
|
||||
nl 10957cbee7f0
|
||||
nn-NO 71fce03b2c6b
|
||||
or 8c482206a700
|
||||
pa-IN a2af69c875ad
|
||||
pl ce3a564b00c2
|
||||
pt-BR 71346ac29bfc
|
||||
pt-PT 387686b89f52
|
||||
rm de3c6abf95ab
|
||||
ro 6e3dfa0ea030
|
||||
ru 760cda086381
|
||||
si 355b25c93905
|
||||
sk 5444e00cc3e6
|
||||
sl cb6eb7e6ba4a
|
||||
son e9a07815a9aa
|
||||
sq c61933c72577
|
||||
sr 74f5c2f98346
|
||||
sv-SE f75dd8e9c4df
|
||||
ta ad1bce7770b4
|
||||
te dde86e2a2c17
|
||||
th 1950402ffa30
|
||||
tr e8700165617b
|
||||
uk e7b649fcf3bb
|
||||
ur 9881f47a738d
|
||||
uz 9ac534694f99
|
||||
vi 601e9a63473e
|
||||
xh 4d22de472867
|
||||
zh-CN 8aff87add86f
|
||||
zh-TW 2ac3b80bdb6e
|
||||
|
||||
|
@ -1,12 +1,12 @@
|
||||
# HG changeset patch
|
||||
# Parent a5cfa3aa11a9d3391df49de6fc5a0e5232c12c10
|
||||
# Parent d36d722c028f553ac3fb2f3655fb2c0ca745050c
|
||||
# Parent 6906d2adcc834114de3118365cb75b113df8564e
|
||||
Bug 991344 - Rpi3: Firefox crashes after a few seconds of usage
|
||||
|
||||
diff --git a/netwerk/base/nsIOService.cpp b/netwerk/base/nsIOService.cpp
|
||||
--- a/netwerk/base/nsIOService.cpp
|
||||
+++ b/netwerk/base/nsIOService.cpp
|
||||
@@ -874,17 +874,23 @@ nsIOService::NewChannelFromURIWithProxyF
|
||||
@@ -892,17 +892,23 @@ nsIOService::NewChannelFromURIWithProxyF
|
||||
"doesn't support nsIUploadChannel2. An extension has "
|
||||
"supplied a non-functional http protocol handler. This will "
|
||||
"break behavior and in future releases not work at all.");
|
||||
|
102
mozilla-bindgen-systemlibs.patch
Normal file
102
mozilla-bindgen-systemlibs.patch
Normal file
@ -0,0 +1,102 @@
|
||||
# HG changeset patch
|
||||
# Parent e85dde0eabf214916c69924aa49192ab412e00a1
|
||||
|
||||
diff --git a/build/autoconf/config.status.m4 b/build/autoconf/config.status.m4
|
||||
--- a/build/autoconf/config.status.m4
|
||||
+++ b/build/autoconf/config.status.m4
|
||||
@@ -40,16 +40,31 @@ define([AC_SUBST_LIST],
|
||||
[ifdef([AC_SUBST_SET_$1], [m4_fatal([Cannot use AC_SUBST_SET and AC_SUBST_LIST on the same variable ($1)])],
|
||||
[ifdef([AC_SUBST_LIST_$1], ,
|
||||
[define([AC_SUBST_LIST_$1], )dnl
|
||||
AC_DIVERT_PUSH(MOZ_DIVERSION_SUBST)dnl
|
||||
(''' $1 ''', list(r''' [$]$1 '''.split()))
|
||||
AC_DIVERT_POP()dnl
|
||||
])])])])
|
||||
|
||||
+dnl Like AC_SUBST, but makes the value available as a string of quoted strings
|
||||
+dnl in python, with values got from the value of the environment variable,
|
||||
+dnl split on whitespaces. The value is suitable for embedding into a .toml
|
||||
+dnl list.
|
||||
+define([AC_SUBST_TOML_LIST],
|
||||
+[ifdef([AC_SUBST_$1], [m4_fatal([Cannot use AC_SUBST and AC_SUBST_LIST on the same variable ($1)])],
|
||||
+[ifdef([AC_SUBST_SET_$1], [m4_fatal([Cannot use AC_SUBST_SET and AC_SUBST_LIST on the same variable ($1)])],
|
||||
+[ifdef([AC_SUBST_LIST_$1], ,
|
||||
+[define([AC_SUBST_LIST_$1], )dnl
|
||||
+AC_DIVERT_PUSH(MOZ_DIVERSION_SUBST)dnl
|
||||
+ (''' $1 ''', r''' %s ''' % str(', '.join("'%s'" % s for s in r''' [$]$1 '''.split())))
|
||||
+AC_DIVERT_POP()dnl
|
||||
+])])])])
|
||||
+
|
||||
+
|
||||
dnl Ignore AC_SUBSTs for variables we don't have use for but that autoconf
|
||||
dnl itself exports.
|
||||
define([AC_SUBST_CFLAGS], )
|
||||
define([AC_SUBST_CPPFLAGS], )
|
||||
define([AC_SUBST_CXXFLAGS], )
|
||||
define([AC_SUBST_FFLAGS], )
|
||||
define([AC_SUBST_DEFS], )
|
||||
define([AC_SUBST_LDFLAGS], )
|
||||
diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolchain.configure
|
||||
--- a/build/moz.configure/toolchain.configure
|
||||
+++ b/build/moz.configure/toolchain.configure
|
||||
@@ -897,25 +897,24 @@ def check_have_64_bit(have_64_bit, compi
|
||||
configure_error('The target compiler does not agree with configure '
|
||||
'about the target bitness.')
|
||||
|
||||
option(env='BINDGEN_CFLAGS',
|
||||
nargs=1,
|
||||
help='Options bindgen should pass to the C/C++ parser')
|
||||
|
||||
@depends('BINDGEN_CFLAGS')
|
||||
-@checking('bindgen cflags', lambda s: s if s and s.strip() else 'no')
|
||||
+@checking('bindgen cflags', lambda s: s if s and s[0].strip() else 'no')
|
||||
def bindgen_cflags(value):
|
||||
if value and len(value):
|
||||
# Reformat the env value for substitution into a toml list.
|
||||
flags = value[0].split()
|
||||
- return ', '.join('"' + flag + '"' for flag in flags)
|
||||
- return ''
|
||||
+ return flags
|
||||
|
||||
-set_config('BINDGEN_CFLAGS', bindgen_cflags)
|
||||
+add_old_configure_assignment('_BINDGEN_CFLAGS', bindgen_cflags)
|
||||
|
||||
@depends(c_compiler)
|
||||
def default_debug_flags(compiler_info):
|
||||
# Debug info is ON by default.
|
||||
if compiler_info.type in ('msvc', 'clang-cl'):
|
||||
return '-Zi'
|
||||
return '-g'
|
||||
|
||||
diff --git a/layout/style/bindgen.toml.in b/layout/style/bindgen.toml.in
|
||||
--- a/layout/style/bindgen.toml.in
|
||||
+++ b/layout/style/bindgen.toml.in
|
||||
@@ -1,4 +1,4 @@
|
||||
[build]
|
||||
args = [
|
||||
- @BINDGEN_CFLAGS@
|
||||
+ @BINDGEN_SYSTEM_FLAGS@
|
||||
]
|
||||
diff --git a/old-configure.in b/old-configure.in
|
||||
--- a/old-configure.in
|
||||
+++ b/old-configure.in
|
||||
@@ -4453,16 +4453,19 @@ android)
|
||||
esac
|
||||
|
||||
AC_SUBST(MOZ_TREE_CAIRO)
|
||||
AC_SUBST_LIST(MOZ_CAIRO_CFLAGS)
|
||||
AC_SUBST_LIST(MOZ_CAIRO_LIBS)
|
||||
AC_SUBST_LIST(MOZ_CAIRO_OSLIBS)
|
||||
AC_SUBST(MOZ_TREE_PIXMAN)
|
||||
|
||||
+BINDGEN_SYSTEM_FLAGS="$_BINDGEN_CFLAGS $NSPR_CFLAGS $NSS_CFLAGS $MOZ_PIXMAN_CFLAGS $MOZ_CAIRO_CFLAGS"
|
||||
+AC_SUBST_TOML_LIST(BINDGEN_SYSTEM_FLAGS)
|
||||
+
|
||||
dnl ========================================================
|
||||
dnl disable xul
|
||||
dnl ========================================================
|
||||
MOZ_ARG_DISABLE_BOOL(xul,
|
||||
[ --disable-xul Disable XUL],
|
||||
MOZ_XUL= )
|
||||
if test "$MOZ_XUL"; then
|
||||
AC_DEFINE(MOZ_XUL)
|
@ -1,5 +1,5 @@
|
||||
# HG changeset patch
|
||||
# Parent faadbf89d1cb02eefec4c5dfd3ab86bc20d815d5
|
||||
# Parent 87a32e5d11e9d652e331a5f852bb951069b20c4a
|
||||
Description: Add KDE integration to Firefox (toolkit parts)
|
||||
Author: Wolfgang Rosenauer <wolfgang@rosenauer.org>
|
||||
Author: Lubos Lunak <lunak@suse.com>
|
||||
@ -9,10 +9,10 @@ Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=140751
|
||||
diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
||||
--- a/modules/libpref/Preferences.cpp
|
||||
+++ b/modules/libpref/Preferences.cpp
|
||||
@@ -33,16 +33,17 @@
|
||||
@@ -37,16 +37,17 @@
|
||||
#include "nsIZipReader.h"
|
||||
#include "nsPrefBranch.h"
|
||||
#include "nsXPIDLString.h"
|
||||
#include "nsString.h"
|
||||
#include "nsCRT.h"
|
||||
#include "nsCOMArray.h"
|
||||
#include "nsXPCOMCID.h"
|
||||
@ -27,7 +27,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
||||
#include "prefread.h"
|
||||
#include "prefapi_private_data.h"
|
||||
|
||||
@@ -1435,16 +1436,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char
|
||||
@@ -1413,16 +1414,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char
|
||||
|
||||
static nsresult pref_LoadPrefsInDirList(const char *listId)
|
||||
{
|
||||
@ -62,7 +62,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
||||
return NS_OK;
|
||||
|
||||
bool hasMore;
|
||||
@@ -1460,17 +1479,17 @@ static nsresult pref_LoadPrefsInDirList(
|
||||
@@ -1438,17 +1457,17 @@ static nsresult pref_LoadPrefsInDirList(
|
||||
|
||||
nsAutoCString leaf;
|
||||
path->GetNativeLeafName(leaf);
|
||||
@ -79,9 +79,9 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
||||
|
||||
static nsresult pref_ReadPrefFromJar(nsZipArchive* jarReader, const char *name)
|
||||
{
|
||||
nsZipItemPtr<char> manifest(jarReader, name, true);
|
||||
NS_ENSURE_TRUE(manifest.Buffer(), NS_ERROR_NOT_AVAILABLE);
|
||||
@@ -1566,24 +1585,36 @@ pref_InitInitialObjects()
|
||||
nsCString manifest;
|
||||
MOZ_TRY_VAR(manifest, URLPreloader::ReadZip(jarReader, nsDependentCString(name)));
|
||||
@@ -1544,24 +1563,36 @@ pref_InitInitialObjects()
|
||||
/* these pref file names should not be used: we process them after all other application pref files for backwards compatibility */
|
||||
static const char* specialFiles[] = {
|
||||
#if defined(XP_MACOSX)
|
||||
@ -121,7 +121,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
||||
diff --git a/modules/libpref/moz.build b/modules/libpref/moz.build
|
||||
--- a/modules/libpref/moz.build
|
||||
+++ b/modules/libpref/moz.build
|
||||
@@ -33,16 +33,20 @@ EXPORTS.mozilla += [
|
||||
@@ -31,16 +31,20 @@ EXPORTS.mozilla += [
|
||||
UNIFIED_SOURCES += [
|
||||
'nsPrefBranch.cpp',
|
||||
'nsPrefsFactory.cpp',
|
||||
@ -166,8 +166,7 @@ diff --git a/python/mozbuild/mozpack/chrome/flags.py b/python/mozbuild/mozpack/c
|
||||
diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpack/chrome/manifest.py
|
||||
--- a/python/mozbuild/mozpack/chrome/manifest.py
|
||||
+++ b/python/mozbuild/mozpack/chrome/manifest.py
|
||||
@@ -33,16 +33,17 @@ class ManifestEntry(object):
|
||||
'application',
|
||||
@@ -34,16 +34,17 @@ class ManifestEntry(object):
|
||||
'platformversion',
|
||||
'os',
|
||||
'osversion',
|
||||
@ -175,7 +174,8 @@ diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpac
|
||||
'xpcnativewrappers',
|
||||
'tablet',
|
||||
'process',
|
||||
+ 'desktop',
|
||||
'contentaccessible',
|
||||
+ 'desktop',
|
||||
]
|
||||
|
||||
def __init__(self, base, *flags):
|
||||
@ -568,7 +568,7 @@ new file mode 100644
|
||||
+ if (/Win/.test(navigator.platform)) {
|
||||
+ var spacer = document.getAnonymousElementByAttribute(this, "anonid", "spacer");
|
||||
+ spacer.removeAttribute("hidden");
|
||||
+ spacer.setAttribute("flex", shown["extra2"] ? "1" : "0");
|
||||
+ spacer.setAttribute("flex", shown.extra2 ? "1" : "0");
|
||||
+ }
|
||||
+ }
|
||||
+ ]]>
|
||||
@ -803,7 +803,7 @@ new file mode 100644
|
||||
+ </field>
|
||||
+ <field name="rootBranchInternal">
|
||||
+ Components.classes["@mozilla.org/preferences-service;1"]
|
||||
+ .getService(Components.interfaces.nsIPrefBranchInternal);
|
||||
+ .getService(Components.interfaces.nsIPrefBranch);
|
||||
+ </field>
|
||||
+ <property name="type" readonly="true">
|
||||
+ <getter>
|
||||
@ -1083,7 +1083,7 @@ new file mode 100644
|
||||
+ return fontEnumerator.getStandardFamilyName(family);
|
||||
+ case "file":
|
||||
+ var f = this._branch
|
||||
+ .getComplexValue(this.name, Components.interfaces.nsILocalFile);
|
||||
+ .getComplexValue(this.name, Components.interfaces.nsIFile);
|
||||
+ return f;
|
||||
+ default:
|
||||
+ this._reportUnknownType();
|
||||
@ -1128,14 +1128,14 @@ new file mode 100644
|
||||
+ var lf;
|
||||
+ if (typeof(val) == "string") {
|
||||
+ lf = Components.classes["@mozilla.org/file/local;1"]
|
||||
+ .createInstance(Components.interfaces.nsILocalFile);
|
||||
+ .createInstance(Components.interfaces.nsIFile);
|
||||
+ lf.persistentDescriptor = val;
|
||||
+ if (!lf.exists())
|
||||
+ lf.initWithPath(val);
|
||||
+ } else
|
||||
+ lf = val.QueryInterface(Components.interfaces.nsILocalFile);
|
||||
+ lf = val.QueryInterface(Components.interfaces.nsIFile);
|
||||
+ this.preferences.rootBranch
|
||||
+ .setComplexValue(this.name, Components.interfaces.nsILocalFile, lf);
|
||||
+ .setComplexValue(this.name, Components.interfaces.nsIFile, lf);
|
||||
+ break;
|
||||
+ default:
|
||||
+ this._reportUnknownType();
|
||||
@ -2883,7 +2883,7 @@ diff --git a/uriloader/exthandler/unix/nsKDERegistry.cpp b/uriloader/exthandler/
|
||||
new file mode 100644
|
||||
--- /dev/null
|
||||
+++ b/uriloader/exthandler/unix/nsKDERegistry.cpp
|
||||
@@ -0,0 +1,88 @@
|
||||
@@ -0,0 +1,87 @@
|
||||
+/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||||
+/* 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
|
||||
@ -2893,7 +2893,6 @@ new file mode 100644
|
||||
+#include "prlink.h"
|
||||
+#include "prmem.h"
|
||||
+#include "nsString.h"
|
||||
+#include "nsILocalFile.h"
|
||||
+#include "nsMIMEInfoUnix.h"
|
||||
+#include "nsAutoPtr.h"
|
||||
+#include "nsKDEUtils.h"
|
||||
@ -2989,8 +2988,8 @@ new file mode 100644
|
||||
+#include "nsTArray.h"
|
||||
+
|
||||
+class nsMIMEInfoBase;
|
||||
+class nsAutoCString;
|
||||
+class nsCString;
|
||||
+//class nsAutoCString;
|
||||
+//class nsCString;
|
||||
+
|
||||
+class nsKDERegistry
|
||||
+{
|
||||
@ -3126,10 +3125,10 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
|
||||
#include "nsString.h"
|
||||
#include "nsReadableUtils.h"
|
||||
#include "nsUnicharUtils.h"
|
||||
#include "nsXPIDLString.h"
|
||||
#include "nsIURL.h"
|
||||
#include "nsIFileStreams.h"
|
||||
@@ -1143,26 +1143,26 @@ nsresult nsOSHelperAppService::OSProtoco
|
||||
#include "nsILineInputStream.h"
|
||||
@@ -1142,26 +1142,26 @@ nsresult nsOSHelperAppService::OSProtoco
|
||||
ContentAction::Action::defaultActionForScheme(QString(aProtocolScheme) + ':');
|
||||
|
||||
if (action.isValid())
|
||||
@ -3158,7 +3157,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
|
||||
|
||||
nsresult nsOSHelperAppService::GetFileTokenForPath(const char16_t * platformAppPath, nsIFile ** aFile)
|
||||
{
|
||||
@@ -1249,17 +1249,17 @@ nsOSHelperAppService::GetFromExtension(c
|
||||
@@ -1248,17 +1248,17 @@ nsOSHelperAppService::GetFromExtension(c
|
||||
mime_types_description,
|
||||
true);
|
||||
|
||||
@ -3177,7 +3176,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
|
||||
|
||||
rv = LookUpTypeAndDescription(NS_ConvertUTF8toUTF16(aFileExt),
|
||||
majorType,
|
||||
@@ -1370,17 +1370,17 @@ nsOSHelperAppService::GetFromType(const
|
||||
@@ -1369,17 +1369,17 @@ nsOSHelperAppService::GetFromType(const
|
||||
nsAutoString extensions, mime_types_description;
|
||||
LookUpExtensionsAndDescription(majorType,
|
||||
minorType,
|
||||
@ -3276,7 +3275,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
||||
|
||||
mFilters.AppendElement(filter);
|
||||
mFilterNames.AppendElement(name);
|
||||
@@ -371,16 +375,34 @@ nsFilePicker::Show(int16_t *aReturn)
|
||||
@@ -371,16 +375,37 @@ nsFilePicker::Show(int16_t *aReturn)
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsFilePicker::Open(nsIFilePickerShownCallback *aCallback)
|
||||
@ -3287,23 +3286,26 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
||||
|
||||
+ // KDE file picker is not handled via callback
|
||||
+ if( nsKDEUtils::kdeSupport()) {
|
||||
+ int16_t result;
|
||||
+ mCallback = aCallback;
|
||||
+ mRunning = true;
|
||||
+ NS_ADDREF_THIS();
|
||||
+ kdeFileDialog(&result);
|
||||
+ if (mCallback) {
|
||||
+ mCallback->Done(result);
|
||||
+ mCallback = nullptr;
|
||||
+ } else {
|
||||
+ mResult = result;
|
||||
+ }
|
||||
+ mRunning = false;
|
||||
+ NS_RELEASE_THIS();
|
||||
+ g_idle_add([](gpointer data) -> gboolean {
|
||||
+ nsFilePicker* queuedPicker = (nsFilePicker*) data;
|
||||
+ int16_t result;
|
||||
+ queuedPicker->kdeFileDialog(&result);
|
||||
+ if (queuedPicker->mCallback) {
|
||||
+ queuedPicker->mCallback->Done(result);
|
||||
+ queuedPicker->mCallback = nullptr;
|
||||
+ } else {
|
||||
+ queuedPicker->mResult = result;
|
||||
+ }
|
||||
+ queuedPicker->mRunning = false;
|
||||
+ return G_SOURCE_REMOVE;
|
||||
+ }, this);
|
||||
+
|
||||
+ return NS_OK;
|
||||
+ }
|
||||
+
|
||||
nsXPIDLCString title;
|
||||
nsCString title;
|
||||
title.Adopt(ToNewUTF8String(mTitle));
|
||||
|
||||
GtkWindow *parent_widget =
|
||||
@ -3311,7 +3313,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
||||
|
||||
GtkFileChooserAction action = GetGtkFileChooserAction(mMode);
|
||||
|
||||
@@ -603,8 +625,235 @@ nsFilePicker::Done(GtkWidget* file_choos
|
||||
@@ -603,8 +628,233 @@ nsFilePicker::Done(GtkWidget* file_choos
|
||||
if (mCallback) {
|
||||
mCallback->Done(result);
|
||||
mCallback = nullptr;
|
||||
@ -3351,7 +3353,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
||||
+ if( mMode == modeOpen && mFilters.Length() == 1 && mFilters[ 0 ].EqualsLiteral( "..apps" ))
|
||||
+ return kdeAppsDialog( aReturn );
|
||||
+
|
||||
+ nsXPIDLCString title;
|
||||
+ nsCString title;
|
||||
+ title.Adopt(ToNewUTF8String(mTitle));
|
||||
+
|
||||
+ const char* arg = NULL;
|
||||
@ -3408,8 +3410,6 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
||||
+ else
|
||||
+ startdir = ToNewUTF8String(mDefault);
|
||||
+ }
|
||||
+ if( startdir.IsEmpty())
|
||||
+ startdir = ".";
|
||||
+
|
||||
+ nsAutoCString filters;
|
||||
+ PRInt32 count = mFilters.Length();
|
||||
@ -3520,7 +3520,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
|
||||
+ {
|
||||
+ NS_ENSURE_ARG_POINTER(aReturn);
|
||||
+
|
||||
+ nsXPIDLCString title;
|
||||
+ nsCString title;
|
||||
+ title.Adopt(ToNewUTF8String(mTitle));
|
||||
+
|
||||
+ nsTArray<nsCString> command;
|
||||
@ -3726,7 +3726,7 @@ diff --git a/xpcom/components/moz.build b/xpcom/components/moz.build
|
||||
diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
|
||||
--- a/xpcom/io/nsLocalFileUnix.cpp
|
||||
+++ b/xpcom/io/nsLocalFileUnix.cpp
|
||||
@@ -46,16 +46,17 @@
|
||||
@@ -45,16 +45,17 @@
|
||||
#include "prproces.h"
|
||||
#include "nsIDirectoryEnumerator.h"
|
||||
#include "nsISimpleEnumerator.h"
|
||||
@ -3744,7 +3744,7 @@ diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
|
||||
#include "prmem.h"
|
||||
#include "plbase64.h"
|
||||
|
||||
@@ -1941,59 +1942,74 @@ nsLocalFile::SetPersistentDescriptor(con
|
||||
@@ -1938,59 +1939,74 @@ nsLocalFile::SetPersistentDescriptor(con
|
||||
return InitWithNativePath(aPersistentDescriptor);
|
||||
#endif
|
||||
}
|
||||
|
@ -1,65 +0,0 @@
|
||||
# HG changeset patch
|
||||
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
||||
# Parent 5a29924228527f8882c83cf62d470963ea1ce62e
|
||||
# Parent 242f2521ed48bb63b91582956b5e4af80bcb3378
|
||||
Bug 583793 - Firefox interface language set to LANG, ignores LANGUAGE
|
||||
|
||||
diff --git a/intl/locale/nsLocaleService.cpp b/intl/locale/nsLocaleService.cpp
|
||||
--- a/intl/locale/nsLocaleService.cpp
|
||||
+++ b/intl/locale/nsLocaleService.cpp
|
||||
@@ -116,16 +116,17 @@ nsLocaleService::nsLocaleService(void)
|
||||
NS_ENSURE_SUCCESS_VOID(rv);
|
||||
#endif
|
||||
#if defined(XP_UNIX) && !defined(XP_MACOSX)
|
||||
RefPtr<nsLocale> resultLocale(new nsLocale());
|
||||
NS_ENSURE_TRUE_VOID(resultLocale);
|
||||
|
||||
// Get system configuration
|
||||
const char* lang = getenv("LANG");
|
||||
+ const char* language = getenv("LANGUAGE");
|
||||
|
||||
nsAutoString xpLocale, platformLocale;
|
||||
nsAutoString category, category_platform;
|
||||
int i;
|
||||
|
||||
for( i = 0; i < LocaleListLength; i++ ) {
|
||||
nsresult result;
|
||||
// setlocale( , "") evaluates LC_* and LANG
|
||||
@@ -151,16 +152,37 @@ nsLocaleService::nsLocaleService(void)
|
||||
} else {
|
||||
CopyASCIItoUTF16(lang, platformLocale);
|
||||
result = nsPosixLocale::GetXPLocale(lang, xpLocale);
|
||||
}
|
||||
}
|
||||
if (NS_FAILED(result)) {
|
||||
return;
|
||||
}
|
||||
+ // LANGUAGE is overriding LC_MESSAGES
|
||||
+ // it can be a colon separated list of preferred languages
|
||||
+ // as we do not recognize here if a language is available
|
||||
+ // we actually only consider the first entry unless GetXPLocale
|
||||
+ // fails completely
|
||||
+ if (i == LC_MESSAGES && language && *language) {
|
||||
+#define LANGUAGE_SEP ":"
|
||||
+ nsAutoString xpLocale_temp;
|
||||
+ char* rawBuffer = (char*) language;
|
||||
+ char* token = nsCRT::strtok(rawBuffer, LANGUAGE_SEP, &rawBuffer);
|
||||
+ for (; token;
|
||||
+ token = nsCRT::strtok(rawBuffer, LANGUAGE_SEP, &rawBuffer)) {
|
||||
+ result = nsPosixLocale::GetXPLocale(token, xpLocale_temp);
|
||||
+ if (NS_SUCCEEDED(result)) {
|
||||
+ CopyASCIItoUTF16(token, platformLocale);
|
||||
+ xpLocale = xpLocale_temp;
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
resultLocale->AddCategory(category, xpLocale);
|
||||
resultLocale->AddCategory(category_platform, platformLocale);
|
||||
}
|
||||
mSystemLocale = do_QueryInterface(resultLocale);
|
||||
mApplicationLocale = do_QueryInterface(resultLocale);
|
||||
|
||||
#endif // XP_UNIX
|
||||
|
@ -1,11 +1,11 @@
|
||||
# HG changeset patch
|
||||
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
||||
# Parent e96e9b3997ea31024687aaa1e9aa5ccf78bc0ee9
|
||||
# Parent 8f6d1846ca837387965573161577b1c5a483bcda
|
||||
|
||||
diff --git a/config/config.mk b/config/config.mk
|
||||
--- a/config/config.mk
|
||||
+++ b/config/config.mk
|
||||
@@ -653,17 +653,16 @@ ifeq ($(MOZ_WIDGET_TOOLKIT),android)
|
||||
@@ -579,17 +579,16 @@ ifeq ($(MOZ_WIDGET_TOOLKIT),android)
|
||||
# of the linker command line), if libmozglue.so ends up after libc.so, all
|
||||
# hell breaks loose, so better safe than sorry, and check it's actually the
|
||||
# case.
|
||||
|
@ -1,7 +1,7 @@
|
||||
# HG changeset patch
|
||||
# User Petr Cerny <pcerny@novell.com>
|
||||
# Parent 7308e4a7c1f769f4bbbc90870b849cadd99495a6
|
||||
# Parent fe1932b7223a298863663244accc524d474a9f6d
|
||||
# Parent 6a285f641aa53b55ec6480a8a7945a179e5c1506
|
||||
Bug 634334 - call to the ntlm_auth helper fails
|
||||
|
||||
diff --git a/extensions/auth/nsAuthSambaNTLM.cpp b/extensions/auth/nsAuthSambaNTLM.cpp
|
||||
|
@ -1,7 +1,7 @@
|
||||
# HG changeset patch
|
||||
# Parent 33024abb3c58dab7239e32388df58e14f99defd5
|
||||
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
||||
# Parent 6005a673f4c68ed05294bedcf45d6d962bf303e6
|
||||
# Parent 0cfd693fdbbb0635787f1aeacee2dda43b01c495
|
||||
|
||||
diff --git a/media/gmp-clearkey/0.1/openaes/oaes_lib.c b/media/gmp-clearkey/0.1/openaes/oaes_lib.c
|
||||
--- a/media/gmp-clearkey/0.1/openaes/oaes_lib.c
|
||||
|
@ -13,11 +13,15 @@ home/abuild/rpmbuild/BUILD/obj/dom/bindings/UnifiedBindings16.cpp
|
||||
[ 1636s] c++: internal compiler error: Killed (program cc1plus)
|
||||
[ 1636s] Please submit a full bug report,
|
||||
|
||||
Index: mozilla/python/mozbuild/mozbuild/backend/common.py
|
||||
===================================================================
|
||||
--- mozilla.orig/python/mozbuild/mozbuild/backend/common.py 2016-02-26 17:19:30.331667693 +0100
|
||||
+++ mozilla/python/mozbuild/mozbuild/backend/common.py 2016-02-26 17:19:39.792569676 +0100
|
||||
@@ -333,7 +333,7 @@ class CommonBackend(BuildBackend):
|
||||
diff --git a/python/mozbuild/mozbuild/backend/common.py b/python/mozbuild/mozbuild/backend/common.py
|
||||
--- a/python/mozbuild/mozbuild/backend/common.py
|
||||
+++ b/python/mozbuild/mozbuild/backend/common.py
|
||||
@@ -386,17 +386,17 @@ class CommonBackend(BuildBackend):
|
||||
)
|
||||
self._handle_generated_sources(manager.expected_build_output_files())
|
||||
# Bindings are compiled in unified mode to speed up compilation and
|
||||
# to reduce linker memory size. Note that test bindings are separated
|
||||
# from regular ones so tests bindings aren't shipped.
|
||||
unified_source_mapping = list(group_unified_files(webidls.all_regular_cpp_basenames(),
|
||||
unified_prefix='UnifiedBindings',
|
||||
unified_suffix='cpp',
|
||||
@ -26,3 +30,8 @@ Index: mozilla/python/mozbuild/mozbuild/backend/common.py
|
||||
self._write_unified_files(unified_source_mapping, bindings_dir,
|
||||
poison_windows_h=True)
|
||||
self._handle_webidl_build(bindings_dir, unified_source_mapping,
|
||||
webidls,
|
||||
manager.expected_build_output_files(),
|
||||
manager.GLOBAL_DEFINE_FILES)
|
||||
|
||||
def _write_unified_file(self, unified_file, source_filenames,
|
||||
|
@ -1,313 +0,0 @@
|
||||
# HG changeset patch
|
||||
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
||||
# Parent f6b8a48d89d77c7a3eb13fef234c618943306c2b
|
||||
Replace struct ucontext with ucontext_t
|
||||
|
||||
diff --git a/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.cc b/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.cc
|
||||
--- a/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.cc
|
||||
+++ b/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.cc
|
||||
@@ -35,25 +35,25 @@
|
||||
namespace google_breakpad {
|
||||
|
||||
// Minidump defines register structures which are different from the raw
|
||||
// structures which we get from the kernel. These are platform specific
|
||||
// functions to juggle the ucontext and user structures into minidump format.
|
||||
|
||||
#if defined(__i386__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_ESP];
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_EIP];
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct _libc_fpstate* fp) {
|
||||
const greg_t* regs = uc->uc_mcontext.gregs;
|
||||
|
||||
out->context_flags = MD_CONTEXT_X86_FULL |
|
||||
MD_CONTEXT_X86_FLOATING_POINT;
|
||||
|
||||
out->gs = regs[REG_GS];
|
||||
out->fs = regs[REG_FS];
|
||||
@@ -83,25 +83,25 @@ void UContextReader::FillCPUContext(RawC
|
||||
out->float_save.data_selector = fp->datasel;
|
||||
|
||||
// 8 registers * 10 bytes per register.
|
||||
my_memcpy(out->float_save.register_area, fp->_st, 10 * 8);
|
||||
}
|
||||
|
||||
#elif defined(__x86_64)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_RSP];
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_RIP];
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct _libc_fpstate* fpregs) {
|
||||
const greg_t* regs = uc->uc_mcontext.gregs;
|
||||
|
||||
out->context_flags = MD_CONTEXT_AMD64_FULL;
|
||||
|
||||
out->cs = regs[REG_CSGSFS] & 0xffff;
|
||||
|
||||
out->fs = (regs[REG_CSGSFS] >> 32) & 0xffff;
|
||||
@@ -140,25 +140,25 @@ void UContextReader::FillCPUContext(RawC
|
||||
out->flt_save.mx_csr = fpregs->mxcsr;
|
||||
out->flt_save.mx_csr_mask = fpregs->mxcr_mask;
|
||||
my_memcpy(&out->flt_save.float_registers, &fpregs->_st, 8 * 16);
|
||||
my_memcpy(&out->flt_save.xmm_registers, &fpregs->_xmm, 16 * 16);
|
||||
}
|
||||
|
||||
#elif defined(__ARM_EABI__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.arm_sp;
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.arm_pc;
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
|
||||
out->context_flags = MD_CONTEXT_ARM_FULL;
|
||||
|
||||
out->iregs[0] = uc->uc_mcontext.arm_r0;
|
||||
out->iregs[1] = uc->uc_mcontext.arm_r1;
|
||||
out->iregs[2] = uc->uc_mcontext.arm_r2;
|
||||
out->iregs[3] = uc->uc_mcontext.arm_r3;
|
||||
out->iregs[4] = uc->uc_mcontext.arm_r4;
|
||||
out->iregs[5] = uc->uc_mcontext.arm_r5;
|
||||
@@ -179,25 +179,25 @@ void UContextReader::FillCPUContext(RawC
|
||||
// TODO: fix this after fixing ExceptionHandler
|
||||
out->float_save.fpscr = 0;
|
||||
my_memset(&out->float_save.regs, 0, sizeof(out->float_save.regs));
|
||||
my_memset(&out->float_save.extra, 0, sizeof(out->float_save.extra));
|
||||
}
|
||||
|
||||
#elif defined(__aarch64__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.sp;
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.pc;
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct fpsimd_context* fpregs) {
|
||||
out->context_flags = MD_CONTEXT_ARM64_FULL;
|
||||
|
||||
out->cpsr = static_cast<uint32_t>(uc->uc_mcontext.pstate);
|
||||
for (int i = 0; i < MD_CONTEXT_ARM64_REG_SP; ++i)
|
||||
out->iregs[i] = uc->uc_mcontext.regs[i];
|
||||
out->iregs[MD_CONTEXT_ARM64_REG_SP] = uc->uc_mcontext.sp;
|
||||
out->iregs[MD_CONTEXT_ARM64_REG_PC] = uc->uc_mcontext.pc;
|
||||
@@ -205,25 +205,25 @@ void UContextReader::FillCPUContext(RawC
|
||||
out->float_save.fpsr = fpregs->fpsr;
|
||||
out->float_save.fpcr = fpregs->fpcr;
|
||||
my_memcpy(&out->float_save.regs, &fpregs->vregs,
|
||||
MD_FLOATINGSAVEAREA_ARM64_FPR_COUNT * 16);
|
||||
}
|
||||
|
||||
#elif defined(__mips__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[MD_CONTEXT_MIPS_REG_SP];
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.pc;
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
|
||||
#if _MIPS_SIM == _ABI64
|
||||
out->context_flags = MD_CONTEXT_MIPS64_FULL;
|
||||
#elif _MIPS_SIM == _ABIO32
|
||||
out->context_flags = MD_CONTEXT_MIPS_FULL;
|
||||
#else
|
||||
#error "This mips ABI is currently not supported (n32)"
|
||||
#endif
|
||||
|
||||
diff --git a/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.h b/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.h
|
||||
--- a/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.h
|
||||
+++ b/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.h
|
||||
@@ -36,29 +36,29 @@
|
||||
#include "linux/dump_writer_common/raw_context_cpu.h"
|
||||
#include "common/memory.h"
|
||||
#include "google_breakpad/common/minidump_format.h"
|
||||
|
||||
namespace google_breakpad {
|
||||
|
||||
// Wraps platform-dependent implementations of accessors to ucontext structs.
|
||||
struct UContextReader {
|
||||
- static uintptr_t GetStackPointer(const struct ucontext* uc);
|
||||
+ static uintptr_t GetStackPointer(const ucontext_t* uc);
|
||||
|
||||
- static uintptr_t GetInstructionPointer(const struct ucontext* uc);
|
||||
+ static uintptr_t GetInstructionPointer(const ucontext_t* uc);
|
||||
|
||||
// Juggle a arch-specific ucontext into a minidump format
|
||||
// out: the minidump structure
|
||||
// info: the collection of register structures.
|
||||
#if defined(__i386__) || defined(__x86_64)
|
||||
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct _libc_fpstate* fp);
|
||||
#elif defined(__aarch64__)
|
||||
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct fpsimd_context* fpregs);
|
||||
#else
|
||||
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc);
|
||||
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc);
|
||||
#endif
|
||||
};
|
||||
|
||||
} // namespace google_breakpad
|
||||
|
||||
#endif // CLIENT_LINUX_DUMP_WRITER_COMMON_UCONTEXT_READER_H
|
||||
diff --git a/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.cc b/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.cc
|
||||
--- a/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.cc
|
||||
+++ b/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.cc
|
||||
@@ -434,30 +434,30 @@ bool ExceptionHandler::HandleSignal(int
|
||||
info->si_code == SI_TKILL;
|
||||
if (signal_trusted || (signal_pid_trusted && info->si_pid == getpid())) {
|
||||
sys_prctl(PR_SET_DUMPABLE, 1, 0, 0, 0);
|
||||
}
|
||||
|
||||
// Fill in all the holes in the struct to make Valgrind happy.
|
||||
memset(&g_crash_context_, 0, sizeof(g_crash_context_));
|
||||
memcpy(&g_crash_context_.siginfo, info, sizeof(siginfo_t));
|
||||
- memcpy(&g_crash_context_.context, uc, sizeof(struct ucontext));
|
||||
+ memcpy(&g_crash_context_.context, uc, sizeof(ucontext_t));
|
||||
#if defined(__aarch64__)
|
||||
- struct ucontext* uc_ptr = (struct ucontext*)uc;
|
||||
+ ucontext_t* uc_ptr = (ucontext_t*)uc;
|
||||
struct fpsimd_context* fp_ptr =
|
||||
(struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved;
|
||||
if (fp_ptr->head.magic == FPSIMD_MAGIC) {
|
||||
memcpy(&g_crash_context_.float_state, fp_ptr,
|
||||
sizeof(g_crash_context_.float_state));
|
||||
}
|
||||
#elif !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
// FP state is not part of user ABI on ARM Linux.
|
||||
// In case of MIPS Linux FP state is already part of struct ucontext
|
||||
// and 'float_state' is not a member of CrashContext.
|
||||
- struct ucontext* uc_ptr = (struct ucontext*)uc;
|
||||
+ ucontext_t* uc_ptr = (ucontext_t*)uc;
|
||||
if (uc_ptr->uc_mcontext.fpregs) {
|
||||
memcpy(&g_crash_context_.float_state, uc_ptr->uc_mcontext.fpregs,
|
||||
sizeof(g_crash_context_.float_state));
|
||||
}
|
||||
#endif
|
||||
g_crash_context_.tid = syscall(__NR_gettid);
|
||||
if (crash_handler_ != NULL) {
|
||||
if (crash_handler_(&g_crash_context_, sizeof(g_crash_context_),
|
||||
@@ -471,17 +471,17 @@ bool ExceptionHandler::HandleSignal(int
|
||||
// This is a public interface to HandleSignal that allows the client to
|
||||
// generate a crash dump. This function may run in a compromised context.
|
||||
bool ExceptionHandler::SimulateSignalDelivery(int sig) {
|
||||
siginfo_t siginfo = {};
|
||||
// Mimic a trusted signal to allow tracing the process (see
|
||||
// ExceptionHandler::HandleSignal().
|
||||
siginfo.si_code = SI_USER;
|
||||
siginfo.si_pid = getpid();
|
||||
- struct ucontext context;
|
||||
+ ucontext_t context;
|
||||
getcontext(&context);
|
||||
return HandleSignal(sig, &siginfo, &context);
|
||||
}
|
||||
|
||||
// This function may run in a compromised context: see the top of the file.
|
||||
bool ExceptionHandler::GenerateDump(CrashContext *context) {
|
||||
if (IsOutOfProcess())
|
||||
return crash_generation_client_->RequestDump(context, sizeof(*context));
|
||||
diff --git a/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.h b/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.h
|
||||
--- a/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.h
|
||||
+++ b/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.h
|
||||
@@ -186,17 +186,17 @@ class ExceptionHandler {
|
||||
MinidumpCallback callback,
|
||||
void* callback_context);
|
||||
|
||||
// This structure is passed to minidump_writer.h:WriteMinidump via an opaque
|
||||
// blob. It shouldn't be needed in any user code.
|
||||
struct CrashContext {
|
||||
siginfo_t siginfo;
|
||||
pid_t tid; // the crashing thread.
|
||||
- struct ucontext context;
|
||||
+ ucontext_t context;
|
||||
#if !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
// #ifdef this out because FP state is not part of user ABI for Linux ARM.
|
||||
// In case of MIPS Linux FP state is already part of struct
|
||||
// ucontext so 'float_state' is not required.
|
||||
fpstate_t float_state;
|
||||
#endif
|
||||
};
|
||||
|
||||
diff --git a/toolkit/crashreporter/breakpad-client/linux/microdump_writer/microdump_writer.cc b/toolkit/crashreporter/breakpad-client/linux/microdump_writer/microdump_writer.cc
|
||||
--- a/toolkit/crashreporter/breakpad-client/linux/microdump_writer/microdump_writer.cc
|
||||
+++ b/toolkit/crashreporter/breakpad-client/linux/microdump_writer/microdump_writer.cc
|
||||
@@ -566,17 +566,17 @@ class MicrodumpWriter {
|
||||
++iter) {
|
||||
DumpModule(iter->first, false, 0, iter->second);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void* Alloc(unsigned bytes) { return dumper_->allocator()->Alloc(bytes); }
|
||||
|
||||
- const struct ucontext* const ucontext_;
|
||||
+ const ucontext_t* const ucontext_;
|
||||
#if !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
const google_breakpad::fpstate_t* const float_state_;
|
||||
#endif
|
||||
LinuxDumper* dumper_;
|
||||
const MappingList& mapping_list_;
|
||||
const MicrodumpExtraInfo microdump_extra_info_;
|
||||
char* log_line_;
|
||||
};
|
||||
diff --git a/toolkit/crashreporter/breakpad-client/linux/minidump_writer/minidump_writer.cc b/toolkit/crashreporter/breakpad-client/linux/minidump_writer/minidump_writer.cc
|
||||
--- a/toolkit/crashreporter/breakpad-client/linux/minidump_writer/minidump_writer.cc
|
||||
+++ b/toolkit/crashreporter/breakpad-client/linux/minidump_writer/minidump_writer.cc
|
||||
@@ -1242,17 +1242,17 @@ class MinidumpWriter {
|
||||
return false;
|
||||
return WriteFile(result, buf);
|
||||
}
|
||||
|
||||
// Only one of the 2 member variables below should be set to a valid value.
|
||||
const int fd_; // File descriptor where the minidum should be written.
|
||||
const char* path_; // Path to the file where the minidum should be written.
|
||||
|
||||
- const struct ucontext* const ucontext_; // also from the signal handler
|
||||
+ const ucontext_t* const ucontext_; // also from the signal handler
|
||||
#if !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
const google_breakpad::fpstate_t* const float_state_; // ditto
|
||||
#endif
|
||||
LinuxDumper* dumper_;
|
||||
MinidumpFileWriter minidump_writer_;
|
||||
off_t minidump_size_limit_;
|
||||
MDLocationDescriptor crashing_thread_context_;
|
||||
// Blocks of memory written to the dump. These are all currently
|
@ -1,2 +1,2 @@
|
||||
REV=8fbf05f4b921
|
||||
REV=8af8bd128bd0
|
||||
REPO=http://hg.mozilla.org/releases/mozilla-release
|
||||
|
Loading…
Reference in New Issue
Block a user