Updated to 55.0.1

This commit is contained in:
Алзим 2017-08-11 22:08:08 +03:00
parent 05d0338d6b
commit 33f9d37072
6 changed files with 365 additions and 321 deletions

View file

@ -1,2 +1,2 @@
sources:
firefox-52.0.2.source.tar.xz: 5631e49d8ae064764b64643534acfdd619061ba9
firefox-55.0.1.source.tar.xz: 8ec2a864e277b4acc31ea96806aae3b90f1a4038

View file

@ -8,6 +8,6 @@ diff -up firefox-48.0/browser/app/profile/firefox.js.addons firefox-48.0/browser
-pref("extensions.autoDisableScopes", 15);
+pref("extensions.autoDisableScopes", 0);
+pref("extensions.showMismatchUI", false);
// Scopes to scan for changes at startup.
pref("extensions.startupScanScopes", 0);
// Add-on content security policies.
pref("extensions.webextensions.base-content-security-policy", "script-src 'self' https://* moz-extension: blob: filesystem: 'unsafe-eval' 'unsafe-inline'; object-src 'self' https://* moz-extension: blob: filesystem:;");

View file

@ -1,11 +1,11 @@
# HG changeset patch
# Parent 1c4e33861cfcffe5a189802cf97957b0701260db
# Parent 9ccba8e6b5fad738ce924ff40b4c5aa6f4bc12dd
diff --git a/browser/base/content/browser-kde.xul b/browser/base/content/browser-kde.xul
new file mode 100644
--- /dev/null
+++ b/browser/base/content/browser-kde.xul
@@ -0,0 +1,1134 @@
@@ -0,0 +1,1306 @@
+#filter substitution
+<?xml version="1.0"?>
+# -*- Mode: HTML -*-
@ -17,11 +17,9 @@ new file mode 100644
+<?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/usercontext/usercontext.css" type="text/css"?>
+<?xml-stylesheet href="chrome://devtools/skin/devtools-browser.css" type="text/css"?>
+<?xml-stylesheet href="chrome://browser/skin/controlcenter/panel.css" type="text/css"?>
+<?xml-stylesheet href="chrome://browser/skin/customizableui/panelUI.css" type="text/css"?>
+<?xml-stylesheet href="chrome://browser/skin/" type="text/css"?>
+<?xml-stylesheet href="chrome://browser/skin/browser-lightweightTheme.css" type="text/css"?>
+
+<?xul-overlay href="chrome://global/content/editMenuOverlay.xul"?>
+<?xul-overlay href="chrome://browser/content/baseMenuOverlay.xul"?>
@ -35,6 +33,7 @@ new file mode 100644
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns:html="http://www.w3.org/1999/xhtml"
+ xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
+ xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
+ onload="gBrowserInit.onLoad()" onunload="gBrowserInit.onUnload()" onclose="return WindowIsClosing();"
+ title="&mainWindow.title;"
@ -61,7 +60,6 @@ new file mode 100644
+#endif
+ titlemenuseparator="&mainWindow.titlemodifiermenuseparator;"
+ lightweightthemes="true"
+ lightweightthemesfooter="browser-bottombox"
+ windowtype="navigator:browser"
+ macanimationtype="document"
+ screenX="4" screenY="4"
@ -116,7 +114,7 @@ new file mode 100644
+ <menu id="context_sendTabToDevice" label="&sendTabToDevice.label;"
+ accesskey="&sendTabToDevice.accesskey;" hidden="true">
+ <menupopup id="context_sendTabToDevicePopupMenu"
+ onpopupshowing="gFxAccounts.populateSendTabToDevicesMenu(event.target, TabContextMenu.contextTab.linkedBrowser.currentURI.spec, TabContextMenu.contextTab.linkedBrowser.contentTitle);"/>
+ onpopupshowing="gSync.populateSendTabToDevicesMenu(event.target, TabContextMenu.contextTab.linkedBrowser.currentURI.spec, TabContextMenu.contextTab.linkedBrowser.contentTitle);"/>
+ </menu>
+ <menuseparator/>
+ <menuitem id="context_reloadAllTabs" label="&reloadAllTabs.label;" accesskey="&reloadAllTabs.accesskey;"
@ -155,7 +153,8 @@ new file mode 100644
+ noautofocus="true"
+ hidden="true"
+ overflowpadding="4"
+ norolluponanchor="true" />
+ norolluponanchor="true"
+ nomaxresults="true" />
+
+ <!-- for search with one-off buttons -->
+ <panel type="autocomplete" id="PopupSearchAutoComplete" noautofocus="true" hidden="true"/>
@ -174,9 +173,10 @@ new file mode 100644
+ hidden="true"
+ orient="vertical"
+ noautofocus="true"
+ noautohide="true"
+ consumeoutsideclicks="false"
+ level="parent">
+ <iframe id="dateTimePopupFrame"/>
+ level="parent"
+ tabspecific="true">
+ </panel>
+
+ <!-- for select dropdowns. The menupopup is what shows the list of options,
@ -186,6 +186,7 @@ new file mode 100644
+ <menulist popuponly="true" id="ContentSelectDropdown" hidden="true">
+ <menupopup rolluponmousewheel="true"
+ activateontab="true" position="after_start"
+ level="parent"
+#ifdef XP_WIN
+ consumeoutsideclicks="false" ignorekeys="shortcuts"
+#endif
@ -296,10 +297,53 @@ new file mode 100644
+ </hbox>
+ <hbox id="share-container" flex="1"/>
+ </panel>
+ <panel id="sidebarMenu-popup"
+ class="cui-widget-panel"
+ role="group"
+ type="arrow"
+ hidden="true"
+ flip="slide"
+ orient="vertical"
+ position="bottomcenter topleft">
+ <toolbarbutton id="sidebar-switcher-bookmarks"
+ class="subviewbutton subviewbutton-iconic"
+ key="viewBookmarksSidebarKb"
+ observes="viewBookmarksSidebar"
+ oncommand="SidebarUI.show('viewBookmarksSidebar');">
+ <observes element="viewBookmarksSidebar" attribute="checked"/>
+ </toolbarbutton>
+ <toolbarbutton id="sidebar-switcher-history"
+ label="&historyButton.label;"
+ class="subviewbutton subviewbutton-iconic"
+ key="key_gotoHistory"
+ observes="viewHistorySidebar"
+ oncommand="SidebarUI.show('viewHistorySidebar');">
+ <observes element="viewHistorySidebar" attribute="checked"/>
+ </toolbarbutton>
+ <toolbarbutton id="sidebar-switcher-tabs"
+ label="&syncedTabs.sidebar.label;"
+ class="subviewbutton subviewbutton-iconic"
+ observes="viewTabsSidebar"
+ oncommand="SidebarUI.show('viewTabsSidebar');">
+ <observes element="viewTabsSidebar" attribute="checked"/>
+ </toolbarbutton>
+ <toolbarseparator/>
+ <vbox id="sidebar-extensions"></vbox>
+ <toolbarseparator/>
+ <toolbarbutton id="sidebar-reverse-position"
+ class="subviewbutton"
+ oncommand="SidebarUI.reversePosition()"/>
+ <toolbarseparator/>
+ <toolbarbutton label="&sidebarMenuClose.label;"
+ class="subviewbutton"
+ oncommand="SidebarUI.hide()"/>
+ </panel>
+
+ <menupopup id="toolbar-context-menu"
+ onpopupshowing="onViewToolbarsPopupShowing(event, document.getElementById('viewToolbarsMenuSeparator'));">
+ <menuitem oncommand="gCustomizeMode.addToPanel(document.popupNode)"
+ photonaccesskey="&customizeMenu.pinToOverflowMenu.accesskey;"
+ photonlabel="&customizeMenu.pinToOverflowMenu.label;"
+ accesskey="&customizeMenu.moveToPanel.accesskey;"
+ label="&customizeMenu.moveToPanel.label;"
+ contexttype="toolbaritem"
@ -411,6 +455,58 @@ new file mode 100644
+ </hbox>
+ </panel>
+
+ <panel id="page-action-panel"
+ class="cui-widget-panel"
+ role="group"
+ type="arrow"
+ hidden="true"
+ flip="slide"
+ position="bottomcenter topright"
+ noautofocus="true">
+ <photonpanelmultiview id="page-action-multiView"
+ mainViewId="page-action-mainView">
+ <panelview id="page-action-mainView"
+ class="PanelUI-subView">
+ <vbox class="panel-subview-body">
+ <toolbarbutton id="page-action-bookmark-button"
+ class="subviewbutton subviewbutton-iconic"
+ observes="bookmarkThisPageBroadcaster"
+ command="Browser:AddBookmarkAs"
+ onclick="gPageActionButton.panel.hidePopup();"/>
+ <toolbarseparator/>
+ <toolbarbutton id="page-action-copy-url-button"
+ class="subviewbutton subviewbutton-iconic"
+ label="&copyURLCmd.label;"
+ command="PageAction:copyURL"/>
+ <toolbarbutton id="page-action-email-link-button"
+ class="subviewbutton subviewbutton-iconic"
+ label="&emailPageCmd.label;"
+ command="PageAction:emailLink"/>
+ <toolbarbutton id="page-action-send-to-device-button"
+ class="subviewbutton subviewbutton-iconic subviewbutton-nav"
+ label="&sendToDevice.label;"
+ closemenu="none"
+ oncommand="gPageActionButton.showSendToDeviceView(this);"/>
+ </vbox>
+ </panelview>
+ <panelview id="page-action-sendToDeviceView"
+ class="PanelUI-subView"
+ title="&sendToDevice.viewTitle;">
+ <vbox id="page-action-sendToDeviceView-body" class="panel-subview-body">
+ <toolbarbutton id="page-action-sendToDevice-fxa-button"
+ class="subviewbutton subviewbutton-iconic"
+ label="&syncBrand.fxAccount.label;"
+ shortcut="&sendToDevice.fxaRequired.label;"
+ oncommand="gPageActionButton.fxaButtonClicked();"/>
+ <toolbarbutton id="page-action-no-devices-button"
+ class="subviewbutton"
+ label="&sendToDevice.noDevices.label;"
+ disabled="true"/>
+ </vbox>
+ </panelview>
+ </photonpanelmultiview>
+ </panel>
+
+ <!-- Bookmarks and history tooltip -->
+ <tooltip id="bhTooltip"/>
+
@ -483,6 +579,13 @@ new file mode 100644
+ accesskey="&syncedTabs.context.copy.accesskey;"
+ id="syncedTabsCopySelected"/>
+ <menuseparator/>
+ <menuitem label="&syncedTabs.context.openAllInTabs.label;"
+ accesskey="&syncedTabs.context.openAllInTabs.accesskey;"
+ id="syncedTabsOpenAllInTabs"/>
+ <menuitem label="&syncedTabs.context.managedevices.label;"
+ accesskey="&syncedTabs.context.managedevices.accesskey;"
+ id="syncedTabsManageDevices"
+ oncommand="gSync.openDevicesManagementPage('syncedtabs-sidebar');"/>
+ <menuitem label="&syncSyncNowItem.label;"
+ accesskey="&syncSyncNowItem.accesskey;"
+ id="syncedTabsRefresh"/>
@ -515,6 +618,7 @@ new file mode 100644
+ id="syncedTabsRefreshFilter"/>
+ </menupopup>
+ </popupset>
+ <box id="appMenu-viewCache" hidden="true"/>
+
+#ifdef CAN_DRAW_IN_TITLEBAR
+<vbox id="titlebar">
@ -554,10 +658,8 @@ new file mode 100644
+#ifdef MENUBAR_CAN_AUTOHIDE
+ toolbarname="&menubarCmd.label;"
+ accesskey="&menubarCmd.accesskey;"
+#if defined(MOZ_WIDGET_GTK)
+ autohide="true"
+#endif
+#endif
+ context="toolbar-context-menu">
+ <toolbaritem id="menubar-items" align="center">
+# The entire main menubar is placed into browser-menubar.inc, so that it can be shared by
@ -620,7 +722,6 @@ new file mode 100644
+ <menupopup id="alltabs-popup"
+ position="after_end">
+ <menuitem id="alltabs_undoCloseTab"
+ class="menuitem-iconic"
+ key="key_undoCloseTab"
+ label="&undoCloseTab.label;"
+ observes="History:UndoCloseTab"/>
@ -668,18 +769,43 @@ new file mode 100644
+ removable="false"
+ class="chromeclass-location" overflows="false">
+ <toolbarbutton id="back-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
+ removable="false" overflows="false"
+ label="&backCmd.label;"
+ command="Browser:BackOrBackDuplicate"
+ onclick="checkForMiddleClick(this, event);"
+ tooltip="back-button-tooltip"
+ context="backForwardMenu"/>
+#ifdef MOZ_PHOTON_THEME
+ <toolbarbutton id="forward-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
+ removable="false" overflows="false"
+ label="&forwardCmd.label;"
+ command="Browser:ForwardOrForwardDuplicate"
+ onclick="checkForMiddleClick(this, event);"
+ tooltip="forward-button-tooltip"
+ context="backForwardMenu"/>
+ <toolbaritem id="stop-reload-button"
+ removable="false" overflows="false"
+ class="chromeclass-toolbar-additional">
+ <toolbarbutton id="reload-button"
+ class="toolbarbutton-1"
+ command="Browser:ReloadOrDuplicate"
+ onclick="checkForMiddleClick(this, event);"
+ tooltip="dynamic-shortcut-tooltip"/>
+ <toolbarbutton id="stop-button"
+ class="toolbarbutton-1"
+ command="Browser:Stop"
+ tooltip="dynamic-shortcut-tooltip"/>
+ </toolbaritem>
+#endif
+ <hbox id="urlbar-wrapper" flex="1">
+#ifndef MOZ_PHOTON_THEME
+ <toolbarbutton id="forward-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
+ label="&forwardCmd.label;"
+ command="Browser:ForwardOrForwardDuplicate"
+ onclick="checkForMiddleClick(this, event);"
+ tooltip="forward-button-tooltip"
+ context="backForwardMenu"/>
+#endif
+ <textbox id="urlbar" flex="1"
+ placeholder="&urlbar.placeholder2;"
+ type="autocomplete"
@ -709,6 +835,7 @@ new file mode 100644
+ consumeanchor="identity-box"
+ onclick="PageProxyClickHandler(event);"/>
+ <image id="sharing-icon" mousethrough="always"/>
+ <image id="tracking-protection-icon"/>
+ <box id="blocked-permissions-container" align="center">
+ <image data-permission-id="geo" class="blocked-permission-icon geo-icon" role="button"
+ tooltiptext="&urlbar.geolocationBlocked.tooltip;"/>
@ -722,6 +849,8 @@ new file mode 100644
+ tooltiptext="&urlbar.microphoneBlocked.tooltip;"/>
+ <image data-permission-id="screen" class="blocked-permission-icon screen-icon" role="button"
+ tooltiptext="&urlbar.screenBlocked.tooltip;"/>
+ <image data-permission-id="persistent-storage" class="blocked-permission-icon persistent-storage-icon" role="button"
+ tooltiptext="&urlbar.persistentStorageBlocked.tooltip;"/>
+ </box>
+ <box id="notification-popup-box"
+ hidden="true"
@ -738,8 +867,11 @@ new file mode 100644
+ tooltiptext="&urlbar.indexedDBNotificationAnchor.tooltip;"/>
+ <image id="password-notification-icon" class="notification-anchor-icon login-icon" role="button"
+ tooltiptext="&urlbar.passwordNotificationAnchor.tooltip;"/>
+ <image id="plugins-notification-icon" class="notification-anchor-icon plugin-icon" role="button"
+ tooltiptext="&urlbar.pluginsNotificationAnchor.tooltip;"/>
+ <stack id="plugins-notification-icon" class="notification-anchor-icon" role="button" align="center"
+ tooltiptext="&urlbar.pluginsNotificationAnchor.tooltip;">
+ <image class="plugin-icon" />
+ <image id="plugin-icon-badge" />
+ </stack>
+ <image id="web-notifications-notification-icon" class="notification-anchor-icon desktop-notification-icon" role="button"
+ tooltiptext="&urlbar.webNotificationAnchor.tooltip;"/>
+ <image id="webRTC-shareDevices-notification-icon" class="notification-anchor-icon camera-icon" role="button"
@ -756,9 +888,13 @@ new file mode 100644
+ tooltiptext="&urlbar.translatedNotificationAnchor.tooltip;"/>
+ <image id="eme-notification-icon" class="notification-anchor-icon drm-icon" role="button"
+ tooltiptext="&urlbar.emeNotificationAnchor.tooltip;"/>
+ <image id="persistent-storage-notification-icon" class="notification-anchor-icon persistent-storage-icon" role="button"
+ tooltiptext="&urlbar.persistentStorageNotificationAnchor.tooltip;"/>
+ </box>
+ <image id="tracking-protection-icon"/>
+ <image id="connection-icon"/>
+ <image id="extension-icon"/>
+ <image id="remote-control-icon"
+ tooltiptext="&urlbar.remoteControlNotificationAnchor.tooltip;"/>
+ <hbox id="identity-icon-labels">
+ <label id="identity-icon-label" class="plain" flex="1"/>
+ <label id="identity-icon-country-label" class="plain"/>
@ -780,26 +916,33 @@ new file mode 100644
+ onclick="ReaderParent.buttonClick(event);"/>
+ <toolbarbutton id="urlbar-zoom-button"
+ onclick="FullZoom.reset();"
+ tooltiptext="&urlbar.zoomReset.tooltip;"
+ tooltip="dynamic-shortcut-tooltip"
+ hidden="true"/>
+ </hbox>
+ <hbox id="userContext-icons" hidden="true">
+ <label id="userContext-label"/>
+ <image id="userContext-indicator"/>
+ </hbox>
+#ifndef MOZ_PHOTON_THEME
+ <toolbarbutton id="urlbar-go-button"
+ class="chromeclass-toolbar-additional"
+ onclick="gURLBar.handleCommand(event);"
+ tooltiptext="&goEndCap.tooltip;"/>
+ <toolbarbutton id="urlbar-reload-button"
+ <toolbarbutton id="reload-button"
+ class="chromeclass-toolbar-additional"
+ command="Browser:ReloadOrDuplicate"
+ onclick="checkForMiddleClick(this, event);"
+ tooltiptext="&reloadButton.tooltip;"/>
+ <toolbarbutton id="urlbar-stop-button"
+ tooltip="dynamic-shortcut-tooltip"/>
+ <toolbarbutton id="stop-button"
+ class="chromeclass-toolbar-additional"
+ command="Browser:Stop"
+ tooltiptext="&stopButton.tooltip;"/>
+ tooltip="dynamic-shortcut-tooltip"/>
+#else
+ <toolbarbutton id="urlbar-page-action-button"
+ class="chromeclass-toolbar-additional"
+ tooltiptext="&pageActionButton.tooltip;"
+ onclick="gPageActionButton.onEvent(event);"/>
+#endif
+ </textbox>
+ </hbox>
+ </toolbaritem>
@ -886,6 +1029,19 @@ new file mode 100644
+ new PlacesMenu(event, 'place:folder=UNFILED_BOOKMARKS',
+ PlacesUIUtils.getViewForNode(this.parentNode.parentNode).options);"/>
+ </menu>
+ <menu id="BMB_mobileBookmarks"
+ class="menu-iconic bookmark-item subviewbutton"
+ label="&bookmarksMenuButton.mobile.label;"
+ hidden="true"
+ container="true">
+ <menupopup id="BMB_mobileBookmarksPopup"
+ placespopup="true"
+ context="placesContext"
+ onpopupshowing="if (!this.parentNode._placesView)
+ new PlacesMenu(event, 'place:folder=MOBILE_BOOKMARKS',
+ PlacesUIUtils.getViewForNode(this.parentNode.parentNode).options);"/>
+ </menu>
+
+ <menuseparator/>
+ <!-- Bookmarks menu items will go here -->
+ <menuitem id="BMB_bookmarksShowAll"
@ -1037,7 +1193,7 @@ new file mode 100644
+
+ <toolbarbutton id="new-window-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
+ label="&newNavigatorCmd.label;"
+ command="key_newNavigator"
+ command="cmd_newNavigator"
+ tooltip="dynamic-shortcut-tooltip"
+ ondrop="newWindowButtonObserver.onDrop(event)"
+ ondragover="newWindowButtonObserver.onDragOver(event)"
@ -1049,6 +1205,11 @@ new file mode 100644
+ type="checkbox"
+ label="&fullScreenCmd.label;"
+ tooltip="dynamic-shortcut-tooltip"/>
+#ifdef MOZ_PHOTON_THEME
+ <toolbarbutton id="library-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
+ oncommand="PanelUI.showSubView('appMenu-libraryView', this, null, true);"
+ label="&places.library.title;"/>
+#endif
+ </toolbarpalette>
+ </toolbox>
+
@ -1059,9 +1220,18 @@ new file mode 100644
+ <vbox id="browser-border-start" hidden="true" layer="true"/>
+ <vbox id="sidebar-box" hidden="true" class="chromeclass-extrachrome">
+ <sidebarheader id="sidebar-header" align="center">
+ <label id="sidebar-title" persist="value" flex="1" crop="end" control="sidebar"/>
+ <toolbarbutton id="sidebar-switcher-target" flex="1" class="tabbable">
+ <image id="sidebar-icon" consumeanchor="sidebar-switcher-target"/>
+ <label id="sidebar-title" persist="value" crop="end" flex="1" control="sidebar"/>
+ <image id="sidebar-switcher-arrow"/>
+ </toolbarbutton>
+ <image id="sidebar-throbber"/>
+ <toolbarbutton class="close-icon tabbable" tooltiptext="&sidebarCloseButton.tooltip;" oncommand="SidebarUI.hide();"/>
+# To ensure the button label's intrinsic width doesn't expand the sidebar
+# if the label is long, the button needs flex=1.
+# To ensure the button doesn't expand unnecessarily for short labels, the
+# spacer should significantly out-flex the button.
+ <spacer flex="1000"/>
+ <toolbarbutton id="sidebar-close" class="tabbable" tooltiptext="&sidebarCloseButton.tooltip;" oncommand="SidebarUI.hide();"/>
+ </sidebarheader>
+ <browser id="sidebar" flex="1" autoscroll="false" disablehistory="true" disablefullscreen="true"
+ style="min-width: 14em; width: 18em; max-width: 36em;" tooltip="aHTMLTooltip"/>
@ -1119,6 +1289,7 @@ new file mode 100644
+
+ <svg:svg height="0">
+#include tab-shape.inc.svg
+#ifndef MOZ_PHOTON_THEME
+ <svg:clipPath id="urlbar-back-button-clip-path">
+#ifndef XP_MACOSX
+ <svg:path d="M -9,-4 l 0,1 a 15 15 0 0,1 0,30 l 0,1 l 10000,0 l 0,-32 l -10000,0 z" />
@ -1131,6 +1302,7 @@ new file mode 100644
+ <svg:path d="M -6,-2 l 0,1 a 15 15 0 0,1 0,30 l 0,1 l 10000,0 l 0,-32 l -10000,0 z" />
+ </svg:clipPath>
+#endif
+#endif
+ </svg:svg>
+
+</vbox>
@ -1143,7 +1315,7 @@ new file mode 100644
diff --git a/browser/base/jar.mn b/browser/base/jar.mn
--- a/browser/base/jar.mn
+++ b/browser/base/jar.mn
@@ -66,16 +66,18 @@ browser.jar:
@@ -58,16 +58,18 @@ browser.jar:
content/browser/aboutSocialError.xhtml (content/aboutSocialError.xhtml)
content/browser/aboutProviderDirectory.xhtml (content/aboutProviderDirectory.xhtml)
content/browser/aboutTabCrashed.css (content/aboutTabCrashed.css)
@ -1159,7 +1331,7 @@ diff --git a/browser/base/jar.mn b/browser/base/jar.mn
content/browser/browser-ctrlTab.js (content/browser-ctrlTab.js)
content/browser/browser-customization.js (content/browser-customization.js)
content/browser/browser-data-submission-info-bar.js (content/browser-data-submission-info-bar.js)
content/browser/browser-devedition.js (content/browser-devedition.js)
content/browser/browser-compacttheme.js (content/browser-compacttheme.js)
content/browser/browser-feeds.js (content/browser-feeds.js)
content/browser/browser-fullScreenAndPointerLock.js (content/browser-fullScreenAndPointerLock.js)
diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/nsModule.cpp
@ -1225,30 +1397,31 @@ diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/ns
diff --git a/browser/components/preferences/in-content/main.js b/browser/components/preferences/in-content/main.js
--- a/browser/components/preferences/in-content/main.js
+++ b/browser/components/preferences/in-content/main.js
@@ -33,16 +33,22 @@ var gMainPane = {
if (AppConstants.platform == "win") {
// In Windows 8 we launch the control panel since it's the only
@@ -39,16 +39,23 @@ var gMainPane = {
// way to get all file type association prefs. So we don't know
// when the user will select the default. We refresh here periodically
// in case the default changes. On other Windows OS's defaults can also
// be set while the prefs are open.
window.setInterval(this.updateSetDefaultBrowser.bind(this), 1000);
}
+
}
+ var env = Components.classes["@mozilla.org/process/environment;1"]
+ .getService(Components.interfaces.nsIEnvironment);
+ var kde_session = 0;
+ if (env.get('KDE_FULL_SESSION') == "true")
+ if (env.get('KDE_FULL_SESSION') == "true") {
+ kde_session = 1;
}
+ }
+
this.buildContentProcessCountMenuList();
this.updateDefaultPerformanceSettingsPref();
// set up the "use current page" label-changing listener
this._updateUseCurrentButton();
window.addEventListener("focus", this._updateUseCurrentButton.bind(this), false);
this.updateBrowserStartupLastSession();
@@ -704,16 +710,27 @@ var gMainPane = {
let defaultPerformancePref =
document.getElementById("browser.preferences.defaultPerformanceSettings.enabled");
defaultPerformancePref.addEventListener("change", () => {
this.updatePerformanceSettingsBox({duringChangeEvent: true});
});
@@ -780,16 +787,27 @@ var gMainPane = {
let alwaysCheckPref = document.getElementById("browser.shell.checkDefaultBrowser");
alwaysCheckPref.value = true;
@ -1279,7 +1452,7 @@ diff --git a/browser/components/preferences/in-content/main.js b/browser/compone
diff --git a/browser/components/shell/moz.build b/browser/components/shell/moz.build
--- a/browser/components/shell/moz.build
+++ b/browser/components/shell/moz.build
@@ -34,16 +34,18 @@ if CONFIG['OS_ARCH'] == 'WINNT':
@@ -37,16 +37,18 @@ if CONFIG['OS_ARCH'] == 'WINNT':
]
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
SOURCES += [
@ -1561,7 +1734,7 @@ new file mode 100644
+NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsGNOMEShellService, Init)
+NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsKDEShellService, Init)
+
+NS_METHOD
+NS_IMETHODIMP
+nsUnixShellServiceConstructor(nsISupports *aOuter, REFNSIID aIID, void **aResult)
+{
+ if( nsKDEUtils::kdeSupport())
@ -1584,28 +1757,29 @@ new file mode 100644
+
+#include "nsIGNOMEShellService.h"
+
+NS_METHOD
+NS_IMETHODIMP
+nsUnixShellServiceConstructor(nsISupports *aOuter, REFNSIID aIID, void **aResult);
+
+#endif // nsunixshellservice_h____
diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
--- a/browser/installer/package-manifest.in
+++ b/browser/installer/package-manifest.in
@@ -652,16 +652,17 @@
@RESPATH@/greprefs.js
@RESPATH@/defaults/autoconfig/prefcalls.js
@RESPATH@/browser/defaults/permissions
@@ -662,16 +662,18 @@
@RESPATH@/browser/defaults/blocklists
@RESPATH@/browser/defaults/pinning
; Warning: changing the path to channel-prefs.js can cause bugs (Bug 756325)
; Technically this is an app pref file, but we are keeping it in the original
; gre location for now.
@RESPATH@/defaults/pref/channel-prefs.js
+@BINPATH@/defaults/pref/kde.js
+
; Remote control protocol prefs
; defined in ../../testing/marionette/prefs/marionette.js
@RESPATH@/defaults/pref/marionette.js
; Services (gre) prefs
@RESPATH@/defaults/pref/services-sync.js
; [Layout Engine Resources]
; Style Sheets, Graphics and other Resources used by the layout engine.
@RESPATH@/res/EditorOverride.css
@RESPATH@/res/contenteditable.css

View file

@ -7,7 +7,7 @@
# This also means only STABLE upstream releases, NO betas.
# This is a discussed topic. Please, do not flame it again.
%define major 52.0.2
%define major 55.0.1
%define ff_epoch 0
# (tpg) set version HERE !!!
%define realver %{major}
@ -39,7 +39,6 @@ Url: http://www.mozilla.com/firefox/
%if 0%{?prel}
Source0: ftp://ftp.mozilla.org/pub/mozilla.org/%{name}/releases/%{realver}/source/%{name}-%{realver}%prel.source.tar.xz
%else
# Source0: ftp://ftp.mozilla.org/pub/mozilla.org/%{name}/releases/%{realver}/source/%{name}-%{realver}.source.tar.xz
Source0: https://archive.mozilla.org/pub/firefox/releases/%{realver}/source/%{name}-%{realver}.source.tar.xz
%endif
Source4: %{name}.desktop
@ -55,7 +54,7 @@ Patch37: firefox-50.1-fix-glibc-check.patch
# Fedora specific patches
# Unable to install addons from https pages
Patch204: rhbz-966424.patch
#Patch204: rhbz-966424.patch
Patch215: firefox-enable-addons.patch
Patch219: rhbz-1173156.patch
@ -65,7 +64,8 @@ BuildRequires: gtk+2-devel
%if %{toolkit_gtk3}
BuildRequires: gtk+3-devel
%endif
BuildRequires: rust
BuildRequires: cargo
BuildRequires: unzip
BuildRequires: zip
BuildRequires: pkgconfig(xinerama)
@ -78,10 +78,9 @@ BuildRequires: pkgconfig(libIDL-2.0)
BuildRequires: makedepend
BuildRequires: nss-devel >= 2:3.24
BuildRequires: nss-static-devel
BuildRequires: pkgconfig(nspr)
BuildRequires: pkgconfig(nspr) >= 4.15
BuildRequires: startup-notification-devel
BuildRequires: dbus-glib-devel
BuildRequires: pkgconfig(libevent)
%ifnarch %arm %mips
BuildRequires: java-rpmbuild
BuildRequires: java-1.8.0-openjdk-devel
@ -194,7 +193,6 @@ Files and macros mainly for building Firefox extensions.
%patch37 -p1
# Fedora patches
%patch204 -p2 -b .966424
%patch215 -p1 -b .addons
%patch219 -p2 -b .rhbz-1173156
@ -224,7 +222,6 @@ mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../obj
ac_add_options --host=%{_host}
ac_add_options --target=%{_target_platform}
ac_add_options --enable-release
ac_add_options --enable-ipc-fuzzer
ac_add_options --prefix="%{_prefix}"
ac_add_options --libdir="%{_libdir}"
ac_add_options --with-system-nspr
@ -232,10 +229,8 @@ ac_add_options --with-system-nss
ac_add_options --with-system-zlib
ac_add_options --with-system-jpeg
ac_add_options --with-pthreads
ac_add_options --with-system-libevent
ac_add_options --without-system-libvpx
ac_add_options --with-system-bz2
ac_add_options --enable-gio
ac_add_options --disable-updater
ac_add_options --disable-tests
%if %{toolkit_gtk3}
@ -248,6 +243,8 @@ ac_add_options --disable-system-sqlite
ac_add_options --enable-startup-notification
ac_add_options --with-distribution-id=org.rosa
ac_add_options --disable-crashreporter
ac_add_options --disable-debug
ac_add_options --enable-optimize
EOF
@ -341,7 +338,6 @@ EOF
# use the system myspell dictionaries
rm -fr %{buildroot}%{mozillalibdir}/dictionaries
#ln -s %{_datadir}/hunspell %{buildroot}%{mozillalibdir}/dictionaries
ln -s %{_datadir}/dict/mozilla/ %{buildroot}%{mozillalibdir}/dictionaries
# (lm) touch and %ghost bookmarks.html to a proper uninstall

View file

@ -1,5 +1,5 @@
# HG changeset patch
# Parent 5c8ae59424f5318bf7a387257771bf95d3893063
# Parent 172cd661ceed38b3161c6246f6729f4d8370dce3
Description: Add KDE integration to Firefox (toolkit parts)
Author: Wolfgang Rosenauer <wolfgang@rosenauer.org>
Author: Lubos Lunak <lunak@suse.com>
@ -9,7 +9,7 @@ Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=140751
diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
--- a/modules/libpref/Preferences.cpp
+++ b/modules/libpref/Preferences.cpp
@@ -31,16 +31,17 @@
@@ -32,16 +32,17 @@
#include "nsIZipReader.h"
#include "nsPrefBranch.h"
#include "nsXPIDLString.h"
@ -27,7 +27,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
#include "prefread.h"
#include "prefapi_private_data.h"
@@ -1174,16 +1175,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char
@@ -1219,16 +1220,34 @@ pref_LoadPrefsInDir(nsIFile* aDir, char
static nsresult pref_LoadPrefsInDirList(const char *listId)
{
@ -62,7 +62,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
return NS_OK;
bool hasMore;
@@ -1199,17 +1218,17 @@ static nsresult pref_LoadPrefsInDirList(
@@ -1244,17 +1263,17 @@ static nsresult pref_LoadPrefsInDirList(
nsAutoCString leaf;
path->GetNativeLeafName(leaf);
@ -81,7 +81,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
{
nsZipItemPtr<char> manifest(jarReader, name, true);
NS_ENSURE_TRUE(manifest.Buffer(), NS_ERROR_NOT_AVAILABLE);
@@ -1303,24 +1322,36 @@ static nsresult pref_InitInitialObjects(
@@ -1348,24 +1367,36 @@ static nsresult pref_InitInitialObjects(
/* these pref file names should not be used: we process them after all other application pref files for backwards compatibility */
static const char* specialFiles[] = {
#if defined(XP_MACOSX)
@ -121,13 +121,13 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
diff --git a/modules/libpref/moz.build b/modules/libpref/moz.build
--- a/modules/libpref/moz.build
+++ b/modules/libpref/moz.build
@@ -31,16 +31,20 @@ UNIFIED_SOURCES += [
'prefread.cpp',
]
# prefapi.cpp cannot be built in unified mode because it uses plarena.h
SOURCES += [
@@ -33,16 +33,20 @@ EXPORTS.mozilla += [
UNIFIED_SOURCES += [
'nsPrefBranch.cpp',
'nsPrefsFactory.cpp',
'prefapi.cpp',
'Preferences.cpp',
'prefread.cpp',
]
+LOCAL_INCLUDES += [
@ -140,12 +140,12 @@ diff --git a/modules/libpref/moz.build b/modules/libpref/moz.build
DEFINES['OS_ARCH'] = CONFIG['OS_ARCH']
DEFINES['MOZ_WIDGET_TOOLKIT'] = CONFIG['MOZ_WIDGET_TOOLKIT']
FINAL_TARGET_PP_FILES += [
if CONFIG['MOZ_ENABLE_WEBRENDER']:
DEFINES['MOZ_ENABLE_WEBRENDER'] = True
diff --git a/python/mozbuild/mozpack/chrome/flags.py b/python/mozbuild/mozpack/chrome/flags.py
--- a/python/mozbuild/mozpack/chrome/flags.py
+++ b/python/mozbuild/mozpack/chrome/flags.py
@@ -211,16 +211,17 @@ class Flags(OrderedDict):
@@ -220,16 +220,17 @@ class Flags(OrderedDict):
'contentaccessible': Flag,
'os': StringFlag,
'osversion': VersionFlag,
@ -187,8 +187,8 @@ diff --git a/python/mozbuild/mozpack/chrome/manifest.py b/python/mozbuild/mozpac
diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloads/moz.build
--- a/toolkit/components/downloads/moz.build
+++ b/toolkit/components/downloads/moz.build
@@ -57,16 +57,17 @@ if not CONFIG['MOZ_SUITE']:
'nsDownloadManagerUI.manifest',
@@ -37,16 +37,17 @@ UNIFIED_SOURCES += [
'nsDownloadManager.cpp'
]
FINAL_LIBRARY = 'xul'
@ -205,81 +205,13 @@ diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloa
CXXFLAGS += CONFIG['TK_CFLAGS']
diff --git a/toolkit/components/downloads/nsDownloadManager.cpp b/toolkit/components/downloads/nsDownloadManager.cpp
--- a/toolkit/components/downloads/nsDownloadManager.cpp
+++ b/toolkit/components/downloads/nsDownloadManager.cpp
@@ -52,16 +52,20 @@
#ifdef XP_WIN
#include <shlobj.h>
#include "nsWindowsHelpers.h"
#ifdef DOWNLOAD_SCANNER
#include "nsDownloadScanner.h"
#endif
#endif
+#if defined(XP_UNIX) && !defined(XP_MACOSX)
+#include "nsKDEUtils.h"
+#endif
+
#ifdef XP_MACOSX
#include <CoreFoundation/CoreFoundation.h>
#endif
#ifdef MOZ_WIDGET_ANDROID
#include "FennecJNIWrappers.h"
#endif
@@ -2723,16 +2727,25 @@ nsDownload::SetState(DownloadState aStat
nsCOMPtr<nsIPrefBranch> pref(do_GetService(NS_PREFSERVICE_CONTRACTID));
// Master pref to control this function.
bool showTaskbarAlert = true;
if (pref)
pref->GetBoolPref(PREF_BDM_SHOWALERTONCOMPLETE, &showTaskbarAlert);
if (showTaskbarAlert) {
+ if( nsKDEUtils::kdeSupport()) {
+ nsTArray<nsCString> command;
+ command.AppendElement( NS_LITERAL_CSTRING( "DOWNLOADFINISHED" ));
+ nsAutoString displayName;
+ GetDisplayName( displayName );
+ command.AppendElement( nsAutoCString( ToNewUTF8String( displayName )));
+ nsKDEUtils::command( command );
+ } else {
+ // begin non-KDE block
int32_t alertInterval = 2000;
if (pref)
pref->GetIntPref(PREF_BDM_SHOWALERTINTERVAL, &alertInterval);
int64_t alertIntervalUSec = alertInterval * PR_USEC_PER_MSEC;
int64_t goat = PR_Now() - mStartTime;
showTaskbarAlert = goat > alertIntervalUSec;
@@ -2764,16 +2777,17 @@ nsDownload::SetState(DownloadState aStat
message, !removeWhenDone,
mPrivate ? NS_LITERAL_STRING("private") : NS_LITERAL_STRING("non-private"),
mDownloadManager, EmptyString(), NS_LITERAL_STRING("auto"),
EmptyString(), EmptyString(), nullptr, mPrivate,
false /* requireInteraction */);
}
}
}
+ }
#if defined(XP_WIN) || defined(XP_MACOSX) || defined(MOZ_WIDGET_ANDROID) || defined(MOZ_WIDGET_GTK)
nsCOMPtr<nsIFileURL> fileURL = do_QueryInterface(mTarget);
nsCOMPtr<nsIFile> file;
nsAutoString path;
if (fileURL &&
NS_SUCCEEDED(fileURL->GetFile(getter_AddRefs(file))) &&
diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
--- a/toolkit/content/jar.mn
+++ b/toolkit/content/jar.mn
@@ -71,29 +71,33 @@ toolkit.jar:
content/global/bindings/button.xml (widgets/button.xml)
content/global/bindings/checkbox.xml (widgets/checkbox.xml)
@@ -75,29 +75,33 @@ toolkit.jar:
content/global/bindings/colorpicker.xml (widgets/colorpicker.xml)
content/global/bindings/datekeeper.js (widgets/datekeeper.js)
content/global/bindings/datepicker.js (widgets/datepicker.js)
content/global/bindings/datetimepicker.xml (widgets/datetimepicker.xml)
content/global/bindings/datetimepopup.xml (widgets/datetimepopup.xml)
content/global/bindings/datetimebox.xml (widgets/datetimebox.xml)
@ -310,23 +242,11 @@ diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
content/global/bindings/scale.xml (widgets/scale.xml)
content/global/bindings/scrollbar.xml (widgets/scrollbar.xml)
content/global/bindings/scrollbox.xml (widgets/scrollbox.xml)
@@ -113,9 +117,9 @@ toolkit.jar:
content/global/bindings/videocontrols.css (widgets/videocontrols.css)
* content/global/bindings/wizard.xml (widgets/wizard.xml)
#ifdef XP_MACOSX
content/global/macWindowMenu.js
#endif
content/global/svg/svgBindings.xml (/layout/svg/resources/content/svgBindings.xml)
content/global/gmp-sources/eme-adobe.json (gmp-sources/eme-adobe.json)
content/global/gmp-sources/openh264.json (gmp-sources/openh264.json)
- content/global/gmp-sources/widevinecdm.json (gmp-sources/widevinecdm.json)
\ No newline at end of file
+ content/global/gmp-sources/widevinecdm.json (gmp-sources/widevinecdm.json)
diff --git a/toolkit/content/widgets/dialog-kde.xml b/toolkit/content/widgets/dialog-kde.xml
new file mode 100644
--- /dev/null
+++ b/toolkit/content/widgets/dialog-kde.xml
@@ -0,0 +1,457 @@
@@ -0,0 +1,455 @@
+<?xml version="1.0"?>
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
@ -486,10 +406,10 @@ new file mode 100644
+ this._configureButtons(this.buttons);
+
+ // listen for when window is closed via native close buttons
+ window.addEventListener("close", this._closeHandler, false);
+ window.addEventListener("close", this._closeHandler);
+
+ // for things that we need to initialize after onload fires
+ window.addEventListener("load", this.postLoadInit, false);
+ window.addEventListener("load", this.postLoadInit);
+
+ window.moveToAlertPosition = this.moveToAlertPosition;
+ window.centerWindowOnScreen = this.centerWindowOnScreen;
@ -524,8 +444,7 @@ new file mode 100644
+ // so return focus to the tab itself
+ initialFocusedElt.focus();
+ }
+ }
+ else if (!/Mac/.test(navigator.platform) &&
+ } else if (!/Mac/.test(navigator.platform) &&
+ focusedElt.hasAttribute("dlgtype") && focusedElt != defaultButton) {
+ defaultButton.focus();
+ }
@ -669,8 +588,7 @@ new file mode 100644
+ if (newDefaultButton) {
+ this.setAttribute("defaultButton", aNewDefault);
+ newDefaultButton.setAttribute("default", "true");
+ }
+ else {
+ } else {
+ this.setAttribute("defaultButton", "none");
+ if (aNewDefault != "none")
+ dump("invalid new default button: " + aNewDefault + ", assuming: none\n");
@ -788,7 +706,7 @@ diff --git a/toolkit/content/widgets/preferences-kde.xml b/toolkit/content/widge
new file mode 100644
--- /dev/null
+++ b/toolkit/content/widgets/preferences-kde.xml
@@ -0,0 +1,1411 @@
@@ -0,0 +1,1380 @@
+<?xml version="1.0"?>
+
+<!DOCTYPE bindings [
@ -865,8 +783,7 @@ new file mode 100644
+ var event = document.createEvent("Events");
+ event.initEvent("change", true, true);
+ aPreference.dispatchEvent(event);
+ }
+ catch (e) {
+ } catch (e) {
+ Components.utils.reportError(e);
+ }
+ ]]>
@ -919,7 +836,7 @@ new file mode 100644
+ return;
+
+ this.preferences.rootBranchInternal
+ .addObserver(this.name, this.preferences, false);
+ .addObserver(this.name, this.preferences);
+ // In non-instant apply mode, we must try and use the last saved state
+ // from any previous opens of a child dialog instead of the value from
+ // preferences, to pick up any edits a user may have made.
@ -945,8 +862,7 @@ new file mode 100644
+
+ // Don't use the value setter here, we don't want updateElements to be prematurely fired.
+ this._value = preference ? preference.value : this.valueFromPreferences;
+ }
+ else
+ } else
+ this._value = this.valueFromPreferences;
+ this.preferences._constructAfterChildren();
+ ]]>
@ -972,9 +888,9 @@ new file mode 100644
+
+ this.preferences.rootBranchInternal
+ .removeObserver(this.name, this.preferences);
+ this.setAttribute('name', val);
+ this.setAttribute("name", val);
+ this.preferences.rootBranchInternal
+ .addObserver(val, this.preferences, false);
+ .addObserver(val, this.preferences);
+
+ return val;
+ </setter>
@ -1130,13 +1046,9 @@ new file mode 100644
+ .data;
+ case "string":
+ case "unichar":
+ return this._branch
+ .getComplexValue(this.name, Components.interfaces.nsISupportsString)
+ .data;
+ return this._branch.getStringPref(this.name);
+ case "fontname":
+ var family = this._branch
+ .getComplexValue(this.name, Components.interfaces.nsISupportsString)
+ .data;
+ var family = this._branch.getStringPref(this.name);
+ var fontEnumerator = Components.classes["@mozilla.org/gfx/fontenumerator;1"]
+ .createInstance(Components.interfaces.nsIFontEnumerator);
+ return fontEnumerator.getStandardFamilyName(family);
@ -1147,8 +1059,7 @@ new file mode 100644
+ default:
+ this._reportUnknownType();
+ }
+ }
+ catch (e) { }
+ } catch (e) { }
+ return null;
+ ]]>
+ </getter>
@ -1182,11 +1093,7 @@ new file mode 100644
+ case "string":
+ case "unichar":
+ case "fontname":
+ var iss = Components.classes["@mozilla.org/supports-string;1"]
+ .createInstance(Components.interfaces.nsISupportsString);
+ iss.data = val;
+ this.preferences.rootBranch
+ .setComplexValue(this.name, Components.interfaces.nsISupportsString, iss);
+ this.preferences.rootBranch.setStringPref(this.name, val);
+ break;
+ case "file":
+ var lf;
@ -1196,8 +1103,7 @@ new file mode 100644
+ lf.persistentDescriptor = val;
+ if (!lf.exists())
+ lf.initWithPath(val);
+ }
+ else
+ } else
+ lf = val.QueryInterface(Components.interfaces.nsILocalFile);
+ this.preferences.rootBranch
+ .setComplexValue(this.name, Components.interfaces.nsILocalFile, lf);
@ -1231,8 +1137,7 @@ new file mode 100644
+ var f = new Function("event",
+ aElement.getAttribute("onsyncfrompreference"));
+ rv = f.call(aElement, event);
+ }
+ catch (e) {
+ } catch (e) {
+ Components.utils.reportError(e);
+ }
+ }
@ -1267,8 +1172,7 @@ new file mode 100644
+ // of the input event handler.
+ if (aElement.value !== val)
+ setValue(aElement, "value", val);
+ }
+ else
+ } else
+ setValue(aElement, "value", val);
+ ]]>
+ </body>
@ -1288,8 +1192,7 @@ new file mode 100644
+ var rv = f.call(aElement, event);
+ if (rv !== undefined)
+ return rv;
+ }
+ catch (e) {
+ } catch (e) {
+ Components.utils.reportError(e);
+ }
+ }
@ -1456,8 +1359,7 @@ new file mode 100644
+ if ("arguments" in window && window.arguments[0] && document.getElementById(window.arguments[0]) && document.getElementById(window.arguments[0]).nodeName == "prefpane") {
+ paneToLoad = document.getElementById(window.arguments[0]);
+ this.lastSelected = paneToLoad.id;
+ }
+ else if (lastPane)
+ } else if (lastPane)
+ paneToLoad = lastPane;
+ else
+ paneToLoad = panes[0];
@ -1554,14 +1456,12 @@ new file mode 100644
+
+ this._selector.selectedItem = document.getAnonymousElementByAttribute(this, "pane", aPaneElement.id);
+ if (!aPaneElement.loaded) {
+ let OverlayLoadObserver = function(aPane)
+ {
+ let OverlayLoadObserver = function(aPane) {
+ this._pane = aPane;
+ }
+ OverlayLoadObserver.prototype = {
+ _outer: this,
+ observe: function (aSubject, aTopic, aData)
+ {
+ observe(aSubject, aTopic, aData) {
+ this._pane.loaded = true;
+ this._outer._fireEvent("paneload", this._pane);
+ this._outer._selectPane(this._pane);
@ -1570,8 +1470,7 @@ new file mode 100644
+
+ var obs = new OverlayLoadObserver(aPaneElement);
+ document.loadOverlay(aPaneElement.src, obs);
+ }
+ else
+ } else
+ this._selectPane(aPaneElement);
+ ]]>
+ </body>
@ -1594,8 +1493,7 @@ new file mode 100644
+ cancel = true;
+ }
+ return !cancel;
+ }
+ catch (e) {
+ } catch (e) {
+ Components.utils.reportError(e);
+ }
+ return false;
@ -1649,11 +1547,10 @@ new file mode 100644
+ if (this._shouldAnimate && oldPane.id != aPaneElement.id) {
+ aPaneElement.style.opacity = 0.0;
+ this.animate(oldPane, aPaneElement);
+ }
+ else if (!this._shouldAnimate && prefpanes.length > 1) {
+ var targetHeight = parseInt(window.getComputedStyle(this._paneDeckContainer, "").height);
+ var verticalPadding = parseInt(window.getComputedStyle(aPaneElement, "").paddingTop);
+ verticalPadding += parseInt(window.getComputedStyle(aPaneElement, "").paddingBottom);
+ } else if (!this._shouldAnimate && prefpanes.length > 1) {
+ var targetHeight = parseInt(window.getComputedStyle(this._paneDeckContainer).height);
+ var verticalPadding = parseInt(window.getComputedStyle(aPaneElement).paddingTop);
+ verticalPadding += parseInt(window.getComputedStyle(aPaneElement).paddingBottom);
+ if (aPaneElement.contentHeight > targetHeight - verticalPadding) {
+ // To workaround the bottom border of a groupbox from being
+ // cutoff an hbox with a class of bottomBox may enclose it.
@ -1662,7 +1559,7 @@ new file mode 100644
+ var bottomPadding = 0;
+ var bottomBox = aPaneElement.getElementsByAttribute("class", "bottomBox")[0];
+ if (bottomBox)
+ bottomPadding = parseInt(window.getComputedStyle(bottomBox, "").paddingBottom);
+ bottomPadding = parseInt(window.getComputedStyle(bottomBox).paddingBottom);
+ window.innerHeight += bottomPadding + verticalPadding + aPaneElement.contentHeight - targetHeight;
+ }
+
@ -1684,12 +1581,8 @@ new file mode 100644
+ <![CDATA[
+ var psvc = Components.classes["@mozilla.org/preferences-service;1"]
+ .getService(Components.interfaces.nsIPrefBranch);
+ var animate = /Mac/.test(navigator.platform);
+ try {
+ animate = psvc.getBoolPref("browser.preferences.animateFadeIn");
+ }
+ catch (e) { }
+ return animate;
+ return psvc.getBoolPref("browser.preferences.animateFadeIn",
+ /Mac/.test(navigator.platform));
+ ]]>
+ </getter>
+ </property>
@ -1741,14 +1634,13 @@ new file mode 100644
+ if (increment != 0) {
+ window.innerHeight += increment;
+ this._currentHeight += increment;
+ }
+ else {
+ } else {
+ aTimer.cancel();
+ this._setUpFadeTimer();
+ }
+ } else if (aTimer == this._fadeTimer) {
+ var elt = document.getElementById(this.lastSelected);
+ var newOpacity = parseFloat(window.getComputedStyle(elt, "").opacity) + this._fadeIncrement;
+ var newOpacity = parseFloat(window.getComputedStyle(elt).opacity) + this._fadeIncrement;
+ if (newOpacity < 1.0)
+ elt.style.opacity = newOpacity;
+ else {
@ -1837,8 +1729,7 @@ new file mode 100644
+ if ("initWithParams" in win)
+ win.initWithParams(aParams);
+ win.focus();
+ }
+ else {
+ } else {
+ var features = "resizable,dialog=no,centerscreen" + (aFeatures != "" ? ("," + aFeatures) : "");
+ var parentWindow = (this.instantApply || !window.opener || window.opener.closed) ? window : window.opener;
+ win = parentWindow.openDialog(aURL, "_blank", features, aParams);
@ -1859,15 +1750,12 @@ new file mode 100644
+ .getService(Components.interfaces.nsIScriptSecurityManager);
+ if (this.type == "child" && window.opener &&
+ secMan.isSystemPrincipal(window.opener.document.nodePrincipal)) {
+ let psvc = Components.classes["@mozilla.org/preferences-service;1"]
+ .getService(Components.interfaces.nsIPrefBranch);
+ var pdocEl = window.opener.document.documentElement;
+ if (pdocEl.instantApply) {
+ let panes = this.preferencePanes;
+ for (let i = 0; i < panes.length; ++i)
+ panes[i].writePreferences(true);
+ }
+ else {
+ } else {
+ // Clone all the preferences elements from the child document and
+ // insert them into the pane collection of the parent.
+ var pdoc = window.opener.document;
@ -1910,8 +1798,7 @@ new file mode 100644
+ }
+ }
+ }
+ }
+ else {
+ } else {
+ let panes = this.preferencePanes;
+ for (var i = 0; i < panes.length; ++i)
+ panes[i].writePreferences(false);
@ -2049,7 +1936,8 @@ new file mode 100644
+ while (temp && temp.nodeType == Node.ELEMENT_NODE &&
+ !temp.hasAttribute("preference"))
+ temp = temp.parentNode;
+ return temp.nodeType == Node.ELEMENT_NODE ? temp : aStartElement;
+ return temp && temp.nodeType == Node.ELEMENT_NODE ?
+ temp : aStartElement;
+ ]]>
+ </body>
+ </method>
@ -2120,9 +2008,9 @@ new file mode 100644
+
+ <property name="contentHeight">
+ <getter>
+ var targetHeight = parseInt(window.getComputedStyle(this._content, "").height);
+ targetHeight += parseInt(window.getComputedStyle(this._content, "").marginTop);
+ targetHeight += parseInt(window.getComputedStyle(this._content, "").marginBottom);
+ var targetHeight = parseInt(window.getComputedStyle(this._content).height);
+ targetHeight += parseInt(window.getComputedStyle(this._content).marginTop);
+ targetHeight += parseInt(window.getComputedStyle(this._content).marginBottom);
+ return targetHeight;
+ </getter>
+ </property>
@ -2162,8 +2050,7 @@ new file mode 100644
+ try {
+ var preference = this.preferenceForElement(elements[i]);
+ preference.setElementValue(elements[i]);
+ }
+ catch (e) {
+ } catch (e) {
+ dump("*** No preference found for " + elements[i].getAttribute("preference") + "\n");
+ }
+ }
@ -2203,7 +2090,7 @@ new file mode 100644
diff --git a/toolkit/mozapps/downloads/nsHelperAppDlg.js b/toolkit/mozapps/downloads/nsHelperAppDlg.js
--- a/toolkit/mozapps/downloads/nsHelperAppDlg.js
+++ b/toolkit/mozapps/downloads/nsHelperAppDlg.js
@@ -627,17 +627,17 @@ nsUnknownContentTypeDialog.prototype = {
@@ -625,17 +625,17 @@ nsUnknownContentTypeDialog.prototype = {
else
typeString = mimeInfo.MIMEType;
}
@ -2222,7 +2109,7 @@ diff --git a/toolkit/mozapps/downloads/nsHelperAppDlg.js b/toolkit/mozapps/downl
},
// Returns true if opening the default application makes sense.
@@ -801,17 +801,17 @@ nsUnknownContentTypeDialog.prototype = {
@@ -799,17 +799,17 @@ nsUnknownContentTypeDialog.prototype = {
switch (this.dialogElement("openHandler").selectedIndex) {
case 0:
// No app need be specified in this case.
@ -2241,7 +2128,7 @@ diff --git a/toolkit/mozapps/downloads/nsHelperAppDlg.js b/toolkit/mozapps/downl
this.mDialog.document.documentElement.getButton("accept").disabled = !ok;
},
@@ -1068,30 +1068,56 @@ nsUnknownContentTypeDialog.prototype = {
@@ -1066,30 +1066,56 @@ nsUnknownContentTypeDialog.prototype = {
params.handlerApp.executable &&
params.handlerApp.executable.isFile()) {
// Remember the file they chose to run.
@ -2408,8 +2295,8 @@ diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/sy
diff --git a/toolkit/xre/moz.build b/toolkit/xre/moz.build
--- a/toolkit/xre/moz.build
+++ b/toolkit/xre/moz.build
@@ -40,17 +40,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'co
'updaterfileutils_osx.mm',
@@ -61,17 +61,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'co
'../components/printingui/mac',
]
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'uikit':
UNIFIED_SOURCES += [
@ -2853,7 +2740,7 @@ diff --git a/uriloader/exthandler/moz.build b/uriloader/exthandler/moz.build
'android/nsExternalSharingAppService.cpp',
'android/nsExternalURLHandlerService.cpp',
'android/nsMIMEInfoAndroid.cpp',
@@ -123,16 +125,17 @@ include('/ipc/chromium/chromium-config.m
@@ -125,16 +127,17 @@ include('/ipc/chromium/chromium-config.m
FINAL_LIBRARY = 'xul'
@ -3212,7 +3099,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
#include "nsXPIDLString.h"
#include "nsIURL.h"
#include "nsIFileStreams.h"
@@ -1146,26 +1146,26 @@ nsresult nsOSHelperAppService::OSProtoco
@@ -1143,26 +1143,26 @@ nsresult nsOSHelperAppService::OSProtoco
ContentAction::Action::defaultActionForScheme(QString(aProtocolScheme) + ':');
if (action.isValid())
@ -3241,7 +3128,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
nsresult nsOSHelperAppService::GetFileTokenForPath(const char16_t * platformAppPath, nsIFile ** aFile)
{
@@ -1252,17 +1252,17 @@ nsOSHelperAppService::GetFromExtension(c
@@ -1249,17 +1249,17 @@ nsOSHelperAppService::GetFromExtension(c
mime_types_description,
true);
@ -3260,7 +3147,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
rv = LookUpTypeAndDescription(NS_ConvertUTF8toUTF16(aFileExt),
majorType,
@@ -1373,17 +1373,17 @@ nsOSHelperAppService::GetFromType(const
@@ -1370,17 +1370,17 @@ nsOSHelperAppService::GetFromType(const
nsAutoString extensions, mime_types_description;
LookUpExtensionsAndDescription(majorType,
minorType,
@ -3282,7 +3169,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
diff --git a/widget/gtk/moz.build b/widget/gtk/moz.build
--- a/widget/gtk/moz.build
+++ b/widget/gtk/moz.build
@@ -101,16 +101,17 @@ else:
@@ -109,16 +109,17 @@ else:
include('/ipc/chromium/chromium-config.mozbuild')
FINAL_LIBRARY = 'xul'
@ -3293,13 +3180,13 @@ diff --git a/widget/gtk/moz.build b/widget/gtk/moz.build
'/other-licenses/atk-1.0',
+ '/toolkit/xre',
'/widget',
'/widget/headless',
]
if CONFIG['MOZ_X11']:
LOCAL_INCLUDES += [
'/widget/x11',
]
diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
--- a/widget/gtk/nsFilePicker.cpp
+++ b/widget/gtk/nsFilePicker.cpp
@ -3359,7 +3246,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
mFilters.AppendElement(filter);
mFilterNames.AppendElement(name);
@@ -371,16 +375,32 @@ nsFilePicker::Show(int16_t *aReturn)
@@ -371,16 +375,34 @@ nsFilePicker::Show(int16_t *aReturn)
NS_IMETHODIMP
nsFilePicker::Open(nsIFilePickerShownCallback *aCallback)
@ -3373,6 +3260,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
+ int16_t result;
+ mCallback = aCallback;
+ mRunning = true;
+ NS_ADDREF_THIS();
+ kdeFileDialog(&result);
+ if (mCallback) {
+ mCallback->Done(result);
@ -3381,6 +3269,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
+ mResult = result;
+ }
+ mRunning = false;
+ NS_RELEASE_THIS();
+ return NS_OK;
+ }
+
@ -3392,7 +3281,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
GtkFileChooserAction action = GetGtkFileChooserAction(mMode);
@@ -603,8 +623,235 @@ nsFilePicker::Done(GtkWidget* file_choos
@@ -603,8 +625,235 @@ nsFilePicker::Done(GtkWidget* file_choos
if (mCallback) {
mCallback->Done(result);
mCallback = nullptr;
@ -3655,7 +3544,7 @@ diff --git a/widget/gtk/nsFilePicker.h b/widget/gtk/nsFilePicker.h
diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestParser.cpp
--- a/xpcom/components/ManifestParser.cpp
+++ b/xpcom/components/ManifestParser.cpp
@@ -32,16 +32,17 @@
@@ -33,16 +33,17 @@
#include "nsTextFormatter.h"
#include "nsVersionComparator.h"
#include "nsXPCOMCIDInternal.h"
@ -3673,7 +3562,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
const char* directive;
int argc;
@@ -472,16 +473,17 @@ ParseManifest(NSLocationType aType, File
@@ -466,16 +467,17 @@ ParseManifest(NSLocationType aType, File
NS_NAMED_LITERAL_STRING(kRemoteEnabled, "remoteenabled");
NS_NAMED_LITERAL_STRING(kRemoteRequired, "remoterequired");
NS_NAMED_LITERAL_STRING(kApplication, "application");
@ -3691,7 +3580,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
NS_NAMED_LITERAL_STRING(kMain, "main");
NS_NAMED_LITERAL_STRING(kContent, "content");
@@ -532,44 +534,49 @@ ParseManifest(NSLocationType aType, File
@@ -526,44 +528,49 @@ ParseManifest(NSLocationType aType, File
CopyUTF8toUTF16(s, abi);
abi.Insert(char16_t('_'), 0);
abi.Insert(osTarget, 0);
@ -3741,7 +3630,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
process = kMain;
}
@@ -672,25 +679,27 @@ ParseManifest(NSLocationType aType, File
@@ -666,25 +673,27 @@ ParseManifest(NSLocationType aType, File
TriState stOsVersion = eUnspecified;
TriState stOs = eUnspecified;
TriState stABI = eUnspecified;
@ -3758,7 +3647,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
NS_ConvertASCIItoUTF16 wtoken(token);
if (CheckStringFlag(kApplication, wtoken, appID, stApp) ||
CheckStringFlag(kOs, wtoken, osTarget, stOs) ||
CheckOsFlag(kOs, wtoken, osTarget, stOs) ||
CheckStringFlag(kABI, wtoken, abi, stABI) ||
+ CheckStringFlag(kDesktop, wtoken, desktop, stDesktop) ||
CheckStringFlag(kProcess, wtoken, process, stProcess) ||
@ -3769,7 +3658,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
}
#if defined(MOZ_WIDGET_ANDROID)
@@ -740,16 +749,17 @@ ParseManifest(NSLocationType aType, File
@@ -729,16 +738,17 @@ ParseManifest(NSLocationType aType, File
}
if (!ok ||
@ -3825,7 +3714,7 @@ diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
#include "prmem.h"
#include "plbase64.h"
@@ -1948,42 +1949,52 @@ nsLocalFile::SetPersistentDescriptor(con
@@ -1941,59 +1942,74 @@ nsLocalFile::SetPersistentDescriptor(con
return InitWithNativePath(aPersistentDescriptor);
#endif
}
@ -3849,9 +3738,10 @@ diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
if (isDirectory) {
- return giovfs->ShowURIForInput(mPath);
+ url = mPath;
} else if (NS_SUCCEEDED(giovfs->OrgFreedesktopFileManager1ShowItems(mPath))) {
}
if (NS_SUCCEEDED(giovfs->OrgFreedesktopFileManager1ShowItems(mPath))) {
return NS_OK;
} else {
}
nsCOMPtr<nsIFile> parentDir;
nsAutoCString dirPath;
if (NS_FAILED(GetParent(getter_AddRefs(parentDir)))) {
@ -3863,8 +3753,17 @@ diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
- return giovfs->ShowURIForInput(dirPath);
+ url = dirPath;
#elif defined(MOZ_WIDGET_COCOA)
CFURLRef url;
if (NS_SUCCEEDED(GetCFURL(&url))) {
nsresult rv = CocoaFileUtils::RevealFileInFinder(url);
::CFRelease(url);
return rv;
}
+
return NS_ERROR_FAILURE;
#else
return NS_ERROR_FAILURE;
#endif
+ if(nsKDEUtils::kdeSupport()) {
+ nsTArray<nsCString> command;
+ command.AppendElement( NS_LITERAL_CSTRING("REVEAL") );
@ -3876,17 +3775,6 @@ diff --git a/xpcom/io/nsLocalFileUnix.cpp b/xpcom/io/nsLocalFileUnix.cpp
+ return NS_ERROR_FAILURE;
+
+ return giovfs->ShowURIForInput(url);
#elif defined(MOZ_WIDGET_COCOA)
CFURLRef url;
if (NS_SUCCEEDED(GetCFURL(&url))) {
nsresult rv = CocoaFileUtils::RevealFileInFinder(url);
::CFRelease(url);
return rv;
}
return NS_ERROR_FAILURE;
@@ -1991,16 +2002,22 @@ nsLocalFile::Reveal()
return NS_ERROR_FAILURE;
#endif
}
NS_IMETHODIMP

View file

@ -1,14 +0,0 @@
diff -up firefox-33.0/mozilla-release/toolkit/modules/CertUtils.jsm.966424 firefox-33.0/mozilla-release/toolkit/modules/CertUtils.jsm
--- firefox-33.0/mozilla-release/toolkit/modules/CertUtils.jsm.966424 2014-10-14 08:12:14.358697255 +0200
+++ firefox-33.0/mozilla-release/toolkit/modules/CertUtils.jsm 2014-10-14 08:17:59.962181908 +0200
@@ -174,7 +174,9 @@ this.checkCert =
}
function isBuiltinToken(tokenName) {
- return tokenName == "Builtin Object Token";
+ return tokenName == "Builtin Object Token" ||
+ tokenName == "Default Trust" ||
+ tokenName == "System Trust";
}
/**