Updated to 64.0

This commit is contained in:
Алзим 2018-12-16 18:13:19 +03:00
parent 15cf7df6d6
commit fa098fa3b0
5 changed files with 167 additions and 233 deletions

View file

@ -1,4 +1,4 @@
sources:
cbindgen-vendor.tar.xz: b180cff66e05546c967236a7abe983fff89a8b3e
firefox-63.0.3.source.tar.xz: 6b29f42ad43264ceb45bc42fa9f8a227339b3f1f
firefox-64.0.source.tar.xz: 2a484615aea59fb4b01931d49f0043de0a543aaa
firefox-dictionary-61.0.2.tar.bz2: 25929c585dc8568a32d5be49aacc672f0ed2202f

View file

@ -1,11 +1,11 @@
# HG changeset patch
# Parent fdf78810e83396d10418791fbe32bed6bfe1558b
# Parent f2429084f187d5758508ae547c411943cba60fcf
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,1317 @@
@@ -0,0 +1,1384 @@
+#filter substitution
+<?xml version="1.0"?>
+# -*- Mode: HTML -*-
@ -19,6 +19,12 @@ new file mode 100644
+ both "content" and "skin" packages, which bug 1385444 will unify later. -->
+<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
+
+<!-- While these stylesheets are defined in Toolkit, they are only used in the
+ main browser window, so we can load them here. Bug 1474241 is on file to
+ consider moving these widgets to the "browser" folder. -->
+<?xml-stylesheet href="chrome://global/content/tabprompts.css" type="text/css"?>
+<?xml-stylesheet href="chrome://global/skin/tabprompts.css" type="text/css"?>
+
+<?xml-stylesheet href="chrome://browser/content/browser.css" type="text/css"?>
+<?xml-stylesheet href="chrome://browser/content/tabbrowser.css" type="text/css"?>
+<?xml-stylesheet href="chrome://browser/content/downloads/downloads.css" type="text/css"?>
@ -72,7 +78,11 @@ new file mode 100644
+ fullscreenbutton="true"
+ sizemode="normal"
+ retargetdocumentfocus="urlbar"
+ persist="screenX screenY width height sizemode">
+ persist="screenX screenY width height sizemode"
+#ifdef BROWSER_XHTML
+ hidden="true"
+#endif
+ >
+
+# All JS files which are needed by browser.xul and other top level windows to
+# support MacOS specific features *must* go into the global-scripts.inc file so
@ -90,9 +100,14 @@ new file mode 100644
+ window.onload = gBrowserInit.onLoad.bind(gBrowserInit);
+ window.onunload = gBrowserInit.onUnload.bind(gBrowserInit);
+ window.onclose = WindowIsClosing;
+
+#ifdef BROWSER_XHTML
+ window.addEventListener("DOMContentLoaded",
+ gBrowserInit.onBeforeInitialXULLayout.bind(gBrowserInit), { once: true });
+ window.addEventListener("readystatechange", () => {
+ // We initially hide the window to prevent layouts during parse. This lets us
+ // avoid accidental XBL construction and better match browser.xul (see Bug 1497975).
+ gBrowserInit.onBeforeInitialXULLayout();
+ document.documentElement.removeAttribute("hidden");
+ }, { once: true, capture: true });
+#else
+ window.addEventListener("MozBeforeInitialXULLayout",
+ gBrowserInit.onBeforeInitialXULLayout.bind(gBrowserInit), { once: true });
@ -116,13 +131,12 @@ new file mode 100644
+ onpopuphidden="if (event.target == this) TabContextMenu.contextTab = null;">
+ <menuitem id="context_reloadTab" label="&reloadTab.label;" accesskey="&reloadTab.accesskey;"
+ oncommand="gBrowser.reloadTab(TabContextMenu.contextTab);"/>
+ <menuitem id="context_reloadSelectedTabs" label="&reloadSelectedTabs.label;" hidden="true"
+ accesskey="&reloadSelectedTabs.accesskey;"
+ <menuitem id="context_reloadSelectedTabs" label="&reloadTabs.label;" hidden="true"
+ accesskey="&reloadTabs.accesskey;"
+ oncommand="gBrowser.reloadMultiSelectedTabs();"/>
+ <menuitem id="context_toggleMuteTab" oncommand="TabContextMenu.contextTab.toggleMuteAudio();"/>
+ <menuitem id="context_toggleMuteSelectedTabs" hidden="true"
+ oncommand="gBrowser.toggleMuteAudioOnMultiSelectedTabs(TabContextMenu.contextTab);"/>
+ <menuseparator/>
+ <menuitem id="context_pinTab" label="&pinTab.label;"
+ accesskey="&pinTab.accesskey;"
+ oncommand="gBrowser.pinTab(TabContextMenu.contextTab);"/>
@ -138,6 +152,18 @@ new file mode 100644
+ <menuitem id="context_duplicateTab" label="&duplicateTab.label;"
+ accesskey="&duplicateTab.accesskey;"
+ oncommand="duplicateTabIn(TabContextMenu.contextTab, 'tab');"/>
+ <menuseparator/>
+ <menuitem id="context_selectAllTabs" label="&selectAllTabs.label;" accesskey="&selectAllTabs.accesskey;"
+ oncommand="gBrowser.selectAllTabs();"/>
+ <menuitem id="context_bookmarkSelectedTabs"
+ hidden="true"
+ label="&bookmarkSelectedTabs.label;"
+ accesskey="&bookmarkSelectedTabs.accesskey;"
+ oncommand="PlacesCommandHook.bookmarkPages(PlacesCommandHook.uniqueSelectedPages);"/>
+ <menuitem id="context_bookmarkTab"
+ label="&bookmarkTab.label;"
+ accesskey="&bookmarkTab.accesskey;"
+ oncommand="PlacesCommandHook.bookmarkPages(PlacesCommandHook.getUniquePages([TabContextMenu.contextTab]));"/>
+ <menu id="context_reopenInContainer"
+ label="&reopenInContainer.label;"
+ accesskey="&reopenInContainer.accesskey;"
@ -145,43 +171,46 @@ new file mode 100644
+ <menupopup oncommand="TabContextMenu.reopenInContainer(event);"
+ onpopupshowing="TabContextMenu.createReopenInContainerMenu(event);"/>
+ </menu>
+ <menuitem id="context_openTabInWindow" label="&moveToNewWindow.label;"
+ accesskey="&moveToNewWindow.accesskey;"
+ tbattr="tabbrowser-multiple"
+ oncommand="gBrowser.replaceTabsWithWindow(TabContextMenu.contextTab);"/>
+ <menuseparator id="context_sendTabToDevice_separator" class="sync-ui-item"/>
+ <menu id="context_sendTabToDevice" label="&sendTabToDevice.label;"
+ class="sync-ui-item"
+ accesskey="&sendTabToDevice.accesskey;">
+ <menu id="context_moveTabOptions"
+ multiselectcontextlabel="&moveSelectedTabOptions.label;"
+ multiselectcontextaccesskey="&moveSelectedTabOptions.accesskey;"
+ nonmultiselectcontextlabel="&moveTabOptions.label;"
+ nonmultiselectcontextaccesskey="&moveTabOptions.accesskey;">
+ <menupopup id="moveTabOptionsMenu">
+ <menuitem id="context_moveToStart"
+ label="&moveToStart.label;"
+ accesskey="&moveToStart.accesskey;"
+ tbattr="tabbrowser-multiple"
+ oncommand="gBrowser.moveTabsToStart(TabContextMenu.contextTab);"/>
+ <menuitem id="context_moveToEnd"
+ label="&moveToEnd.label;"
+ accesskey="&moveToEnd.accesskey;"
+ tbattr="tabbrowser-multiple"
+ oncommand="gBrowser.moveTabsToEnd(TabContextMenu.contextTab);"/>
+ <menuitem id="context_openTabInWindow" label="&moveToNewWindow.label;"
+ accesskey="&moveToNewWindow.accesskey;"
+ tbattr="tabbrowser-multiple"
+ oncommand="gBrowser.replaceTabsWithWindow(TabContextMenu.contextTab);"/>
+ </menupopup>
+ </menu>
+ <menu id="context_sendTabToDevice"
+ class="sync-ui-item">
+ <menupopup id="context_sendTabToDevicePopupMenu"
+ onpopupshowing="gSync.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, TabContextMenu.contextTab.multiselected);"/>
+ </menu>
+ <menuseparator/>
+ <menuitem id="context_reloadAllTabs" label="&reloadAllTabs.label;" accesskey="&reloadAllTabs.accesskey;"
+ tbattr="tabbrowser-multiple-visible"
+ oncommand="gBrowser.reloadAllTabs();"/>
+ <menuitem id="context_bookmarkSelectedTabs"
+ hidden="true"
+ label="&bookmarkSelectedTabs.label;"
+ accesskey="&bookmarkSelectedTabs.accesskey;"
+ oncommand="PlacesCommandHook.bookmarkPages(PlacesCommandHook.uniqueSelectedPages);"/>
+ <menuitem id="context_bookmarkAllTabs"
+ label="&bookmarkAllTabs.label;"
+ accesskey="&bookmarkAllTabs.accesskey;"
+ command="Browser:BookmarkAllTabs"/>
+ <menuitem id="context_closeTabsToTheEnd" label="&closeTabsToTheEnd.label;" accesskey="&closeTabsToTheEnd.accesskey;"
+ oncommand="gBrowser.removeTabsToTheEndFrom(TabContextMenu.contextTab, {animate: true});"/>
+ <menuitem id="context_closeOtherTabs" label="&closeOtherTabs.label;" accesskey="&closeOtherTabs.accesskey;"
+ oncommand="gBrowser.removeAllTabsBut(TabContextMenu.contextTab);"/>
+ <menuseparator/>
+ <menuitem id="context_undoCloseTab"
+ label="&undoCloseTab.label;"
+ accesskey="&undoCloseTab.accesskey;"
+ observes="History:UndoCloseTab"/>
+ <menuitem id="context_closeTab" label="&closeTab.label;" accesskey="&closeTab.accesskey;"
+ oncommand="gBrowser.removeTab(TabContextMenu.contextTab, { animate: true });"/>
+ <menuitem id="context_closeSelectedTabs" label="&closeSelectedTabs.label;"
+ hidden="true" accesskey="&closeSelectedTabs.accesskey;"
+ <menuitem id="context_closeSelectedTabs" label="&closeTabs.label;"
+ hidden="true" accesskey="&closeTabs.accesskey;"
+ oncommand="gBrowser.removeMultiSelectedTabs();"/>
+ </menupopup>
+
@ -222,6 +251,22 @@ new file mode 100644
+ level="parent"
+ overflowpadding="15" />
+
+ <!-- for url bar autocomplete -->
+ <panel id="urlbar-results"
+ role="group"
+ noautofocus="true"
+ hidden="true"
+ flip="none"
+ level="parent">
+ <html:div class="urlbarView-body-outer">
+ <html:div class="urlbarView-body-inner">
+ <!-- TODO: add search suggestions notification -->
+ <html:div class="urlbarView-results"/>
+ <!-- TODO: add footer -->
+ </html:div>
+ </html:div>
+ </panel>
+
+ <!-- for date/time picker. consumeoutsideclicks is set to never, so that
+ clicks on the anchored input box are never consumed. -->
+ <panel id="DateTimePickerPanel"
@ -374,19 +419,24 @@ new file mode 100644
+ </panel>
+
+ <menupopup id="toolbar-context-menu"
+ onpopupshowing="onViewToolbarsPopupShowing(event, document.getElementById('viewToolbarsMenuSeparator')); UpdateDownloadsAutoHide(this); UpdateManageExtension(this)">
+ <menuitem oncommand="openAboutAddonsForContextAction(this.parentElement)"
+ onpopupshowing="onViewToolbarsPopupShowing(event, document.getElementById('viewToolbarsMenuSeparator')); ToolbarContextMenu.updateDownloadsAutoHide(this); ToolbarContextMenu.updateExtension(this)">
+ <menuitem oncommand="ToolbarContextMenu.openAboutAddonsForContextAction(this.parentElement)"
+ accesskey="&customizeMenu.manageExtension.accesskey;"
+ label="&customizeMenu.manageExtension.label;"
+ contexttype="toolbaritem"
+ class="customize-context-manageExtension"/>
+ <menuitem oncommand="ToolbarContextMenu.removeExtensionForContextAction(this.parentElement)"
+ accesskey="&customizeMenu.removeExtension.accesskey;"
+ label="&customizeMenu.removeExtension.label;"
+ contexttype="toolbaritem"
+ class="customize-context-removeExtension"/>
+ <menuseparator/>
+ <menuitem oncommand="gCustomizeMode.addToPanel(document.popupNode)"
+ accesskey="&customizeMenu.pinToOverflowMenu.accesskey;"
+ label="&customizeMenu.pinToOverflowMenu.label;"
+ contexttype="toolbaritem"
+ class="customize-context-moveToPanel"/>
+ <menuitem oncommand="onDownloadsAutoHideChange(event)"
+ <menuitem oncommand="ToolbarContextMenu.onDownloadsAutoHideChange(event)"
+ type="checkbox"
+ accesskey="&customizeMenu.autoHideDownloadsButton.accesskey;"
+ label="&customizeMenu.autoHideDownloadsButton.label;"
@ -397,18 +447,36 @@ new file mode 100644
+ label="&customizeMenu.removeFromToolbar.label;"
+ contexttype="toolbaritem"
+ class="customize-context-removeFromToolbar"/>
+ <menuitem id="toolbar-context-reloadAllTabs"
+ <menuitem id="toolbar-context-reloadSelectedTab"
+ class="toolbaritem-tabsmenu"
+ contexttype="tabbar"
+ oncommand="gBrowser.reloadAllTabs();"
+ label="&toolbarContextMenu.reloadAllTabs.label;"
+ accesskey="&toolbarContextMenu.reloadAllTabs.accesskey;"/>
+ <menuitem id="toolbar-context-bookmarkAllTabs"
+ oncommand="gBrowser.reloadMultiSelectedTabs();"
+ label="&toolbarContextMenu.reloadSelectedTab.label;"
+ accesskey="&toolbarContextMenu.reloadSelectedTab.accesskey;"/>
+ <menuitem id="toolbar-context-reloadSelectedTabs"
+ class="toolbaritem-tabsmenu"
+ contexttype="tabbar"
+ command="Browser:BookmarkAllTabs"
+ label="&toolbarContextMenu.bookmarkAllTabs.label;"
+ accesskey="&toolbarContextMenu.bookmarkAllTabs.accesskey;"/>
+ oncommand="gBrowser.reloadMultiSelectedTabs();"
+ label="&toolbarContextMenu.reloadSelectedTabs.label;"
+ accesskey="&toolbarContextMenu.reloadSelectedTabs.accesskey;"/>
+ <menuitem id="toolbar-context-bookmarkSelectedTab"
+ class="toolbaritem-tabsmenu"
+ contexttype="tabbar"
+ oncommand="PlacesCommandHook.bookmarkPages(PlacesCommandHook.uniqueSelectedPages);"
+ label="&toolbarContextMenu.bookmarkSelectedTab.label;"
+ accesskey="&toolbarContextMenu.bookmarkSelectedTab.accesskey;"/>
+ <menuitem id="toolbar-context-bookmarkSelectedTabs"
+ class="toolbaritem-tabsmenu"
+ contexttype="tabbar"
+ oncommand="PlacesCommandHook.bookmarkPages(PlacesCommandHook.uniqueSelectedPages);"
+ label="&toolbarContextMenu.bookmarkSelectedTabs.label;"
+ accesskey="&toolbarContextMenu.bookmarkSelectedTabs.accesskey;"/>
+ <menuitem id="toolbar-context-selectAllTabs"
+ class="toolbaritem-tabsmenu"
+ contexttype="tabbar"
+ oncommand="gBrowser.selectAllTabs();"
+ label="&toolbarContextMenu.selectAllTabs.label;"
+ accesskey="&toolbarContextMenu.selectAllTabs.accesskey;"/>
+ <menuitem id="toolbar-context-undoCloseTab"
+ class="toolbaritem-tabsmenu"
+ contexttype="tabbar"
@ -496,7 +564,6 @@ new file mode 100644
+ noautofocus="true"
+ copyURL-title="&pageAction.copyLink.label;"
+ emailLink-title="&emailPageCmd.label;"
+ sendToDevice-title="&pageAction.sendTabToDevice.label;"
+ sendToDevice-notReadyTitle="&sendToDevice.syncNotReady.label;"
+ shareURL-title="&pageAction.shareUrl.label;"
+ shareMore-label="&pageAction.shareMore.label;">
@ -534,10 +601,10 @@ new file mode 100644
+ label="&pageAction.removeFromUrlbar.label;"
+ oncommand="BrowserPageActions.togglePinningForContextAction();"/>
+ <menuitem class="pageActionContextMenuItem extensionUnpinned"
+ label="&pageAction.allowInUrlbar.label;"
+ label="&pageAction.addToUrlbar.label;"
+ oncommand="BrowserPageActions.togglePinningForContextAction();"/>
+ <menuitem class="pageActionContextMenuItem extensionPinned"
+ label="&pageAction.disallowInUrlbar.label;"
+ label="&pageAction.removeFromUrlbar.label;"
+ oncommand="BrowserPageActions.togglePinningForContextAction();"/>
+ <menuseparator class="pageActionContextMenuItem extensionPinned extensionUnpinned"/>
+ <menuitem class="pageActionContextMenuItem extensionPinned extensionUnpinned"
@ -550,20 +617,20 @@ new file mode 100644
+ <tooltip id="tabbrowser-tab-tooltip" onpopupshowing="gBrowser.createTooltip(event);"/>
+
+ <tooltip id="back-button-tooltip">
+ <label class="tooltip-label" value="&backButton.tooltip;"/>
+ <description class="tooltip-label" value="&backButton.tooltip;"/>
+#ifdef XP_MACOSX
+ <label class="tooltip-label" value="&backForwardButtonMenuMac.tooltip;"/>
+ <description class="tooltip-label" value="&backForwardButtonMenuMac.tooltip;"/>
+#else
+ <label class="tooltip-label" value="&backForwardButtonMenu.tooltip;"/>
+ <description class="tooltip-label" value="&backForwardButtonMenu.tooltip;"/>
+#endif
+ </tooltip>
+
+ <tooltip id="forward-button-tooltip">
+ <label class="tooltip-label" value="&forwardButton.tooltip;"/>
+ <description class="tooltip-label" value="&forwardButton.tooltip;"/>
+#ifdef XP_MACOSX
+ <label class="tooltip-label" value="&backForwardButtonMenuMac.tooltip;"/>
+ <description class="tooltip-label" value="&backForwardButtonMenuMac.tooltip;"/>
+#else
+ <label class="tooltip-label" value="&backForwardButtonMenu.tooltip;"/>
+ <description class="tooltip-label" value="&backForwardButtonMenu.tooltip;"/>
+#endif
+ </tooltip>
+
@ -817,7 +884,7 @@ new file mode 100644
+ ondrop="homeButtonObserver.onDrop(event)"
+ ondragexit="homeButtonObserver.onDragExit(event)"
+ key="goHome"
+ onclick="BrowserGoHome(event);"
+ onclick="BrowserHome(event);"
+ cui-areatype="toolbar"
+ tooltiptext="&homeButton.defaultPage.tooltip;"/>
+ <toolbarspring cui-areatype="toolbar" class="chromeclass-toolbar-additional"/>
@ -1367,7 +1434,7 @@ diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/ns
#if defined(XP_WIN)
#include "nsIEHistoryEnumerator.h"
@@ -34,18 +34,16 @@ using namespace mozilla::browser;
@@ -33,18 +33,16 @@ using namespace mozilla::browser;
/////////////////////////////////////////////////////////////////////////////
@ -1386,11 +1453,11 @@ diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/ns
#if defined(XP_WIN)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsIEHistoryEnumerator)
@@ -70,17 +68,17 @@ NS_DEFINE_NAMED_CID(NS_SHELLSERVICE_CID)
NS_DEFINE_NAMED_CID(NS_MACATTRIBUTIONSERVICE_CID);
@@ -67,17 +65,17 @@ NS_DEFINE_NAMED_CID(NS_MACATTRIBUTIONSER
#endif
static const mozilla::Module::CIDEntry kBrowserCIDs[] = {
// clang-format off
{ &kNS_BROWSERDIRECTORYPROVIDER_CID, false, nullptr, DirectoryProviderConstructor },
#if defined(XP_WIN)
{ &kNS_SHELLSERVICE_CID, false, nullptr, nsWindowsShellServiceConstructor },
@ -1398,17 +1465,17 @@ diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/ns
- { &kNS_SHELLSERVICE_CID, false, nullptr, nsGNOMEShellServiceConstructor },
+ { &kNS_SHELLSERVICE_CID, false, nullptr, nsUnixShellServiceConstructor },
#endif
{ &kNS_FEEDSNIFFER_CID, false, nullptr, nsFeedSnifferConstructor },
{ &kNS_BROWSER_ABOUT_REDIRECTOR_CID, false, nullptr, AboutRedirector::Create },
#if defined(XP_WIN)
{ &kNS_WINIEHISTORYENUMERATOR_CID, false, nullptr, nsIEHistoryEnumeratorConstructor },
#elif defined(XP_MACOSX)
{ &kNS_SHELLSERVICE_CID, false, nullptr, nsMacShellServiceConstructor },
#endif
#if defined(MOZ_WIDGET_COCOA)
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
@@ -327,16 +327,23 @@ var gMainPane = {
@@ -283,16 +283,23 @@ var gMainPane = {
this._backoffIndex++ : backoffTimes.length - 1]);
};
@ -1432,7 +1499,7 @@ diff --git a/browser/components/preferences/in-content/main.js b/browser/compone
performanceSettingsLink.setAttribute("href", performanceSettingsUrl);
this.updateDefaultPerformanceSettingsPref();
@@ -962,16 +969,27 @@ var gMainPane = {
@@ -938,16 +945,27 @@ var gMainPane = {
// Reset exponential backoff delay time in order to do visual update in pollForDefaultBrowser.
this._backoffIndex = 0;
@ -1486,7 +1553,7 @@ diff --git a/browser/components/shell/nsKDEShellService.cpp b/browser/components
new file mode 100644
--- /dev/null
+++ b/browser/components/shell/nsKDEShellService.cpp
@@ -0,0 +1,204 @@
@@ -0,0 +1,153 @@
+/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
@ -1640,57 +1707,6 @@ new file mode 100644
+ return nsKDEUtils::command( command ) ? NS_OK : NS_ERROR_FAILURE;
+}
+
+NS_IMETHODIMP
+nsKDEShellService::GetDefaultFeedReader(nsIFile** _retval)
+{
+ *_retval = nullptr;
+
+ nsCOMPtr<nsIMutableArray> command = do_CreateInstance( NS_ARRAY_CONTRACTID );
+ if( !command )
+ return NS_ERROR_FAILURE;
+
+ nsCOMPtr<nsISupportsCString> str = do_CreateInstance( NS_SUPPORTS_CSTRING_CONTRACTID );
+ if( !str )
+ return NS_ERROR_FAILURE;
+
+ str->SetData( NS_LITERAL_CSTRING( "GETDEFAULTFEEDREADER" ));
+ command->AppendElement( str );
+
+ nsCOMPtr<nsIArray> output;
+ if( !nsKDEUtils::command( command, getter_AddRefs( output ) ) )
+ return NS_ERROR_FAILURE;
+
+ PRUint32 length;
+ output->GetLength( &length );
+ if( length != 1 )
+ return NS_ERROR_FAILURE;
+
+ nsCOMPtr<nsISupportsCString> resstr = do_QueryElementAt( output, 0 );
+ if( !resstr )
+ return NS_ERROR_FAILURE;
+
+ nsAutoCString path;
+ resstr->GetData( path );
+ if (path.IsEmpty())
+ return NS_ERROR_FAILURE;
+
+ nsresult rv;
+ nsCOMPtr<nsIFile> defaultReader =
+ do_CreateInstance("@mozilla.org/file/local;1", &rv);
+ NS_ENSURE_SUCCESS(rv, rv);
+
+ rv = defaultReader->InitWithNativePath(path);
+ NS_ENSURE_SUCCESS(rv, rv);
+
+ bool exists;
+ rv = defaultReader->Exists(&exists);
+ NS_ENSURE_SUCCESS(rv, rv);
+ if (!exists)
+ return NS_ERROR_FAILURE;
+
+ NS_ADDREF(*_retval = defaultReader);
+ return NS_OK;
+}
diff --git a/browser/components/shell/nsKDEShellService.h b/browser/components/shell/nsKDEShellService.h
new file mode 100644
--- /dev/null
@ -1776,7 +1792,7 @@ new file mode 100644
diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
--- a/browser/installer/package-manifest.in
+++ b/browser/installer/package-manifest.in
@@ -462,16 +462,18 @@
@@ -458,16 +458,18 @@
@RESPATH@/browser/defaults/settings/pinning
@RESPATH@/browser/defaults/settings/main

View file

@ -10,7 +10,7 @@
# This also means only STABLE upstream releases, NO betas.
# This is a discussed topic. Please, do not flame it again.
%define major 63.0.3
%define major 64.0
%define ff_epoch 0
# (tpg) set version HERE !!!
%define realver %{major}
@ -72,9 +72,6 @@ Patch300: firefox-56.0-build-error.patch
Patch302: firefox-62.0.2-include-cmath.patch
Patch303: build-disable-elfhack.patch
# Build errors in 63.0
Patch304: prio-nss-build.patch
BuildRequires: gtk+2-devel
%if %{toolkit_gtk3}
BuildRequires: gtk+3-devel
@ -215,7 +212,6 @@ Files and macros mainly for building Firefox extensions.
%patch300 -p1
%patch302 -p1
%patch303 -p1
%patch304 -p1
pushd js/src
autoconf-2.13

View file

@ -1,5 +1,5 @@
# HG changeset patch
# Parent 06a62125ffbb15e88dacb486169d8e6a9595bd78
# Parent d685597ba96ea004052e40ec0c80f422ea0e365c
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
@@ -80,16 +80,17 @@
@@ -81,16 +81,17 @@
#include "nsXPCOMCID.h"
#include "nsXPCOM.h"
#include "nsXULAppAPI.h"
@ -27,7 +27,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
#ifdef XP_WIN
#include "windows.h"
#endif
@@ -4932,25 +4933,37 @@ Preferences::InitInitialObjects(bool aIs
@@ -4908,25 +4909,37 @@ Preferences::InitInitialObjects(bool aIs
// application pref files for backwards compatibility.
static const char* specialFiles[] = {
#if defined(XP_MACOSX)
@ -65,7 +65,7 @@ diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp
// Load jar:$app/omni.jar!/defaults/preferences/*.js
// or jar:$gre/omni.jar!/defaults/preferences/*.js.
@@ -4999,17 +5012,17 @@ Preferences::InitInitialObjects(bool aIs
@@ -4975,17 +4988,17 @@ Preferences::InitInitialObjects(bool aIs
}
nsCOMPtr<nsIFile> path = do_QueryInterface(elem);
@ -171,9 +171,9 @@ diff --git a/toolkit/components/downloads/moz.build b/toolkit/components/downloa
diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
--- a/toolkit/content/jar.mn
+++ b/toolkit/content/jar.mn
@@ -70,16 +70,18 @@ toolkit.jar:
@@ -68,16 +68,18 @@ toolkit.jar:
content/global/bindings/calendar.js (widgets/calendar.js)
content/global/bindings/checkbox.xml (widgets/checkbox.xml)
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/datetimepopup.xml (widgets/datetimepopup.xml)
@ -182,7 +182,6 @@ diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
* content/global/bindings/dialog.xml (widgets/dialog.xml)
+* content/global/bindings/dialog-kde.xml (widgets/dialog-kde.xml)
+% override chrome://global/content/bindings/dialog.xml chrome://global/content/bindings/dialog-kde.xml desktop=kde
* content/global/bindings/findbar.xml (widgets/findbar.xml)
content/global/bindings/general.xml (widgets/general.xml)
content/global/bindings/groupbox.xml (widgets/groupbox.xml)
content/global/bindings/menu.xml (widgets/menu.xml)
@ -190,6 +189,7 @@ diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
content/global/bindings/notification.xml (widgets/notification.xml)
content/global/bindings/numberbox.xml (widgets/numberbox.xml)
content/global/bindings/popup.xml (widgets/popup.xml)
content/global/bindings/radio.xml (widgets/radio.xml)
diff --git a/toolkit/content/widgets/dialog-kde.xml b/toolkit/content/widgets/dialog-kde.xml
new file mode 100644
--- /dev/null
@ -673,7 +673,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
@@ -1030,30 +1030,60 @@ nsUnknownContentTypeDialog.prototype = {
@@ -1031,30 +1031,60 @@ nsUnknownContentTypeDialog.prototype = {
if (params.handlerApp &&
params.handlerApp.executable &&
@ -845,7 +845,7 @@ 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
@@ -67,17 +67,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'co
@@ -68,17 +68,19 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'co
'../components/printingui',
]
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'uikit':
@ -1688,7 +1688,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
#include "nsIURL.h"
#include "nsIFileStreams.h"
#include "nsILineInputStream.h"
@@ -1125,17 +1125,17 @@ nsOSHelperAppService::GetHandlerAndDescr
@@ -1122,17 +1122,17 @@ nsOSHelperAppService::GetHandlerAndDescr
nsresult nsOSHelperAppService::OSProtocolHandlerExists(const char * aProtocolScheme, bool * aHandlerExists)
{
@ -1707,7 +1707,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
nsCOMPtr<nsIHandlerService> handlerSvc = do_GetService(NS_HANDLERSERVICE_CONTRACTID, &rv);
if (NS_SUCCEEDED(rv) && handlerSvc) {
rv = handlerSvc->ExistsForProtocol(nsCString(aProtocolScheme), aHandlerExists);
@@ -1143,17 +1143,17 @@ nsresult nsOSHelperAppService::OSProtoco
@@ -1140,17 +1140,17 @@ nsresult nsOSHelperAppService::OSProtoco
}
return rv;
@ -1726,7 +1726,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
nsresult nsOSHelperAppService::GetFileTokenForPath(const char16_t * platformAppPath, nsIFile ** aFile)
{
@@ -1240,17 +1240,17 @@ nsOSHelperAppService::GetFromExtension(c
@@ -1237,17 +1237,17 @@ nsOSHelperAppService::GetFromExtension(c
mime_types_description,
true);
@ -1745,7 +1745,7 @@ diff --git a/uriloader/exthandler/unix/nsOSHelperAppService.cpp b/uriloader/exth
rv = LookUpTypeAndDescription(NS_ConvertUTF8toUTF16(aFileExt),
majorType,
@@ -1361,17 +1361,17 @@ nsOSHelperAppService::GetFromType(const
@@ -1358,17 +1358,17 @@ nsOSHelperAppService::GetFromType(const
nsAutoString extensions, mime_types_description;
LookUpExtensionsAndDescription(majorType,
minorType,
@ -1884,8 +1884,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
GtkFileChooserAction action = GetGtkFileChooserAction(mMode);
@@ -608,8 +635,233 @@ nsFilePicker::Done(GtkWidget* file_choos
if (mCallback) {
@@ -600,16 +627,241 @@ nsFilePicker::Done(void* file_chooser, g
mCallback->Done(result);
mCallback = nullptr;
} else {
@ -1893,7 +1892,7 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
}
NS_RELEASE_THIS();
}
+
+nsCString nsFilePicker::kdeMakeFilter( int index )
+ {
+ nsCString buf = mFilters[ index ];
@ -2118,10 +2117,19 @@ diff --git a/widget/gtk/nsFilePicker.cpp b/widget/gtk/nsFilePicker.cpp
+ return NS_OK;
+ }
+
+
// All below functions available as of GTK 3.20+
void *
nsFilePicker::GtkFileChooserNew(
const gchar *title, GtkWindow *parent,
GtkFileChooserAction action,
const gchar *accept_label)
{
diff --git a/widget/gtk/nsFilePicker.h b/widget/gtk/nsFilePicker.h
--- a/widget/gtk/nsFilePicker.h
+++ b/widget/gtk/nsFilePicker.h
@@ -69,14 +69,20 @@ protected:
@@ -69,16 +69,22 @@ protected:
nsString mDefaultExtension;
nsTArray<nsCString> mFilters;
@ -2136,12 +2144,14 @@ diff --git a/widget/gtk/nsFilePicker.h b/widget/gtk/nsFilePicker.h
+ NS_IMETHODIMP kdeAppsDialog(PRInt16 *aReturn);
+ nsCString kdeMakeFilter( int index );
+
#ifdef MOZ_WIDGET_GTK
GtkFileChooserWidget *mFileChooserDelegate;
#endif
};
#endif
void *GtkFileChooserNew(
const gchar *title, GtkWindow *parent,
GtkFileChooserAction action,
const gchar *accept_label);
void GtkFileChooserShow(void *file_chooser);
void GtkFileChooserDestroy(void *file_chooser);
void GtkFileChooserSetModal(void *file_chooser, GtkWindow* parent_widget,
gboolean modal);
diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestParser.cpp
--- a/xpcom/components/ManifestParser.cpp
+++ b/xpcom/components/ManifestParser.cpp
@ -2163,7 +2173,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
const char* directive;
int argc;
@@ -419,16 +420,17 @@ ParseManifest(NSLocationType aType, File
@@ -421,16 +422,17 @@ ParseManifest(NSLocationType aType, File
NS_NAMED_LITERAL_STRING(kRemoteEnabled, "remoteenabled");
NS_NAMED_LITERAL_STRING(kRemoteRequired, "remoterequired");
NS_NAMED_LITERAL_STRING(kApplication, "application");
@ -2181,7 +2191,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
NS_NAMED_LITERAL_STRING(kMain, "main");
NS_NAMED_LITERAL_STRING(kContent, "content");
@@ -474,44 +476,49 @@ ParseManifest(NSLocationType aType, File
@@ -476,44 +478,49 @@ ParseManifest(NSLocationType aType, File
CopyUTF8toUTF16(s, abi);
abi.Insert(char16_t('_'), 0);
abi.Insert(osTarget, 0);
@ -2231,7 +2241,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
process = kMain;
}
@@ -598,25 +605,27 @@ ParseManifest(NSLocationType aType, File
@@ -600,25 +607,27 @@ ParseManifest(NSLocationType aType, File
TriState stOsVersion = eUnspecified;
TriState stOs = eUnspecified;
TriState stABI = eUnspecified;
@ -2259,7 +2269,7 @@ diff --git a/xpcom/components/ManifestParser.cpp b/xpcom/components/ManifestPars
}
#if defined(MOZ_WIDGET_ANDROID)
@@ -661,16 +670,17 @@ ParseManifest(NSLocationType aType, File
@@ -663,16 +672,17 @@ ParseManifest(NSLocationType aType, File
}
if (!ok ||

View file

@ -1,88 +0,0 @@
diff -up firefox-63.0/media/libyuv/libyuv/tools_libyuv/autoroller/unittests/testdata/DEPS.chromium.old firefox-63.0/media/libyuv/libyuv/tools_libyuv/autoroller/unittests/testdata/DEPS.chromium
diff -up firefox-63.0/media/webrtc/trunk/Makefile.old firefox-63.0/media/webrtc/trunk/Makefile
diff -up firefox-63.0/third_party/prio/include/mprio.h.old firefox-63.0/third_party/prio/include/mprio.h
--- firefox-63.0/third_party/prio/include/mprio.h.old 2018-10-18 15:10:24.616102952 +0200
+++ firefox-63.0/third_party/prio/include/mprio.h 2018-10-18 15:10:33.853076714 +0200
@@ -14,9 +14,9 @@ extern "C" {
#endif
#include <msgpack.h>
-#include <nss/blapit.h>
-#include <nss/pk11pub.h>
-#include <nss/seccomon.h>
+#include <blapit.h>
+#include <pk11pub.h>
+#include <seccomon.h>
#include <stdbool.h>
#include <stddef.h>
diff -up firefox-63.0/third_party/prio/prio/encrypt.c.old firefox-63.0/third_party/prio/prio/encrypt.c
--- firefox-63.0/third_party/prio/prio/encrypt.c.old 2018-10-18 15:15:08.279250181 +0200
+++ firefox-63.0/third_party/prio/prio/encrypt.c 2018-10-18 15:15:14.614229961 +0200
@@ -6,9 +6,9 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
-#include <nss/keyhi.h>
-#include <nss/keythi.h>
-#include <nss/pk11pub.h>
+#include <keyhi.h>
+#include <keythi.h>
+#include <pk11pub.h>
#include <prerror.h>
#include "encrypt.h"
diff -up firefox-63.0/third_party/prio/prio/prg.c.old firefox-63.0/third_party/prio/prio/prg.c
--- firefox-63.0/third_party/prio/prio/prg.c.old 2018-10-18 15:15:21.364208421 +0200
+++ firefox-63.0/third_party/prio/prio/prg.c 2018-10-18 15:15:27.542188720 +0200
@@ -7,8 +7,8 @@
*/
#include <mprio.h>
-#include <nss/blapit.h>
-#include <nss/pk11pub.h>
+#include <blapit.h>
+#include <pk11pub.h>
#include <string.h>
#include "prg.h"
diff -up firefox-63.0/third_party/prio/prio/prg.h.old firefox-63.0/third_party/prio/prio/prg.h
--- firefox-63.0/third_party/prio/prio/prg.h.old 2018-10-18 15:15:35.511163303 +0200
+++ firefox-63.0/third_party/prio/prio/prg.h 2018-10-18 15:15:40.568147167 +0200
@@ -10,7 +10,7 @@
#define __PRG_H__
#include <mpi.h>
-#include <nss/blapit.h>
+#include <blapit.h>
#include <stdlib.h>
#include "config.h"
diff -up firefox-63.0/third_party/prio/prio/rand.c.old firefox-63.0/third_party/prio/prio/rand.c
--- firefox-63.0/third_party/prio/prio/rand.c.old 2018-10-18 15:15:49.967117182 +0200
+++ firefox-63.0/third_party/prio/prio/rand.c 2018-10-18 15:16:00.130084760 +0200
@@ -8,9 +8,9 @@
#include <limits.h>
#include <mprio.h>
-#include <nss/nss.h>
-#include <nss/pk11pub.h>
-#include <nspr/prinit.h>
+#include <nss.h>
+#include <pk11pub.h>
+#include <prinit.h>
#include "debug.h"
#include "rand.h"
diff -up firefox-63.0/third_party/prio/prio/rand.h.old firefox-63.0/third_party/prio/prio/rand.h
--- firefox-63.0/third_party/prio/prio/rand.h.old 2018-10-18 15:14:49.689309517 +0200
+++ firefox-63.0/third_party/prio/prio/rand.h 2018-10-18 15:14:56.789286855 +0200
@@ -10,7 +10,7 @@
#define __RAND_H__
#include <mpi.h>
-#include <nss/seccomon.h>
+#include <seccomon.h>
#include <stdlib.h>
/*