--- a/firefox-kde.patch Wed Apr 08 00:59:13 2015 +0200
+++ b/firefox-kde.patch Sun May 10 09:05:36 2015 +0200
@@ -1,11 +1,11 @@
# HG changeset patch
-# Parent 409c60c5454efb61ebecf0edc8822a0e92f563f3
+# Parent a21f91aa3ed60b4e95b47f45715dfda379dab7c8
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,1288 @@
+@@ -0,0 +1,1302 @@
+#filter substitution
+<?xml version="1.0"?>
+# -*- Mode: HTML -*-
@@ -154,8 +154,13 @@
+ <!-- for url bar autocomplete -->
+ <panel type="autocomplete-richlistbox" id="PopupAutoCompleteRichResult" noautofocus="true" hidden="true"/>
+
-+ <!-- for select dropdowns -->
-+ <menupopup id="ContentSelectDropdown" rolluponmousewheel="true" hidden="true"/>
++ <!-- for select dropdowns. The menupopup is what shows the list of options,
++ and the popuponly menulist makes things like the menuactive attributes
++ work correctly on the menupopup. ContentSelectDropdown expects the
++ popuponly menulist to be its immediate parent. -->
++ <menulist popuponly="true" id="ContentSelectDropdown" hidden="true">
++ <menupopup rolluponmousewheel="true"/>
++ </menulist>
+
+ <!-- for invalid form error message -->
+ <panel id="invalid-form-popup" type="arrow" orient="vertical" noautofocus="true" hidden="true" level="parent">
@@ -248,41 +253,6 @@
+ mousethrough="always">
+ <box id="UITourHighlight"></box>
+ </panel>
-+ <!-- Used to highlight the new search experience -->
-+ <panel id="SearchHighlight1"
-+ class="SearchHighlight"
-+ type="arrow"
-+ hidden="true"
-+ noautofocus="true"
-+ noautohide="true"
-+ orient="vertical"
-+ align="stretch">
-+ <label class="SearchHighlightTitle">&SearchHighlight1.title;</label>
-+ <description class="SearchHighlightText" flex="1">&SearchHighlight1.text;</description>
-+ <hbox class="SearchHighlightFooter" align="center">
-+ <spacer class="dot filled"/>
-+ <spacer class="dot"/>
-+ <spacer flex="1"/>
-+ <button label="&SearchHighlightNext;"/>
-+ </hbox>
-+ </panel>
-+ <panel id="SearchHighlight2"
-+ class="SearchHighlight"
-+ type="arrow"
-+ hidden="true"
-+ noautofocus="true"
-+ noautohide="true"
-+ orient="vertical"
-+ align="stretch">
-+ <label class="SearchHighlightTitle">&SearchHighlight2.title;</label>
-+ <description class="SearchHighlightText" flex="1">&SearchHighlight2.text;</description>
-+ <hbox class="SearchHighlightFooter" align="center">
-+ <spacer class="dot"/>
-+ <spacer class="dot filled"/>
-+ <spacer flex="1"/>
-+ <button label="&SearchHighlightClose;"/>
-+ </hbox>
-+ </panel>
+
+ <panel id="abouthome-search-panel" orient="vertical" type="arrow" hidden="true"
+ onclick="this.hidePopup()">
@@ -342,6 +312,26 @@
+ orient="horizontal"
+ hidden="true"/>
+
++ <menupopup id="processHangOptions"
++ onpopupshowing="ProcessHangMonitor.refreshMenu(window);">
++ <menuitem id="processHangTerminateScript"
++ oncommand="ProcessHangMonitor.terminateScript(window)"
++ accesskey="&processHang.terminateScript.accessKey;"
++ label="&processHang.terminateScript.label;"/>
++ <menuitem id="processHangDebugScript"
++ oncommand="ProcessHangMonitor.debugScript(window)"
++ accesskey="&processHang.debugScript.accessKey;"
++ label="&processHang.debugScript.label;"/>
++ <menuitem id="processHangTerminatePlugin"
++ oncommand="ProcessHangMonitor.terminatePlugin(window)"
++ accesskey="&processHang.terminatePlugin.accessKey;"
++ label="&processHang.terminatePlugin.label;"/>
++ <menuitem id="processHangTerminateProcess"
++ oncommand="ProcessHangMonitor.terminateProcess(window)"
++ accesskey="&processHang.terminateProcess.accessKey;"
++ label="&processHang.terminateProcess.label;"/>
++ </menupopup>
++
+ <menupopup id="toolbar-context-menu"
+ onpopupshowing="onViewToolbarsPopupShowing(event, document.getElementById('viewToolbarsMenuSeparator'));">
+ <menuitem oncommand="gCustomizeMode.addToPanel(document.popupNode)"
@@ -588,12 +578,12 @@
+
+ <menupopup id="emeNotificationsPopup">
+ <menuitem id="emeNotificationsNotNow"
-+ label="Not now"
-+ acceskey="N"
++ label="&emeNotificationsNotNow.label;"
++ acceskey="&emeNotificationsNotNow.accesskey;"
+ oncommand="gEMEHandler.onNotNow(this);"/>
+ <menuitem id="emeNotificationsDontAskAgain"
-+ label="Don't ask me again"
-+ acceskey="D"
++ label="&emeNotificationsDontAskAgain.label;"
++ acceskey="&emeNotificationsDontAskAgain.accesskey;"
+ oncommand="gEMEHandler.onDontAskAgain(this);"/>
+ </menupopup>
+ </popupset>
@@ -845,6 +835,14 @@
+ hidden="true"
+ tooltiptext="&pageReportIcon.tooltip;"
+ onclick="gPopupBlockerObserver.onReportButtonClick(event);"/>
++ <image id="readinglist-addremove-button"
++ class="urlbar-icon"
++ hidden="true"
++ onclick="ReadingListUI.togglePageByBrowser(gBrowser.selectedBrowser);"/>
++ <image id="reader-mode-button"
++ class="urlbar-icon"
++ hidden="true"
++ onclick="ReaderParent.buttonClick(event);"/>
+ </hbox>
+ <toolbarbutton id="urlbar-go-button"
+ class="chromeclass-toolbar-additional"
@@ -898,7 +896,7 @@
+ class="subviewbutton"
+ label="&viewBookmarksSidebar2.label;"
+ type="checkbox"
-+ oncommand="toggleSidebar('viewBookmarksSidebar');">
++ oncommand="SidebarUI.toggle('viewBookmarksSidebar');">
+ <observes element="viewBookmarksSidebar" attribute="checked"/>
+ </menuitem>
+ <!-- NB: temporary solution for bug 985024, this should go away soon. -->
@@ -963,6 +961,22 @@
+ new PlacesMenu(event, 'place:folder=UNFILED_BOOKMARKS',
+ PlacesUIUtils.getViewForNode(this.parentNode.parentNode).options);"/>
+ </menu>
++ <menuseparator>
++ <observes element="readingListSidebar" attribute="hidden"/>
++ </menuseparator>
++ <menu id="BMB_readingList"
++ class="menu-iconic bookmark-item subviewbutton"
++ label="&readingList.label;"
++ container="true">
++ <observes element="readingListSidebar" attribute="hidden"/>
++ <menupopup id="BMB_readingListPopup"
++ placespopup="true"
++ onpopupshowing="ReadingListUI.onReadingListPopupShowing(this);">
++ <menuitem id="BMB_viewReadingListSidebar" class="subviewbutton"
++ oncommand="SidebarUI.show('readingListSidebar');"
++ label="&readingList.showSidebar.label;"/>
++ </menupopup>
++ </menu>
+ <menuseparator/>
+ <!-- Bookmarks menu items will go here -->
+ <menuitem id="BMB_bookmarksShowAll"
@@ -1151,10 +1165,10 @@
+ <sidebarheader id="sidebar-header" align="center">
+ <label id="sidebar-title" persist="value" flex="1" crop="end" control="sidebar"/>
+ <image id="sidebar-throbber"/>
-+ <toolbarbutton class="close-icon tabbable" tooltiptext="&sidebarCloseButton.tooltip;" oncommand="toggleSidebar();"/>
++ <toolbarbutton class="close-icon tabbable" tooltiptext="&sidebarCloseButton.tooltip;" oncommand="SidebarUI.hide();"/>
+ </sidebarheader>
+ <browser id="sidebar" flex="1" autoscroll="false" disablehistory="true"
-+ style="min-width: 14em; width: 18em; max-width: 36em;"/>
++ style="min-width: 14em; width: 18em; max-width: 36em;" tooltip="aHTMLTooltip"/>
+ </vbox>
+
+ <splitter id="sidebar-splitter" class="chromeclass-extrachrome sidebar-splitter" hidden="true"/>
@@ -1165,7 +1179,7 @@
+ tabcontainer="tabbrowser-tabs"
+ contentcontextmenu="contentAreaContextMenu"
+ autocompletepopup="PopupAutoComplete"
-+ selectpopup="ContentSelectDropdown"/>
++ selectmenulist="ContentSelectDropdown"/>
+ <chatbar id="pinnedchats" layer="true" mousethrough="always" hidden="true"/>
+ </vbox>
+ <splitter id="social-sidebar-splitter"
@@ -1297,7 +1311,7 @@
diff --git a/browser/base/content/browser.xul b/browser/base/content/browser.xul
--- a/browser/base/content/browser.xul
+++ b/browser/base/content/browser.xul
-@@ -174,17 +174,17 @@
+@@ -179,17 +179,17 @@
class="editBookmarkPanelHeaderButton"
oncommand="StarUI.removeBookmarkButtonCommand();"
accesskey="&editBookmark.removeBookmark.accessKey;"/>
@@ -1316,7 +1330,7 @@
<button id="editBookmarkPanelDeleteButton"
class="editBookmarkPanelBottomButton"
label="&editBookmark.cancel.label;"
-@@ -1214,17 +1214,17 @@
+@@ -1228,17 +1228,17 @@
<hbox id="full-screen-warning-container" hidden="true" fadeout="true">
<hbox style="width: 100%;" pack="center"> <!-- Inner hbox needed due to bug 579776. -->
@@ -1338,10 +1352,10 @@
diff --git a/browser/base/jar.mn b/browser/base/jar.mn
--- a/browser/base/jar.mn
+++ b/browser/base/jar.mn
-@@ -69,16 +69,18 @@ browser.jar:
- content/browser/aboutRobots-widget-left.png (content/aboutRobots-widget-left.png)
+@@ -70,16 +70,18 @@ browser.jar:
content/browser/aboutSocialError.xhtml (content/aboutSocialError.xhtml)
content/browser/aboutProviderDirectory.xhtml (content/aboutProviderDirectory.xhtml)
+ content/browser/aboutTabCrashed.css (content/aboutTabCrashed.css)
content/browser/aboutTabCrashed.js (content/aboutTabCrashed.js)
content/browser/aboutTabCrashed.xhtml (content/aboutTabCrashed.xhtml)
* content/browser/browser.css (content/browser.css)
@@ -1349,7 +1363,6 @@
* content/browser/browser.xul (content/browser.xul)
+* content/browser/browser-kde.xul (content/browser-kde.xul)
+% override chrome://browser/content/browser.xul chrome://browser/content/browser-kde.xul desktop=kde
- * content/browser/browser-eme.properties (content/browser-eme.properties)
* content/browser/browser-tabPreviews.xml (content/browser-tabPreviews.xml)
* content/browser/chatWindow.xul (content/chatWindow.xul)
content/browser/content.js (content/content.js)
@@ -1357,6 +1370,7 @@
content/browser/defaultthemes/1.header.jpg (content/defaultthemes/1.header.jpg)
content/browser/defaultthemes/1.icon.jpg (content/defaultthemes/1.icon.jpg)
content/browser/defaultthemes/1.preview.jpg (content/defaultthemes/1.preview.jpg)
+ content/browser/defaultthemes/2.footer.jpg (content/defaultthemes/2.footer.jpg)
diff --git a/browser/components/build/nsModule.cpp b/browser/components/build/nsModule.cpp
--- a/browser/components/build/nsModule.cpp
+++ b/browser/components/build/nsModule.cpp
@@ -1784,7 +1798,7 @@
+#include "nsStringAPI.h"
+#include "mozilla/Attributes.h"
+
-+class nsKDEShellService MOZ_FINAL : public nsIShellService
++class nsKDEShellService final : public nsIShellService
+{
+public:
+ nsKDEShellService() : mCheckedThisSession(false) { }
@@ -1911,7 +1925,7 @@
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
-@@ -688,19 +688,21 @@
+@@ -698,19 +698,21 @@
@RESPATH@/defaults/autoconfig/prefcalls.js
@RESPATH@/browser/defaults/profile/prefs.js