1
0

- update to Firefox 17.0 (bnc#790140)

* MFSA 2012-91/CVE-2012-5842/CVE-2012-5843
    Miscellaneous memory safety hazards
  * MFSA 2012-92/CVE-2012-4202 (bmo#758200)
    Buffer overflow while rendering GIF images
  * MFSA 2012-93/CVE-2012-4201 (bmo#747607)
    evalInSanbox location context incorrectly applied
  * MFSA 2012-94/CVE-2012-5836 (bmo#792857)
    Crash when combining SVG text on path with CSS
  * MFSA 2012-95/CVE-2012-4203 (bmo#765628)
    Javascript: URLs run in privileged context on New Tab page
  * MFSA 2012-96/CVE-2012-4204 (bmo#778603)
    Memory corruption in str_unescape
  * MFSA 2012-97/CVE-2012-4205 (bmo#779821)
    XMLHttpRequest inherits incorrect principal within sandbox
  * MFSA 2012-99/CVE-2012-4208 (bmo#798264)
    XrayWrappers exposes chrome-only properties when not in chrome
    compartment
  * MFSA 2012-100/CVE-2012-5841 (bmo#805807)
    Improper security filtering for cross-origin wrappers
  * MFSA 2012-101/CVE-2012-4207 (bmo#801681)
    Improper character decoding in HZ-GB-2312 charset
  * MFSA 2012-102/CVE-2012-5837 (bmo#800363)
    Script entered into Developer Toolbar runs with chrome privileges
  * MFSA 2012-103/CVE-2012-4209 (bmo#792405)
    Frames can shadow top.location
  * MFSA 2012-104/CVE-2012-4210 (bmo#796866)
    CSS and HTML injection through Style Inspector
  * MFSA 2012-105/CVE-2012-4214/CVE-2012-4215/CVE-2012-4216/
    CVE-2012-5829/CVE-2012-5839/CVE-2012-5840/CVE-2012-4212/

OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/MozillaFirefox?expand=0&rev=303
This commit is contained in:
Wolfgang Rosenauer 2012-11-20 20:34:15 +00:00 committed by Git OBS Bridge
parent 42ce70cbed
commit 662e67c339
20 changed files with 539 additions and 521 deletions

View File

@ -1,3 +1,53 @@
-------------------------------------------------------------------
Tue Nov 20 19:52:02 UTC 2012 - wr@rosenauer.org
- update to Firefox 17.0 (bnc#790140)
* MFSA 2012-91/CVE-2012-5842/CVE-2012-5843
Miscellaneous memory safety hazards
* MFSA 2012-92/CVE-2012-4202 (bmo#758200)
Buffer overflow while rendering GIF images
* MFSA 2012-93/CVE-2012-4201 (bmo#747607)
evalInSanbox location context incorrectly applied
* MFSA 2012-94/CVE-2012-5836 (bmo#792857)
Crash when combining SVG text on path with CSS
* MFSA 2012-95/CVE-2012-4203 (bmo#765628)
Javascript: URLs run in privileged context on New Tab page
* MFSA 2012-96/CVE-2012-4204 (bmo#778603)
Memory corruption in str_unescape
* MFSA 2012-97/CVE-2012-4205 (bmo#779821)
XMLHttpRequest inherits incorrect principal within sandbox
* MFSA 2012-99/CVE-2012-4208 (bmo#798264)
XrayWrappers exposes chrome-only properties when not in chrome
compartment
* MFSA 2012-100/CVE-2012-5841 (bmo#805807)
Improper security filtering for cross-origin wrappers
* MFSA 2012-101/CVE-2012-4207 (bmo#801681)
Improper character decoding in HZ-GB-2312 charset
* MFSA 2012-102/CVE-2012-5837 (bmo#800363)
Script entered into Developer Toolbar runs with chrome privileges
* MFSA 2012-103/CVE-2012-4209 (bmo#792405)
Frames can shadow top.location
* MFSA 2012-104/CVE-2012-4210 (bmo#796866)
CSS and HTML injection through Style Inspector
* MFSA 2012-105/CVE-2012-4214/CVE-2012-4215/CVE-2012-4216/
CVE-2012-5829/CVE-2012-5839/CVE-2012-5840/CVE-2012-4212/
CVE-2012-4213/CVE-2012-4217/CVE-2012-4218
Use-after-free and buffer overflow issues found using Address
Sanitizer
* MFSA 2012-106/CVE-2012-5830/CVE-2012-5833/CVE-2012-5835/CVE-2012-5838
Use-after-free, buffer overflow, and memory corruption issues
found using Address Sanitizer
- rebased patches
- disabled WebRTC since build is broken (bmo#776877)
-------------------------------------------------------------------
Tue Nov 20 15:42:55 UTC 2012 - pcerny@suse.com
- build on SLE11
* mozilla-gcc43-enums.patch
* mozilla-gcc43-template_hacks.patch
* mozilla-gcc43-templates_instantiation.patch
------------------------------------------------------------------- -------------------------------------------------------------------
Wed Oct 24 08:27:29 UTC 2012 - wr@rosenauer.org Wed Oct 24 08:27:29 UTC 2012 - wr@rosenauer.org

View File

@ -17,8 +17,8 @@
# #
%define major 16 %define major 17
%define mainver %major.0.2 %define mainver %major.0
%define update_channel release %define update_channel release
Name: MozillaFirefox Name: MozillaFirefox
@ -54,7 +54,7 @@ BuildRequires: pkgconfig(gstreamer-plugins-base-0.10)
%endif %endif
Version: %{mainver} Version: %{mainver}
Release: 0 Release: 0
%define releasedate 2012102400 %define releasedate 2012111600
Provides: firefox = %{mainver} Provides: firefox = %{mainver}
Provides: firefox = %{version}-%{release} Provides: firefox = %{version}-%{release}
Provides: web_browser Provides: web_browser
@ -94,10 +94,14 @@ Patch8: mozilla-ntlm-full-path.patch
Patch9: mozilla-repo.patch Patch9: mozilla-repo.patch
Patch10: mozilla-sle11.patch Patch10: mozilla-sle11.patch
Patch11: mozilla-disable-neon-option.patch Patch11: mozilla-disable-neon-option.patch
Patch13: mozilla-arm-disable-edsp.patch Patch12: mozilla-arm-disable-edsp.patch
Patch15: mozilla-gstreamer.patch Patch13: mozilla-gstreamer.patch
Patch16: mozilla-ppc.patch Patch14: mozilla-ppc.patch
Patch17: mozilla-gstreamer-760140.patch Patch15: mozilla-gstreamer-760140.patch
# SLE11 patches
Patch20: mozilla-gcc43-enums.patch
Patch21: mozilla-gcc43-template_hacks.patch
Patch22: mozilla-gcc43-templates_instantiation.patch
# Firefox/browser # Firefox/browser
Patch30: firefox-browser-css.patch Patch30: firefox-browser-css.patch
Patch31: firefox-kde.patch Patch31: firefox-kde.patch
@ -112,10 +116,6 @@ Requires: %{name}-branding > 4.0
Requires: mozilla-nspr >= %(rpm -q --queryformat '%{VERSION}' mozilla-nspr) Requires: mozilla-nspr >= %(rpm -q --queryformat '%{VERSION}' mozilla-nspr)
Requires: mozilla-nss >= %(rpm -q --queryformat '%{VERSION}' mozilla-nss) Requires: mozilla-nss >= %(rpm -q --queryformat '%{VERSION}' mozilla-nss)
Recommends: libcanberra0 Recommends: libcanberra0
# libproxy's mozjs pacrunner crashes FF (bnc#759123)
%if %suse_version < 1220
Obsoletes: libproxy1-pacrunner-mozjs <= 0.4.7
%endif
%define firefox_appid \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\} %define firefox_appid \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
%define _use_internal_dependency_generator 0 %define _use_internal_dependency_generator 0
%define __find_requires sh %{SOURCE4} %define __find_requires sh %{SOURCE4}
@ -227,10 +227,16 @@ cd $RPM_BUILD_DIR/mozilla
%patch10 -p1 %patch10 -p1
%endif %endif
#%patch11 -p1 #%patch11 -p1
%patch12 -p1
%patch13 -p1 %patch13 -p1
%patch14 -p1
%patch15 -p1 %patch15 -p1
%patch16 -p1 # SLE patches
%patch17 -p1 %if %suse_version <= 1110
%patch20 -p1
%patch21 -p1
%patch22 -p1
%endif
# #
%patch30 -p1 %patch30 -p1
%if %suse_version >= 1110 %if %suse_version >= 1110
@ -293,6 +299,7 @@ ac_add_options --disable-debug
ac_add_options --enable-startup-notification ac_add_options --enable-startup-notification
#ac_add_options --enable-chrome-format=jar #ac_add_options --enable-chrome-format=jar
ac_add_options --enable-update-channel=%{update_channel} ac_add_options --enable-update-channel=%{update_channel}
ac_add_options --disable-webrtc # webrtc build is broken for system NSPR
EOF EOF
%if %suse_version > 1130 %if %suse_version > 1130
cat << EOF >> $MOZCONFIG cat << EOF >> $MOZCONFIG
@ -369,7 +376,6 @@ for locale in $(awk '{ print $1; }' ../mozilla/browser/locales/shipped-locales);
make -C browser/locales langpack-$locale make -C browser/locales langpack-$locale
cp -rL dist/xpi-stage/locale-$locale \ cp -rL dist/xpi-stage/locale-$locale \
$RPM_BUILD_ROOT%{progdir}/extensions/langpack-$locale@firefox.mozilla.org $RPM_BUILD_ROOT%{progdir}/extensions/langpack-$locale@firefox.mozilla.org
rm $RPM_BUILD_ROOT%{progdir}/extensions/langpack-$locale@firefox.mozilla.org/chrome/.mkdir.done
# remove prefs, profile defaults, and hyphenation from langpack # remove prefs, profile defaults, and hyphenation from langpack
rm -rf $RPM_BUILD_ROOT%{progdir}/extensions/langpack-$locale@firefox.mozilla.org/defaults rm -rf $RPM_BUILD_ROOT%{progdir}/extensions/langpack-$locale@firefox.mozilla.org/defaults
rm -rf $RPM_BUILD_ROOT%{progdir}/extensions/langpack-$locale@firefox.mozilla.org/hyphenation rm -rf $RPM_BUILD_ROOT%{progdir}/extensions/langpack-$locale@firefox.mozilla.org/hyphenation
@ -394,6 +400,8 @@ find $RPM_BUILD_ROOT%{progdir} \
-name "*.txt" -o \ -name "*.txt" -o \
-name "*.xml" -o \ -name "*.xml" -o \
-name "*.css" | xargs chmod a-x -name "*.css" | xargs chmod a-x
# remove mkdir.done files from installed base
find $RPM_BUILD_ROOT%{progdir} -name ".mkdir.done" | xargs rm
# overwrite the mozilla start-script and link it to /usr/bin # overwrite the mozilla start-script and link it to /usr/bin
mkdir --parents $RPM_BUILD_ROOT/usr/bin mkdir --parents $RPM_BUILD_ROOT/usr/bin
sed "s:%%PREFIX:%{_prefix}:g sed "s:%%PREFIX:%{_prefix}:g

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1 version https://git-lfs.github.com/spec/v1
oid sha256:ea7b236553dd3b2ff8cfb126763af6a72a40564d34babe19f5be7f7b57150387 oid sha256:de3c0cf1d4cecef9e1195fb8f112d995558aa9e9767dac6554fd878f10ed84b5
size 29935 size 29941

View File

@ -2,8 +2,8 @@
CHANNEL="release" CHANNEL="release"
BRANCH="releases/mozilla-$CHANNEL" BRANCH="releases/mozilla-$CHANNEL"
RELEASE_TAG="FIREFOX_16_0_2_RELEASE" RELEASE_TAG="FIREFOX_17_0_RELEASE"
VERSION="16.0.2" VERSION="17.0"
# mozilla # mozilla
echo "cloning $BRANCH..." echo "cloning $BRANCH..."

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:dd8749befde92bb45dabf2f043d022aeca439eead53e64cec16d8619307bacf9
size 90688319

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0956aa518475fa8b6e019efd95cf2d6378c7c5c720db5c23f7c60cb9e34ceac5
size 92114962

View File

@ -1,6 +1,6 @@
# HG changeset patch # HG changeset patch
# User Wolfgang Rosenauer <wr@rosenauer.org> # User Wolfgang Rosenauer <wr@rosenauer.org>
# Parent 5a741476f1d87380057f9fa02c6a580aed6e81ff # Parent ba2d9b1374e15e7c339a44452169d0afac2ca82e
With openSUSE 11.4 the desktop file name changed from MozillaFirefox to firefox With openSUSE 11.4 the desktop file name changed from MozillaFirefox to firefox
diff --git a/browser/components/preferences/advanced.js b/browser/components/preferences/advanced.js diff --git a/browser/components/preferences/advanced.js b/browser/components/preferences/advanced.js

View File

@ -2,7 +2,7 @@ diff --git a/browser/base/content/browser-kde.xul b/browser/base/content/browser
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,1210 @@ @@ -0,0 +1,1272 @@
+#filter substitution +#filter substitution
+<?xml version="1.0"?> +<?xml version="1.0"?>
+# -*- Mode: HTML -*- +# -*- Mode: HTML -*-
@ -14,7 +14,6 @@ new file mode 100644
+<?xml-stylesheet href="chrome://browser/content/browser.css" type="text/css"?> +<?xml-stylesheet href="chrome://browser/content/browser.css" type="text/css"?>
+<?xml-stylesheet href="chrome://browser/content/places/places.css" type="text/css"?> +<?xml-stylesheet href="chrome://browser/content/places/places.css" type="text/css"?>
+<?xml-stylesheet href="chrome://browser/skin/devtools/common.css" type="text/css"?> +<?xml-stylesheet href="chrome://browser/skin/devtools/common.css" type="text/css"?>
+<?xml-stylesheet href="chrome://browser/skin/devtools/webconsole.css" type="text/css"?>
+<?xml-stylesheet href="chrome://browser/skin/" type="text/css"?> +<?xml-stylesheet href="chrome://browser/skin/" type="text/css"?>
+ +
+<?xul-overlay href="chrome://global/content/editMenuOverlay.xul"?> +<?xul-overlay href="chrome://global/content/editMenuOverlay.xul"?>
@ -60,9 +59,6 @@ new file mode 100644
+#include global-scripts.inc +#include global-scripts.inc
+<script type="application/javascript" src="chrome://browser/content/nsContextMenu.js"/> +<script type="application/javascript" src="chrome://browser/content/nsContextMenu.js"/>
+ +
+#ifdef MOZ_SAFE_BROWSING
+<script type="application/javascript" src="chrome://browser/content/safebrowsing/sb-loader.js"/>
+#endif
+<script type="application/javascript" src="chrome://global/content/contentAreaUtils.js"/> +<script type="application/javascript" src="chrome://global/content/contentAreaUtils.js"/>
+ +
+<script type="application/javascript" src="chrome://browser/content/places/editBookmarkOverlay.js"/> +<script type="application/javascript" src="chrome://browser/content/places/editBookmarkOverlay.js"/>
@ -187,7 +183,45 @@ new file mode 100644
+ </hbox> + </hbox>
+ </panel> + </panel>
+ +
+ <panel id="editSharePopup" + <panel id="socialActivatedNotification"
+ type="arrow"
+ hidden="true"
+ consumeoutsideclicks="true"
+ align="start"
+ role="alert">
+ <hbox flex="1">
+ <image src="chrome://browser/content/social-icon.png" class="popup-notification-icon"/>
+ <vbox flex="1">
+ <description id="social-activation-message" class="popup-notification-description"/>
+ <spacer flex="1"/>
+ <hbox pack="end" align="center" class="popup-notification-button-container">
+#ifndef XP_UNIX
+ <button id="social-undoactivation-button"
+ label="&social.activated.undobutton.label;"
+ accesskey="&social.activated.undobutton.accesskey;"
+ onclick="SocialUI.undoActivation();"/>
+ <button default="true"
+ autofocus="autofocus"
+ label="&social.ok.label;"
+ accesskey="&social.ok.accesskey;"
+ oncommand="SocialUI.notificationPanel.hidePopup();"/>
+#else
+ <button default="true"
+ autofocus="autofocus"
+ label="&social.ok.label;"
+ accesskey="&social.ok.accesskey;"
+ oncommand="SocialUI.notificationPanel.hidePopup();"/>
+ <button id="social-undoactivation-button"
+ label="&social.activated.undobutton.label;"
+ accesskey="&social.activated.undobutton.accesskey;"
+ onclick="SocialUI.undoActivation();"/>
+#endif
+ </hbox>
+ </vbox>
+ </hbox>
+ </panel>
+
+ <panel id="unsharePopup"
+ type="arrow" + type="arrow"
+ orient="vertical" + orient="vertical"
+ ignorekeys="true" + ignorekeys="true"
@ -195,40 +229,59 @@ new file mode 100644
+ onpopupshown="SocialShareButton.panelShown(event);" + onpopupshown="SocialShareButton.panelShown(event);"
+ consumeoutsideclicks="true" + consumeoutsideclicks="true"
+ level="top"> + level="top">
+ <hbox id="editSharePopupBottomButtons" pack="end"> + <!-- Note that 'label', 'accesskey', 'value' and 'aria-label' attributes
+#ifdef XP_UNIX + for many of these elements are supplied by the provider and filled
+ <button id="editSharePopupUndoButton" + in at runtime
+ class="editSharePopupBottomButton" + -->
+ label="&social.sharePopup.undo.label;" + <row id="unsharePopupHeader" align="center">
+ accesskey="&social.sharePopup.undo.accesskey;" + <vbox align="center">
+ <image id="socialUserPortrait" onclick="SocialUI.showProfile();"/>
+ </vbox>
+ <vbox id="unsharePopupText">
+ <button id="socialUserDisplayName" pack="start"
+ oncommand="SocialUI.showProfile();"/>
+ <spacer flex="1"/>
+ <label id="socialUserRecommendedText"/>
+ </vbox>
+ </row>
+ <hbox id="unsharePopupBottomButtons" pack="end">
+#ifndef XP_UNIX
+ <button id="unsharePopupStopSharingButton"
+ class="unsharePopupBottomButton"
+ command="Social:UnsharePage"/> + command="Social:UnsharePage"/>
+ <button id="editSharePopupOkButton" + <button id="unsharePopupContinueSharingButton"
+ class="editSharePopupBottomButton" + class="unsharePopupBottomButton"
+ default="true" + default="true"
+ autofocus="autofocus" + autofocus="autofocus"
+ label="&social.sharePopup.ok.label;" + oncommand="SocialShareButton.dismissUnsharePopup();"/>
+ accesskey="&social.sharePopup.ok.accesskey;"
+ oncommand="SocialShareButton.dismissSharePopup();"/>
+#else +#else
+ <button id="editSharePopupOkButton" + <button id="unsharePopupContinueSharingButton"
+ class="editSharePopupBottomButton" + class="unsharePopupBottomButton"
+ default="true" + default="true"
+ autofocus="autofocus" + autofocus="autofocus"
+ label="&social.sharePopup.ok.label;" + oncommand="SocialShareButton.dismissUnsharePopup();"/>
+ accesskey="&social.sharePopup.ok.accesskey;" + <button id="unsharePopupStopSharingButton"
+ oncommand="SocialShareButton.dismissSharePopup();"/> + class="unsharePopupBottomButton"
+ <button id="editSharePopupUndoButton"
+ class="editSharePopupBottomButton"
+ label="&social.sharePopup.undo.label;"
+ accesskey="&social.sharePopup.undo.accesskey;"
+ command="Social:UnsharePage"/> + command="Social:UnsharePage"/>
+#endif +#endif
+ </hbox> + </hbox>
+ </panel> + </panel>
+ +
+ <panel id="social-notification-panel" type="arrow" hidden="true" noautofocus="true"> + <panel id="social-notification-panel"
+ <browser id="social-notification-browser" type="content" flex="1"/> + class="social-panel"
+ </panel> + type="arrow"
+ hidden="true"
+ consumeoutsideclicks="true"
+ noautofocus="true"/>
+ <panel id="social-flyout-panel"
+ class="social-panel"
+ onpopupshown="SocialFlyout.onShown()"
+ onpopuphidden="SocialFlyout.onHidden()"
+ side="right"
+ type="arrow"
+ hidden="true"
+ noautofocus="true"
+ position="topcenter topright"/>
+ +
+ <menupopup id="inspector-node-popup"> + <menupopup id="inspector-node-popup">
+ <menuitem id="inspectorHTMLCopyInner" + <menuitem id="inspectorHTMLCopyInner"
@ -522,6 +575,7 @@ new file mode 100644
+ onblur="setTimeout(function() document.getElementById('identity-box').style.MozUserFocus = '', 0);"> + onblur="setTimeout(function() document.getElementById('identity-box').style.MozUserFocus = '', 0);">
+ <box id="notification-popup-box" hidden="true" align="center"> + <box id="notification-popup-box" hidden="true" align="center">
+ <image id="default-notification-icon" class="notification-anchor-icon" role="button"/> + <image id="default-notification-icon" class="notification-anchor-icon" role="button"/>
+ <image id="identity-notification-icon" class="notification-anchor-icon" role="button"/>
+ <image id="geo-notification-icon" class="notification-anchor-icon" role="button"/> + <image id="geo-notification-icon" class="notification-anchor-icon" role="button"/>
+ <image id="addons-notification-icon" class="notification-anchor-icon" role="button"/> + <image id="addons-notification-icon" class="notification-anchor-icon" role="button"/>
+ <image id="indexedDB-notification-icon" class="notification-anchor-icon" role="button"/> + <image id="indexedDB-notification-icon" class="notification-anchor-icon" role="button"/>
@ -613,43 +667,44 @@ new file mode 100644
+ onclick="BrowserGoHome(event);" + onclick="BrowserGoHome(event);"
+ aboutHomeOverrideTooltip="&abouthome.pageTitle;"/> + aboutHomeOverrideTooltip="&abouthome.pageTitle;"/>
+ +
+ <toolbaritem id="social-toolbar-button" + <toolbaritem id="social-toolbar-item"
+ class="toolbarbutton-1 chromeclass-toolbar-additional" + class="chromeclass-toolbar-additional"
+ removable="false" + removable="false"
+ title="&socialToolbar.title;" + title="&socialToolbar.title;"
+ hidden="true"> + hidden="true">
+ <hbox id="social-toolbar-button-box" class="social-statusarea-container"> + <toolbarbutton id="social-provider-button"
+ <button id="social-provider-image" type="menu"> + class="toolbarbutton-1"
+ type="menu">
+ <menupopup id="social-statusarea-popup"> + <menupopup id="social-statusarea-popup">
+ <hbox id="social-statusarea-user" pack="left" align="center"> + <menuitem id="social-statusarea-user" pack="start" align="center" class="menuitem-iconic"
+ onclick="SocialUI.showProfile(); document.getElementById('social-statusarea-popup').hidePopup();">
+ <image id="social-statusarea-user-portrait"/> + <image id="social-statusarea-user-portrait"/>
+ <vbox> + <vbox>
+ <label id="social-statusarea-notloggedin" + <label id="social-statusarea-notloggedin"
+ value="&social.notLoggedIn.label;"/> + value="&social.notLoggedIn.label;"/>
+ <button id="social-statusarea-username" + <label id="social-statusarea-username"/>
+ oncommand="SocialUI.showProfile(); document.getElementById('social-statusarea-popup').hidePopup();"/>
+ </vbox> + </vbox>
+ </hbox> + </menuitem>
+#ifndef XP_WIN
+ <menuseparator/>
+#endif
+ <menuitem id="social-toggle-sidebar-menuitem"
+ type="checkbox"
+ autocheck="false"
+ command="Social:ToggleSidebar"
+ label="&social.toggleSidebar.label;"
+ accesskey="&social.toggleSidebar.accesskey;"/>
+ <menuitem id="social-toggle-notifications-menuitem"
+ type="checkbox"
+ autocheck="false"
+ command="Social:ToggleNotifications"
+ label="&social.toggleNotifications.label;"
+ accesskey="&social.toggleNotifications.accesskey;"/>
+ <menuseparator/>
+ <menuitem id="social-remove-menuitem"
+ oncommand="SocialUI.disableWithConfirmation();"/>
+ </menupopup> + </menupopup>
+ </button> + </toolbarbutton>
+ <hbox id="social-status-iconbox" flex="1">
+ <box class="social-notification-icon-container" collapsed="true"
+ onclick="SocialToolbar.showAmbientPopup(this);">
+ <image class="social-notification-icon-image"/>
+ <box class="social-notification-icon-counter" collapsed="true"/>
+ </box>
+ <box class="social-notification-icon-container" collapsed="true"
+ onclick="SocialToolbar.showAmbientPopup(this);">
+ <image class="social-notification-icon-image"/>
+ <box class="social-notification-icon-counter" collapsed="true"/>
+ </box>
+ <box class="social-notification-icon-container" collapsed="true"
+ onclick="SocialToolbar.showAmbientPopup(this);">
+ <image class="social-notification-icon-image"/>
+ <box class="social-notification-icon-counter" collapsed="true"/>
+ </box>
+ </hbox>
+ </hbox>
+ </toolbaritem> + </toolbaritem>
+ +
+ <toolbaritem id="bookmarks-menu-button-container" + <toolbaritem id="bookmarks-menu-button-container"
@ -737,7 +792,7 @@ new file mode 100644
+ </toolbarbutton> + </toolbarbutton>
+ </toolbaritem> + </toolbaritem>
+ +
+ <hbox id="window-controls" hidden="true" fullscreencontrol="true" pack="end"> + <hbox id="window-controls" hidden="true" pack="end">
+ <toolbarbutton id="minimize-button" + <toolbarbutton id="minimize-button"
+ tooltiptext="&fullScreenMinimize.tooltip;" + tooltiptext="&fullScreenMinimize.tooltip;"
+ oncommand="window.minimize();"/> + oncommand="window.minimize();"/>
@ -895,14 +950,14 @@ new file mode 100644
+ tooltiptext="&printButton.tooltip;"/> + tooltiptext="&printButton.tooltip;"/>
+ +
+ <!-- This is a placeholder for the Downloads Indicator. It is visible + <!-- This is a placeholder for the Downloads Indicator. It is visible
+ only during the customization of the toolbar or in the palette, and + during the customization of the toolbar, in the palette, and before
+ is replaced when customization is done. --> + the Downloads Indicator overlay is loaded. -->
+ <toolbarbutton id="downloads-button" class="toolbarbutton-1 chromeclass-toolbar-additional" + <toolbarbutton id="downloads-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
+ observes="Tools:Downloads" + oncommand="DownloadsIndicatorView.onCommand(event);"
+ ondrop="DownloadsButtonDNDObserver.onDrop(event)" + ondrop="DownloadsIndicatorView.onDrop(event);"
+ ondragover="DownloadsButtonDNDObserver.onDragOver(event)" + ondragover="DownloadsIndicatorView.onDragOver(event);"
+ ondragenter="DownloadsButtonDNDObserver.onDragOver(event)" + ondragenter="DownloadsIndicatorView.onDragOver(event);"
+ ondragexit="DownloadsButtonDNDObserver.onDragExit(event)" + ondragleave="DownloadsIndicatorView.onDragLeave(event);"
+ label="&downloads.label;" + label="&downloads.label;"
+ tooltiptext="&downloads.tooltip;"/> + tooltiptext="&downloads.tooltip;"/>
+ +
@ -1006,7 +1061,7 @@ new file mode 100644
+ style="min-width: 14em; width: 18em; max-width: 36em;"/> + style="min-width: 14em; width: 18em; max-width: 36em;"/>
+ </vbox> + </vbox>
+ +
+ <splitter id="sidebar-splitter" class="chromeclass-extrachrome" hidden="true"/> + <splitter id="sidebar-splitter" class="chromeclass-extrachrome sidebar-splitter" hidden="true"/>
+ <vbox id="appcontent" flex="1"> + <vbox id="appcontent" flex="1">
+ <tabbrowser id="content" disablehistory="true" + <tabbrowser id="content" disablehistory="true"
+ flex="1" contenttooltip="aHTMLTooltip" + flex="1" contenttooltip="aHTMLTooltip"
@ -1014,6 +1069,7 @@ new file mode 100644
+ contentcontextmenu="contentAreaContextMenu" + contentcontextmenu="contentAreaContextMenu"
+ autocompletepopup="PopupAutoComplete" + autocompletepopup="PopupAutoComplete"
+ onclick="contentAreaClick(event, false);"/> + onclick="contentAreaClick(event, false);"/>
+ <chatbar id="pinnedchats" layer="true" mousethrough="always"/>
+ <statuspanel id="statusbar-display" inactive="true"/> + <statuspanel id="statusbar-display" inactive="true"/>
+ </vbox> + </vbox>
+ <splitter id="devtools-side-splitter" hidden="true"/> + <splitter id="devtools-side-splitter" hidden="true"/>
@ -1024,6 +1080,19 @@ new file mode 100644
+ nowindowdrag="true"/> + nowindowdrag="true"/>
+ <deck id="devtools-sidebar-deck" flex="1"/> + <deck id="devtools-sidebar-deck" flex="1"/>
+ </vbox> + </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">
+ <browser id="social-sidebar-browser"
+ type="content"
+ disableglobalhistory="true"
+ flex="1"
+ style="min-width: 14em; width: 18em; max-width: 36em;"/>
+ </vbox>
+ <vbox id="browser-border-end" hidden="true" layer="true"/> + <vbox id="browser-border-end" hidden="true" layer="true"/>
+ </hbox> + </hbox>
+ +
@ -1059,24 +1128,6 @@ new file mode 100644
+ oncommand="InspectorUI.closeInspectorUI(false);" + oncommand="InspectorUI.closeInspectorUI(false);"
+ tooltiptext="&inspectCloseButton.tooltiptext;"/> + tooltiptext="&inspectCloseButton.tooltiptext;"/>
+#endif +#endif
+ <toolbarbutton id="inspector-option-toolbarbutton"
+ type="menu"
+ tabindex="0"
+ tooltiptext="&inspectOptionButton.tooltiptext;">
+ <menupopup id="inspector-option-popup"
+ position="before_start">
+ <menuitem id="inspectorToggleVeil"
+ type="checkbox"
+ label="&inspectorToggleVeil.label;"
+ accesskey="&inspectorToggleVeil.accesskey;"
+ command="Inspector:ToggleVeil"/>
+ <menuitem id="inspectorToggleInfobar"
+ type="checkbox"
+ label="&inspectorToggleInfobar.label;"
+ accesskey="&inspectorToggleInfobar.accesskey;"
+ command="Inspector:ToggleInfobar"/>
+ </menupopup>
+ </toolbarbutton>
+ <toolbarbutton id="inspector-inspect-toolbutton" + <toolbarbutton id="inspector-inspect-toolbutton"
+ class="devtools-toolbarbutton" + class="devtools-toolbarbutton"
+ command="Inspector:Inspect"/> + command="Inspector:Inspect"/>
@ -1130,24 +1181,35 @@ new file mode 100644
+ <textbox class="gclitoolbar-input-node" rows="1"/> + <textbox class="gclitoolbar-input-node" rows="1"/>
+ </stack> + </stack>
+ <toolbarbutton id="developer-toolbar-webconsole" + <toolbarbutton id="developer-toolbar-webconsole"
+ label="&webConsoleButton.label;"
+ class="developer-toolbar-button" + class="developer-toolbar-button"
+ command="Tools:WebConsole"/> + observes="devtoolsMenuBroadcaster_WebConsole"/>
+ <toolbarbutton id="developer-toolbar-inspector" + <toolbarbutton id="developer-toolbar-inspector"
+ label="&inspectorButton.label;"
+ class="developer-toolbar-button" + class="developer-toolbar-button"
+ hidden="true" + observes="devtoolsMenuBroadcaster_Inspect"/>
+ command="Tools:Inspect"/>
+ <toolbarbutton id="developer-toolbar-styleeditor" + <toolbarbutton id="developer-toolbar-styleeditor"
+ label="&styleeditor.label;"
+ class="developer-toolbar-button" + class="developer-toolbar-button"
+ hidden="true" + observes="devtoolsMenuBroadcaster_StyleEditor"/>
+ command="Tools:StyleEditor"/>
+ <toolbarbutton id="developer-toolbar-debugger" + <toolbarbutton id="developer-toolbar-debugger"
+ label="&debuggerMenu.label2;"
+ class="developer-toolbar-button" + class="developer-toolbar-button"
+ hidden="true" + observes="devtoolsMenuBroadcaster_Debugger"/>
+ command="Tools:Debugger"/> + <toolbarbutton id="developer-toolbar-other-tools"
+ type="menu"
+ class="developer-toolbar-button"
+ label="&devToolbarOtherToolsButton.label;">
+ <menupopup position="before_end">
+ <menuitem observes="devtoolsMenuBroadcaster_DevToolbar"/>
+ <menuitem observes="devtoolsMenuBroadcaster_ResponsiveUI"/>
+ <menuitem observes="devtoolsMenuBroadcaster_RemoteDebugger"/>
+ <menuitem observes="devtoolsMenuBroadcaster_ChromeDebugger"/>
+ <menuitem observes="devtoolsMenuBroadcaster_Scratchpad"/>
+ <menuitem observes="devtoolsMenuBroadcaster_StyleEditor"/>
+ <menuitem observes="devtoolsMenuBroadcaster_PageSource"/>
+ <menuitem observes="devtoolsMenuBroadcaster_ErrorConsole"/>
+ <menuseparator/>
+ <menuitem observes="devtoolsMenuBroadcaster_GetMoreTools"/>
+ </menupopup>
+ </toolbarbutton>
+
+#ifndef XP_MACOSX +#ifndef XP_MACOSX
+ <toolbarbutton id="developer-toolbar-closebutton" + <toolbarbutton id="developer-toolbar-closebutton"
+ class="devtools-closebutton" + class="devtools-closebutton"
@ -1216,25 +1278,25 @@ new file mode 100644
diff --git a/browser/base/jar.mn b/browser/base/jar.mn diff --git a/browser/base/jar.mn b/browser/base/jar.mn
--- a/browser/base/jar.mn --- a/browser/base/jar.mn
+++ b/browser/base/jar.mn +++ b/browser/base/jar.mn
@@ -35,16 +35,18 @@ browser.jar: @@ -36,16 +36,18 @@ browser.jar:
content/browser/abouthome/restore-large.png (content/abouthome/restore-large.png)
content/browser/abouthome/mozilla.png (content/abouthome/mozilla.png) content/browser/abouthome/mozilla.png (content/abouthome/mozilla.png)
content/browser/abouthome/noise.png (content/abouthome/noise.png) content/browser/abouthome/noise.png (content/abouthome/noise.png)
content/browser/aboutRobots-icon.png (content/aboutRobots-icon.png) content/browser/aboutRobots-icon.png (content/aboutRobots-icon.png)
content/browser/aboutRobots-widget-left.png (content/aboutRobots-widget-left.png) content/browser/aboutRobots-widget-left.png (content/aboutRobots-widget-left.png)
content/browser/aboutSocialError.xhtml (content/aboutSocialError.xhtml)
* content/browser/browser.css (content/browser.css) * content/browser/browser.css (content/browser.css)
* content/browser/browser.js (content/browser.js) * content/browser/browser.js (content/browser.js)
* content/browser/browser.xul (content/browser.xul) * content/browser/browser.xul (content/browser.xul)
+* content/browser/browser-kde.xul (content/browser-kde.xul) +* content/browser/browser-kde.xul (content/browser-kde.xul)
+% override chrome://browser/content/browser.xul chrome://browser/content/browser-kde.xul desktop=kde +% override chrome://browser/content/browser.xul chrome://browser/content/browser-kde.xul desktop=kde
* content/browser/browser-tabPreviews.xml (content/browser-tabPreviews.xml) * content/browser/browser-tabPreviews.xml (content/browser-tabPreviews.xml)
* content/browser/content.js (content/content.js) content/browser/content.js (content/content.js)
* content/browser/newtab/newTab.xul (content/newtab/newTab.xul) content/browser/newtab/newTab.xul (content/newtab/newTab.xul)
* content/browser/newtab/newTab.js (content/newtab/newTab.js) * content/browser/newtab/newTab.js (content/newtab/newTab.js)
content/browser/newtab/newTab.css (content/newtab/newTab.css) content/browser/newtab/newTab.css (content/newtab/newTab.css)
* content/browser/pageinfo/pageInfo.xul (content/pageinfo/pageInfo.xul) * content/browser/pageinfo/pageInfo.xul (content/pageinfo/pageInfo.xul)
* content/browser/pageinfo/pageInfo.js (content/pageinfo/pageInfo.js) * content/browser/pageinfo/pageInfo.js (content/pageinfo/pageInfo.js)
* content/browser/pageinfo/pageInfo.css (content/pageinfo/pageInfo.css) content/browser/pageinfo/pageInfo.css (content/pageinfo/pageInfo.css)
diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/nsModule.cpp diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/nsModule.cpp
--- a/browser/components/build/nsModule.cpp --- a/browser/components/build/nsModule.cpp
+++ b/browser/components/build/nsModule.cpp +++ b/browser/components/build/nsModule.cpp
@ -1316,12 +1378,12 @@ diff --git a/browser/components/preferences/advanced.js b/browser/components/pre
#ifdef HAVE_SHELL_SERVICE #ifdef HAVE_SHELL_SERVICE
this.updateSetDefaultBrowser(); this.updateSetDefaultBrowser();
#ifdef XP_WIN #ifdef XP_WIN
let shellSvc = getShellService();
// In Windows 8 we launch the control panel since it's the only // 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 // way to get all file type association prefs. So we don't know
// when the user will select the default. We refresh here periodically // when the user will select the default. We refresh here periodically
// in case the default changes. // in case the default changes. On other Windows OS's defaults can also
@@ -737,14 +743,25 @@ var gAdvancedPane = { // be set while the prefs are open.
@@ -725,14 +731,25 @@ var gAdvancedPane = {
* Set browser as the operating system default browser. * Set browser as the operating system default browser.
*/ */
setDefaultBrowser: function() setDefaultBrowser: function()
@ -1374,42 +1436,11 @@ diff --git a/browser/components/shell/src/nsKDEShellService.cpp b/browser/compon
new file mode 100644 new file mode 100644
--- /dev/null --- /dev/null
+++ b/browser/components/shell/src/nsKDEShellService.cpp +++ b/browser/components/shell/src/nsKDEShellService.cpp
@@ -0,0 +1,265 @@ @@ -0,0 +1,234 @@
+/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
+/* ***** BEGIN LICENSE BLOCK ***** +/* This Source Code Form is subject to the terms of the Mozilla Public
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is Shell Service.
+ *
+ * The Initial Developer of the Original Code is mozilla.org.
+ * Portions created by the Initial Developer are Copyright (C) 2004
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+ +
+#include "nsKDEShellService.h" +#include "nsKDEShellService.h"
+#include "nsShellService.h" +#include "nsShellService.h"
@ -1592,7 +1623,7 @@ new file mode 100644
+NS_IMETHODIMP +NS_IMETHODIMP
+nsKDEShellService::GetDefaultFeedReader(nsIFile** _retval) +nsKDEShellService::GetDefaultFeedReader(nsIFile** _retval)
+ { + {
+ *_retval = nsnull; + *_retval = nullptr;
+ +
+ nsCOMPtr<nsIMutableArray> command = do_CreateInstance( NS_ARRAY_CONTRACTID ); + nsCOMPtr<nsIMutableArray> command = do_CreateInstance( NS_ARRAY_CONTRACTID );
+ if( !command ) + if( !command )
@ -1814,7 +1845,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
@@ -558,18 +558,20 @@ @@ -561,18 +561,20 @@
@BINPATH@/@PREF_DIR@/services-sync.js @BINPATH@/@PREF_DIR@/services-sync.js
#endif #endif
@BINPATH@/greprefs.js @BINPATH@/greprefs.js

View File

@ -1,12 +1,12 @@
# HG changeset patch # HG changeset patch
# User Wolfgang Rosenauer <wr@rosenauer.org> # User Wolfgang Rosenauer <wr@rosenauer.org>
# Parent 5c446cfb862fdb6685634dbeea9bff31fa19fc3e # Parent ba286b90465d93b93487c0de6f8ebe5d1821d2c0
Add searchplugins to chrome packaging for proper localization Add searchplugins to chrome packaging for proper localization
diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js
--- a/browser/app/profile/firefox.js --- a/browser/app/profile/firefox.js
+++ b/browser/app/profile/firefox.js +++ b/browser/app/profile/firefox.js
@@ -327,16 +327,20 @@ pref("browser.download.useToolkitUI", fa @@ -332,16 +332,20 @@ pref("browser.download.useToolkitUI", tr
pref("browser.download.panel.removeFinishedDownloads", false); pref("browser.download.panel.removeFinishedDownloads", false);
// search engines URL // search engines URL
@ -30,7 +30,7 @@ diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js
diff --git a/browser/locales/Makefile.in b/browser/locales/Makefile.in diff --git a/browser/locales/Makefile.in b/browser/locales/Makefile.in
--- a/browser/locales/Makefile.in --- a/browser/locales/Makefile.in
+++ b/browser/locales/Makefile.in +++ b/browser/locales/Makefile.in
@@ -121,39 +121,48 @@ libs:: $(call MERGE_FILES,$(addprefix pr @@ -118,39 +118,48 @@ libs:: $(call MERGE_FILES,$(addprefix pr
install:: $(DESTDIR)$(mozappdir)/defaults/profile/bookmarks.html ; install:: $(DESTDIR)$(mozappdir)/defaults/profile/bookmarks.html ;
install:: $(addprefix generic/profile/,$(PROFILE_FILES)) install:: $(addprefix generic/profile/,$(PROFILE_FILES))
@ -89,18 +89,18 @@ diff --git a/browser/locales/Makefile.in b/browser/locales/Makefile.in
@$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=$(PREF_DIR) BOTH_MANIFESTS=1 @$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=$(PREF_DIR) BOTH_MANIFESTS=1
@$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1 @$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1
repackage-win32-installer: WIN32_INSTALLER_OUT=$(_ABS_DIST)/$(PKG_INST_PATH)$(PKG_INST_BASENAME).exe repackage-win32-installer: WIN32_INSTALLER_OUT=$(_ABS_DIST)/$(PKG_INST_PATH)$(PKG_INST_BASENAME).exe
repackage-win32-installer: $(call ESCAPE_SPACE,$(WIN32_INSTALLER_IN)) $(SUBMAKEFILES) libs-$(AB_CD) repackage-win32-installer: $(call ESCAPE_WILDCARD,$(WIN32_INSTALLER_IN)) $(SUBMAKEFILES) libs-$(AB_CD)
@echo "Repackaging $(WIN32_INSTALLER_IN) into $(WIN32_INSTALLER_OUT)."
diff --git a/browser/locales/jar.mn b/browser/locales/jar.mn diff --git a/browser/locales/jar.mn b/browser/locales/jar.mn
--- a/browser/locales/jar.mn --- a/browser/locales/jar.mn
+++ b/browser/locales/jar.mn +++ b/browser/locales/jar.mn
@@ -108,16 +108,17 @@ @@ -108,16 +108,17 @@
locale/browser-region/region.properties (%chrome/browser-region/region.properties) locale/browser-region/region.properties (%chrome/browser-region/region.properties)
# the following files are browser-specific overrides # the following files are browser-specific overrides
* locale/browser/netError.dtd (%chrome/overrides/netError.dtd) locale/browser/netError.dtd (%chrome/overrides/netError.dtd)
* locale/browser/appstrings.properties (%chrome/overrides/appstrings.properties) locale/browser/appstrings.properties (%chrome/overrides/appstrings.properties)
* locale/browser/downloads/settingsChange.dtd (%chrome/overrides/settingsChange.dtd) locale/browser/downloads/settingsChange.dtd (%chrome/overrides/settingsChange.dtd)
% override chrome://global/locale/netError.dtd chrome://browser/locale/netError.dtd % override chrome://global/locale/netError.dtd chrome://browser/locale/netError.dtd
% override chrome://global/locale/appstrings.properties chrome://browser/locale/appstrings.properties % override chrome://global/locale/appstrings.properties chrome://browser/locale/appstrings.properties
% override chrome://mozapps/locale/downloads/settingsChange.dtd chrome://browser/locale/downloads/settingsChange.dtd % override chrome://mozapps/locale/downloads/settingsChange.dtd chrome://browser/locale/downloads/settingsChange.dtd

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3a04392e140933294a18e48770ffd9f960f082ccc4ba0a63fc1e134a2a153b07
size 52127156

3
l10n-17.0.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:aceaea6943c6ffda95074d701b8ee50eab72ea2a2532c7a9c20f0baa3929d0fb
size 52156353

93
mozilla-gcc43-enums.patch Normal file
View File

@ -0,0 +1,93 @@
# HG changeset patch
# Parent 6d0e0f7dc4cf04f1d08f8b4f8e9312ac05928608
remove trailing commas in enum definitions as these are unpalatable for gcc
(4.3.4) in pedantic mode
diff --git a/media/webrtc/trunk/src/common_types.h b/media/webrtc/trunk/src/common_types.h
--- a/media/webrtc/trunk/src/common_types.h
+++ b/media/webrtc/trunk/src/common_types.h
@@ -342,17 +342,17 @@ enum TelephoneEventDetectionMethods
enum NsModes // type of Noise Suppression
{
kNsUnchanged = 0, // previously set mode
kNsDefault, // platform default
kNsConference, // conferencing default
kNsLowSuppression, // lowest suppression
kNsModerateSuppression,
kNsHighSuppression,
- kNsVeryHighSuppression, // highest suppression
+ kNsVeryHighSuppression // highest suppression
};
enum AgcModes // type of Automatic Gain Control
{
kAgcUnchanged = 0, // previously set mode
kAgcDefault, // platform default
// adaptive mode for use when analog volume control exists (e.g. for
// PC softphone)
@@ -367,17 +367,17 @@ enum AgcModes // type o
// EC modes
enum EcModes // type of Echo Control
{
kEcUnchanged = 0, // previously set mode
kEcDefault, // platform default
kEcConference, // conferencing default (aggressive AEC)
kEcAec, // Acoustic Echo Cancellation
- kEcAecm, // AEC mobile
+ kEcAecm // AEC mobile
};
// AECM modes
enum AecmModes // mode of AECM
{
kAecmQuietEarpieceOrHeadset = 0,
// Quiet earpiece or headset use
kAecmEarpiece, // most earpiece use
@@ -416,43 +416,43 @@ enum NetEqModes // NetEQ pla
// Optimized trade-off between low delay and jitter robustness for two-way
// communication.
kNetEqDefault = 0,
// Improved jitter robustness at the cost of increased delay. Can be
// used in one-way communication.
kNetEqStreaming = 1,
// Optimzed for decodability of fax signals rather than for perceived audio
// quality.
- kNetEqFax = 2,
+ kNetEqFax = 2
};
enum NetEqBgnModes // NetEQ Background Noise (BGN) configurations
{
// BGN is always on and will be generated when the incoming RTP stream
// stops (default).
kBgnOn = 0,
// The BGN is faded to zero (complete silence) after a few seconds.
kBgnFade = 1,
// BGN is not used at all. Silence is produced after speech extrapolation
// has faded.
- kBgnOff = 2,
+ kBgnOff = 2
};
enum OnHoldModes // On Hold direction
{
kHoldSendAndPlay = 0, // Put both sending and playing in on-hold state.
kHoldSendOnly, // Put only sending in on-hold state.
kHoldPlayOnly // Put only playing in on-hold state.
};
enum AmrMode
{
kRfc3267BwEfficient = 0,
kRfc3267OctetAligned = 1,
- kRfc3267FileStorage = 2,
+ kRfc3267FileStorage = 2
};
// ==================================================================
// Video specific types
// ==================================================================
// Raw video types
enum RawVideoType

View File

@ -0,0 +1,26 @@
# HG changeset patch
# Parent 993c5b5a44ca18c5273b74c75704b418c2477d28
bmo#783505 - bump gcc version required for building without template hacks
diff --git a/js/src/jstypedarray.cpp b/js/src/jstypedarray.cpp
--- a/js/src/jstypedarray.cpp
+++ b/js/src/jstypedarray.cpp
@@ -1404,17 +1404,17 @@ class TypedArrayTemplate
// retrieves a given Value, probably from a slot on the object.
template<Value ValueGetter(JSObject *obj)>
static JSBool
Getter(JSContext *cx, unsigned argc, Value *vp)
{
CallArgs args = CallArgsFromVp(argc, vp);
// FIXME: Hack to keep us building with gcc 4.2. Remove this once we
// drop support for gcc 4.2. See bug 783505 for the details.
-#if defined(__GNUC__) && __GNUC_MINOR__ <= 2
+#if defined(__GNUC__) && __GNUC_MINOR__ <= 3
return CallNonGenericMethod(cx, IsThisClass, GetterImpl<ValueGetter>, args);
#else
return CallNonGenericMethod<ThisTypeArray::IsThisClass,
ThisTypeArray::GetterImpl<ValueGetter> >(cx, args);
#endif
}
// Define an accessor for a read-only property that invokes a native getter

View File

@ -0,0 +1,20 @@
# HG changeset patch
# Parent 2e78665a1ab70f4dc3884965428bda14da684ef6
bmo#732340 - explicitly instantiate templates
diff --git a/gfx/harfbuzz/src/hb-ot-layout.cc b/gfx/harfbuzz/src/hb-ot-layout.cc
--- a/gfx/harfbuzz/src/hb-ot-layout.cc
+++ b/gfx/harfbuzz/src/hb-ot-layout.cc
@@ -479,8 +479,12 @@ hb_ot_layout_position_lookup (hb_font_t
return hb_ot_layout_from_face (font->face)->gpos->position_lookup (&c, lookup_index);
}
void
hb_ot_layout_position_finish (hb_font_t *font, hb_buffer_t *buffer, hb_bool_t zero_width_attached_marks)
{
GPOS::position_finish (font, buffer, zero_width_attached_marks);
}
+
+template int SortedArrayOf<Record<LangSys> >::search<unsigned int>(unsigned int const &) const;
+template int SortedArrayOf<Record<Script> >::search<unsigned int>(unsigned int const &) const;
+template int SortedArrayOf<IntType<unsigned short> >::search<unsigned int>(unsigned int const &) const;

View File

@ -24,7 +24,7 @@ diff --git a/content/base/src/nsContentUtils.cpp b/content/base/src/nsContentUti
#include "mozilla/Base64.h" #include "mozilla/Base64.h"
#include "mozilla/Preferences.h" #include "mozilla/Preferences.h"
#include "nsDOMMutationObserver.h" #include "nsDOMMutationObserver.h"
@@ -6511,26 +6514,23 @@ nsContentUtils::FindInternalContentViewe @@ -6580,26 +6583,23 @@ nsContentUtils::FindInternalContentViewe
} }
return docFactory.forget(); return docFactory.forget();
} }
@ -43,7 +43,7 @@ diff --git a/content/base/src/nsContentUtils.cpp b/content/base/src/nsContentUti
- } - }
- return docFactory.forget(); - return docFactory.forget();
+ if (nsHTMLMediaElement::IsGStreamerEnabled()) { + if (nsHTMLMediaElement::IsGStreamerEnabled()) {
+ if (nsGStreamerDecoder::CanHandleMediaType(aType, NULL)) { + if (nsGStreamerDecoder::CanHandleMediaType(aType, nullptr)) {
+ docFactory = do_GetService("@mozilla.org/content/document-loader-factory;1"); + docFactory = do_GetService("@mozilla.org/content/document-loader-factory;1");
+ if (docFactory && aLoaderType) { + if (docFactory && aLoaderType) {
+ *aLoaderType = TYPE_CONTENT; + *aLoaderType = TYPE_CONTENT;
@ -52,15 +52,15 @@ diff --git a/content/base/src/nsContentUtils.cpp b/content/base/src/nsContentUti
} }
} }
#endif #endif
#endif // MOZ_MEDIA
return NULL;
}
#ifdef MOZ_MEDIA_PLUGINS
if (nsHTMLMediaElement::IsMediaPluginsEnabled() &&
nsHTMLMediaElement::IsMediaPluginsType(nsDependentCString(aType))) {
docFactory = do_GetService("@mozilla.org/content/document-loader-factory;1");
diff --git a/content/html/content/public/nsHTMLMediaElement.h b/content/html/content/public/nsHTMLMediaElement.h diff --git a/content/html/content/public/nsHTMLMediaElement.h b/content/html/content/public/nsHTMLMediaElement.h
--- a/content/html/content/public/nsHTMLMediaElement.h --- a/content/html/content/public/nsHTMLMediaElement.h
+++ b/content/html/content/public/nsHTMLMediaElement.h +++ b/content/html/content/public/nsHTMLMediaElement.h
@@ -250,17 +250,19 @@ public: @@ -256,17 +256,19 @@ public:
void UpdateMediaSize(nsIntSize size); void UpdateMediaSize(nsIntSize size);
// Returns the CanPlayStatus indicating if we can handle this // Returns the CanPlayStatus indicating if we can handle this
@ -81,18 +81,18 @@ diff --git a/content/html/content/public/nsHTMLMediaElement.h b/content/html/con
// Returns true if we should handle this MIME type when it appears // Returns true if we should handle this MIME type when it appears
// as an <object> or as a toplevel page. If, in practice, our support // as an <object> or as a toplevel page. If, in practice, our support
// for the type is more limited than appears in the wild, we should return // for the type is more limited than appears in the wild, we should return
@@ -290,20 +292,17 @@ public: @@ -296,20 +298,17 @@ public:
#ifdef MOZ_WEBM #ifdef MOZ_WEBM
static bool IsWebMEnabled(); static bool IsWebMEnabled();
static bool IsWebMType(const nsACString& aType); static bool IsWebMType(const nsACString& aType);
static const char gWebMTypes[2][17]; static const char gWebMTypes[2][11];
static char const *const gWebMCodecs[4]; static char const *const gWebMCodecs[4];
#endif #endif
#ifdef MOZ_GSTREAMER #ifdef MOZ_GSTREAMER
- static bool IsH264Enabled(); - static bool IsH264Enabled();
- static bool IsH264Type(const nsACString& aType); - static bool IsH264Type(const nsACString& aType);
- static const char gH264Types[3][17]; - static const char gH264Types[3][16];
- static char const *const gH264Codecs[7]; - static char const *const gH264Codecs[7];
+ static bool IsGStreamerEnabled(); + static bool IsGStreamerEnabled();
#endif #endif
@ -106,7 +106,7 @@ diff --git a/content/html/content/public/nsHTMLMediaElement.h b/content/html/con
diff --git a/content/html/content/src/nsHTMLMediaElement.cpp b/content/html/content/src/nsHTMLMediaElement.cpp diff --git a/content/html/content/src/nsHTMLMediaElement.cpp b/content/html/content/src/nsHTMLMediaElement.cpp
--- a/content/html/content/src/nsHTMLMediaElement.cpp --- a/content/html/content/src/nsHTMLMediaElement.cpp
+++ b/content/html/content/src/nsHTMLMediaElement.cpp +++ b/content/html/content/src/nsHTMLMediaElement.cpp
@@ -2070,68 +2070,40 @@ nsHTMLMediaElement::IsWebMType(const nsA @@ -2112,52 +2112,20 @@ nsHTMLMediaElement::IsWebMType(const nsA
} }
} }
@ -115,7 +115,7 @@ diff --git a/content/html/content/src/nsHTMLMediaElement.cpp b/content/html/cont
#endif #endif
#ifdef MOZ_GSTREAMER #ifdef MOZ_GSTREAMER
-const char nsHTMLMediaElement::gH264Types[3][17] = { -const char nsHTMLMediaElement::gH264Types[3][16] = {
- "video/mp4", - "video/mp4",
- "video/3gpp", - "video/3gpp",
- "video/quicktime", - "video/quicktime",
@ -128,7 +128,7 @@ diff --git a/content/html/content/src/nsHTMLMediaElement.cpp b/content/html/cont
- "avc1.4D401E", - "avc1.4D401E",
- "avc1.64001E", - "avc1.64001E",
- "mp4a.40.2", - "mp4a.40.2",
- nsnull - nullptr
-}; -};
- -
bool bool
@ -145,7 +145,7 @@ diff --git a/content/html/content/src/nsHTMLMediaElement.cpp b/content/html/cont
- return false; - return false;
- } - }
- -
- for (PRUint32 i = 0; i < ArrayLength(gH264Types); ++i) { - for (uint32_t i = 0; i < ArrayLength(gH264Types); ++i) {
- if (aType.EqualsASCII(gH264Types[i])) { - if (aType.EqualsASCII(gH264Types[i])) {
- return true; - return true;
- } - }
@ -161,6 +161,9 @@ diff --git a/content/html/content/src/nsHTMLMediaElement.cpp b/content/html/cont
nsHTMLMediaElement::IsMediaPluginsEnabled() nsHTMLMediaElement::IsMediaPluginsEnabled()
{ {
return Preferences::GetBool("media.plugins.enabled"); return Preferences::GetBool("media.plugins.enabled");
@@ -2180,18 +2148,22 @@ nsHTMLMediaElement::IsMediaPluginsType(c
}
return false;
} }
#endif #endif
@ -182,7 +185,7 @@ diff --git a/content/html/content/src/nsHTMLMediaElement.cpp b/content/html/cont
#endif #endif
#ifdef MOZ_OGG #ifdef MOZ_OGG
if (IsOggType(nsDependentCString(aMIMEType))) { if (IsOggType(nsDependentCString(aMIMEType))) {
@@ -2148,20 +2120,22 @@ nsHTMLMediaElement::CanHandleMediaType(c @@ -2208,20 +2180,22 @@ nsHTMLMediaElement::CanHandleMediaType(c
#ifdef MOZ_WEBM #ifdef MOZ_WEBM
if (IsWebMType(nsDependentCString(aMIMEType))) { if (IsWebMType(nsDependentCString(aMIMEType))) {
*aCodecList = gWebMCodecs; *aCodecList = gWebMCodecs;
@ -198,18 +201,18 @@ diff --git a/content/html/content/src/nsHTMLMediaElement.cpp b/content/html/cont
+ if (aCheckCodecList) + if (aCheckCodecList)
+ *aCheckCodecList = false; + *aCheckCodecList = false;
+ if (aCodecList) + if (aCodecList)
+ *aCodecList = NULL; + *aCodecList = nullptr;
+ if (nsGStreamerDecoder::CanHandleMediaType(aMIMEType, aCodecs)) + if (nsGStreamerDecoder::CanHandleMediaType(aMIMEType, aCodecs))
+ return CANPLAY_YES; + return CANPLAY_YES;
#endif #endif
#ifdef MOZ_MEDIA_PLUGINS #ifdef MOZ_MEDIA_PLUGINS
if (GetMediaPluginHost()->FindDecoder(nsDependentCString(aMIMEType), aCodecList)) if (IsMediaPluginsEnabled() && GetMediaPluginHost()->FindDecoder(nsDependentCString(aMIMEType), aCodecList))
return CANPLAY_MAYBE; return CANPLAY_MAYBE;
#endif #endif
return CANPLAY_NO; return CANPLAY_NO;
} }
@@ -2176,17 +2150,17 @@ bool nsHTMLMediaElement::ShouldHandleMed @@ -2236,17 +2210,17 @@ bool nsHTMLMediaElement::ShouldHandleMed
if (IsOggType(nsDependentCString(aMIMEType))) if (IsOggType(nsDependentCString(aMIMEType)))
return true; return true;
#endif #endif
@ -219,16 +222,16 @@ diff --git a/content/html/content/src/nsHTMLMediaElement.cpp b/content/html/cont
#endif #endif
#ifdef MOZ_GSTREAMER #ifdef MOZ_GSTREAMER
- if (IsH264Type(nsDependentCString(aMIMEType))) - if (IsH264Type(nsDependentCString(aMIMEType)))
+ if (nsGStreamerDecoder::CanHandleMediaType(aMIMEType, NULL)) + if (nsGStreamerDecoder::CanHandleMediaType(aMIMEType, nullptr))
return true; return true;
#endif #endif
#ifdef MOZ_MEDIA_PLUGINS #ifdef MOZ_MEDIA_PLUGINS
if (GetMediaPluginHost()->FindDecoder(nsDependentCString(aMIMEType), NULL)) if (IsMediaPluginsEnabled() && GetMediaPluginHost()->FindDecoder(nsDependentCString(aMIMEType), NULL))
return true; return true;
#endif #endif
// We should not return true for Wave types, since there are some // We should not return true for Wave types, since there are some
// Wave codecs actually in use in the wild that we don't support, and // Wave codecs actually in use in the wild that we don't support, and
@@ -2212,26 +2186,31 @@ nsHTMLMediaElement::GetCanPlay(const nsA @@ -2272,26 +2246,31 @@ nsHTMLMediaElement::GetCanPlay(const nsA
{ {
nsContentTypeParser parser(aType); nsContentTypeParser parser(aType);
nsAutoString mimeType; nsAutoString mimeType;
@ -265,7 +268,7 @@ diff --git a/content/html/content/src/nsHTMLMediaElement.cpp b/content/html/cont
// of the 'codecs' parameter // of the 'codecs' parameter
nsCharSeparatedTokenizer tokenizer(codecs, ','); nsCharSeparatedTokenizer tokenizer(codecs, ',');
bool expectMoreTokens = false; bool expectMoreTokens = false;
@@ -2309,17 +2288,19 @@ nsHTMLMediaElement::CreateDecoder(const @@ -2369,17 +2348,19 @@ nsHTMLMediaElement::CreateDecoder(const
nsRefPtr<nsWebMDecoder> decoder = new nsWebMDecoder(); nsRefPtr<nsWebMDecoder> decoder = new nsWebMDecoder();
if (decoder->Init(this)) { if (decoder->Init(this)) {
return decoder.forget(); return decoder.forget();
@ -284,12 +287,12 @@ diff --git a/content/html/content/src/nsHTMLMediaElement.cpp b/content/html/cont
} }
} }
#endif #endif
return nsnull; return nullptr;
} }
diff --git a/content/media/gstreamer/Makefile.in b/content/media/gstreamer/Makefile.in diff --git a/content/media/gstreamer/Makefile.in b/content/media/gstreamer/Makefile.in
--- a/content/media/gstreamer/Makefile.in --- a/content/media/gstreamer/Makefile.in
+++ b/content/media/gstreamer/Makefile.in +++ b/content/media/gstreamer/Makefile.in
@@ -16,16 +16,17 @@ LIBXUL_LIBRARY = 1 @@ -17,16 +17,17 @@ LIBXUL_LIBRARY = 1
EXPORTS += \ EXPORTS += \
nsGStreamerDecoder.h \ nsGStreamerDecoder.h \
@ -545,7 +548,7 @@ new file mode 100644
diff --git a/modules/libpref/src/init/all.js b/modules/libpref/src/init/all.js diff --git a/modules/libpref/src/init/all.js b/modules/libpref/src/init/all.js
--- a/modules/libpref/src/init/all.js --- a/modules/libpref/src/init/all.js
+++ b/modules/libpref/src/init/all.js +++ b/modules/libpref/src/init/all.js
@@ -159,17 +159,17 @@ pref("media.opus.enabled", true); @@ -165,17 +165,17 @@ pref("media.opus.enabled", true);
#endif #endif
#ifdef MOZ_WAVE #ifdef MOZ_WAVE
pref("media.wave.enabled", true); pref("media.wave.enabled", true);
@ -557,10 +560,10 @@ diff --git a/modules/libpref/src/init/all.js b/modules/libpref/src/init/all.js
-pref("media.h264.enabled", true); -pref("media.h264.enabled", true);
+pref("media.gstreamer.enabled", true); +pref("media.gstreamer.enabled", true);
#endif #endif
#ifdef MOZ_WEBRTC
pref("media.navigator.enabled", false);
// Whether to autostart a media element with an |autoplay| attribute #else
pref("media.autoplay.enabled", true); #ifdef ANDROID
pref("media.navigator.enabled", true);
// 0 = Off, 1 = Full, 2 = Tagged Images Only. #endif
// See eCMSMode in gfx/thebes/gfxPlatform.h #endif

View File

@ -45,7 +45,7 @@ diff --git a/modules/libpref/src/Preferences.cpp b/modules/libpref/src/Preferenc
#include "prefapi.h" #include "prefapi.h"
#include "prefread.h" #include "prefread.h"
#include "prefapi_private_data.h" #include "prefapi_private_data.h"
@@ -907,16 +908,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char @@ -896,16 +897,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char
static nsresult pref_LoadPrefsInDirList(const char *listId) static nsresult pref_LoadPrefsInDirList(const char *listId)
{ {
@ -80,7 +80,7 @@ diff --git a/modules/libpref/src/Preferences.cpp b/modules/libpref/src/Preferenc
return NS_OK; return NS_OK;
bool hasMore; bool hasMore;
@@ -932,17 +951,17 @@ static nsresult pref_LoadPrefsInDirList( @@ -921,17 +940,17 @@ static nsresult pref_LoadPrefsInDirList(
nsCAutoString leaf; nsCAutoString leaf;
path->GetNativeLeafName(leaf); path->GetNativeLeafName(leaf);
@ -89,7 +89,7 @@ diff --git a/modules/libpref/src/Preferences.cpp b/modules/libpref/src/Preferenc
if (Substring(leaf, leaf.Length() - 4).Equals(NS_LITERAL_CSTRING(".xpi"))) if (Substring(leaf, leaf.Length() - 4).Equals(NS_LITERAL_CSTRING(".xpi")))
ReadExtensionPrefs(path); ReadExtensionPrefs(path);
else else
- pref_LoadPrefsInDir(path, nsnull, 0); - pref_LoadPrefsInDir(path, nullptr, 0);
+ pref_LoadPrefsInDir(path, specialFiles, NS_ARRAY_LENGTH(specialFiles)); + pref_LoadPrefsInDir(path, specialFiles, NS_ARRAY_LENGTH(specialFiles));
} }
return NS_OK; return NS_OK;
@ -99,7 +99,7 @@ diff --git a/modules/libpref/src/Preferences.cpp b/modules/libpref/src/Preferenc
{ {
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);
@@ -1036,28 +1055,40 @@ static nsresult pref_InitInitialObjects( @@ -1025,28 +1044,40 @@ 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)
@ -198,12 +198,12 @@ diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/compon
+ nsKDEUtils::command( command ); + nsKDEUtils::command( command );
+ } else { + } else {
+ // begin non-KDE block + // begin non-KDE block
PRInt32 alertInterval = 2000; int32_t alertInterval = 2000;
if (pref) if (pref)
pref->GetIntPref(PREF_BDM_SHOWALERTINTERVAL, &alertInterval); pref->GetIntPref(PREF_BDM_SHOWALERTINTERVAL, &alertInterval);
PRInt64 alertIntervalUSec = alertInterval * PR_USEC_PER_MSEC; int64_t alertIntervalUSec = alertInterval * PR_USEC_PER_MSEC;
PRInt64 goat = PR_Now() - mStartTime; int64_t goat = PR_Now() - mStartTime;
showTaskbarAlert = goat > alertIntervalUSec; showTaskbarAlert = goat > alertIntervalUSec;
@@ -2266,19 +2279,20 @@ nsDownload::SetState(DownloadState aStat @@ -2266,19 +2279,20 @@ nsDownload::SetState(DownloadState aStat
@ -2068,8 +2068,7 @@ new file mode 100644
diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
--- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp --- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
+++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp +++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp
@@ -12,16 +12,18 @@ @@ -13,16 +13,19 @@
#include "nsArrayUtils.h"
#include "prnetdb.h" #include "prnetdb.h"
#include "prenv.h" #include "prenv.h"
#include "nsPrintfCString.h" #include "nsPrintfCString.h"
@ -2077,24 +2076,26 @@ diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/sy
#include "nsISupportsPrimitives.h" #include "nsISupportsPrimitives.h"
#include "nsIGSettingsService.h" #include "nsIGSettingsService.h"
#include "nsInterfaceHashtable.h" #include "nsInterfaceHashtable.h"
#include "mozilla/Attributes.h"
+#include "nsVoidArray.h" +#include "nsVoidArray.h"
+#include "nsKDEUtils.h" +#include "nsKDEUtils.h"
+
class nsUnixSystemProxySettings : public nsISystemProxySettings { class nsUnixSystemProxySettings MOZ_FINAL : public nsISystemProxySettings {
public: public:
NS_DECL_ISUPPORTS NS_DECL_ISUPPORTS
NS_DECL_NSISYSTEMPROXYSETTINGS NS_DECL_NSISYSTEMPROXYSETTINGS
nsUnixSystemProxySettings() {} nsUnixSystemProxySettings() {}
nsresult Init(); nsresult Init();
@@ -33,16 +35,17 @@ private: @@ -34,16 +37,17 @@ private:
nsCOMPtr<nsIGSettingsService> mGSettings; nsCOMPtr<nsIGSettingsService> mGSettings;
nsCOMPtr<nsIGSettingsCollection> mProxySettings; nsCOMPtr<nsIGSettingsCollection> mProxySettings;
nsInterfaceHashtable<nsCStringHashKey, nsIGSettingsCollection> mSchemeProxySettings; nsInterfaceHashtable<nsCStringHashKey, nsIGSettingsCollection> mSchemeProxySettings;
bool IsProxyMode(const char* aMode); bool IsProxyMode(const char* aMode);
nsresult SetProxyResultFromGConf(const char* aKeyBase, const char* aType, nsACString& aResult); nsresult SetProxyResultFromGConf(const char* aKeyBase, const char* aType, nsACString& aResult);
nsresult GetProxyFromGConf(const nsACString& aScheme, const nsACString& aHost, PRInt32 aPort, nsACString& aResult); nsresult GetProxyFromGConf(const nsACString& aScheme, const nsACString& aHost, int32_t aPort, nsACString& aResult);
nsresult GetProxyFromGSettings(const nsACString& aScheme, const nsACString& aHost, PRInt32 aPort, nsACString& aResult); nsresult GetProxyFromGSettings(const nsACString& aScheme, const nsACString& aHost, int32_t aPort, nsACString& aResult);
nsresult SetProxyResultFromGSettings(const char* aKeyBase, const char* aType, nsACString& aResult); nsresult SetProxyResultFromGSettings(const char* aKeyBase, const char* aType, nsACString& aResult);
+ nsresult GetProxyFromKDE(const nsACString& aScheme, const nsACString& aHost, PRInt32 aPort, nsACString& aResult); + nsresult GetProxyFromKDE(const nsACString& aScheme, const nsACString& aHost, PRInt32 aPort, nsACString& aResult);
}; };
@ -2105,12 +2106,12 @@ diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/sy
nsUnixSystemProxySettings::Init() nsUnixSystemProxySettings::Init()
{ {
// If this is a GNOME session, load gconf and try to use its preferences. // If this is a GNOME session, load gconf and try to use its preferences.
@@ -495,16 +498,19 @@ nsUnixSystemProxySettings::GetProxyForUR @@ -496,16 +500,19 @@ nsUnixSystemProxySettings::GetProxyForUR
nsCAutoString host; nsCAutoString host;
rv = aURI->GetHost(host); rv = aURI->GetHost(host);
NS_ENSURE_SUCCESS(rv, rv); NS_ENSURE_SUCCESS(rv, rv);
PRInt32 port; int32_t port;
rv = aURI->GetPort(&port); rv = aURI->GetPort(&port);
NS_ENSURE_SUCCESS(rv, rv); NS_ENSURE_SUCCESS(rv, rv);
@ -2125,7 +2126,7 @@ diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/sy
if (mGConf) if (mGConf)
return GetProxyFromGConf(scheme, host, port, aResult); return GetProxyFromGConf(scheme, host, port, aResult);
@@ -530,8 +536,34 @@ static const mozilla::Module::ContractID @@ -531,8 +538,34 @@ static const mozilla::Module::ContractID
static const mozilla::Module kUnixProxyModule = { static const mozilla::Module kUnixProxyModule = {
mozilla::Module::kVersion, mozilla::Module::kVersion,
@ -2187,43 +2188,11 @@ 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,373 @@ @@ -0,0 +1,341 @@
+/* -*- 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 -*- */
+/* ***** BEGIN LICENSE BLOCK ***** +/* This Source Code Form is subject to the terms of the Mozilla Public
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is Unix Native App Support.
+ *
+ * The Initial Developer of the Original Code is
+ * Mozilla Corporation.
+ * Portions created by the Initial Developer are Copyright (C) 2007
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+ +
+#include "nsKDEUtils.h" +#include "nsKDEUtils.h"
+#include "nsIWidget.h" +#include "nsIWidget.h"
@ -2565,44 +2534,11 @@ diff --git a/toolkit/xre/nsKDEUtils.h b/toolkit/xre/nsKDEUtils.h
new file mode 100644 new file mode 100644
--- /dev/null --- /dev/null
+++ b/toolkit/xre/nsKDEUtils.h +++ b/toolkit/xre/nsKDEUtils.h
@@ -0,0 +1,81 @@ @@ -0,0 +1,48 @@
+/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- +/* -*- 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
+ * ***** BEGIN LICENSE BLOCK ***** + * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is Mozilla Communicator client code.
+ *
+ * The Initial Developer of the Original Code is
+ * Netscape Communications Corporation.
+ * Portions created by the Initial Developer are Copyright (C) 1998
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either of the GNU General Public License Version 2 or later (the "GPL"),
+ * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+ +
+#ifndef nsKDEUtils_h__ +#ifndef nsKDEUtils_h__
+#define nsKDEUtils_h__ +#define nsKDEUtils_h__
@ -2675,44 +2611,11 @@ diff --git a/uriloader/exthandler/unix/nsCommonRegistry.cpp b/uriloader/exthandl
new file mode 100644 new file mode 100644
--- /dev/null --- /dev/null
+++ b/uriloader/exthandler/unix/nsCommonRegistry.cpp +++ b/uriloader/exthandler/unix/nsCommonRegistry.cpp
@@ -0,0 +1,87 @@ @@ -0,0 +1,54 @@
+/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
+/* ***** BEGIN LICENSE BLOCK ***** +/* This Source Code Form is subject to the terms of the Mozilla Public
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is the GNOME helper app implementation.
+ *
+ * The Initial Developer of the Original Code is
+ * IBM Corporation.
+ * Portions created by the Initial Developer are Copyright (C) 2003
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Brian Ryner <bryner@brianryner.com> (Original Author)
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+ +
+#include "nsCommonRegistry.h" +#include "nsCommonRegistry.h"
+ +
@ -2767,43 +2670,10 @@ diff --git a/uriloader/exthandler/unix/nsCommonRegistry.h b/uriloader/exthandler
new file mode 100644 new file mode 100644
--- /dev/null --- /dev/null
+++ b/uriloader/exthandler/unix/nsCommonRegistry.h +++ b/uriloader/exthandler/unix/nsCommonRegistry.h
@@ -0,0 +1,56 @@ @@ -0,0 +1,23 @@
+/* ***** BEGIN LICENSE BLOCK ***** +/* This Source Code Form is subject to the terms of the Mozilla Public
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is the GNOME helper app implementation.
+ *
+ * The Initial Developer of the Original Code is
+ * IBM Corporation.
+ * Portions created by the Initial Developer are Copyright (C) 2003
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Brian Ryner <bryner@brianryner.com> (Original Author)
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+ +
+#include "nsIURI.h" +#include "nsIURI.h"
+#include "nsCOMPtr.h" +#include "nsCOMPtr.h"
@ -2828,44 +2698,11 @@ diff --git a/uriloader/exthandler/unix/nsKDERegistry.cpp b/uriloader/exthandler/
new file mode 100644 new file mode 100644
--- /dev/null --- /dev/null
+++ b/uriloader/exthandler/unix/nsKDERegistry.cpp +++ b/uriloader/exthandler/unix/nsKDERegistry.cpp
@@ -0,0 +1,119 @@ @@ -0,0 +1,86 @@
+/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
+/* ***** BEGIN LICENSE BLOCK ***** +/* This Source Code Form is subject to the terms of the Mozilla Public
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is the GNOME helper app implementation.
+ *
+ * The Initial Developer of the Original Code is
+ * IBM Corporation.
+ * Portions created by the Initial Developer are Copyright (C) 2003
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Brian Ryner <bryner@brianryner.com> (Original Author)
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+ +
+#include "nsKDERegistry.h" +#include "nsKDERegistry.h"
+#include "prlink.h" +#include "prlink.h"
@ -2936,7 +2773,7 @@ new file mode 100644
+ { + {
+ nsCString mimetype = output[ 0 ]; + nsCString mimetype = output[ 0 ];
+ nsRefPtr<nsMIMEInfoUnix> mimeInfo = new nsMIMEInfoUnix( mimetype ); + nsRefPtr<nsMIMEInfoUnix> mimeInfo = new nsMIMEInfoUnix( mimetype );
+ NS_ENSURE_TRUE(mimeInfo, nsnull); + NS_ENSURE_TRUE(mimeInfo, nullptr);
+ nsCString description = output[ 1 ]; + nsCString description = output[ 1 ];
+ mimeInfo->SetDescription(NS_ConvertUTF8toUTF16(description)); + mimeInfo->SetDescription(NS_ConvertUTF8toUTF16(description));
+ nsCString handlerAppName = output[ 2 ]; + nsCString handlerAppName = output[ 2 ];
@ -2946,49 +2783,16 @@ new file mode 100644
+ NS_ADDREF((retval = mimeInfo)); + NS_ADDREF((retval = mimeInfo));
+ return retval; + return retval;
+ } + }
+ return nsnull; + return nullptr;
+} +}
diff --git a/uriloader/exthandler/unix/nsKDERegistry.h b/uriloader/exthandler/unix/nsKDERegistry.h diff --git a/uriloader/exthandler/unix/nsKDERegistry.h b/uriloader/exthandler/unix/nsKDERegistry.h
new file mode 100644 new file mode 100644
--- /dev/null --- /dev/null
+++ b/uriloader/exthandler/unix/nsKDERegistry.h +++ b/uriloader/exthandler/unix/nsKDERegistry.h
@@ -0,0 +1,62 @@ @@ -0,0 +1,29 @@
+/* ***** BEGIN LICENSE BLOCK ***** +/* This Source Code Form is subject to the terms of the Mozilla Public
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is the GNOME helper app implementation.
+ *
+ * The Initial Developer of the Original Code is
+ * IBM Corporation.
+ * Portions created by the Initial Developer are Copyright (C) 2003
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Brian Ryner <bryner@brianryner.com> (Original Author)
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+ +
+#include "nsIURI.h" +#include "nsIURI.h"
+#include "nsCOMPtr.h" +#include "nsCOMPtr.h"
@ -3049,11 +2853,11 @@ diff --git a/uriloader/exthandler/unix/nsMIMEInfoUnix.cpp b/uriloader/exthandler
#if (MOZ_PLATFORM_MAEMO == 5) && defined (MOZ_ENABLE_GNOMEVFS) #if (MOZ_PLATFORM_MAEMO == 5) && defined (MOZ_ENABLE_GNOMEVFS)
if (NS_FAILED(rv)){ if (NS_FAILED(rv)){
HildonURIAction *action = hildon_uri_get_default_action(mSchemeOrType.get(), nsnull); HildonURIAction *action = hildon_uri_get_default_action(mSchemeOrType.get(), nullptr);
if (action) { if (action) {
nsCAutoString spec; nsCAutoString spec;
aURI->GetAsciiSpec(spec); aURI->GetAsciiSpec(spec);
if (hildon_uri_open(spec.get(), action, nsnull)) if (hildon_uri_open(spec.get(), action, nullptr))
@@ -61,22 +64,22 @@ nsMIMEInfoUnix::LoadUriInternal(nsIURI * @@ -61,22 +64,22 @@ nsMIMEInfoUnix::LoadUriInternal(nsIURI *
return rv; return rv;
@ -3207,7 +3011,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
majorType, majorType,
@@ -1391,17 +1391,17 @@ nsOSHelperAppService::GetFromType(const @@ -1391,17 +1391,17 @@ nsOSHelperAppService::GetFromType(const
#ifdef MOZ_WIDGET_GTK2 #ifdef MOZ_WIDGET_GTK2
nsMIMEInfoBase *gnomeInfo = nsnull; nsMIMEInfoBase *gnomeInfo = nullptr;
if (handler.IsEmpty()) { if (handler.IsEmpty()) {
// No useful data yet. Check the GNOME registry. Unfortunately, newer // No useful data yet. Check the GNOME registry. Unfortunately, newer
// GNOME versions no longer have type-to-extension mappings, so we might // GNOME versions no longer have type-to-extension mappings, so we might
@ -3227,7 +3031,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
diff --git a/widget/gtk2/Makefile.in b/widget/gtk2/Makefile.in diff --git a/widget/gtk2/Makefile.in b/widget/gtk2/Makefile.in
--- a/widget/gtk2/Makefile.in --- a/widget/gtk2/Makefile.in
+++ b/widget/gtk2/Makefile.in +++ b/widget/gtk2/Makefile.in
@@ -105,11 +105,14 @@ DEFINES += -DCAIRO_GFX -DMOZ_APP_NAME=' @@ -104,11 +104,14 @@ DEFINES += -DCAIRO_GFX -DMOZ_APP_NAME='
INCLUDES += \ INCLUDES += \
-I$(srcdir)/../xpwidgets \ -I$(srcdir)/../xpwidgets \
@ -3281,7 +3085,7 @@ diff --git a/widget/gtk2/nsFilePicker.cpp b/widget/gtk2/nsFilePicker.cpp
using namespace mozilla; using namespace mozilla;
#define MAX_PREVIEW_SIZE 180 #define MAX_PREVIEW_SIZE 180
@@ -252,17 +254,19 @@ nsFilePicker::AppendFilters(PRInt32 aFil @@ -264,17 +266,19 @@ nsFilePicker::AppendFilters(int32_t aFil
return nsBaseFilePicker::AppendFilters(aFilterMask); return nsBaseFilePicker::AppendFilters(aFilterMask);
} }
@ -3302,34 +3106,34 @@ diff --git a/widget/gtk2/nsFilePicker.cpp b/widget/gtk2/nsFilePicker.cpp
mFilters.AppendElement(filter); mFilters.AppendElement(filter);
mFilterNames.AppendElement(name); mFilterNames.AppendElement(name);
@@ -357,16 +361,19 @@ nsFilePicker::GetFiles(nsISimpleEnumerat @@ -369,16 +373,19 @@ nsFilePicker::GetFiles(nsISimpleEnumerat
return NS_ERROR_FAILURE; return NS_ERROR_FAILURE;
} }
NS_IMETHODIMP NS_IMETHODIMP
nsFilePicker::Show(PRInt16 *aReturn) nsFilePicker::Show(int16_t *aReturn)
{ {
NS_ENSURE_ARG_POINTER(aReturn); NS_ENSURE_ARG_POINTER(aReturn);
+ if( nsKDEUtils::kdeSupport()) + if( nsKDEUtils::kdeSupport())
+ return kdeFileDialog(aReturn); + return kdeFileDialog(aReturn);
+ +
nsXPIDLCString title; nsresult rv = Open(nullptr);
title.Adopt(ToNewUTF8String(mTitle)); if (NS_FAILED(rv))
return rv;
GtkWindow *parent_widget = get_gtk_window_for_nsiwidget(mParentWidget); while (mRunning) {
g_main_context_iteration(nullptr, TRUE);
GtkFileChooserAction action = GetGtkFileChooserAction(mMode);
const gchar *accept_button = (action == GTK_FILE_CHOOSER_ACTION_SAVE)
? GTK_STOCK_SAVE : GTK_STOCK_OPEN;
@@ -505,8 +512,234 @@ nsFilePicker::Show(PRInt16 *aReturn)
*aReturn = nsIFilePicker::returnCancel;
break;
} }
gtk_widget_destroy(file_chooser); @@ -587,8 +594,235 @@ nsFilePicker::Done(GtkWidget* file_choos
if (mCallback) {
return NS_OK; mCallback->Done(result);
mCallback = nullptr;
} else {
mResult = result;
}
NS_RELEASE_THIS();
} }
+ +
+nsCString nsFilePicker::kdeMakeFilter( int index ) +nsCString nsFilePicker::kdeMakeFilter( int index )
@ -3557,10 +3361,11 @@ diff --git a/widget/gtk2/nsFilePicker.cpp b/widget/gtk2/nsFilePicker.cpp
+ } + }
+ return NS_OK; + return NS_OK;
+ } + }
+
diff --git a/widget/gtk2/nsFilePicker.h b/widget/gtk2/nsFilePicker.h diff --git a/widget/gtk2/nsFilePicker.h b/widget/gtk2/nsFilePicker.h
--- a/widget/gtk2/nsFilePicker.h --- a/widget/gtk2/nsFilePicker.h
+++ b/widget/gtk2/nsFilePicker.h +++ b/widget/gtk2/nsFilePicker.h
@@ -57,11 +57,17 @@ protected: @@ -67,11 +67,17 @@ protected:
nsString mDefault; nsString mDefault;
nsString mDefaultExtension; nsString mDefaultExtension;
@ -3835,7 +3640,7 @@ diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
return NS_ERROR_FAILURE; return NS_ERROR_FAILURE;
@@ -1823,16 +1831,23 @@ nsLocalFile::Launch() @@ -1823,16 +1831,23 @@ nsLocalFile::Launch()
if (nsnull == connection) if (nullptr == connection)
return NS_ERROR_FAILURE; return NS_ERROR_FAILURE;
if (hildon_mime_open_file(connection, mPath.get()) != kHILDON_SUCCESS) if (hildon_mime_open_file(connection, mPath.get()) != kHILDON_SUCCESS)

View File

@ -1,12 +1,12 @@
# HG changeset patch # HG changeset patch
# User Petr Cerny <pcerny@novell.com> # User Petr Cerny <pcerny@novell.com>
# Parent 4f5fe2278cd5cff898ad762457312f60a7e82a67 # Parent 7308e4a7c1f769f4bbbc90870b849cadd99495a6
Bug 634334 - call to the ntlm_auth helper fails Bug 634334 - call to the ntlm_auth helper fails
diff --git a/extensions/auth/nsAuthSambaNTLM.cpp b/extensions/auth/nsAuthSambaNTLM.cpp diff --git a/extensions/auth/nsAuthSambaNTLM.cpp b/extensions/auth/nsAuthSambaNTLM.cpp
--- a/extensions/auth/nsAuthSambaNTLM.cpp --- a/extensions/auth/nsAuthSambaNTLM.cpp
+++ b/extensions/auth/nsAuthSambaNTLM.cpp +++ b/extensions/auth/nsAuthSambaNTLM.cpp
@@ -168,17 +168,17 @@ static PRUint8* ExtractMessage(const nsA @@ -168,17 +168,17 @@ static uint8_t* ExtractMessage(const nsA
nsresult nsresult
nsAuthSambaNTLM::SpawnNTLMAuthHelper() nsAuthSambaNTLM::SpawnNTLMAuthHelper()
{ {
@ -20,7 +20,7 @@ diff --git a/extensions/auth/nsAuthSambaNTLM.cpp b/extensions/auth/nsAuthSambaNT
"--helper-protocol", "ntlmssp-client-1", "--helper-protocol", "ntlmssp-client-1",
"--use-cached-creds", "--use-cached-creds",
"--username", username, "--username", username,
nsnull nullptr
}; };
bool isOK = SpawnIOChild(const_cast<char* const*>(args), &mChildPID, &mFromChildFD, &mToChildFD); bool isOK = SpawnIOChild(const_cast<char* const*>(args), &mChildPID, &mFromChildFD, &mToChildFD);

View File

@ -4,15 +4,15 @@ Subject: introduce a pref to prefer certain plugins for mime-types
diff --git a/dom/plugins/base/nsPluginHost.cpp b/dom/plugins/base/nsPluginHost.cpp diff --git a/dom/plugins/base/nsPluginHost.cpp b/dom/plugins/base/nsPluginHost.cpp
--- a/dom/plugins/base/nsPluginHost.cpp --- a/dom/plugins/base/nsPluginHost.cpp
+++ b/dom/plugins/base/nsPluginHost.cpp +++ b/dom/plugins/base/nsPluginHost.cpp
@@ -1561,17 +1561,45 @@ nsPluginHost::FindPluginForType(const ch @@ -1588,17 +1588,51 @@ nsPluginHost::FindPluginForType(const ch
bool aCheckEnabled)
{
if (!aMimeType) { if (!aMimeType) {
return nsnull; return nullptr;
} }
LoadPlugins(); LoadPlugins();
InfallibleTArray<nsPluginTag*> matchingPlugins;
+ char *preferredPluginPath = NULL; + char *preferredPluginPath = NULL;
+ nsCAutoString mimetypePrefString ("modules.plugins.mimetype."); + nsCAutoString mimetypePrefString ("modules.plugins.mimetype.");
+ mimetypePrefString.Append(aMimeType); + mimetypePrefString.Append(aMimeType);
@ -23,30 +23,36 @@ diff --git a/dom/plugins/base/nsPluginHost.cpp b/dom/plugins/base/nsPluginHost.c
nsPluginTag *plugin = mPlugins; nsPluginTag *plugin = mPlugins;
+ +
+ if(preferredPluginPath) { + if(preferredPluginPath) {
+ while (nsnull != plugin) { + while (plugin) {
+ if (!aCheckEnabled || plugin->IsEnabled()) {
+ if (0 == PL_strcasecmp(plugin->mFileName.get(), preferredPluginPath) || + if (0 == PL_strcasecmp(plugin->mFileName.get(), preferredPluginPath) ||
+ 0 == PL_strcasecmp(plugin->mFullPath.get(), preferredPluginPath)) { + 0 == PL_strcasecmp(plugin->mFullPath.get(), preferredPluginPath)) {
+ return plugin; + matchingPlugins.AppendElement(plugin);
+ }
+ } + }
+ plugin = plugin->mNext; + plugin = plugin->mNext;
+ } + }
+ +
+ // now lets search for substrings + // now lets search for substrings
+ plugin = mPlugins; + plugin = mPlugins;
+ while (nsnull != plugin) { + while (plugin) {
+ if (nsnull != PL_strstr(plugin->mFileName.get(), preferredPluginPath) || + if (!aCheckEnabled || plugin->IsEnabled()) {
+ nsnull != PL_strstr(plugin->mFullPath.get(), preferredPluginPath)) { + if (nullptr != PL_strstr(plugin->mFileName.get(), preferredPluginPath) ||
+ return plugin; + nullptr != PL_strstr(plugin->mFullPath.get(), preferredPluginPath)) {
+ matchingPlugins.AppendElement(plugin);
+ }
+ } + }
+ plugin = plugin->mNext; + plugin = plugin->mNext;
+ } + }
+
+ return FindPreferredPlugin(matchingPlugins);
+ } + }
+ +
while (plugin) { while (plugin) {
if (!aCheckEnabled || plugin->IsEnabled()) { if (!aCheckEnabled || plugin->IsEnabled()) {
PRInt32 mimeCount = plugin->mMimeTypes.Length(); int32_t mimeCount = plugin->mMimeTypes.Length();
for (PRInt32 i = 0; i < mimeCount; i++) { for (int32_t i = 0; i < mimeCount; i++) {
if (0 == PL_strcasecmp(plugin->mMimeTypes[i].get(), aMimeType)) { if (0 == PL_strcasecmp(plugin->mMimeTypes[i].get(), aMimeType)) {
return plugin; matchingPlugins.AppendElement(plugin);
} break;
} }

View File

@ -4,34 +4,10 @@ Subject: use libnsssharedhelper if available at compile time
(can be disabled by exporting MOZ_XRE_NO_NSSHELPER=1) (can be disabled by exporting MOZ_XRE_NO_NSSHELPER=1)
References: References:
diff --git a/config/autoconf.mk.in b/config/autoconf.mk.in
--- a/config/autoconf.mk.in
+++ b/config/autoconf.mk.in
@@ -540,16 +540,20 @@ MOZ_ENABLE_LIBNOTIFY = @MOZ_ENABLE_LIBNO
MOZ_ALSA_LIBS = @MOZ_ALSA_LIBS@
MOZ_ALSA_CFLAGS = @MOZ_ALSA_CFLAGS@
GLIB_CFLAGS = @GLIB_CFLAGS@
GLIB_LIBS = @GLIB_LIBS@
GLIB_GMODULE_LIBS = @GLIB_GMODULE_LIBS@
+MOZ_ENABLE_NSSHELPER = @MOZ_ENABLE_NSSHELPER@
+NSSHELPER_CFLAGS = @NSSHELPER_CFLAGS@
+NSSHELPER_LIBS = @NSSHELPER_LIBS@
+
MOZ_NATIVE_MAKEDEPEND = @MOZ_NATIVE_MAKEDEPEND@
CL_INCLUDES_PREFIX = @CL_INCLUDES_PREFIX@
MOZ_AUTO_DEPS = @MOZ_AUTO_DEPS@
COMPILER_DEPEND = @COMPILER_DEPEND@
MDDEPDIR := @MDDEPDIR@
CC_WRAPPER = @CC_WRAPPER@
diff --git a/configure.in b/configure.in diff --git a/configure.in b/configure.in
--- a/configure.in --- a/configure.in
+++ b/configure.in +++ b/configure.in
@@ -8052,16 +8052,31 @@ AC_SUBST(QCMS_LIBS) @@ -7987,16 +7987,31 @@ AC_SUBST(QCMS_LIBS)
dnl ======================================================== dnl ========================================================
dnl HarfBuzz dnl HarfBuzz
@ -107,7 +83,7 @@ diff --git a/security/manager/ssl/src/nsNSSComponent.cpp b/security/manager/ssl/
#include "nsNetUtil.h" #include "nsNetUtil.h"
#include "nsAppDirectoryServiceDefs.h" #include "nsAppDirectoryServiceDefs.h"
#include "nsDirectoryService.h" #include "nsDirectoryService.h"
@@ -1740,18 +1747,34 @@ nsNSSComponent::InitializeNSS(bool showW @@ -1731,18 +1738,34 @@ nsNSSComponent::InitializeNSS(bool showW
ConfigureInternalPKCS11Token(); ConfigureInternalPKCS11Token();
// The NSS_INIT_NOROOTINIT flag turns off the loading of the root certs // The NSS_INIT_NOROOTINIT flag turns off the loading of the root certs
@ -115,7 +91,7 @@ diff --git a/security/manager/ssl/src/nsNSSComponent.cpp b/security/manager/ssl/
// later. It also allows us to work around a bug in the system NSS in // later. It also allows us to work around a bug in the system NSS in
// Ubuntu 8.04, which loads any nonexistent "<configdir>/libnssckbi.so" as // Ubuntu 8.04, which loads any nonexistent "<configdir>/libnssckbi.so" as
// "/usr/lib/nss/libnssckbi.so". // "/usr/lib/nss/libnssckbi.so".
PRUint32 init_flags = NSS_INIT_NOROOTINIT | NSS_INIT_OPTIMIZESPACE; uint32_t init_flags = NSS_INIT_NOROOTINIT | NSS_INIT_OPTIMIZESPACE;
- SECStatus init_rv = ::NSS_Initialize(profileStr.get(), "", "", - SECStatus init_rv = ::NSS_Initialize(profileStr.get(), "", "",
- SECMOD_DB, init_flags); - SECMOD_DB, init_flags);
+ SECStatus init_rv = SECFailure; + SECStatus init_rv = SECFailure;
@ -147,7 +123,7 @@ diff --git a/security/manager/ssl/src/nsNSSComponent.cpp b/security/manager/ssl/
diff --git a/toolkit/library/Makefile.in b/toolkit/library/Makefile.in diff --git a/toolkit/library/Makefile.in b/toolkit/library/Makefile.in
--- a/toolkit/library/Makefile.in --- a/toolkit/library/Makefile.in
+++ b/toolkit/library/Makefile.in +++ b/toolkit/library/Makefile.in
@@ -441,17 +441,17 @@ EXTRA_DSO_LDOPTS += -INCREMENTAL:NO @@ -443,17 +443,17 @@ EXTRA_DSO_LDOPTS += -INCREMENTAL:NO
endif endif
endif endif
endif endif

View File

@ -1,2 +1,2 @@
REV=e0c8343d2809 REV=0af23f8db35d
REPO=http://hg.mozilla.org/releases/mozilla-release REPO=http://hg.mozilla.org/releases/mozilla-release