forked from pool/MozillaFirefox
Accepting request 453043 from mozilla:Factory
1 OBS-URL: https://build.opensuse.org/request/show/453043 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/MozillaFirefox?expand=0&rev=249
This commit is contained in:
commit
e649bbc0c9
@ -1,3 +1,85 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jan 27 20:25:59 UTC 2017 - astieger@suse.com
|
||||||
|
|
||||||
|
- Mozilla Firefox 51.0.1:
|
||||||
|
- Multiprocess incompatibility did not correctly register with
|
||||||
|
some add-ons (bmo#1333423)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jan 20 13:57:56 UTC 2017 - wr@rosenauer.org
|
||||||
|
|
||||||
|
- update to Firefox 51.0
|
||||||
|
* requires NSPR >= 4.13.1, NSS >= 3.28.1
|
||||||
|
* Added support for FLAC (Free Lossless Audio Codec) playback
|
||||||
|
* Added support for WebGL 2
|
||||||
|
* Added Georgian (ka) and Kabyle (kab) locales
|
||||||
|
* Support saving passwords for forms without 'submit' events
|
||||||
|
* Improved video performance for users without GPU acceleration
|
||||||
|
* Zoom indicator is shown in the URL bar if the zoom level is not
|
||||||
|
at default level
|
||||||
|
* View passwords from the prompt before saving them
|
||||||
|
* Remove Belarusian (be) locale
|
||||||
|
* Use Skia for content rendering (Linux)
|
||||||
|
* MFSA 2017-01
|
||||||
|
CVE-2017-5375: Excessive JIT code allocation allows bypass of
|
||||||
|
ASLR and DEP (bmo#1325200, boo#1021814)
|
||||||
|
CVE-2017-5376: Use-after-free in XSL (bmo#1311687, boo#1021817)
|
||||||
|
CVE-2017-5377: Memory corruption with transforms to create
|
||||||
|
gradients in Skia (bmo#1306883, boo#1021826)
|
||||||
|
CVE-2017-5378: Pointer and frame data leakage of Javascript objects
|
||||||
|
(bmo#1312001, bmo#1330769, boo#1021818)
|
||||||
|
CVE-2017-5379: Use-after-free in Web Animations
|
||||||
|
(bmo#1309198,boo#1021827)
|
||||||
|
CVE-2017-5380: Potential use-after-free during DOM manipulations
|
||||||
|
(bmo#1322107, boo#1021819)
|
||||||
|
CVE-2017-5390: Insecure communication methods in Developer Tools
|
||||||
|
JSON viewer (bmo#1297361, boo#1021820)
|
||||||
|
CVE-2017-5389: WebExtensions can install additional add-ons via
|
||||||
|
modified host requests (bmo#1308688, boo#1021828)
|
||||||
|
CVE-2017-5396: Use-after-free with Media Decoder
|
||||||
|
(bmo#1329403, boo#1021821)
|
||||||
|
CVE-2017-5381: Certificate Viewer exporting can be used to navigate
|
||||||
|
and save to arbitrary filesystem locations
|
||||||
|
(bmo#1017616, boo#1021830)
|
||||||
|
CVE-2017-5382: Feed preview can expose privileged content errors
|
||||||
|
and exceptions (bmo#1295322, boo#1021831)
|
||||||
|
CVE-2017-5383: Location bar spoofing with unicode characters
|
||||||
|
(bmo#1323338, bmo#1324716, boo#1021822)
|
||||||
|
CVE-2017-5384: Information disclosure via Proxy Auto-Config (PAC)
|
||||||
|
(bmo#1255474, boo#1021832)
|
||||||
|
CVE-2017-5385: Data sent in multipart channels ignores referrer-policy
|
||||||
|
response headers (bmo#1295945, boo#1021833)
|
||||||
|
CVE-2017-5386: WebExtensions can use data: protocol to affect other
|
||||||
|
extensions (bmo#1319070, boo#1021823)
|
||||||
|
CVE-2017-5394: Android location bar spoofing using fullscreen and
|
||||||
|
JavaScript events (bmo#1222798)
|
||||||
|
CVE-2017-5391: Content about: pages can load privileged about: pages
|
||||||
|
(bmo#1309310, boo#1021835)
|
||||||
|
CVE-2017-5392: Weak references using multiple threads on weak proxy
|
||||||
|
objects lead to unsafe memory usage (bmo#1293709)
|
||||||
|
(Android only)
|
||||||
|
CVE-2017-5393: Remove addons.mozilla.org CDN from whitelist for
|
||||||
|
mozAddonManager (bmo#1309282, boo#1021837)
|
||||||
|
CVE-2017-5395: Android location bar spoofing during scrolling
|
||||||
|
(bmo#1293463) (Android only)
|
||||||
|
CVE-2017-5387: Disclosure of local file existence through TRACK
|
||||||
|
tag error messages (bmo#1295023, boo#1021839)
|
||||||
|
CVE-2017-5388: WebRTC can be used to generate a large amount of
|
||||||
|
UDP traffic for DDOS attacks
|
||||||
|
(bmo#1281482, boo#1021840)
|
||||||
|
CVE-2017-5374: Memory safety bugs fixed in Firefox 51 (boo#1021841)
|
||||||
|
CVE-2017-5373: Memory safety bugs fixed in Firefox 51 and
|
||||||
|
Firefox ESR 45.7 (boo#1021824)
|
||||||
|
- switch Firefox to Gtk3 for Tumbleweed
|
||||||
|
- removed obsolete patches
|
||||||
|
* mozilla-flex_buffer_overrun.patch
|
||||||
|
- updated RPM locale support tag
|
||||||
|
- improve recognition of LANGUAGE env variable (boo#1017174)
|
||||||
|
- add upstream patch to fix PPC64LE (bmo#1319389)
|
||||||
|
(mozilla-skia-ppc-endianess.patch)
|
||||||
|
- fix build without skia (big endian archs) (bmo#1319374)
|
||||||
|
(mozilla-disable-skia-be.patch)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Dec 12 21:18:41 UTC 2016 - wr@rosenauer.org
|
Mon Dec 12 21:18:41 UTC 2016 - wr@rosenauer.org
|
||||||
|
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
#
|
#
|
||||||
# spec file for package MozillaFirefox
|
# spec file for package MozillaFirefox
|
||||||
#
|
#
|
||||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||||
# 2006-2016 Wolfgang Rosenauer
|
# 2006-2017 Wolfgang Rosenauer
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -18,10 +18,10 @@
|
|||||||
|
|
||||||
|
|
||||||
# changed with every update
|
# changed with every update
|
||||||
%define major 50
|
%define major 51
|
||||||
%define mainver %major.1.0
|
%define mainver %major.0.1
|
||||||
%define update_channel release
|
%define update_channel release
|
||||||
%define releasedate 20161212000000
|
%define releasedate 20170126000000
|
||||||
|
|
||||||
# PIE, full relro (x86_64 for now)
|
# PIE, full relro (x86_64 for now)
|
||||||
%define build_hardened 1
|
%define build_hardened 1
|
||||||
@ -36,6 +36,9 @@
|
|||||||
%define pkgname firefox-dev-edition
|
%define pkgname firefox-dev-edition
|
||||||
%define appname Firefox Developer Edition
|
%define appname Firefox Developer Edition
|
||||||
%endif
|
%endif
|
||||||
|
%if 0%{?suse_version} > 1320
|
||||||
|
%define firefox_use_gtk3 1
|
||||||
|
%endif
|
||||||
%define progdir %{_prefix}/%_lib/%{progname}
|
%define progdir %{_prefix}/%_lib/%{progname}
|
||||||
%define gnome_dir %{_prefix}
|
%define gnome_dir %{_prefix}
|
||||||
%define desktop_file_name %{progname}
|
%define desktop_file_name %{progname}
|
||||||
@ -74,8 +77,8 @@ BuildRequires: libiw-devel
|
|||||||
BuildRequires: libnotify-devel
|
BuildRequires: libnotify-devel
|
||||||
BuildRequires: libproxy-devel
|
BuildRequires: libproxy-devel
|
||||||
BuildRequires: makeinfo
|
BuildRequires: makeinfo
|
||||||
BuildRequires: mozilla-nspr-devel >= 4.12
|
BuildRequires: mozilla-nspr-devel >= 4.13.1
|
||||||
BuildRequires: mozilla-nss-devel >= 3.26.2
|
BuildRequires: mozilla-nss-devel >= 3.28.1
|
||||||
BuildRequires: nss-shared-helper-devel
|
BuildRequires: nss-shared-helper-devel
|
||||||
BuildRequires: python-devel
|
BuildRequires: python-devel
|
||||||
BuildRequires: startup-notification-devel
|
BuildRequires: startup-notification-devel
|
||||||
@ -147,12 +150,13 @@ Patch11: mozilla-reduce-files-per-UnifiedBindings.patch
|
|||||||
Patch13: mozilla-check_return.patch
|
Patch13: mozilla-check_return.patch
|
||||||
Patch14: mozilla-skia-overflow.patch
|
Patch14: mozilla-skia-overflow.patch
|
||||||
Patch17: mozilla-binutils-visibility.patch
|
Patch17: mozilla-binutils-visibility.patch
|
||||||
|
Patch18: mozilla-skia-ppc-endianess.patch
|
||||||
|
Patch19: mozilla-disable-skia-be.patch
|
||||||
# Firefox/browser
|
# Firefox/browser
|
||||||
Patch101: firefox-kde.patch
|
Patch101: firefox-kde.patch
|
||||||
Patch102: firefox-no-default-ualocale.patch
|
Patch102: firefox-no-default-ualocale.patch
|
||||||
Patch103: firefox-branded-icons.patch
|
Patch103: firefox-branded-icons.patch
|
||||||
# hotfix
|
# hotfix
|
||||||
Patch150: mozilla-flex_buffer_overrun.patch
|
|
||||||
Patch200: mozilla-aarch64-startup-crash.patch
|
Patch200: mozilla-aarch64-startup-crash.patch
|
||||||
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
@ -203,7 +207,7 @@ of %{appname}.
|
|||||||
%package translations-other
|
%package translations-other
|
||||||
Summary: Extra translations for %{appname}
|
Summary: Extra translations for %{appname}
|
||||||
Group: System/Localization
|
Group: System/Localization
|
||||||
Provides: locale(%{name}:ach;af;an;as;ast;az;be;bg;bn_BD;bn_IN;br;bs;cak;cy;dsb;en_ZA;eo;es_MX;et;eu;fa;ff;fy_NL;ga_IE;gd;gl;gn;gu_IN;he;hi_IN;hr;hsb;hy_AM;id;is;kk;km;kn;lij;lt;lv;mai;mk;ml;mr;ms;nn_NO;or;pa_IN;rm;ro;si;sk;sl;son;sq;sr;ta;te;th;tr;uk;uz;vi;xh)
|
Provides: locale(%{name}:ach;af;an;as;ast;az;bg;bn_BD;bn_IN;br;bs;cak;cy;dsb;en_ZA;eo;es_MX;et;eu;fa;ff;fy_NL;ga_IE;gd;gl;gn;gu_IN;he;hi_IN;hr;hsb;hy_AM;id;is;ka;kab;kk;km;kn;lij;lt;lv;mai;mk;ml;mr;ms;nn_NO;or;pa_IN;rm;ro;si;sk;sl;son;sq;sr;ta;te;th;tr;uk;uz;vi;xh)
|
||||||
Requires: %{name} = %{version}
|
Requires: %{name} = %{version}
|
||||||
Obsoletes: %{name}-translations < %{version}-%{release}
|
Obsoletes: %{name}-translations < %{version}-%{release}
|
||||||
|
|
||||||
@ -262,11 +266,12 @@ cd $RPM_BUILD_DIR/mozilla
|
|||||||
%patch13 -p1
|
%patch13 -p1
|
||||||
%patch14 -p1
|
%patch14 -p1
|
||||||
%patch17 -p1
|
%patch17 -p1
|
||||||
|
%patch18 -p1
|
||||||
|
%patch19 -p1
|
||||||
# Firefox
|
# Firefox
|
||||||
%patch101 -p1
|
%patch101 -p1
|
||||||
%patch102 -p1
|
%patch102 -p1
|
||||||
%patch103 -p1
|
%patch103 -p1
|
||||||
%patch150 -p1
|
|
||||||
%patch200 -p1
|
%patch200 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
@ -397,9 +402,9 @@ install -m 644 %{SOURCE9} %{buildroot}%{progdir}/browser/defaults/preferences/fi
|
|||||||
%if %localize
|
%if %localize
|
||||||
rm -f %{_tmppath}/translations.*
|
rm -f %{_tmppath}/translations.*
|
||||||
touch %{_tmppath}/translations.{common,other}
|
touch %{_tmppath}/translations.{common,other}
|
||||||
for locale in $(awk '{ print $1; }' ../mozilla/browser/locales/shipped-locales); do
|
for locale in $(awk '{ print $1; }' %{SOURCE17}); do
|
||||||
case $locale in
|
case $locale in
|
||||||
ja-JP-mac|en-US)
|
ja-JP-mac|en-US|'')
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
pushd $RPM_BUILD_DIR/compare-locales
|
pushd $RPM_BUILD_DIR/compare-locales
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
version https://git-lfs.github.com/spec/v1
|
||||||
oid sha256:117aadfa96671239dd02fd11b3cfcd219fb5b3637a2400f532169dbd38d1729c
|
oid sha256:39f4acd60561c280126c6663b90027674e56c69720c8cd8a26e5072bd2023878
|
||||||
size 28352
|
size 28492
|
||||||
|
@ -7,8 +7,8 @@
|
|||||||
|
|
||||||
CHANNEL="release"
|
CHANNEL="release"
|
||||||
BRANCH="releases/mozilla-$CHANNEL"
|
BRANCH="releases/mozilla-$CHANNEL"
|
||||||
RELEASE_TAG="8612c3320053b796678921f8f23358e3e9df997e"
|
RELEASE_TAG="327e081221b064b05a302d7877c6e4be2949a617"
|
||||||
VERSION="50.1.0"
|
VERSION="51.0.1"
|
||||||
|
|
||||||
# mozilla
|
# mozilla
|
||||||
if [ -d mozilla ]; then
|
if [ -d mozilla ]; then
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:0d45f1d01b6375aa3323f8f457d7ee85c5bf7bb9acdfdd51a366d808c2f10d04
|
|
||||||
size 206009156
|
|
3
firefox-51.0.1-source.tar.xz
Normal file
3
firefox-51.0.1-source.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:b8abc0d939bcf01a610440864408a43a96db993aa2052249daec3a29223a3d23
|
||||||
|
size 213490132
|
@ -1,11 +1,11 @@
|
|||||||
# HG changeset patch
|
# HG changeset patch
|
||||||
# Parent 2cb2f829aabd7e3efaa973a0a8cf99aca9605bdc
|
# Parent 2cae514c05c8836ca5b69884d3a07998a5d53e8b
|
||||||
|
|
||||||
diff --git a/browser/base/content/browser-kde.xul b/browser/base/content/browser-kde.xul
|
diff --git a/browser/base/content/browser-kde.xul b/browser/base/content/browser-kde.xul
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/browser/base/content/browser-kde.xul
|
+++ b/browser/base/content/browser-kde.xul
|
||||||
@@ -0,0 +1,1200 @@
|
@@ -0,0 +1,1119 @@
|
||||||
+#filter substitution
|
+#filter substitution
|
||||||
+<?xml version="1.0"?>
|
+<?xml version="1.0"?>
|
||||||
+# -*- Mode: HTML -*-
|
+# -*- Mode: HTML -*-
|
||||||
@ -160,14 +160,7 @@ new file mode 100644
|
|||||||
+ noautofocus="true"
|
+ noautofocus="true"
|
||||||
+ hidden="true"
|
+ hidden="true"
|
||||||
+ flip="none"
|
+ flip="none"
|
||||||
+ level="parent">
|
+ level="parent"/>
|
||||||
+#ifdef NIGHTLY_BUILD
|
|
||||||
+ <hbox id="urlbar-search-footer" flex="1" align="stretch" pack="end">
|
|
||||||
+ <button id="urlbar-search-settings" label="&changeSearchSettings.button;"
|
|
||||||
+ oncommand="BrowserUITelemetry.countSearchSettingsEvent('urlbar'); openPreferences('paneSearch')"/>
|
|
||||||
+ </hbox>
|
|
||||||
+#endif
|
|
||||||
+ </panel>
|
|
||||||
+
|
+
|
||||||
+ <!-- for select dropdowns. The menupopup is what shows the list of options,
|
+ <!-- for select dropdowns. The menupopup is what shows the list of options,
|
||||||
+ and the popuponly menulist makes things like the menuactive attributes
|
+ and the popuponly menulist makes things like the menuactive attributes
|
||||||
@ -175,7 +168,7 @@ new file mode 100644
|
|||||||
+ popuponly menulist to be its immediate parent. -->
|
+ popuponly menulist to be its immediate parent. -->
|
||||||
+ <menulist popuponly="true" id="ContentSelectDropdown" hidden="true">
|
+ <menulist popuponly="true" id="ContentSelectDropdown" hidden="true">
|
||||||
+ <menupopup rolluponmousewheel="true"
|
+ <menupopup rolluponmousewheel="true"
|
||||||
+ activateontab="true"
|
+ activateontab="true" position="after_start"
|
||||||
+#ifdef XP_WIN
|
+#ifdef XP_WIN
|
||||||
+ consumeoutsideclicks="false" ignorekeys="handled"
|
+ consumeoutsideclicks="false" ignorekeys="handled"
|
||||||
+#endif
|
+#endif
|
||||||
@ -192,6 +185,7 @@ new file mode 100644
|
|||||||
+ orient="vertical"
|
+ orient="vertical"
|
||||||
+ ignorekeys="true"
|
+ ignorekeys="true"
|
||||||
+ hidden="true"
|
+ hidden="true"
|
||||||
|
+ tabspecific="true"
|
||||||
+ onpopupshown="StarUI.panelShown(event);"
|
+ onpopupshown="StarUI.panelShown(event);"
|
||||||
+ aria-labelledby="editBookmarkPanelTitle">
|
+ aria-labelledby="editBookmarkPanelTitle">
|
||||||
+ <row id="editBookmarkPanelHeader" align="center" hidden="true">
|
+ <row id="editBookmarkPanelHeader" align="center" hidden="true">
|
||||||
@ -286,23 +280,6 @@ new file mode 100644
|
|||||||
+ <hbox id="share-container" flex="1"/>
|
+ <hbox id="share-container" flex="1"/>
|
||||||
+ </panel>
|
+ </panel>
|
||||||
+
|
+
|
||||||
+ <panel id="social-notification-panel"
|
|
||||||
+ class="social-panel"
|
|
||||||
+ type="arrow"
|
|
||||||
+ hidden="true"
|
|
||||||
+ noautofocus="true"/>
|
|
||||||
+ <panel id="social-flyout-panel"
|
|
||||||
+ class="social-panel"
|
|
||||||
+ onpopupshown="SocialFlyout.onShown()"
|
|
||||||
+ onpopuphidden="SocialFlyout.onHidden()"
|
|
||||||
+ side="right"
|
|
||||||
+ type="arrow"
|
|
||||||
+ hidden="true"
|
|
||||||
+ flip="slide"
|
|
||||||
+ rolluponmousewheel="true"
|
|
||||||
+ noautofocus="true"
|
|
||||||
+ position="topcenter topright"/>
|
|
||||||
+
|
|
||||||
+ <menupopup id="toolbar-context-menu"
|
+ <menupopup id="toolbar-context-menu"
|
||||||
+ onpopupshowing="onViewToolbarsPopupShowing(event, document.getElementById('viewToolbarsMenuSeparator'));">
|
+ onpopupshowing="onViewToolbarsPopupShowing(event, document.getElementById('viewToolbarsMenuSeparator'));">
|
||||||
+ <menuitem oncommand="gCustomizeMode.addToPanel(document.popupNode)"
|
+ <menuitem oncommand="gCustomizeMode.addToPanel(document.popupNode)"
|
||||||
@ -718,66 +695,54 @@ new file mode 100644
|
|||||||
+ <image id="identity-icon"
|
+ <image id="identity-icon"
|
||||||
+ consumeanchor="identity-box"
|
+ consumeanchor="identity-box"
|
||||||
+ onclick="PageProxyClickHandler(event);"/>
|
+ onclick="PageProxyClickHandler(event);"/>
|
||||||
+ <box id="blocked-permissions-container" align="center" tooltiptext="">
|
+ <image id="sharing-icon" mousethrough="always"/>
|
||||||
+ <image data-permission-id="geo" class="notification-anchor-icon geo-icon blocked" role="button"
|
+ <box id="blocked-permissions-container" align="center">
|
||||||
+ aria-label="&urlbar.geolocationNotificationAnchor.label;"/>
|
+ <image data-permission-id="geo" class="blocked-permission-icon geo-icon" role="button"
|
||||||
+ <image data-permission-id="desktop-notification" class="notification-anchor-icon desktop-notification-icon blocked" role="button"
|
+ tooltiptext="&urlbar.geolocationBlocked.tooltip;"/>
|
||||||
+ aria-label="&urlbar.webNotsNotificationAnchor3.label;"/>
|
+ <image data-permission-id="desktop-notification" class="blocked-permission-icon desktop-notification-icon" role="button"
|
||||||
+ <image data-permission-id="camera" class="notification-anchor-icon camera-icon blocked" role="button"
|
+ tooltiptext="&urlbar.webNotificationsBlocked.tooltip;"/>
|
||||||
+ aria-label="&urlbar.webRTCShareDevicesNotificationAnchor.label;"/>
|
+ <image data-permission-id="camera" class="blocked-permission-icon camera-icon" role="button"
|
||||||
+ <image data-permission-id="indexedDB" class="notification-anchor-icon indexedDB-icon blocked" role="button"
|
+ tooltiptext="&urlbar.cameraBlocked.tooltip;"/>
|
||||||
+ aria-label="&urlbar.indexedDBNotificationAnchor.label;"/>
|
+ <image data-permission-id="indexedDB" class="blocked-permission-icon indexedDB-icon" role="button"
|
||||||
+ <image data-permission-id="microphone" class="notification-anchor-icon microphone-icon blocked" role="button"
|
+ tooltiptext="&urlbar.indexedDBBlocked.tooltip;"/>
|
||||||
+ aria-label="&urlbar.webRTCShareMicrophoneNotificationAnchor.label;"/>
|
+ <image data-permission-id="microphone" class="blocked-permission-icon microphone-icon" role="button"
|
||||||
+ <image data-permission-id="screen" class="notification-anchor-icon screen-icon blocked" role="button"
|
+ tooltiptext="&urlbar.microphoneBlocked.tooltip;"/>
|
||||||
+ aria-label="&urlbar.webRTCShareScreenNotificationAnchor.label;"/>
|
+ <image data-permission-id="screen" class="blocked-permission-icon screen-icon" role="button"
|
||||||
+ <image data-permission-id="pointerLock" class="notification-anchor-icon pointerLock-icon blocked" role="button"
|
+ tooltiptext="&urlbar.screenBlocked.tooltip;"/>
|
||||||
+ aria-label="&urlbar.pointerLockNotificationAnchor.label;"/>
|
|
||||||
+ </box>
|
+ </box>
|
||||||
+ <box id="notification-popup-box"
|
+ <box id="notification-popup-box"
|
||||||
+ hidden="true"
|
+ hidden="true"
|
||||||
+ tooltiptext=""
|
|
||||||
+ onmouseover="document.getElementById('identity-icon').classList.add('no-hover');"
|
+ onmouseover="document.getElementById('identity-icon').classList.add('no-hover');"
|
||||||
+ onmouseout="document.getElementById('identity-icon').classList.remove('no-hover');"
|
+ onmouseout="document.getElementById('identity-icon').classList.remove('no-hover');"
|
||||||
+ align="center">
|
+ align="center">
|
||||||
+ <image id="default-notification-icon" class="notification-anchor-icon" role="button"
|
+ <image id="default-notification-icon" class="notification-anchor-icon" role="button"
|
||||||
+ aria-label="&urlbar.defaultNotificationAnchor.label;"/>
|
+ tooltiptext="&urlbar.defaultNotificationAnchor.tooltip;"/>
|
||||||
+ <image id="geo-notification-icon" class="notification-anchor-icon geo-icon" role="button"
|
+ <image id="geo-notification-icon" class="notification-anchor-icon geo-icon" role="button"
|
||||||
+ aria-label="&urlbar.geolocationNotificationAnchor.label;"/>
|
+ tooltiptext="&urlbar.geolocationNotificationAnchor.tooltip;"/>
|
||||||
+ <image id="addons-notification-icon" class="notification-anchor-icon install-icon" role="button"
|
+ <image id="addons-notification-icon" class="notification-anchor-icon install-icon" role="button"
|
||||||
+ aria-label="&urlbar.addonsNotificationAnchor.label;"/>
|
+ tooltiptext="&urlbar.addonsNotificationAnchor.tooltip;"/>
|
||||||
+ <image id="indexedDB-notification-icon" class="notification-anchor-icon indexedDB-icon" role="button"
|
+ <image id="indexedDB-notification-icon" class="notification-anchor-icon indexedDB-icon" role="button"
|
||||||
+ aria-label="&urlbar.indexedDBNotificationAnchor.label;"/>
|
+ tooltiptext="&urlbar.indexedDBNotificationAnchor.tooltip;"/>
|
||||||
+ <image id="login-fill-notification-icon" class="notification-anchor-icon login-icon" role="button"
|
|
||||||
+ aria-label="&urlbar.loginFillNotificationAnchor.label;"/>
|
|
||||||
+ <image id="password-notification-icon" class="notification-anchor-icon login-icon" role="button"
|
+ <image id="password-notification-icon" class="notification-anchor-icon login-icon" role="button"
|
||||||
+ aria-label="&urlbar.passwordNotificationAnchor.label;"/>
|
+ tooltiptext="&urlbar.passwordNotificationAnchor.tooltip;"/>
|
||||||
+ <image id="plugins-notification-icon" class="notification-anchor-icon plugin-icon" role="button"
|
+ <image id="plugins-notification-icon" class="notification-anchor-icon plugin-icon" role="button"
|
||||||
+ aria-label="&urlbar.pluginsNotificationAnchor.label;"/>
|
+ tooltiptext="&urlbar.pluginsNotificationAnchor.tooltip;"/>
|
||||||
+ <image id="web-notifications-notification-icon" class="notification-anchor-icon desktop-notification-icon" role="button"
|
+ <image id="web-notifications-notification-icon" class="notification-anchor-icon desktop-notification-icon" role="button"
|
||||||
+ aria-label="&urlbar.webNotsNotificationAnchor3.label;"/>
|
+ tooltiptext="&urlbar.webNotificationAnchor.tooltip;"/>
|
||||||
+ <image id="webRTC-shareDevices-notification-icon" class="notification-anchor-icon camera-icon" role="button"
|
+ <image id="webRTC-shareDevices-notification-icon" class="notification-anchor-icon camera-icon" role="button"
|
||||||
+ aria-label="&urlbar.webRTCShareDevicesNotificationAnchor.label;"/>
|
+ tooltiptext="&urlbar.webRTCShareDevicesNotificationAnchor.tooltip;"/>
|
||||||
+ <image id="webRTC-sharingDevices-notification-icon" class="notification-anchor-icon camera-icon in-use" role="button"
|
|
||||||
+ aria-label="&urlbar.webRTCSharingDevicesNotificationAnchor.label;"/>
|
|
||||||
+ <image id="webRTC-shareMicrophone-notification-icon" class="notification-anchor-icon microphone-icon" role="button"
|
+ <image id="webRTC-shareMicrophone-notification-icon" class="notification-anchor-icon microphone-icon" role="button"
|
||||||
+ aria-label="&urlbar.webRTCShareMicrophoneNotificationAnchor.label;"/>
|
+ tooltiptext="&urlbar.webRTCShareMicrophoneNotificationAnchor.tooltip;"/>
|
||||||
+ <image id="webRTC-sharingMicrophone-notification-icon" class="notification-anchor-icon microphone-icon in-use" role="button"
|
|
||||||
+ aria-label="&urlbar.webRTCSharingMicrophoneNotificationAnchor.label;"/>
|
|
||||||
+ <image id="webRTC-shareScreen-notification-icon" class="notification-anchor-icon screen-icon" role="button"
|
+ <image id="webRTC-shareScreen-notification-icon" class="notification-anchor-icon screen-icon" role="button"
|
||||||
+ aria-label="&urlbar.webRTCShareScreenNotificationAnchor.label;"/>
|
+ tooltiptext="&urlbar.webRTCShareScreenNotificationAnchor.tooltip;"/>
|
||||||
+ <image id="webRTC-sharingScreen-notification-icon" class="notification-anchor-icon screen-icon in-use" role="button"
|
|
||||||
+ aria-label="&urlbar.webRTCSharingScreenNotificationAnchor.label;"/>
|
|
||||||
+ <image id="pointerLock-notification-icon" class="notification-anchor-icon pointerLock-icon" role="button"
|
|
||||||
+ aria-label="&urlbar.pointerLockNotificationAnchor.label;"/>
|
|
||||||
+ <image id="servicesInstall-notification-icon" class="notification-anchor-icon service-icon" role="button"
|
+ <image id="servicesInstall-notification-icon" class="notification-anchor-icon service-icon" role="button"
|
||||||
+ aria-label="&urlbar.servicesNotificationAnchor.label;"/>
|
+ tooltiptext="&urlbar.servicesNotificationAnchor.tooltip;"/>
|
||||||
+ <image id="translate-notification-icon" class="notification-anchor-icon translation-icon" role="button"
|
+ <image id="translate-notification-icon" class="notification-anchor-icon translation-icon" role="button"
|
||||||
+ aria-label="&urlbar.translateNotificationAnchor.label;"/>
|
+ tooltiptext="&urlbar.translateNotificationAnchor.tooltip;"/>
|
||||||
+ <image id="translated-notification-icon" class="notification-anchor-icon translation-icon in-use" role="button"
|
+ <image id="translated-notification-icon" class="notification-anchor-icon translation-icon in-use" role="button"
|
||||||
+ aria-label="&urlbar.translatedNotificationAnchor.label;"/>
|
+ tooltiptext="&urlbar.translatedNotificationAnchor.tooltip;"/>
|
||||||
+ <image id="eme-notification-icon" class="notification-anchor-icon drm-icon" role="button"
|
+ <image id="eme-notification-icon" class="notification-anchor-icon drm-icon" role="button"
|
||||||
+ aria-label="&urlbar.emeNotificationAnchor.label;"/>
|
+ tooltiptext="&urlbar.emeNotificationAnchor.tooltip;"/>
|
||||||
+ </box>
|
+ </box>
|
||||||
+ <image id="tracking-protection-icon"/>
|
+ <image id="tracking-protection-icon"/>
|
||||||
+ <image id="connection-icon"/>
|
+ <image id="connection-icon"/>
|
||||||
@ -799,6 +764,10 @@ new file mode 100644
|
|||||||
+ class="urlbar-icon"
|
+ class="urlbar-icon"
|
||||||
+ hidden="true"
|
+ hidden="true"
|
||||||
+ onclick="ReaderParent.buttonClick(event);"/>
|
+ onclick="ReaderParent.buttonClick(event);"/>
|
||||||
|
+ <toolbarbutton id="urlbar-zoom-button"
|
||||||
|
+ onclick="FullZoom.reset();"
|
||||||
|
+ tooltiptext="&urlbar.zoomReset.tooltip;"
|
||||||
|
+ hidden="true"/>
|
||||||
+ </hbox>
|
+ </hbox>
|
||||||
+ <hbox id="userContext-icons" hidden="true">
|
+ <hbox id="userContext-icons" hidden="true">
|
||||||
+ <label id="userContext-label"/>
|
+ <label id="userContext-label"/>
|
||||||
@ -1080,7 +1049,7 @@ new file mode 100644
|
|||||||
+ <image id="sidebar-throbber"/>
|
+ <image id="sidebar-throbber"/>
|
||||||
+ <toolbarbutton class="close-icon tabbable" tooltiptext="&sidebarCloseButton.tooltip;" oncommand="SidebarUI.hide();"/>
|
+ <toolbarbutton class="close-icon tabbable" tooltiptext="&sidebarCloseButton.tooltip;" oncommand="SidebarUI.hide();"/>
|
||||||
+ </sidebarheader>
|
+ </sidebarheader>
|
||||||
+ <browser id="sidebar" flex="1" autoscroll="false" disablehistory="true"
|
+ <browser id="sidebar" flex="1" autoscroll="false" disablehistory="true" disablefullscreen="true"
|
||||||
+ style="min-width: 14em; width: 18em; max-width: 36em;" tooltip="aHTMLTooltip"/>
|
+ style="min-width: 14em; width: 18em; max-width: 36em;" tooltip="aHTMLTooltip"/>
|
||||||
+ </vbox>
|
+ </vbox>
|
||||||
+
|
+
|
||||||
@ -1093,56 +1062,6 @@ new file mode 100644
|
|||||||
+ contentcontextmenu="contentAreaContextMenu"
|
+ contentcontextmenu="contentAreaContextMenu"
|
||||||
+ autocompletepopup="PopupAutoComplete"
|
+ autocompletepopup="PopupAutoComplete"
|
||||||
+ selectmenulist="ContentSelectDropdown"/>
|
+ selectmenulist="ContentSelectDropdown"/>
|
||||||
+ <chatbar id="pinnedchats" layer="true" mousethrough="always" hidden="true"/>
|
|
||||||
+ </vbox>
|
|
||||||
+ <splitter id="social-sidebar-splitter"
|
|
||||||
+ class="chromeclass-extrachrome sidebar-splitter"
|
|
||||||
+ observes="socialSidebarBroadcaster"/>
|
|
||||||
+ <vbox id="social-sidebar-box"
|
|
||||||
+ class="chromeclass-extrachrome"
|
|
||||||
+ observes="socialSidebarBroadcaster"
|
|
||||||
+ persist="width">
|
|
||||||
+
|
|
||||||
+ <sidebarheader id="social-sidebar-header" class="sidebar-header" align="center">
|
|
||||||
+ <image id="social-sidebar-favico"/>
|
|
||||||
+ <label id="social-sidebar-title" class="sidebar-title" persist="value" flex="1" crop="end" control="sidebar"/>
|
|
||||||
+ <toolbarbutton id="social-sidebar-button"
|
|
||||||
+ class="toolbarbutton-1"
|
|
||||||
+ type="menu">
|
|
||||||
+ <menupopup id="social-statusarea-popup" position="after_end">
|
|
||||||
+ <menuitem class="social-toggle-sidebar-menuitem"
|
|
||||||
+ type="checkbox"
|
|
||||||
+ autocheck="false"
|
|
||||||
+ command="Social:ToggleSidebar"
|
|
||||||
+ label="&social.toggleSidebar.label;"
|
|
||||||
+ accesskey="&social.toggleSidebar.accesskey;"/>
|
|
||||||
+ <menuitem class="social-toggle-notifications-menuitem"
|
|
||||||
+ type="checkbox"
|
|
||||||
+ autocheck="false"
|
|
||||||
+ command="Social:ToggleNotifications"
|
|
||||||
+ label="&social.toggleNotifications.label;"
|
|
||||||
+ accesskey="&social.toggleNotifications.accesskey;"/>
|
|
||||||
+ <menuseparator/>
|
|
||||||
+ <menuseparator class="social-provider-menu" hidden="true"/>
|
|
||||||
+ <menuitem class="social-addons-menuitem" command="Social:Addons"
|
|
||||||
+ label="&social.addons.label;"/>
|
|
||||||
+ <menuitem label="&social.learnMore.label;"
|
|
||||||
+ accesskey="&social.learnMore.accesskey;"
|
|
||||||
+ oncommand="SocialUI.showLearnMore();"/>
|
|
||||||
+ </menupopup>
|
|
||||||
+ </toolbarbutton>
|
|
||||||
+ </sidebarheader>
|
|
||||||
+
|
|
||||||
+ <browser id="social-sidebar-browser"
|
|
||||||
+ type="content"
|
|
||||||
+ context="contentAreaContextMenu"
|
|
||||||
+ message="true"
|
|
||||||
+ messagemanagergroup="social"
|
|
||||||
+ disableglobalhistory="true"
|
|
||||||
+ tooltip="aHTMLTooltip"
|
|
||||||
+ popupnotificationanchor="social-sidebar-favico"
|
|
||||||
+ flex="1"
|
|
||||||
+ style="min-width: 14em; width: 18em; max-width: 36em;"/>
|
|
||||||
+ </vbox>
|
+ </vbox>
|
||||||
+ <vbox id="browser-border-end" hidden="true" layer="true"/>
|
+ <vbox id="browser-border-end" hidden="true" layer="true"/>
|
||||||
+ </hbox>
|
+ </hbox>
|
||||||
@ -1291,57 +1210,57 @@ 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
|
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
|
--- a/browser/components/preferences/in-content/main.js
|
||||||
+++ b/browser/components/preferences/in-content/main.js
|
+++ b/browser/components/preferences/in-content/main.js
|
||||||
@@ -23,16 +23,22 @@ var gMainPane = {
|
@@ -33,16 +33,22 @@ var gMainPane = {
|
||||||
init: function ()
|
if (AppConstants.platform == "win") {
|
||||||
{
|
// In Windows 8 we launch the control panel since it's the only
|
||||||
function setEventListener(aId, aEventType, aCallback)
|
// way to get all file type association prefs. So we don't know
|
||||||
{
|
// when the user will select the default. We refresh here periodically
|
||||||
document.getElementById(aId)
|
// in case the default changes. On other Windows OS's defaults can also
|
||||||
.addEventListener(aEventType, aCallback.bind(gMainPane));
|
// be set while the prefs are open.
|
||||||
}
|
window.setInterval(this.updateSetDefaultBrowser.bind(this), 1000);
|
||||||
|
}
|
||||||
|
+
|
||||||
+ var env = Components.classes["@mozilla.org/process/environment;1"]
|
+ var env = Components.classes["@mozilla.org/process/environment;1"]
|
||||||
+ .getService(Components.interfaces.nsIEnvironment);
|
+ .getService(Components.interfaces.nsIEnvironment);
|
||||||
+ var kde_session = 0;
|
+ var kde_session = 0;
|
||||||
+ if (env.get('KDE_FULL_SESSION') == "true")
|
+ if (env.get('KDE_FULL_SESSION') == "true")
|
||||||
+ kde_session = 1;
|
+ kde_session = 1;
|
||||||
+
|
|
||||||
#ifdef HAVE_SHELL_SERVICE
|
|
||||||
this.updateSetDefaultBrowser();
|
|
||||||
#ifdef XP_WIN
|
|
||||||
// In Windows 8 we launch the control panel since it's the only
|
|
||||||
// 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.
|
|
||||||
@@ -703,16 +709,27 @@ var gMainPane = {
|
|
||||||
let alwaysCheckPref = document.getElementById("browser.shell.checkDefaultBrowser");
|
|
||||||
alwaysCheckPref.value = true;
|
|
||||||
|
|
||||||
let shellSvc = getShellService();
|
|
||||||
if (!shellSvc)
|
|
||||||
return;
|
|
||||||
try {
|
|
||||||
shellSvc.setDefaultBrowser(true, false);
|
|
||||||
+ if (kde_session == 1) {
|
|
||||||
+ var shellObj = Components.classes["@mozilla.org/file/local;1"]
|
|
||||||
+ .createInstance(Components.interfaces.nsILocalFile);
|
|
||||||
+ shellObj.initWithPath("/usr/bin/kwriteconfig");
|
|
||||||
+ var process = Components.classes["@mozilla.org/process/util;1"]
|
|
||||||
+ .createInstance(Components.interfaces.nsIProcess);
|
|
||||||
+ process.init(shellObj);
|
|
||||||
+ var args = ["--file", "kdeglobals", "--group", "General", "--key",
|
|
||||||
+ "BrowserApplication", "firefox"];
|
|
||||||
+ process.run(false, args, args.length);
|
|
||||||
+ }
|
|
||||||
} catch (ex) {
|
|
||||||
Cu.reportError(ex);
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
let selectedIndex = shellSvc.isDefaultBrowser(false, true) ? 1 : 0;
|
// set up the "use current page" label-changing listener
|
||||||
document.getElementById("setDefaultPane").selectedIndex = selectedIndex;
|
this._updateUseCurrentButton();
|
||||||
}
|
window.addEventListener("focus", this._updateUseCurrentButton.bind(this), false);
|
||||||
|
|
||||||
|
this.updateBrowserStartupLastSession();
|
||||||
|
|
||||||
|
@@ -704,16 +710,27 @@ var gMainPane = {
|
||||||
|
let alwaysCheckPref = document.getElementById("browser.shell.checkDefaultBrowser");
|
||||||
|
alwaysCheckPref.value = true;
|
||||||
|
|
||||||
|
let shellSvc = getShellService();
|
||||||
|
if (!shellSvc)
|
||||||
|
return;
|
||||||
|
try {
|
||||||
|
shellSvc.setDefaultBrowser(true, false);
|
||||||
|
+ if (kde_session == 1) {
|
||||||
|
+ var shellObj = Components.classes["@mozilla.org/file/local;1"]
|
||||||
|
+ .createInstance(Components.interfaces.nsILocalFile);
|
||||||
|
+ shellObj.initWithPath("/usr/bin/kwriteconfig");
|
||||||
|
+ var process = Components.classes["@mozilla.org/process/util;1"]
|
||||||
|
+ .createInstance(Components.interfaces.nsIProcess);
|
||||||
|
+ process.init(shellObj);
|
||||||
|
+ var args = ["--file", "kdeglobals", "--group", "General", "--key",
|
||||||
|
+ "BrowserApplication", "firefox"];
|
||||||
|
+ process.run(false, args, args.length);
|
||||||
|
+ }
|
||||||
|
} catch (ex) {
|
||||||
|
Cu.reportError(ex);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
let selectedIndex = shellSvc.isDefaultBrowser(false, true) ? 1 : 0;
|
||||||
|
document.getElementById("setDefaultPane").selectedIndex = selectedIndex;
|
||||||
|
}
|
||||||
diff --git a/browser/components/shell/moz.build b/browser/components/shell/moz.build
|
diff --git a/browser/components/shell/moz.build b/browser/components/shell/moz.build
|
||||||
--- a/browser/components/shell/moz.build
|
--- a/browser/components/shell/moz.build
|
||||||
+++ b/browser/components/shell/moz.build
|
+++ b/browser/components/shell/moz.build
|
||||||
@ -1657,7 +1576,7 @@ new file mode 100644
|
|||||||
diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
|
diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
|
||||||
--- a/browser/installer/package-manifest.in
|
--- a/browser/installer/package-manifest.in
|
||||||
+++ b/browser/installer/package-manifest.in
|
+++ b/browser/installer/package-manifest.in
|
||||||
@@ -674,16 +674,17 @@
|
@@ -675,16 +675,17 @@
|
||||||
@RESPATH@/greprefs.js
|
@RESPATH@/greprefs.js
|
||||||
@RESPATH@/defaults/autoconfig/prefcalls.js
|
@RESPATH@/defaults/autoconfig/prefcalls.js
|
||||||
@RESPATH@/browser/defaults/permissions
|
@RESPATH@/browser/defaults/permissions
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:adc36b4cdb3de819dfc8ac02560526d0b88bdb0a137083eaa069ab660538693a
|
|
||||||
size 44915288
|
|
3
l10n-51.0.1.tar.xz
Normal file
3
l10n-51.0.1.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e84d69f77c3966daf0728f346976e90752a18c67d3136ef125bed8f1006a1ab8
|
||||||
|
size 44728900
|
@ -1,92 +1,93 @@
|
|||||||
ach 72c548f97e82
|
ach d6ba00c5c59a
|
||||||
af 676daf929ded
|
af 221acbf9c551
|
||||||
an 9c672ba38dae
|
an efef89681add
|
||||||
ar 6bd1cb920a48
|
ar 940e066d2dd8
|
||||||
as 9710b1ce7a29
|
as a97311f0a051
|
||||||
ast 5a06502c9fc1
|
ast 37ff5970cc8f
|
||||||
az f12bc2c29510
|
az 374715191cd0
|
||||||
be 3c6fd4559f7f
|
bg d15a763f746a
|
||||||
bg 7843a5e79d32
|
bn-BD b4cdbb48d9fb
|
||||||
bn-BD 3cbe5cfb0859
|
bn-IN 405c89530a66
|
||||||
bn-IN 578eacdbac9d
|
br e730984a8770
|
||||||
br a16ed131653a
|
bs e25f083ed28a
|
||||||
bs 3425b8fcf1ab
|
ca 2909feec9b62
|
||||||
ca c6b4f835d64e
|
cak b0fe49f697f3
|
||||||
cak 710c1faa7291
|
cs 53096821fe5c
|
||||||
cs e1f114f9588d
|
cy 4690316110e9
|
||||||
cy 07118becc133
|
da 24845323c326
|
||||||
da fbec55bbfd36
|
de ec96b812a542
|
||||||
de 20748e20ccf2
|
dsb 8e338605ccb9
|
||||||
dsb 4b8493859a20
|
el 34a3488407a6
|
||||||
el 16fdb46a6a47
|
en-GB 8000aa9daf28
|
||||||
en-GB e7242fb885cf
|
en-ZA ad5be8ba60f3
|
||||||
en-ZA 118b4d922a17
|
eo 3a024766912e
|
||||||
eo ae85ceef76b2
|
es-AR 541f1c3690da
|
||||||
es-AR a18a4b85f35f
|
es-CL 56477941664e
|
||||||
es-CL c5ff11d180da
|
es-ES 8b7162b69b09
|
||||||
es-ES e841d9340b7c
|
es-MX 77bc335e0853
|
||||||
es-MX 2eaf1f216766
|
et a9b1775874d3
|
||||||
et 8920752eaf5b
|
eu 52ec58e99375
|
||||||
eu eb3cb2d122eb
|
fa 95d8b781e109
|
||||||
fa e481522b74f8
|
ff 2e39572916fb
|
||||||
ff 88f5cd66688d
|
fi 94ad306d1492
|
||||||
fi b20587491f77
|
fr 27c4dc4cba4d
|
||||||
fr 628920fcb9f1
|
fy-NL 9399c11d5edb
|
||||||
fy-NL 56f04c122d2a
|
ga-IE 5d9852283915
|
||||||
ga-IE ffbfd52e15d6
|
gd bc702e34726b
|
||||||
gd 9f50ee991ed8
|
gl 74d31ad43213
|
||||||
gl e15306f877bf
|
gn 43e8b6cb5fc6
|
||||||
gn 68f844f4138a
|
gu-IN 97b7ec458ace
|
||||||
gu-IN 54ac9d906390
|
he 32e85d63d323
|
||||||
he 7c087889358a
|
hi-IN 25c7d3fceff8
|
||||||
hi-IN aea1bb23685c
|
hr 15e2ad66589c
|
||||||
hr b0cc9aa34502
|
hsb ff5fb215596d
|
||||||
hsb d7ea2d9d91ea
|
hu 814fad9068d9
|
||||||
hu 5106349d21dd
|
hy-AM 339e5b6d31d2
|
||||||
hy-AM 3f5103ed23e2
|
id 1f325ac9007c
|
||||||
id 69b0d5120660
|
is e346cec6bace
|
||||||
is 8b6a14ea919f
|
it fc766adb485d
|
||||||
it ec06674eebb4
|
ja 78a60bf924e7
|
||||||
ja 488fbb4070d9
|
ja-JP-mac 0ca52430f89c
|
||||||
ja-JP-mac e120b04c4a90
|
ka fb0e9f4fdbe7
|
||||||
kk 60c09b46e90d
|
kab 3de51a9c61ce
|
||||||
km 00277d0045d3
|
kk 368faf9a9ed3
|
||||||
kn 0aff09069416
|
km 97cd3bb4f2f3
|
||||||
ko 33cf1dd48c33
|
kn f657dd18d8a1
|
||||||
lij 6a94ea30eef6
|
ko bc9fde5af704
|
||||||
lt 15947ce6f7ff
|
lij 500f328a0bf0
|
||||||
lv 3a43a0e2c12c
|
lt 3eefea021768
|
||||||
mai b43ac46bf163
|
lv 90a827f08cb4
|
||||||
mk 0f98fd626df2
|
mai 4a95441f376c
|
||||||
ml b6b5a2b26a09
|
mk 666cf4d8067b
|
||||||
mr 0c2a798af2d9
|
ml 1f2e734fbd60
|
||||||
ms a0a74230784a
|
mr 8067689c39f3
|
||||||
nb-NO 378c5b201531
|
ms 76c4152f9e3f
|
||||||
nl 750fcda42314
|
nb-NO 1effc4c0ba39
|
||||||
nn-NO 444e256b7ed8
|
nl 28f169daa01f
|
||||||
or 5ac88ef59ea5
|
nn-NO 272d7d7fbd67
|
||||||
pa-IN ab02b30c28ea
|
or 765fc4b06ed0
|
||||||
pl cd84bd057189
|
pa-IN 8518db59aecf
|
||||||
pt-BR dc5c8b030a57
|
pl 339f79766251
|
||||||
pt-PT 900fd62886bb
|
pt-BR 3e521cc717b9
|
||||||
rm b6416ed6a3a1
|
pt-PT 5ea4fd22db27
|
||||||
ro 2e2e9b5a07f5
|
rm 66840279c384
|
||||||
ru 1d962dfc279e
|
ro a87554f9bf7e
|
||||||
si 03a3b09a2203
|
ru a8f0bc1f85db
|
||||||
sk 4e8311d1d017
|
si 2629b7b1279c
|
||||||
sl b43e8e65c00e
|
sk b78499013196
|
||||||
son 544d3eea9a59
|
sl b91f9bd2d619
|
||||||
sq 25e86afe807e
|
son 2934d6741b1a
|
||||||
sr 233c45e5d423
|
sq 8ff97a87cbeb
|
||||||
sv-SE 6b9266a60638
|
sr 8ddd91c5629b
|
||||||
ta 0256c1b190ce
|
sv-SE 483944f0c102
|
||||||
te 8565fd8f778a
|
ta dc89744a2281
|
||||||
th e2b0b5a2dc9c
|
te 545bca10223a
|
||||||
tr 255e7e613fca
|
th 6076f69e7093
|
||||||
uk e36fe69f4a3f
|
tr 70129fabcb60
|
||||||
uz 6d46754186ab
|
uk cb0a4b0816fa
|
||||||
vi 5c32df50f35d
|
uz 01402c615783
|
||||||
xh c96bc753a170
|
vi d6c09226896e
|
||||||
zh-CN 411faa039900
|
xh f587b401f8fc
|
||||||
zh-TW e1416ff1b4d6
|
zh-CN d260be15e967
|
||||||
|
zh-TW 267404478cf9
|
||||||
|
|
||||||
|
292
mozilla-disable-skia-be.patch
Normal file
292
mozilla-disable-skia-be.patch
Normal file
@ -0,0 +1,292 @@
|
|||||||
|
|
||||||
|
# HG changeset patch
|
||||||
|
# User Lee Salzman <lsalzman@mozilla.com>
|
||||||
|
# Date 1484854371 18000
|
||||||
|
# Node ID 42afdb8f7e6b3e8a465042f64c6c49782f231af4
|
||||||
|
# Parent dfadd79c97458f898d542461033a61dd34d3a5f0
|
||||||
|
Bug 1319374 - Wrap PaintCounter with ifdef USE_SKIA. r=mchang, a=jcristau
|
||||||
|
|
||||||
|
diff --git a/gfx/2d/BorrowedContext.h b/gfx/2d/BorrowedContext.h
|
||||||
|
--- a/gfx/2d/BorrowedContext.h
|
||||||
|
+++ b/gfx/2d/BorrowedContext.h
|
||||||
|
@@ -190,18 +190,28 @@ public:
|
||||||
|
}
|
||||||
|
|
||||||
|
~BorrowedCGContext() {
|
||||||
|
MOZ_ASSERT(!cg);
|
||||||
|
}
|
||||||
|
|
||||||
|
CGContextRef cg;
|
||||||
|
private:
|
||||||
|
+#ifdef USE_SKIA
|
||||||
|
static CGContextRef BorrowCGContextFromDrawTarget(DrawTarget *aDT);
|
||||||
|
static void ReturnCGContextToDrawTarget(DrawTarget *aDT, CGContextRef cg);
|
||||||
|
+#else
|
||||||
|
+ static CGContextRef BorrowCGContextFromDrawTarget(DrawTarget *aDT) {
|
||||||
|
+ MOZ_CRASH("Not supported without Skia");
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ static void ReturnCGContextToDrawTarget(DrawTarget *aDT, CGContextRef cg) {
|
||||||
|
+ MOZ_CRASH("not supported without Skia");
|
||||||
|
+ }
|
||||||
|
+#endif
|
||||||
|
DrawTarget *mDT;
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
|
} // namespace gfx
|
||||||
|
} // namespace mozilla
|
||||||
|
|
||||||
|
#endif // _MOZILLA_GFX_BORROWED_CONTEXT_H
|
||||||
|
diff --git a/gfx/layers/composite/LayerManagerComposite.cpp b/gfx/layers/composite/LayerManagerComposite.cpp
|
||||||
|
--- a/gfx/layers/composite/LayerManagerComposite.cpp
|
||||||
|
+++ b/gfx/layers/composite/LayerManagerComposite.cpp
|
||||||
|
@@ -7,17 +7,16 @@
|
||||||
|
#include <stddef.h> // for size_t
|
||||||
|
#include <stdint.h> // for uint16_t, uint32_t
|
||||||
|
#include "CanvasLayerComposite.h" // for CanvasLayerComposite
|
||||||
|
#include "ColorLayerComposite.h" // for ColorLayerComposite
|
||||||
|
#include "Composer2D.h" // for Composer2D
|
||||||
|
#include "CompositableHost.h" // for CompositableHost
|
||||||
|
#include "ContainerLayerComposite.h" // for ContainerLayerComposite, etc
|
||||||
|
#include "FPSCounter.h" // for FPSState, FPSCounter
|
||||||
|
-#include "PaintCounter.h" // For PaintCounter
|
||||||
|
#include "FrameMetrics.h" // for FrameMetrics
|
||||||
|
#include "GeckoProfiler.h" // for profiler_set_frame_number, etc
|
||||||
|
#include "ImageLayerComposite.h" // for ImageLayerComposite
|
||||||
|
#include "Layers.h" // for Layer, ContainerLayer, etc
|
||||||
|
#include "LayerScope.h" // for LayerScope Tool
|
||||||
|
#include "protobuf/LayerScopePacket.pb.h" // for protobuf (LayerScope)
|
||||||
|
#include "PaintedLayerComposite.h" // for PaintedLayerComposite
|
||||||
|
#include "TiledContentHost.h"
|
||||||
|
@@ -68,16 +67,20 @@
|
||||||
|
#include "nsScreenManagerGonk.h"
|
||||||
|
#include "nsWindow.h"
|
||||||
|
#endif
|
||||||
|
#include "GeckoProfiler.h"
|
||||||
|
#include "TextRenderer.h" // for TextRenderer
|
||||||
|
#include "mozilla/layers/CompositorBridgeParent.h"
|
||||||
|
#include "TreeTraversal.h" // for ForEachNode
|
||||||
|
|
||||||
|
+#ifdef USE_SKIA
|
||||||
|
+#include "PaintCounter.h" // For PaintCounter
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
class gfxContext;
|
||||||
|
|
||||||
|
namespace mozilla {
|
||||||
|
namespace layers {
|
||||||
|
|
||||||
|
class ImageLayer;
|
||||||
|
|
||||||
|
using namespace mozilla::gfx;
|
||||||
|
@@ -128,16 +131,20 @@ LayerManagerComposite::LayerManagerCompo
|
||||||
|
, mGeometryChanged(true)
|
||||||
|
, mLastFrameMissedHWC(false)
|
||||||
|
, mWindowOverlayChanged(false)
|
||||||
|
, mLastPaintTime(TimeDuration::Forever())
|
||||||
|
, mRenderStartTime(TimeStamp::Now())
|
||||||
|
{
|
||||||
|
mTextRenderer = new TextRenderer(aCompositor);
|
||||||
|
MOZ_ASSERT(aCompositor);
|
||||||
|
+
|
||||||
|
+#ifdef USE_SKIA
|
||||||
|
+ mPaintCounter = nullptr;
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
LayerManagerComposite::~LayerManagerComposite()
|
||||||
|
{
|
||||||
|
Destroy();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@@ -146,18 +153,21 @@ LayerManagerComposite::Destroy()
|
||||||
|
{
|
||||||
|
if (!mDestroyed) {
|
||||||
|
mCompositor->GetWidget()->CleanupWindowEffects();
|
||||||
|
if (mRoot) {
|
||||||
|
RootLayer()->Destroy();
|
||||||
|
}
|
||||||
|
mRoot = nullptr;
|
||||||
|
mClonedLayerTreeProperties = nullptr;
|
||||||
|
+ mDestroyed = true;
|
||||||
|
+
|
||||||
|
+#ifdef USE_SKIA
|
||||||
|
mPaintCounter = nullptr;
|
||||||
|
- mDestroyed = true;
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
LayerManagerComposite::UpdateRenderBounds(const IntRect& aRect)
|
||||||
|
{
|
||||||
|
mRenderBounds = aRect;
|
||||||
|
}
|
||||||
|
@@ -559,48 +569,52 @@ LayerManagerComposite::RootLayer() const
|
||||||
|
#endif
|
||||||
|
|
||||||
|
void
|
||||||
|
LayerManagerComposite::InvalidateDebugOverlay(nsIntRegion& aInvalidRegion, const IntRect& aBounds)
|
||||||
|
{
|
||||||
|
bool drawFps = gfxPrefs::LayersDrawFPS();
|
||||||
|
bool drawFrameCounter = gfxPrefs::DrawFrameCounter();
|
||||||
|
bool drawFrameColorBars = gfxPrefs::CompositorDrawColorBars();
|
||||||
|
- bool drawPaintTimes = gfxPrefs::AlwaysPaint();
|
||||||
|
|
||||||
|
if (drawFps || drawFrameCounter) {
|
||||||
|
aInvalidRegion.Or(aInvalidRegion, nsIntRect(0, 0, 256, 256));
|
||||||
|
}
|
||||||
|
if (drawFrameColorBars) {
|
||||||
|
aInvalidRegion.Or(aInvalidRegion, nsIntRect(0, 0, 10, aBounds.height));
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+#ifdef USE_SKIA
|
||||||
|
+ bool drawPaintTimes = gfxPrefs::AlwaysPaint();
|
||||||
|
if (drawPaintTimes) {
|
||||||
|
aInvalidRegion.Or(aInvalidRegion, nsIntRect(PaintCounter::GetPaintRect()));
|
||||||
|
}
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
+#ifdef USE_SKIA
|
||||||
|
void
|
||||||
|
LayerManagerComposite::DrawPaintTimes(Compositor* aCompositor)
|
||||||
|
{
|
||||||
|
if (!mPaintCounter) {
|
||||||
|
mPaintCounter = new PaintCounter();
|
||||||
|
}
|
||||||
|
|
||||||
|
TimeDuration compositeTime = TimeStamp::Now() - mRenderStartTime;
|
||||||
|
mPaintCounter->Draw(aCompositor, mLastPaintTime, compositeTime);
|
||||||
|
}
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
static uint16_t sFrameCount = 0;
|
||||||
|
void
|
||||||
|
LayerManagerComposite::RenderDebugOverlay(const IntRect& aBounds)
|
||||||
|
{
|
||||||
|
bool drawFps = gfxPrefs::LayersDrawFPS();
|
||||||
|
bool drawFrameCounter = gfxPrefs::DrawFrameCounter();
|
||||||
|
bool drawFrameColorBars = gfxPrefs::CompositorDrawColorBars();
|
||||||
|
- bool drawPaintTimes = gfxPrefs::AlwaysPaint();
|
||||||
|
|
||||||
|
TimeStamp now = TimeStamp::Now();
|
||||||
|
|
||||||
|
if (drawFps) {
|
||||||
|
if (!mFPS) {
|
||||||
|
mFPS = MakeUnique<FPSState>();
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -731,19 +745,22 @@ LayerManagerComposite::RenderDebugOverla
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (drawFrameColorBars || drawFrameCounter) {
|
||||||
|
// We intentionally overflow at 2^16.
|
||||||
|
sFrameCount++;
|
||||||
|
}
|
||||||
|
|
||||||
|
+#ifdef USE_SKIA
|
||||||
|
+ bool drawPaintTimes = gfxPrefs::AlwaysPaint();
|
||||||
|
if (drawPaintTimes) {
|
||||||
|
DrawPaintTimes(mCompositor);
|
||||||
|
}
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
RefPtr<CompositingRenderTarget>
|
||||||
|
LayerManagerComposite::PushGroupForLayerEffects()
|
||||||
|
{
|
||||||
|
// This is currently true, so just making sure that any new use of this
|
||||||
|
// method is flagged for investigation
|
||||||
|
MOZ_ASSERT(gfxPrefs::LayersEffectInvert() ||
|
||||||
|
diff --git a/gfx/layers/composite/LayerManagerComposite.h b/gfx/layers/composite/LayerManagerComposite.h
|
||||||
|
--- a/gfx/layers/composite/LayerManagerComposite.h
|
||||||
|
+++ b/gfx/layers/composite/LayerManagerComposite.h
|
||||||
|
@@ -326,21 +326,16 @@ private:
|
||||||
|
* Render the current layer tree to the active target.
|
||||||
|
*/
|
||||||
|
void Render(const nsIntRegion& aInvalidRegion, const nsIntRegion& aOpaqueRegion);
|
||||||
|
#if defined(MOZ_WIDGET_ANDROID) || defined(MOZ_WIDGET_GONK)
|
||||||
|
void RenderToPresentationSurface();
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
- * Render paint and composite times above the frame.
|
||||||
|
- */
|
||||||
|
- void DrawPaintTimes(Compositor* aCompositor);
|
||||||
|
-
|
||||||
|
- /**
|
||||||
|
* We need to know our invalid region before we're ready to render.
|
||||||
|
*/
|
||||||
|
void InvalidateDebugOverlay(nsIntRegion& aInvalidRegion, const gfx::IntRect& aBounds);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Render debug overlays such as the FPS/FrameCounter above the frame.
|
||||||
|
*/
|
||||||
|
void RenderDebugOverlay(const gfx::IntRect& aBounds);
|
||||||
|
@@ -386,19 +381,26 @@ private:
|
||||||
|
RefPtr<TextRenderer> mTextRenderer;
|
||||||
|
bool mGeometryChanged;
|
||||||
|
|
||||||
|
// Testing property. If hardware composer is supported, this will return
|
||||||
|
// true if the last frame was deemed 'too complicated' to be rendered.
|
||||||
|
bool mLastFrameMissedHWC;
|
||||||
|
|
||||||
|
bool mWindowOverlayChanged;
|
||||||
|
- RefPtr<PaintCounter> mPaintCounter;
|
||||||
|
TimeDuration mLastPaintTime;
|
||||||
|
TimeStamp mRenderStartTime;
|
||||||
|
+
|
||||||
|
+#ifdef USE_SKIA
|
||||||
|
+ /**
|
||||||
|
+ * Render paint and composite times above the frame.
|
||||||
|
+ */
|
||||||
|
+ void DrawPaintTimes(Compositor* aCompositor);
|
||||||
|
+ RefPtr<PaintCounter> mPaintCounter;
|
||||||
|
+#endif
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Composite layers are for use with OMTC on the compositor thread only. There
|
||||||
|
* must be corresponding Basic layers on the content thread. For composite
|
||||||
|
* layers, the layer manager only maintains the layer tree, all rendering is
|
||||||
|
* done by a Compositor (see Compositor.h). As such, composite layers are
|
||||||
|
* platform-independent and can be used on any platform for which there is a
|
||||||
|
diff --git a/gfx/layers/moz.build b/gfx/layers/moz.build
|
||||||
|
--- a/gfx/layers/moz.build
|
||||||
|
+++ b/gfx/layers/moz.build
|
||||||
|
@@ -335,17 +335,16 @@ UNIFIED_SOURCES += [
|
||||||
|
'composite/CompositableHost.cpp',
|
||||||
|
'composite/ContainerLayerComposite.cpp',
|
||||||
|
'composite/ContentHost.cpp',
|
||||||
|
'composite/FPSCounter.cpp',
|
||||||
|
'composite/FrameUniformityData.cpp',
|
||||||
|
'composite/ImageHost.cpp',
|
||||||
|
'composite/ImageLayerComposite.cpp',
|
||||||
|
'composite/LayerManagerComposite.cpp',
|
||||||
|
- 'composite/PaintCounter.cpp',
|
||||||
|
'composite/PaintedLayerComposite.cpp',
|
||||||
|
'composite/TextRenderer.cpp',
|
||||||
|
'composite/TextureHost.cpp',
|
||||||
|
'composite/TiledContentHost.cpp',
|
||||||
|
'Compositor.cpp',
|
||||||
|
'CopyableCanvasLayer.cpp',
|
||||||
|
'Effects.cpp',
|
||||||
|
'FrameMetrics.cpp',
|
||||||
|
@@ -480,8 +479,13 @@ MOCHITEST_CHROME_MANIFESTS += ['apz/test
|
||||||
|
|
||||||
|
CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
|
||||||
|
CXXFLAGS += CONFIG['TK_CFLAGS']
|
||||||
|
|
||||||
|
LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES']
|
||||||
|
|
||||||
|
if CONFIG['GNU_CXX']:
|
||||||
|
CXXFLAGS += ['-Wno-error=shadow']
|
||||||
|
+
|
||||||
|
+if CONFIG['MOZ_ENABLE_SKIA']:
|
||||||
|
+ UNIFIED_SOURCES += [
|
||||||
|
+ 'composite/PaintCounter.cpp',
|
||||||
|
+ ]
|
@ -1,76 +0,0 @@
|
|||||||
# HG changeset patch
|
|
||||||
# Parent c8e8364b303892fdb5a574b96411d2d8f699a15e
|
|
||||||
Patch lexical parser files generated by flex which may be potentially
|
|
||||||
exploitable in a buffer overrun. These seem to come from an upstream projects
|
|
||||||
(CMU Sphinx and ANGLE) so it should be fixed there in the first place.
|
|
||||||
|
|
||||||
CVE-2016-6354
|
|
||||||
|
|
||||||
https://bugzilla.suse.com/show_bug.cgi?id=990856
|
|
||||||
|
|
||||||
diff --git a/gfx/angle/src/compiler/preprocessor/Tokenizer.cpp b/gfx/angle/src/compiler/preprocessor/Tokenizer.cpp
|
|
||||||
--- a/gfx/angle/src/compiler/preprocessor/Tokenizer.cpp
|
|
||||||
+++ b/gfx/angle/src/compiler/preprocessor/Tokenizer.cpp
|
|
||||||
@@ -1375,17 +1375,17 @@ static int yy_get_next_buffer (yyscan_t
|
|
||||||
if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
|
|
||||||
/* don't do the read, it's not guaranteed to return an EOF,
|
|
||||||
* just force an EOF
|
|
||||||
*/
|
|
||||||
YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars = 0;
|
|
||||||
|
|
||||||
else
|
|
||||||
{
|
|
||||||
- yy_size_t num_to_read =
|
|
||||||
+ int num_to_read =
|
|
||||||
YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
|
|
||||||
|
|
||||||
while ( num_to_read <= 0 )
|
|
||||||
{ /* Not enough room in the buffer - grow it. */
|
|
||||||
|
|
||||||
/* just a shorter name for the current buffer */
|
|
||||||
YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE;
|
|
||||||
|
|
||||||
diff --git a/gfx/angle/src/compiler/translator/glslang_lex.cpp b/gfx/angle/src/compiler/translator/glslang_lex.cpp
|
|
||||||
--- a/gfx/angle/src/compiler/translator/glslang_lex.cpp
|
|
||||||
+++ b/gfx/angle/src/compiler/translator/glslang_lex.cpp
|
|
||||||
@@ -2269,17 +2269,17 @@ static int yy_get_next_buffer (yyscan_t
|
|
||||||
if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
|
|
||||||
/* don't do the read, it's not guaranteed to return an EOF,
|
|
||||||
* just force an EOF
|
|
||||||
*/
|
|
||||||
YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars = 0;
|
|
||||||
|
|
||||||
else
|
|
||||||
{
|
|
||||||
- yy_size_t num_to_read =
|
|
||||||
+ int num_to_read =
|
|
||||||
YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
|
|
||||||
|
|
||||||
while ( num_to_read <= 0 )
|
|
||||||
{ /* Not enough room in the buffer - grow it. */
|
|
||||||
|
|
||||||
/* just a shorter name for the current buffer */
|
|
||||||
YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE;
|
|
||||||
|
|
||||||
diff --git a/media/sphinxbase/src/libsphinxbase/lm/jsgf_scanner.c b/media/sphinxbase/src/libsphinxbase/lm/jsgf_scanner.c
|
|
||||||
--- a/media/sphinxbase/src/libsphinxbase/lm/jsgf_scanner.c
|
|
||||||
+++ b/media/sphinxbase/src/libsphinxbase/lm/jsgf_scanner.c
|
|
||||||
@@ -1242,17 +1242,17 @@ static int yy_get_next_buffer (yyscan_t
|
|
||||||
if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
|
|
||||||
/* don't do the read, it's not guaranteed to return an EOF,
|
|
||||||
* just force an EOF
|
|
||||||
*/
|
|
||||||
YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars = 0;
|
|
||||||
|
|
||||||
else
|
|
||||||
{
|
|
||||||
- yy_size_t num_to_read =
|
|
||||||
+ int num_to_read =
|
|
||||||
YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
|
|
||||||
|
|
||||||
while ( num_to_read <= 0 )
|
|
||||||
{ /* Not enough room in the buffer - grow it. */
|
|
||||||
|
|
||||||
/* just a shorter name for the current buffer */
|
|
||||||
YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE;
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
|||||||
# HG changeset patch
|
# HG changeset patch
|
||||||
# Parent 6ff55468281e12a84adefb46b17acb60d9cea608
|
# Parent f3e80d26a430dfa1c58421fb66144a3c23ffc166
|
||||||
Description: Add KDE integration to Firefox (toolkit parts)
|
Description: Add KDE integration to Firefox (toolkit parts)
|
||||||
Author: Wolfgang Rosenauer <wolfgang@rosenauer.org>
|
Author: Wolfgang Rosenauer <wolfgang@rosenauer.org>
|
||||||
Author: Lubos Lunak <lunak@suse.com>
|
Author: Lubos Lunak <lunak@suse.com>
|
||||||
@ -27,7 +27,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
|||||||
#include "prefread.h"
|
#include "prefread.h"
|
||||||
#include "prefapi_private_data.h"
|
#include "prefapi_private_data.h"
|
||||||
|
|
||||||
@@ -1180,16 +1181,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char
|
@@ -1174,16 +1175,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char
|
||||||
|
|
||||||
static nsresult pref_LoadPrefsInDirList(const char *listId)
|
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;
|
return NS_OK;
|
||||||
|
|
||||||
bool hasMore;
|
bool hasMore;
|
||||||
@@ -1205,17 +1224,17 @@ static nsresult pref_LoadPrefsInDirList(
|
@@ -1199,17 +1218,17 @@ static nsresult pref_LoadPrefsInDirList(
|
||||||
|
|
||||||
nsAutoCString leaf;
|
nsAutoCString leaf;
|
||||||
path->GetNativeLeafName(leaf);
|
path->GetNativeLeafName(leaf);
|
||||||
@ -81,7 +81,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
|
|||||||
{
|
{
|
||||||
nsZipItemPtr<char> manifest(jarReader, name, true);
|
nsZipItemPtr<char> manifest(jarReader, name, true);
|
||||||
NS_ENSURE_TRUE(manifest.Buffer(), NS_ERROR_NOT_AVAILABLE);
|
NS_ENSURE_TRUE(manifest.Buffer(), NS_ERROR_NOT_AVAILABLE);
|
||||||
@@ -1309,24 +1328,36 @@ static nsresult pref_InitInitialObjects(
|
@@ -1303,24 +1322,36 @@ static nsresult pref_InitInitialObjects(
|
||||||
/* these pref file names should not be used: we process them after all other application pref files for backwards compatibility */
|
/* these pref file names should not be used: we process them after all other application pref files for backwards compatibility */
|
||||||
static const char* specialFiles[] = {
|
static const char* specialFiles[] = {
|
||||||
#if defined(XP_MACOSX)
|
#if defined(XP_MACOSX)
|
||||||
@ -187,8 +187,7 @@ diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpac
|
|||||||
diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloads/moz.build
|
diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloads/moz.build
|
||||||
--- a/toolkit/components/downloads/moz.build
|
--- a/toolkit/components/downloads/moz.build
|
||||||
+++ b/toolkit/components/downloads/moz.build
|
+++ b/toolkit/components/downloads/moz.build
|
||||||
@@ -60,17 +60,18 @@ if not CONFIG['MOZ_SUITE']:
|
@@ -57,16 +57,17 @@ if not CONFIG['MOZ_SUITE']:
|
||||||
'nsDownloadManagerUI.js',
|
|
||||||
'nsDownloadManagerUI.manifest',
|
'nsDownloadManagerUI.manifest',
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -196,9 +195,9 @@ diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloa
|
|||||||
|
|
||||||
LOCAL_INCLUDES += [
|
LOCAL_INCLUDES += [
|
||||||
'../protobuf',
|
'../protobuf',
|
||||||
- '/ipc/chromium/src'
|
'/ipc/chromium/src',
|
||||||
+ '/ipc/chromium/src',
|
+ '/toolkit/xre',
|
||||||
+ '/toolkit/xre'
|
'chromium'
|
||||||
]
|
]
|
||||||
|
|
||||||
DEFINES['GOOGLE_PROTOBUF_NO_RTTI'] = True
|
DEFINES['GOOGLE_PROTOBUF_NO_RTTI'] = True
|
||||||
@ -206,11 +205,10 @@ diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloa
|
|||||||
|
|
||||||
CXXFLAGS += CONFIG['TK_CFLAGS']
|
CXXFLAGS += CONFIG['TK_CFLAGS']
|
||||||
|
|
||||||
if CONFIG['GNU_CXX']:
|
|
||||||
diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/components/downloads/nsDownloadManager.cpp
|
diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/components/downloads/nsDownloadManager.cpp
|
||||||
--- a/toolkit/components/downloads/nsDownloadManager.cpp
|
--- a/toolkit/components/downloads/nsDownloadManager.cpp
|
||||||
+++ b/toolkit/components/downloads/nsDownloadManager.cpp
|
+++ b/toolkit/components/downloads/nsDownloadManager.cpp
|
||||||
@@ -51,16 +51,20 @@
|
@@ -52,16 +52,20 @@
|
||||||
#ifdef XP_WIN
|
#ifdef XP_WIN
|
||||||
#include <shlobj.h>
|
#include <shlobj.h>
|
||||||
#include "nsWindowsHelpers.h"
|
#include "nsWindowsHelpers.h"
|
||||||
@ -228,10 +226,10 @@ diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/compon
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef MOZ_WIDGET_ANDROID
|
#ifdef MOZ_WIDGET_ANDROID
|
||||||
#include "GeneratedJNIWrappers.h"
|
#include "FennecJNIWrappers.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -2719,16 +2723,25 @@ nsDownload::SetState(DownloadState aStat
|
@@ -2723,16 +2727,25 @@ nsDownload::SetState(DownloadState aStat
|
||||||
nsCOMPtr<nsIPrefBranch> pref(do_GetService(NS_PREFSERVICE_CONTRACTID));
|
nsCOMPtr<nsIPrefBranch> pref(do_GetService(NS_PREFSERVICE_CONTRACTID));
|
||||||
|
|
||||||
// Master pref to control this function.
|
// Master pref to control this function.
|
||||||
@ -257,7 +255,7 @@ diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/compon
|
|||||||
int64_t goat = PR_Now() - mStartTime;
|
int64_t goat = PR_Now() - mStartTime;
|
||||||
showTaskbarAlert = goat > alertIntervalUSec;
|
showTaskbarAlert = goat > alertIntervalUSec;
|
||||||
|
|
||||||
@@ -2759,16 +2772,17 @@ nsDownload::SetState(DownloadState aStat
|
@@ -2763,16 +2776,17 @@ nsDownload::SetState(DownloadState aStat
|
||||||
NS_LITERAL_STRING(DOWNLOAD_MANAGER_ALERT_ICON), title,
|
NS_LITERAL_STRING(DOWNLOAD_MANAGER_ALERT_ICON), title,
|
||||||
message, !removeWhenDone,
|
message, !removeWhenDone,
|
||||||
mPrivate ? NS_LITERAL_STRING("private") : NS_LITERAL_STRING("non-private"),
|
mPrivate ? NS_LITERAL_STRING("private") : NS_LITERAL_STRING("non-private"),
|
||||||
@ -316,7 +314,7 @@ diff --git a/toolkit/content/widgets/dialog-kde.xml b/toolkit/content/widgets/di
|
|||||||
new file mode 100644
|
new file mode 100644
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/toolkit/content/widgets/dialog-kde.xml
|
+++ b/toolkit/content/widgets/dialog-kde.xml
|
||||||
@@ -0,0 +1,463 @@
|
@@ -0,0 +1,457 @@
|
||||||
+<?xml version="1.0"?>
|
+<?xml version="1.0"?>
|
||||||
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
|
+<!-- 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
|
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||||
@ -386,8 +384,7 @@ new file mode 100644
|
|||||||
+ <![CDATA[
|
+ <![CDATA[
|
||||||
+ if (this.hasAttribute("defaultButton"))
|
+ if (this.hasAttribute("defaultButton"))
|
||||||
+ return this.getAttribute("defaultButton");
|
+ return this.getAttribute("defaultButton");
|
||||||
+ else // default to the accept button
|
+ return "accept"; // default to the accept button
|
||||||
+ return "accept";
|
|
||||||
+ ]]>
|
+ ]]>
|
||||||
+ </getter>
|
+ </getter>
|
||||||
+ <setter>
|
+ <setter>
|
||||||
@ -491,9 +488,6 @@ new file mode 100644
|
|||||||
+ <parameter name="aEvent"/>
|
+ <parameter name="aEvent"/>
|
||||||
+ <body>
|
+ <body>
|
||||||
+ <![CDATA[
|
+ <![CDATA[
|
||||||
+ let { AppConstants } =
|
|
||||||
+ Components.utils.import("resource://gre/modules/AppConstants.jsm", {});
|
|
||||||
+
|
|
||||||
+ function focusInit() {
|
+ function focusInit() {
|
||||||
+ const dialog = document.documentElement;
|
+ const dialog = document.documentElement;
|
||||||
+ const defaultButton = dialog.getButton(dialog.defaultButton);
|
+ const defaultButton = dialog.getButton(dialog.defaultButton);
|
||||||
@ -519,7 +513,7 @@ new file mode 100644
|
|||||||
+ initialFocusedElt.focus();
|
+ initialFocusedElt.focus();
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+ else if (AppConstants.platform != "macosx" &&
|
+ else if (!/Mac/.test(navigator.platform) &&
|
||||||
+ focusedElt.hasAttribute("dlgtype") && focusedElt != defaultButton) {
|
+ focusedElt.hasAttribute("dlgtype") && focusedElt != defaultButton) {
|
||||||
+ defaultButton.focus();
|
+ defaultButton.focus();
|
||||||
+ }
|
+ }
|
||||||
@ -604,16 +598,16 @@ new file mode 100644
|
|||||||
+ else
|
+ else
|
||||||
+ switch (dlgtype) {
|
+ switch (dlgtype) {
|
||||||
+ case "accept":
|
+ case "accept":
|
||||||
+ button.setAttribute("icon","accept");
|
+ button.setAttribute("icon", "accept");
|
||||||
+ break;
|
+ break;
|
||||||
+ case "cancel":
|
+ case "cancel":
|
||||||
+ button.setAttribute("icon","cancel");
|
+ button.setAttribute("icon", "cancel");
|
||||||
+ break;
|
+ break;
|
||||||
+ case "disclosure":
|
+ case "disclosure":
|
||||||
+ button.setAttribute("icon","properties");
|
+ button.setAttribute("icon", "properties");
|
||||||
+ break;
|
+ break;
|
||||||
+ case "help":
|
+ case "help":
|
||||||
+ button.setAttribute("icon","help");
|
+ button.setAttribute("icon", "help");
|
||||||
+ break;
|
+ break;
|
||||||
+ default:
|
+ default:
|
||||||
+ break;
|
+ break;
|
||||||
@ -639,10 +633,8 @@ new file mode 100644
|
|||||||
+ for (dlgtype in buttons)
|
+ for (dlgtype in buttons)
|
||||||
+ buttons[dlgtype].hidden = !shown[dlgtype];
|
+ buttons[dlgtype].hidden = !shown[dlgtype];
|
||||||
+
|
+
|
||||||
+ let { AppConstants } =
|
|
||||||
+ Components.utils.import("resource://gre/modules/AppConstants.jsm", {});
|
|
||||||
+ // show the spacer on Windows only when the extra2 button is present
|
+ // show the spacer on Windows only when the extra2 button is present
|
||||||
+ if (AppConstants.platform == "win") {
|
+ if (/Win/.test(navigator.platform)) {
|
||||||
+ var spacer = document.getAnonymousElementByAttribute(this, "anonid", "spacer");
|
+ var spacer = document.getAnonymousElementByAttribute(this, "anonid", "spacer");
|
||||||
+ spacer.removeAttribute("hidden");
|
+ spacer.removeAttribute("hidden");
|
||||||
+ spacer.setAttribute("flex", shown["extra2"]?"1":"0");
|
+ spacer.setAttribute("flex", shown["extra2"]?"1":"0");
|
||||||
@ -784,7 +776,7 @@ diff --git a/toolkit/content/widgets/preferences-kde.xml b/toolkit/content/widge
|
|||||||
new file mode 100644
|
new file mode 100644
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/toolkit/content/widgets/preferences-kde.xml
|
+++ b/toolkit/content/widgets/preferences-kde.xml
|
||||||
@@ -0,0 +1,1410 @@
|
@@ -0,0 +1,1403 @@
|
||||||
+<?xml version="1.0"?>
|
+<?xml version="1.0"?>
|
||||||
+
|
+
|
||||||
+<!DOCTYPE bindings [
|
+<!DOCTYPE bindings [
|
||||||
@ -1422,10 +1414,7 @@ new file mode 100644
|
|||||||
+ var acceptButton = docElt.getButton("accept");
|
+ var acceptButton = docElt.getButton("accept");
|
||||||
+ acceptButton.hidden = true;
|
+ acceptButton.hidden = true;
|
||||||
+ var cancelButton = docElt.getButton("cancel");
|
+ var cancelButton = docElt.getButton("cancel");
|
||||||
+
|
+ if (/Mac/.test(navigator.platform)) {
|
||||||
+ let { AppConstants } =
|
|
||||||
+ Components.utils.import("resource://gre/modules/AppConstants.jsm", {});
|
|
||||||
+ if (AppConstants.platform == "macosx") {
|
|
||||||
+ // no buttons on Mac except Help
|
+ // no buttons on Mac except Help
|
||||||
+ cancelButton.hidden = true;
|
+ cancelButton.hidden = true;
|
||||||
+ // Move Help button to the end
|
+ // Move Help button to the end
|
||||||
@ -1607,9 +1596,7 @@ new file mode 100644
|
|||||||
+ <parameter name="aPaneElement"/>
|
+ <parameter name="aPaneElement"/>
|
||||||
+ <body>
|
+ <body>
|
||||||
+ <![CDATA[
|
+ <![CDATA[
|
||||||
+ let { AppConstants } =
|
+ if (/Mac/.test(navigator.platform)) {
|
||||||
+ Components.utils.import("resource://gre/modules/AppConstants.jsm", {});
|
|
||||||
+ if (AppConstants.platform == "macosx") {
|
|
||||||
+ var paneTitle = aPaneElement.label;
|
+ var paneTitle = aPaneElement.label;
|
||||||
+ if (paneTitle != "")
|
+ if (paneTitle != "")
|
||||||
+ document.title = paneTitle;
|
+ document.title = paneTitle;
|
||||||
@ -1683,11 +1670,9 @@ new file mode 100644
|
|||||||
+ <property name="_shouldAnimate">
|
+ <property name="_shouldAnimate">
|
||||||
+ <getter>
|
+ <getter>
|
||||||
+ <![CDATA[
|
+ <![CDATA[
|
||||||
+ let { AppConstants } =
|
|
||||||
+ Components.utils.import("resource://gre/modules/AppConstants.jsm", {});
|
|
||||||
+ var psvc = Components.classes["@mozilla.org/preferences-service;1"]
|
+ var psvc = Components.classes["@mozilla.org/preferences-service;1"]
|
||||||
+ .getService(Components.interfaces.nsIPrefBranch);
|
+ .getService(Components.interfaces.nsIPrefBranch);
|
||||||
+ var animate = AppConstants.platform == "macosx";
|
+ var animate = /Mac/.test(navigator.platform);
|
||||||
+ try {
|
+ try {
|
||||||
+ animate = psvc.getBoolPref("browser.preferences.animateFadeIn");
|
+ animate = psvc.getBoolPref("browser.preferences.animateFadeIn");
|
||||||
+ }
|
+ }
|
||||||
@ -1854,7 +1839,7 @@ new file mode 100644
|
|||||||
+ <handlers>
|
+ <handlers>
|
||||||
+ <handler event="dialogaccept">
|
+ <handler event="dialogaccept">
|
||||||
+ <![CDATA[
|
+ <![CDATA[
|
||||||
+ if (!this._fireEvent("beforeaccept", this)){
|
+ if (!this._fireEvent("beforeaccept", this)) {
|
||||||
+ return false;
|
+ return false;
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
@ -2292,7 +2277,7 @@ diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/sy
|
|||||||
diff --git a/toolkit/xre/moz.build b/toolkit/xre/moz.build
|
diff --git a/toolkit/xre/moz.build b/toolkit/xre/moz.build
|
||||||
--- a/toolkit/xre/moz.build
|
--- a/toolkit/xre/moz.build
|
||||||
+++ b/toolkit/xre/moz.build
|
+++ b/toolkit/xre/moz.build
|
||||||
@@ -39,17 +39,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'co
|
@@ -40,17 +40,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'co
|
||||||
'updaterfileutils_osx.mm',
|
'updaterfileutils_osx.mm',
|
||||||
]
|
]
|
||||||
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'uikit':
|
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'uikit':
|
||||||
@ -2316,7 +2301,7 @@ diff --git a/toolkit/xre/nsKDEUtils.cpp b/toolkit/xre/nsKDEUtils.cpp
|
|||||||
new file mode 100644
|
new file mode 100644
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/toolkit/xre/nsKDEUtils.cpp
|
+++ b/toolkit/xre/nsKDEUtils.cpp
|
||||||
@@ -0,0 +1,339 @@
|
@@ -0,0 +1,344 @@
|
||||||
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
||||||
+/* This Source Code Form is subject to the terms of the Mozilla Public
|
+/* 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
|
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||||
@ -2337,6 +2322,11 @@ new file mode 100644
|
|||||||
+#include <sys/resource.h>
|
+#include <sys/resource.h>
|
||||||
+#include <unistd.h>
|
+#include <unistd.h>
|
||||||
+#include <X11/Xlib.h>
|
+#include <X11/Xlib.h>
|
||||||
|
+// copied from X11/X.h as a hack since for an unknown
|
||||||
|
+// reason it's not picked up from X11/X.h
|
||||||
|
+#ifndef None
|
||||||
|
+#define None 0L /* universal null resource or null atom */
|
||||||
|
+#endif
|
||||||
+
|
+
|
||||||
+//#define DEBUG_KDE
|
+//#define DEBUG_KDE
|
||||||
+#ifdef DEBUG_KDE
|
+#ifdef DEBUG_KDE
|
||||||
@ -3161,7 +3151,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
|
|||||||
diff --git a/widget/gtk/moz.build b/widget/gtk/moz.build
|
diff --git a/widget/gtk/moz.build b/widget/gtk/moz.build
|
||||||
--- a/widget/gtk/moz.build
|
--- a/widget/gtk/moz.build
|
||||||
+++ b/widget/gtk/moz.build
|
+++ b/widget/gtk/moz.build
|
||||||
@@ -90,16 +90,17 @@ else:
|
@@ -101,16 +101,17 @@ else:
|
||||||
include('/ipc/chromium/chromium-config.mozbuild')
|
include('/ipc/chromium/chromium-config.mozbuild')
|
||||||
|
|
||||||
FINAL_LIBRARY = 'xul'
|
FINAL_LIBRARY = 'xul'
|
||||||
@ -3534,25 +3524,25 @@ diff --git a/widget/gtk/nsFilePicker.h b/widget/gtk/nsFilePicker.h
|
|||||||
diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestParser.cpp
|
diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestParser.cpp
|
||||||
--- a/xpcom/components/ManifestParser.cpp
|
--- a/xpcom/components/ManifestParser.cpp
|
||||||
+++ b/xpcom/components/ManifestParser.cpp
|
+++ b/xpcom/components/ManifestParser.cpp
|
||||||
@@ -35,16 +35,17 @@
|
@@ -32,16 +32,17 @@
|
||||||
|
#include "nsTextFormatter.h"
|
||||||
|
#include "nsVersionComparator.h"
|
||||||
|
#include "nsXPCOMCIDInternal.h"
|
||||||
|
|
||||||
#include "nsIConsoleService.h"
|
#include "nsIConsoleService.h"
|
||||||
#include "nsIScriptError.h"
|
#include "nsIScriptError.h"
|
||||||
#include "nsIXULAppInfo.h"
|
#include "nsIXULAppInfo.h"
|
||||||
#include "nsIXULRuntime.h"
|
#include "nsIXULRuntime.h"
|
||||||
#ifdef MOZ_B2G_LOADER
|
|
||||||
#include "mozilla/XPTInterfaceInfoManager.h"
|
|
||||||
#endif
|
|
||||||
+#include "nsKDEUtils.h"
|
+#include "nsKDEUtils.h"
|
||||||
|
|
||||||
#ifdef MOZ_B2G_LOADER
|
using namespace mozilla;
|
||||||
#define XPTONLY_MANIFEST &nsComponentManagerImpl::XPTOnlyManifestManifest
|
|
||||||
#define XPTONLY_XPT &nsComponentManagerImpl::XPTOnlyManifestXPT
|
struct ManifestDirective
|
||||||
#else
|
{
|
||||||
#define XPTONLY_MANIFEST nullptr
|
const char* directive;
|
||||||
#define XPTONLY_XPT nullptr
|
int argc;
|
||||||
#endif
|
|
||||||
@@ -494,16 +495,17 @@ ParseManifest(NSLocationType aType, File
|
@@ -472,16 +473,17 @@ ParseManifest(NSLocationType aType, File
|
||||||
NS_NAMED_LITERAL_STRING(kRemoteEnabled, "remoteenabled");
|
NS_NAMED_LITERAL_STRING(kRemoteEnabled, "remoteenabled");
|
||||||
NS_NAMED_LITERAL_STRING(kRemoteRequired, "remoterequired");
|
NS_NAMED_LITERAL_STRING(kRemoteRequired, "remoterequired");
|
||||||
NS_NAMED_LITERAL_STRING(kApplication, "application");
|
NS_NAMED_LITERAL_STRING(kApplication, "application");
|
||||||
@ -3570,7 +3560,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
|
|||||||
NS_NAMED_LITERAL_STRING(kMain, "main");
|
NS_NAMED_LITERAL_STRING(kMain, "main");
|
||||||
NS_NAMED_LITERAL_STRING(kContent, "content");
|
NS_NAMED_LITERAL_STRING(kContent, "content");
|
||||||
|
|
||||||
@@ -554,44 +556,49 @@ ParseManifest(NSLocationType aType, File
|
@@ -532,44 +534,49 @@ ParseManifest(NSLocationType aType, File
|
||||||
CopyUTF8toUTF16(s, abi);
|
CopyUTF8toUTF16(s, abi);
|
||||||
abi.Insert(char16_t('_'), 0);
|
abi.Insert(char16_t('_'), 0);
|
||||||
abi.Insert(osTarget, 0);
|
abi.Insert(osTarget, 0);
|
||||||
@ -3620,7 +3610,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
|
|||||||
process = kMain;
|
process = kMain;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -694,25 +701,27 @@ ParseManifest(NSLocationType aType, File
|
@@ -672,25 +679,27 @@ ParseManifest(NSLocationType aType, File
|
||||||
TriState stOsVersion = eUnspecified;
|
TriState stOsVersion = eUnspecified;
|
||||||
TriState stOs = eUnspecified;
|
TriState stOs = eUnspecified;
|
||||||
TriState stABI = eUnspecified;
|
TriState stABI = eUnspecified;
|
||||||
@ -3648,7 +3638,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
|
|||||||
}
|
}
|
||||||
|
|
||||||
#if defined(MOZ_WIDGET_ANDROID)
|
#if defined(MOZ_WIDGET_ANDROID)
|
||||||
@@ -762,16 +771,17 @@ ParseManifest(NSLocationType aType, File
|
@@ -740,16 +749,17 @@ ParseManifest(NSLocationType aType, File
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!ok ||
|
if (!ok ||
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# HG changeset patch
|
# HG changeset patch
|
||||||
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
||||||
# Parent 5a29924228527f8882c83cf62d470963ea1ce62e
|
# Parent 5a29924228527f8882c83cf62d470963ea1ce62e
|
||||||
# Parent bf7b3a5853467b34f13465102a19b9c7c2524bd4
|
# Parent 4f39ed617c2f151a3a15903c7ae4471b66774e9e
|
||||||
Bug 583793 - Firefox interface language set to LANG, ignores LANGUAGE
|
Bug 583793 - Firefox interface language set to LANG, ignores LANGUAGE
|
||||||
|
|
||||||
diff --git a/intl/locale/nsLocaleService.cpp b/intl/locale/nsLocaleService.cpp
|
diff --git a/intl/locale/nsLocaleService.cpp b/intl/locale/nsLocaleService.cpp
|
||||||
@ -25,7 +25,7 @@ diff --git a/intl/locale/nsLocaleService.cpp b/intl/locale/nsLocaleService.cpp
|
|||||||
for( i = 0; i < LocaleListLength; i++ ) {
|
for( i = 0; i < LocaleListLength; i++ ) {
|
||||||
nsresult result;
|
nsresult result;
|
||||||
// setlocale( , "") evaluates LC_* and LANG
|
// setlocale( , "") evaluates LC_* and LANG
|
||||||
@@ -149,16 +150,21 @@ nsLocaleService::nsLocaleService(void)
|
@@ -149,16 +150,36 @@ nsLocaleService::nsLocaleService(void)
|
||||||
} else {
|
} else {
|
||||||
CopyASCIItoUTF16(lang, platformLocale);
|
CopyASCIItoUTF16(lang, platformLocale);
|
||||||
result = nsPosixLocale::GetXPLocale(lang, xpLocale);
|
result = nsPosixLocale::GetXPLocale(lang, xpLocale);
|
||||||
@ -35,9 +35,24 @@ diff --git a/intl/locale/nsLocaleService.cpp b/intl/locale/nsLocaleService.cpp
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
+ // LANGUAGE is overriding LC_MESSAGES
|
+ // 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) {
|
+ if (i == LC_MESSAGES && language && *language) {
|
||||||
+ CopyASCIItoUTF16(language, platformLocale);
|
+#define LANGUAGE_SEP ":"
|
||||||
+ result = nsPosixLocale::GetXPLocale(language, xpLocale);
|
+ 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, xpLocale);
|
||||||
resultLocale->AddCategory(category_platform, platformLocale);
|
resultLocale->AddCategory(category_platform, platformLocale);
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# HG changeset patch
|
# HG changeset patch
|
||||||
# Parent 33024abb3c58dab7239e32388df58e14f99defd5
|
# Parent 33024abb3c58dab7239e32388df58e14f99defd5
|
||||||
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
# User Wolfgang Rosenauer <wr@rosenauer.org>
|
||||||
# Parent 17196b2f3cd2bcba6a5b54f4496b5762a593c5b3
|
# Parent 6005a673f4c68ed05294bedcf45d6d962bf303e6
|
||||||
|
|
||||||
diff --git a/media/gmp-clearkey/0.1/openaes/oaes_lib.c b/media/gmp-clearkey/0.1/openaes/oaes_lib.c
|
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
|
--- a/media/gmp-clearkey/0.1/openaes/oaes_lib.c
|
||||||
@ -20,7 +20,7 @@ diff --git a/media/gmp-clearkey/0.1/openaes/oaes_lib.c b/media/gmp-clearkey/0.1/
|
|||||||
#include <time.h>
|
#include <time.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#include "mozilla/Snprintf.h"
|
#include "mozilla/Sprintf.h"
|
||||||
|
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
#include <process.h>
|
#include <process.h>
|
||||||
|
@ -7,13 +7,13 @@ References:
|
|||||||
diff --git a/old-configure.in b/old-configure.in
|
diff --git a/old-configure.in b/old-configure.in
|
||||||
--- a/old-configure.in
|
--- a/old-configure.in
|
||||||
+++ b/old-configure.in
|
+++ b/old-configure.in
|
||||||
@@ -6495,16 +6495,31 @@ if test "$MOZ_ENABLE_SKIA"; then
|
@@ -5358,16 +5358,31 @@ esac
|
||||||
AC_DEFINE(USE_SKIA_GPU)
|
|
||||||
AC_SUBST(MOZ_ENABLE_SKIA_GPU)
|
AC_SUBST(MOZ_TREE_CAIRO)
|
||||||
fi
|
AC_SUBST_LIST(MOZ_CAIRO_CFLAGS)
|
||||||
fi
|
AC_SUBST_LIST(MOZ_CAIRO_LIBS)
|
||||||
AC_SUBST(MOZ_ENABLE_SKIA)
|
AC_SUBST_LIST(MOZ_CAIRO_OSLIBS)
|
||||||
AC_SUBST_LIST(SKIA_INCLUDES)
|
AC_SUBST(MOZ_TREE_PIXMAN)
|
||||||
|
|
||||||
dnl ========================================================
|
dnl ========================================================
|
||||||
+dnl Check for nss-shared-helper
|
+dnl Check for nss-shared-helper
|
||||||
@ -42,7 +42,7 @@ diff --git a/old-configure.in b/old-configure.in
|
|||||||
diff --git a/security/manager/ssl/moz.build b/security/manager/ssl/moz.build
|
diff --git a/security/manager/ssl/moz.build b/security/manager/ssl/moz.build
|
||||||
--- a/security/manager/ssl/moz.build
|
--- a/security/manager/ssl/moz.build
|
||||||
+++ b/security/manager/ssl/moz.build
|
+++ b/security/manager/ssl/moz.build
|
||||||
@@ -159,16 +159,19 @@ if CONFIG['MOZ_XUL']:
|
@@ -160,16 +160,19 @@ if CONFIG['MOZ_XUL']:
|
||||||
]
|
]
|
||||||
|
|
||||||
UNIFIED_SOURCES += [
|
UNIFIED_SOURCES += [
|
||||||
@ -87,7 +87,7 @@ diff --git a/security/manager/ssl/nsNSSComponent.cpp b/security/manager/ssl/nsNS
|
|||||||
#include "SharedSSLState.h"
|
#include "SharedSSLState.h"
|
||||||
#include "cert.h"
|
#include "cert.h"
|
||||||
#include "certdb.h"
|
#include "certdb.h"
|
||||||
@@ -1491,17 +1498,31 @@ nsNSSComponent::InitializeNSS()
|
@@ -1702,17 +1709,31 @@ nsNSSComponent::InitializeNSS()
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -122,14 +122,14 @@ diff --git a/security/manager/ssl/nsNSSComponent.cpp b/security/manager/ssl/nsNS
|
|||||||
diff --git a/toolkit/library/moz.build b/toolkit/library/moz.build
|
diff --git a/toolkit/library/moz.build b/toolkit/library/moz.build
|
||||||
--- a/toolkit/library/moz.build
|
--- a/toolkit/library/moz.build
|
||||||
+++ b/toolkit/library/moz.build
|
+++ b/toolkit/library/moz.build
|
||||||
@@ -209,16 +209,18 @@ if CONFIG['OS_ARCH'] == 'Linux' and CONF
|
@@ -220,16 +220,18 @@ OS_LIBS += CONFIG['MOZ_CAIRO_OSLIBS']
|
||||||
OS_LIBS += [
|
|
||||||
'rt',
|
|
||||||
]
|
|
||||||
|
|
||||||
OS_LIBS += CONFIG['MOZ_CAIRO_OSLIBS']
|
|
||||||
OS_LIBS += CONFIG['MOZ_WEBRTC_X11_LIBS']
|
OS_LIBS += CONFIG['MOZ_WEBRTC_X11_LIBS']
|
||||||
OS_LIBS += CONFIG['MOZ_SERVO_LIBS']
|
|
||||||
|
if CONFIG['SERVO_TARGET_DIR']:
|
||||||
|
if CONFIG['_MSC_VER']:
|
||||||
|
OS_LIBS += ['%s/geckoservo' % CONFIG['SERVO_TARGET_DIR']]
|
||||||
|
else:
|
||||||
|
OS_LIBS += ['-L%s' % CONFIG['SERVO_TARGET_DIR'], '-lgeckoservo']
|
||||||
|
|
||||||
+OS_LIBS += sorted(CONFIG['NSSHELPER_LIBS'])
|
+OS_LIBS += sorted(CONFIG['NSSHELPER_LIBS'])
|
||||||
+
|
+
|
||||||
|
45
mozilla-skia-ppc-endianess.patch
Normal file
45
mozilla-skia-ppc-endianess.patch
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
|
||||||
|
# HG changeset patch
|
||||||
|
# User Mike Hommey <mh+mozilla@glandium.org>
|
||||||
|
# Date 1479812942 -32400
|
||||||
|
# Node ID a6d015fd1add5e16cf37f5868cd2734bafb709b4
|
||||||
|
# Parent 319e03b9e8a22a8fba3756cb1afc8b9e7a6724c8
|
||||||
|
Bug 1319389 - Generically set SK_CPU_[BL]ENDIAN based on __BYTE_ORDER__ when available. r?jrmuizel
|
||||||
|
|
||||||
|
|
||||||
|
diff --git a/gfx/skia/skia/include/core/SkPreConfig.h b/gfx/skia/skia/include/core/SkPreConfig.h
|
||||||
|
--- a/gfx/skia/skia/include/core/SkPreConfig.h
|
||||||
|
+++ b/gfx/skia/skia/include/core/SkPreConfig.h
|
||||||
|
@@ -67,25 +67,29 @@
|
||||||
|
|
||||||
|
#if !defined(SK_WARN_UNUSED_RESULT)
|
||||||
|
#define SK_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
//////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
#if !defined(SK_CPU_BENDIAN) && !defined(SK_CPU_LENDIAN)
|
||||||
|
- #if defined(__sparc) || defined(__sparc__) || \
|
||||||
|
+ #if defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__)
|
||||||
|
+ #define SK_CPU_BENDIAN
|
||||||
|
+ #elif defined(__BYTE_ORDER__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)
|
||||||
|
+ #define SK_CPU_LENDIAN
|
||||||
|
+ #elif defined(__sparc) || defined(__sparc__) || \
|
||||||
|
defined(_POWER) || defined(__powerpc__) || \
|
||||||
|
defined(__ppc__) || defined(__hppa) || \
|
||||||
|
defined(__PPC__) || defined(__PPC64__) || \
|
||||||
|
defined(_MIPSEB) || defined(__ARMEB__) || \
|
||||||
|
defined(__s390__) || \
|
||||||
|
(defined(__sh__) && defined(__BIG_ENDIAN__)) || \
|
||||||
|
(defined(__ia64) && defined(__BIG_ENDIAN__))
|
||||||
|
- #define SK_CPU_BENDIAN
|
||||||
|
+ #define SK_CPU_BENDIAN
|
||||||
|
#else
|
||||||
|
#define SK_CPU_LENDIAN
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
//////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
#if defined(__i386) || defined(_M_IX86) || defined(__x86_64__) || defined(_M_X64)
|
||||||
|
|
@ -1,2 +1,2 @@
|
|||||||
REV=8612c3320053
|
REV=327e081221b0
|
||||||
REPO=http://hg.mozilla.org/releases/mozilla-release
|
REPO=http://hg.mozilla.org/releases/mozilla-release
|
||||||
|
Loading…
Reference in New Issue
Block a user