--- a/firefox-kde.patch Sun Sep 14 22:15:27 2014 +0200
+++ b/firefox-kde.patch Sun Sep 14 22:15:34 2014 +0200
@@ -2,7 +2,7 @@
new file mode 100644
--- /dev/null
+++ b/browser/base/content/browser-kde.xul
-@@ -0,0 +1,1206 @@
+@@ -0,0 +1,1238 @@
+#filter substitution
+<?xml version="1.0"?>
+# -*- Mode: HTML -*-
@@ -181,7 +181,7 @@
+ </row>
+ <vbox id="editBookmarkPanelContent" flex="1" hidden="true"/>
+ <hbox id="editBookmarkPanelBottomButtons" pack="end">
-+#ifdef XP_UNIX
++#ifndef XP_UNIX
+ <button id="editBookmarkPanelDoneButton"
+ class="editBookmarkPanelBottomButton"
+ label="&editBookmark.done.label;"
@@ -231,7 +231,7 @@
+ <hbox id="UITourTooltipButtons" flex="1" align="center"/>
+ </vbox>
+ </panel>
-+ <!-- type="default" forces frames to be created so that the panel's size can be determined -->
++ <!-- type="default" forces frames to be created so that the panel's size can be determined -->
+ <panel id="UITourHighlightContainer"
+ type="default"
+ hidden="true"
@@ -272,16 +272,48 @@
+ noautofocus="true"
+ position="topcenter topright"/>
+
++ <panel id="loop-notification-panel"
++ class="loop-panel social-panel"
++ type="arrow"
++ hidden="true"
++ noautofocus="true"/>
++
++ <panel id="loop-panel"
++ class="loop-panel social-panel"
++ type="arrow"
++ orient="horizontal"
++ hidden="true"/>
++
+ <menupopup id="toolbar-context-menu"
+ onpopupshowing="onViewToolbarsPopupShowing(event, document.getElementById('viewToolbarsMenuSeparator'));">
+ <menuitem oncommand="gCustomizeMode.addToPanel(document.popupNode)"
+ accesskey="&customizeMenu.moveToPanel.accesskey;"
+ label="&customizeMenu.moveToPanel.label;"
++ contexttype="toolbaritem"
+ class="customize-context-moveToPanel"/>
+ <menuitem oncommand="gCustomizeMode.removeFromArea(document.popupNode)"
+ accesskey="&customizeMenu.removeFromToolbar.accesskey;"
+ label="&customizeMenu.removeFromToolbar.label;"
++ contexttype="toolbaritem"
+ class="customize-context-removeFromToolbar"/>
++ <menuitem id="toolbar-context-reloadAllTabs"
++ class="toolbaritem-tabsmenu"
++ contexttype="tabbar"
++ oncommand="gBrowser.reloadAllTabs();"
++ label="&toolbarContextMenu.reloadAllTabs.label;"
++ accesskey="&toolbarContextMenu.reloadAllTabs.accesskey;"/>
++ <menuitem id="toolbar-context-bookmarkAllTabs"
++ class="toolbaritem-tabsmenu"
++ contexttype="tabbar"
++ command="Browser:BookmarkAllTabs"
++ label="&toolbarContextMenu.bookmarkAllTabs.label;"
++ accesskey="&toolbarContextMenu.bookmarkAllTabs.accesskey;"/>
++ <menuitem id="toolbar-context-undoCloseTab"
++ class="toolbaritem-tabsmenu"
++ contexttype="tabbar"
++ label="&toolbarContextMenu.undoCloseTab.label;"
++ accesskey="&toolbarContextMenu.undoCloseTab.accesskey;"
++ observes="History:UndoCloseTab"/>
+ <menuseparator/>
+ <menuseparator id="viewToolbarsMenuSeparator"/>
+ <!-- XXXgijs: we're using oncommand handler here to avoid the event being
@@ -536,8 +568,7 @@
+#endif
+#endif
+ context="toolbar-context-menu">
-+ <toolbaritem id="menubar-items" align="center"
-+ cui-areatype="toolbar">
++ <toolbaritem id="menubar-items" align="center">
+# The entire main menubar is placed into browser-menubar.inc, so that it can be shared by
+# hiddenWindow.xul.
+#include browser-menubar.inc
@@ -574,7 +605,6 @@
+ flex="1"
+ setfocus="false"
+ tooltip="tabbrowser-tab-tooltip"
-+ cui-areatype="toolbar"
+ stopwatchid="FX_TAB_CLICK_MS">
+ <tab class="tabbrowser-tab" selected="true" fadein="true"/>
+ </tabs>
@@ -605,8 +635,12 @@
+ key="key_tabview"
+ label="&viewTabGroups.label;"
+ command="Browser:ToggleTabView"
-+ cui-areatype="toolbar"
+ observes="tabviewGroupsNumber"/>
++ <menuitem id="alltabs_undoCloseTab"
++ class="menuitem-iconic"
++ key="key_undoCloseTab"
++ label="&undoCloseTab.label;"
++ observes="History:UndoCloseTab"/>
+ <menuseparator id="alltabs-popup-separator"/>
+ </menupopup>
+ </toolbarbutton>
@@ -640,7 +674,7 @@
+ aria-label="&navbarCmd.label;"
+ fullscreentoolbar="true" mode="icons" customizable="true"
+ iconsize="small"
-+ defaultset="urlbar-container,search-container,webrtc-status-button,bookmarks-menu-button,downloads-button,home-button,social-share-button,social-toolbar-item"
++ defaultset="urlbar-container,search-container,bookmarks-menu-button,downloads-button,home-button,loop-call-button,social-share-button,social-toolbar-item"
+ customizationtarget="nav-bar-customization-target"
+ overflowable="true"
+ overflowbutton="nav-bar-overflow-button"
@@ -651,12 +685,10 @@
+ <hbox id="nav-bar-customization-target" flex="1">
+ <toolbaritem id="urlbar-container" flex="400" persist="width"
+ title="&locationItem.title;" removable="false"
-+ cui-areatype="toolbar"
+ class="chromeclass-location" overflows="false">
+ <toolbarbutton id="back-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
+ label="&backCmd.label;"
+ command="Browser:BackOrBackDuplicate"
-+ cui-areatype="toolbar"
+ onclick="checkForMiddleClick(this, event);"
+ tooltip="back-button-tooltip"
+ context="backForwardMenu"/>
@@ -664,7 +696,6 @@
+ <toolbarbutton id="forward-button" class="toolbarbutton-1 chromeclass-toolbar-additional"
+ label="&forwardCmd.label;"
+ command="Browser:ForwardOrForwardDuplicate"
-+ cui-areatype="toolbar"
+ onclick="checkForMiddleClick(this, event);"
+ tooltip="forward-button-tooltip"
+ context="backForwardMenu"/>
@@ -703,6 +734,8 @@
+ <image id="webRTC-sharingDevices-notification-icon" class="notification-anchor-icon" role="button"/>
+ <image id="webRTC-shareMicrophone-notification-icon" class="notification-anchor-icon" role="button"/>
+ <image id="webRTC-sharingMicrophone-notification-icon" class="notification-anchor-icon" role="button"/>
++ <image id="webRTC-shareScreen-notification-icon" class="notification-anchor-icon" role="button"/>
++ <image id="webRTC-sharingScreen-notification-icon" class="notification-anchor-icon" role="button"/>
+ <image id="pointerLock-notification-icon" class="notification-anchor-icon" role="button"/>
+ <image id="servicesInstall-notification-icon" class="notification-anchor-icon" role="button"/>
+ <image id="translate-notification-icon" class="notification-anchor-icon" role="button"/>
@@ -718,6 +751,7 @@
+ onkeypress="gIdentityHandler.handleIdentityButtonEvent(event);"
+ ondragstart="gIdentityHandler.onDragStart(event);">
+ <image id="page-proxy-favicon"
++ consumeanchor="identity-box"
+ onclick="PageProxyClickHandler(event);"
+ pageproxystate="invalid"/>
+ <hbox id="identity-icon-labels">
@@ -759,20 +793,6 @@
+ <searchbar id="searchbar" flex="1"/>
+ </toolbaritem>
+
-+ <toolbarbutton id="webrtc-status-button"
-+ class="toolbarbutton-1 chromeclass-toolbar-additional"
-+ type="menu"
-+ hidden="true"
-+ orient="horizontal"
-+ label="&webrtcIndicatorButton.label;"
-+ tooltiptext="&webrtcIndicatorButton.tooltip;"
-+ cui-areatype="toolbar"
-+ overflows="false">
-+ <menupopup onpopupshowing="WebrtcIndicator.fillPopup(this);"
-+ onpopuphiding="WebrtcIndicator.clearPopup(this);"
-+ oncommand="WebrtcIndicator.menuCommand(event.target);"/>
-+ </toolbarbutton>
-+
+ <toolbarbutton id="bookmarks-menu-button"
+ class="toolbarbutton-1 chromeclass-toolbar-additional"
+ persist="class"
@@ -902,6 +922,21 @@
+ cui-areatype="toolbar"
+ aboutHomeOverrideTooltip="&abouthome.pageTitle;"/>
+
++ <!-- XXX Bug 1013989 will provide a label for the button -->
++ <!-- This uses badged to be compatible with the social api code it shares.
++ We may also want it to be badged in the future, for notification
++ purposes. -->
++ <toolbarbutton id="loop-call-button"
++ class="toolbarbutton-1 chromeclass-toolbar-additional"
++ persist="class"
++ type="badged"
++ removable="true"
++ tooltiptext="&loopCallButton.tooltip;"
++ oncommand="LoopUI.openCallPanel(event);"
++ cui-areatype="toolbar"
++ >
++ </toolbarbutton>
++
+
+ <toolbarbutton id="social-share-button"
+ class="toolbarbutton-1 chromeclass-toolbar-additional"
@@ -915,17 +950,15 @@
+
+ <toolbarbutton id="nav-bar-overflow-button"
+ class="toolbarbutton-1 chromeclass-toolbar-additional overflow-button"
-+ cui-areatype="toolbar"
+ skipintoolbarset="true"
+ tooltiptext="&navbarOverflow.label;"/>
+
+ <toolbaritem id="PanelUI-button"
+ class="chromeclass-toolbar-additional"
-+ cui-areatype="toolbar"
+ removable="false">
+ <toolbarbutton id="PanelUI-menu-button"
+ class="toolbarbutton-1"
-+ cui-areatype="toolbar"
++ consumeanchor="PanelUI-button"
+ label="&brandShortName;"
+ tooltiptext="&appmenu.tooltip;"/>
+ </toolbaritem>
@@ -941,7 +974,6 @@
+# Prior to 10.7 there wasn't a native fullscreen button so we use #restore-button
+# to exit fullscreen and want it to behave like other toolbar buttons.
+ class="toolbarbutton-1"
-+ cui-areatype="toolbar"
+#endif
+ tooltiptext="&fullScreenRestore.tooltip;"
+ oncommand="BrowserFullScreen();"/>
@@ -1142,7 +1174,7 @@
+ <description class="full-screen-description" value="&fullscreenExitHint2.value;"/>
+ <vbox id="full-screen-approval-pane" align="center">
+ <hbox>
-+#ifndef XP_UNIX
++#ifdef XP_UNIX
+ <button label="&fullscreenExitButton.label;"
+ oncommand="FullScreen.setFullscreenAllowed(false);"
+ class="full-screen-approval-button"/>
@@ -1209,6 +1241,47 @@
+</deck>
+
+</window>
+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
+@@ -171,17 +171,17 @@
+ class="editBookmarkPanelHeaderButton"
+ oncommand="StarUI.removeBookmarkButtonCommand();"
+ accesskey="&editBookmark.removeBookmark.accessKey;"/>
+ </hbox>
+ </vbox>
+ </row>
+ <vbox id="editBookmarkPanelContent" flex="1" hidden="true"/>
+ <hbox id="editBookmarkPanelBottomButtons" pack="end">
+-#ifndef XP_UNIX
++#ifdef XP_UNIX
+ <button id="editBookmarkPanelDoneButton"
+ class="editBookmarkPanelBottomButton"
+ label="&editBookmark.done.label;"
+ default="true"
+ oncommand="StarUI.panel.hidePopup();"/>
+ <button id="editBookmarkPanelDeleteButton"
+ class="editBookmarkPanelBottomButton"
+ label="&editBookmark.cancel.label;"
+@@ -1164,17 +1164,17 @@
+
+ <hbox id="full-screen-warning-container" hidden="true" fadeout="true">
+ <hbox style="width: 100%;" pack="center"> <!-- Inner hbox needed due to bug 579776. -->
+ <vbox id="full-screen-warning-message" align="center">
+ <description id="full-screen-domain-text"/>
+ <description class="full-screen-description" value="&fullscreenExitHint2.value;"/>
+ <vbox id="full-screen-approval-pane" align="center">
+ <hbox>
+-#ifdef XP_UNIX
++#ifndef XP_UNIX
+ <button label="&fullscreenExitButton.label;"
+ oncommand="FullScreen.setFullscreenAllowed(false);"
+ class="full-screen-approval-button"/>
+ <button label="&fullscreenAllowButton.label;"
+ oncommand="FullScreen.setFullscreenAllowed(true);"
+ class="full-screen-approval-button"/>
+ #else
+ <button label="&fullscreenAllowButton.label;"
diff --git a/browser/base/jar.mn b/browser/base/jar.mn
--- a/browser/base/jar.mn
+++ b/browser/base/jar.mn
@@ -1317,7 +1390,7 @@
// 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.
-@@ -875,14 +881,25 @@ var gAdvancedPane = {
+@@ -889,14 +895,25 @@ var gAdvancedPane = {
* Set browser as the operating system default browser.
*/
setDefaultBrowser: function()
@@ -1799,7 +1872,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
-@@ -666,19 +666,21 @@
+@@ -658,19 +658,21 @@
@BINPATH@/defaults/autoconfig/prefcalls.js
@BINPATH@/browser/defaults/profile/prefs.js