mirror of
https://abf.rosa.ru/djam/firefox-esr78.git
synced 2025-02-23 17:52:46 +00:00
Updated to 55.0.1
This commit is contained in:
parent
05d0338d6b
commit
33f9d37072
6 changed files with 365 additions and 321 deletions
2
.abf.yml
2
.abf.yml
|
@ -1,2 +1,2 @@
|
|||
sources:
|
||||
firefox-52.0.2.source.tar.xz: 5631e49d8ae064764b64643534acfdd619061ba9
|
||||
firefox-55.0.1.source.tar.xz: 8ec2a864e277b4acc31ea96806aae3b90f1a4038
|
||||
|
|
|
@ -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:;");
|
||||
|
|
|
@ -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="©URLCmd.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")
|
||||
+ kde_session = 1;
|
||||
}
|
||||
|
||||
// set up the "use current page" label-changing listener
|
||||
this._updateUseCurrentButton();
|
||||
window.addEventListener("focus", this._updateUseCurrentButton.bind(this), false);
|
||||
+ var env = Components.classes["@mozilla.org/process/environment;1"]
|
||||
+ .getService(Components.interfaces.nsIEnvironment);
|
||||
+ var kde_session = 0;
|
||||
+ if (env.get('KDE_FULL_SESSION') == "true") {
|
||||
+ kde_session = 1;
|
||||
+ }
|
||||
+
|
||||
this.buildContentProcessCountMenuList();
|
||||
this.updateDefaultPerformanceSettingsPref();
|
||||
|
||||
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
|
||||
|
|
18
firefox.spec
18
firefox.spec
|
@ -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
|
||||
|
|
|
@ -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,17 +121,17 @@ 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 += [
|
||||
@@ -33,16 +33,20 @@ EXPORTS.mozilla += [
|
||||
UNIFIED_SOURCES += [
|
||||
'nsPrefBranch.cpp',
|
||||
'nsPrefsFactory.cpp',
|
||||
'prefapi.cpp',
|
||||
'Preferences.cpp',
|
||||
'prefread.cpp',
|
||||
]
|
||||
|
||||
# prefapi.cpp cannot be built in unified mode because it uses plarena.h
|
||||
SOURCES += [
|
||||
'prefapi.cpp',
|
||||
]
|
||||
|
||||
+LOCAL_INCLUDES += [
|
||||
+ '/toolkit/xre'
|
||||
+ '/toolkit/xre'
|
||||
+]
|
||||
+
|
||||
include('/ipc/chromium/chromium-config.mozbuild')
|
||||
|
@ -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,9 +187,9 @@ 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
|
||||
|
@ -471,8 +391,8 @@ new file mode 100644
|
|||
+ <method name="centerWindowOnScreen">
|
||||
+ <body>
|
||||
+ <![CDATA[
|
||||
+ var xOffset = screen.availWidth/2 - window.outerWidth/2;
|
||||
+ var yOffset = screen.availHeight/2 - window.outerHeight/2;
|
||||
+ var xOffset = screen.availWidth / 2 - window.outerWidth / 2;
|
||||
+ var yOffset = screen.availHeight / 2 - window.outerHeight / 2;
|
||||
+
|
||||
+ xOffset = xOffset > 0 ? xOffset : 0;
|
||||
+ yOffset = yOffset > 0 ? yOffset : 0;
|
||||
|
@ -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,9 +444,8 @@ new file mode 100644
|
|||
+ // so return focus to the tab itself
|
||||
+ initialFocusedElt.focus();
|
||||
+ }
|
||||
+ }
|
||||
+ else if (!/Mac/.test(navigator.platform) &&
|
||||
+ focusedElt.hasAttribute("dlgtype") && focusedElt != defaultButton) {
|
||||
+ } else if (!/Mac/.test(navigator.platform) &&
|
||||
+ focusedElt.hasAttribute("dlgtype") && focusedElt != defaultButton) {
|
||||
+ defaultButton.focus();
|
||||
+ }
|
||||
+ }
|
||||
|
@ -590,13 +509,13 @@ new file mode 100644
|
|||
+ // don't override custom labels with pre-defined labels on explicit buttons
|
||||
+ if (!button.hasAttribute("label")) {
|
||||
+ // dialog attributes override the default labels in dialog.properties
|
||||
+ if (this.hasAttribute("buttonlabel"+dlgtype)) {
|
||||
+ button.setAttribute("label", this.getAttribute("buttonlabel"+dlgtype));
|
||||
+ if (this.hasAttribute("buttonaccesskey"+dlgtype))
|
||||
+ button.setAttribute("accesskey", this.getAttribute("buttonaccesskey"+dlgtype));
|
||||
+ if (this.hasAttribute("buttonlabel" + dlgtype)) {
|
||||
+ button.setAttribute("label", this.getAttribute("buttonlabel" + dlgtype));
|
||||
+ if (this.hasAttribute("buttonaccesskey" + dlgtype))
|
||||
+ button.setAttribute("accesskey", this.getAttribute("buttonaccesskey" + dlgtype));
|
||||
+ } else if (dlgtype != "extra1" && dlgtype != "extra2") {
|
||||
+ button.setAttribute("label", this.mStrBundle.GetStringFromName("button-"+dlgtype));
|
||||
+ var accessKey = this.mStrBundle.GetStringFromName("accesskey-"+dlgtype);
|
||||
+ button.setAttribute("label", this.mStrBundle.GetStringFromName("button-" + dlgtype));
|
||||
+ var accessKey = this.mStrBundle.GetStringFromName("accesskey-" + dlgtype);
|
||||
+ if (accessKey)
|
||||
+ button.setAttribute("accesskey", accessKey);
|
||||
+ }
|
||||
|
@ -604,8 +523,8 @@ new file mode 100644
|
|||
+ // allow specifying alternate icons in the dialog header
|
||||
+ if (!button.hasAttribute("icon")) {
|
||||
+ // if there's an icon specified, use that
|
||||
+ if (this.hasAttribute("buttonicon"+dlgtype))
|
||||
+ button.setAttribute("icon", this.getAttribute("buttonicon"+dlgtype));
|
||||
+ if (this.hasAttribute("buttonicon" + dlgtype))
|
||||
+ button.setAttribute("icon", this.getAttribute("buttonicon" + dlgtype));
|
||||
+ // otherwise set defaults
|
||||
+ else
|
||||
+ switch (dlgtype) {
|
||||
|
@ -649,7 +568,7 @@ new file mode 100644
|
|||
+ if (/Win/.test(navigator.platform)) {
|
||||
+ var spacer = document.getAnonymousElementByAttribute(this, "anonid", "spacer");
|
||||
+ spacer.removeAttribute("hidden");
|
||||
+ spacer.setAttribute("flex", shown["extra2"]?"1":"0");
|
||||
+ spacer.setAttribute("flex", shown["extra2"] ? "1" : "0");
|
||||
+ }
|
||||
+ }
|
||||
+ ]]>
|
||||
|
@ -669,11 +588,10 @@ 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");
|
||||
+ dump("invalid new default button: " + aNewDefault + ", assuming: none\n");
|
||||
+ }
|
||||
+ ]]>
|
||||
+ </body>
|
||||
|
@ -718,13 +636,13 @@ new file mode 100644
|
|||
+ <body>
|
||||
+ <![CDATA[
|
||||
+ var event = document.createEvent("Events");
|
||||
+ event.initEvent("dialog"+aDlgType, true, true);
|
||||
+ event.initEvent("dialog" + aDlgType, true, true);
|
||||
+
|
||||
+ // handle dom event handlers
|
||||
+ var noCancel = this.dispatchEvent(event);
|
||||
+
|
||||
+ // handle any xml attribute event handlers
|
||||
+ var handler = this.getAttribute("ondialog"+aDlgType);
|
||||
+ var handler = this.getAttribute("ondialog" + aDlgType);
|
||||
+ if (handler != "") {
|
||||
+ var fn = new Function("event", handler);
|
||||
+ var returned = fn(event);
|
||||
|
@ -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);
|
||||
|
@ -1228,11 +1134,10 @@ new file mode 100644
|
|||
+ try {
|
||||
+ var event = document.createEvent("Events");
|
||||
+ event.initEvent("syncfrompreference", true, true);
|
||||
+ var f = new Function ("event",
|
||||
+ aElement.getAttribute("onsyncfrompreference"));
|
||||
+ 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>
|
||||
|
@ -1283,13 +1187,12 @@ new file mode 100644
|
|||
+ try {
|
||||
+ var event = document.createEvent("Events");
|
||||
+ event.initEvent("synctopreference", true, true);
|
||||
+ var f = new Function ("event",
|
||||
+ aElement.getAttribute("onsynctopreference"));
|
||||
+ var f = new Function("event",
|
||||
+ aElement.getAttribute("onsynctopreference"));
|
||||
+ var rv = f.call(aElement, event);
|
||||
+ if (rv !== undefined)
|
||||
+ return rv;
|
||||
+ }
|
||||
+ catch (e) {
|
||||
+ } catch (e) {
|
||||
+ Components.utils.reportError(e);
|
||||
+ }
|
||||
+ }
|
||||
|
@ -1435,7 +1338,7 @@ new file mode 100644
|
|||
+ acceptButton.disabled = true;
|
||||
+ } else {
|
||||
+ // morph the Cancel button into the Close button
|
||||
+ cancelButton.setAttribute ("icon", "close");
|
||||
+ cancelButton.setAttribute("icon", "close");
|
||||
+ cancelButton.label = docElt.getAttribute("closebuttonlabel");
|
||||
+ cancelButton.accesskey = docElt.getAttribute("closebuttonaccesskey");
|
||||
+ }
|
||||
|
@ -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>
|
||||
|
@ -1588,14 +1487,13 @@ new file mode 100644
|
|||
+ event.initEvent(aEventName, true, true);
|
||||
+ var cancel = !aTarget.dispatchEvent(event);
|
||||
+ if (aTarget.hasAttribute("on" + aEventName)) {
|
||||
+ var fn = new Function ("event", aTarget.getAttribute("on" + aEventName));
|
||||
+ var fn = new Function("event", aTarget.getAttribute("on" + aEventName));
|
||||
+ var rv = fn.call(aTarget, event);
|
||||
+ if (rv == false)
|
||||
+ 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,22 +3738,32 @@ 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))) {
|
||||
return NS_OK;
|
||||
} else {
|
||||
nsCOMPtr<nsIFile> parentDir;
|
||||
nsAutoCString dirPath;
|
||||
if (NS_FAILED(GetParent(getter_AddRefs(parentDir)))) {
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
if (NS_FAILED(parentDir->GetNativePath(dirPath))) {
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
- return giovfs->ShowURIForInput(dirPath);
|
||||
+ url = dirPath;
|
||||
}
|
||||
+
|
||||
if (NS_SUCCEEDED(giovfs->OrgFreedesktopFileManager1ShowItems(mPath))) {
|
||||
return NS_OK;
|
||||
}
|
||||
nsCOMPtr<nsIFile> parentDir;
|
||||
nsAutoCString dirPath;
|
||||
if (NS_FAILED(GetParent(getter_AddRefs(parentDir)))) {
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
if (NS_FAILED(parentDir->GetNativePath(dirPath))) {
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
- 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
|
||||
|
|
|
@ -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";
|
||||
}
|
||||
|
||||
/**
|
Loading…
Add table
Reference in a new issue