firefox-kde.patch
changeset 935 9ae2b79d3bb1
parent 932 a58cc7936ce7
child 942 66115255ad6f
equal deleted inserted replaced
934:b61e849fe451 935:9ae2b79d3bb1
     1 # HG changeset patch
     1 # HG changeset patch
     2 # Parent  2cb2f829aabd7e3efaa973a0a8cf99aca9605bdc
     2 # Parent  2cae514c05c8836ca5b69884d3a07998a5d53e8b
     3 
     3 
     4 diff --git a/browser/base/content/browser-kde.xul b/browser/base/content/browser-kde.xul
     4 diff --git a/browser/base/content/browser-kde.xul b/browser/base/content/browser-kde.xul
     5 new file mode 100644
     5 new file mode 100644
     6 --- /dev/null
     6 --- /dev/null
     7 +++ b/browser/base/content/browser-kde.xul
     7 +++ b/browser/base/content/browser-kde.xul
     8 @@ -0,0 +1,1200 @@
     8 @@ -0,0 +1,1119 @@
     9 +#filter substitution
     9 +#filter substitution
    10 +<?xml version="1.0"?>
    10 +<?xml version="1.0"?>
    11 +# -*- Mode: HTML -*-
    11 +# -*- Mode: HTML -*-
    12 +#
    12 +#
    13 +# This Source Code Form is subject to the terms of the Mozilla Public
    13 +# This Source Code Form is subject to the terms of the Mozilla Public
   158 +    <panel type="autocomplete-richlistbox"
   158 +    <panel type="autocomplete-richlistbox"
   159 +           id="PopupAutoCompleteRichResult"
   159 +           id="PopupAutoCompleteRichResult"
   160 +           noautofocus="true"
   160 +           noautofocus="true"
   161 +           hidden="true"
   161 +           hidden="true"
   162 +           flip="none"
   162 +           flip="none"
   163 +           level="parent">
   163 +           level="parent"/>
   164 +#ifdef NIGHTLY_BUILD
       
   165 +      <hbox id="urlbar-search-footer" flex="1" align="stretch" pack="end">
       
   166 +        <button id="urlbar-search-settings" label="&changeSearchSettings.button;"
       
   167 +                oncommand="BrowserUITelemetry.countSearchSettingsEvent('urlbar'); openPreferences('paneSearch')"/>
       
   168 +      </hbox>
       
   169 +#endif
       
   170 +    </panel>
       
   171 +
   164 +
   172 +    <!-- for select dropdowns. The menupopup is what shows the list of options,
   165 +    <!-- for select dropdowns. The menupopup is what shows the list of options,
   173 +         and the popuponly menulist makes things like the menuactive attributes
   166 +         and the popuponly menulist makes things like the menuactive attributes
   174 +         work correctly on the menupopup. ContentSelectDropdown expects the
   167 +         work correctly on the menupopup. ContentSelectDropdown expects the
   175 +         popuponly menulist to be its immediate parent. -->
   168 +         popuponly menulist to be its immediate parent. -->
   176 +    <menulist popuponly="true" id="ContentSelectDropdown" hidden="true">
   169 +    <menulist popuponly="true" id="ContentSelectDropdown" hidden="true">
   177 +      <menupopup rolluponmousewheel="true"
   170 +      <menupopup rolluponmousewheel="true"
   178 +                 activateontab="true"
   171 +                 activateontab="true" position="after_start"
   179 +#ifdef XP_WIN
   172 +#ifdef XP_WIN
   180 +                 consumeoutsideclicks="false" ignorekeys="handled"
   173 +                 consumeoutsideclicks="false" ignorekeys="handled"
   181 +#endif
   174 +#endif
   182 +        />
   175 +        />
   183 +    </menulist>
   176 +    </menulist>
   190 +    <panel id="editBookmarkPanel"
   183 +    <panel id="editBookmarkPanel"
   191 +           type="arrow"
   184 +           type="arrow"
   192 +           orient="vertical"
   185 +           orient="vertical"
   193 +           ignorekeys="true"
   186 +           ignorekeys="true"
   194 +           hidden="true"
   187 +           hidden="true"
       
   188 +           tabspecific="true"
   195 +           onpopupshown="StarUI.panelShown(event);"
   189 +           onpopupshown="StarUI.panelShown(event);"
   196 +           aria-labelledby="editBookmarkPanelTitle">
   190 +           aria-labelledby="editBookmarkPanelTitle">
   197 +      <row id="editBookmarkPanelHeader" align="center" hidden="true">
   191 +      <row id="editBookmarkPanelHeader" align="center" hidden="true">
   198 +        <vbox align="center">
   192 +        <vbox align="center">
   199 +          <image id="editBookmarkPanelStarIcon"/>
   193 +          <image id="editBookmarkPanelStarIcon"/>
   283 +                         oncommand="SocialShare.showDirectory()"/>
   277 +                         oncommand="SocialShare.showDirectory()"/>
   284 +        </arrowscrollbox>
   278 +        </arrowscrollbox>
   285 +      </hbox>
   279 +      </hbox>
   286 +      <hbox id="share-container" flex="1"/>
   280 +      <hbox id="share-container" flex="1"/>
   287 +    </panel>
   281 +    </panel>
   288 +
       
   289 +    <panel id="social-notification-panel"
       
   290 +           class="social-panel"
       
   291 +           type="arrow"
       
   292 +           hidden="true"
       
   293 +           noautofocus="true"/>
       
   294 +    <panel id="social-flyout-panel"
       
   295 +           class="social-panel"
       
   296 +           onpopupshown="SocialFlyout.onShown()"
       
   297 +           onpopuphidden="SocialFlyout.onHidden()"
       
   298 +           side="right"
       
   299 +           type="arrow"
       
   300 +           hidden="true"
       
   301 +           flip="slide"
       
   302 +           rolluponmousewheel="true"
       
   303 +           noautofocus="true"
       
   304 +           position="topcenter topright"/>
       
   305 +
   282 +
   306 +    <menupopup id="toolbar-context-menu"
   283 +    <menupopup id="toolbar-context-menu"
   307 +               onpopupshowing="onViewToolbarsPopupShowing(event, document.getElementById('viewToolbarsMenuSeparator'));">
   284 +               onpopupshowing="onViewToolbarsPopupShowing(event, document.getElementById('viewToolbarsMenuSeparator'));">
   308 +      <menuitem oncommand="gCustomizeMode.addToPanel(document.popupNode)"
   285 +      <menuitem oncommand="gCustomizeMode.addToPanel(document.popupNode)"
   309 +                accesskey="&customizeMenu.moveToPanel.accesskey;"
   286 +                accesskey="&customizeMenu.moveToPanel.accesskey;"
   716 +                   onkeypress="gIdentityHandler.handleIdentityButtonEvent(event);"
   693 +                   onkeypress="gIdentityHandler.handleIdentityButtonEvent(event);"
   717 +                   ondragstart="gIdentityHandler.onDragStart(event);">
   694 +                   ondragstart="gIdentityHandler.onDragStart(event);">
   718 +                <image id="identity-icon"
   695 +                <image id="identity-icon"
   719 +                       consumeanchor="identity-box"
   696 +                       consumeanchor="identity-box"
   720 +                       onclick="PageProxyClickHandler(event);"/>
   697 +                       onclick="PageProxyClickHandler(event);"/>
   721 +                <box id="blocked-permissions-container" align="center" tooltiptext="">
   698 +                <image id="sharing-icon" mousethrough="always"/>
   722 +                  <image data-permission-id="geo" class="notification-anchor-icon geo-icon blocked" role="button"
   699 +                <box id="blocked-permissions-container" align="center">
   723 +                         aria-label="&urlbar.geolocationNotificationAnchor.label;"/>
   700 +                  <image data-permission-id="geo" class="blocked-permission-icon geo-icon" role="button"
   724 +                  <image data-permission-id="desktop-notification" class="notification-anchor-icon desktop-notification-icon blocked" role="button"
   701 +                         tooltiptext="&urlbar.geolocationBlocked.tooltip;"/>
   725 +                         aria-label="&urlbar.webNotsNotificationAnchor3.label;"/>
   702 +                  <image data-permission-id="desktop-notification" class="blocked-permission-icon desktop-notification-icon" role="button"
   726 +                  <image data-permission-id="camera" class="notification-anchor-icon camera-icon blocked" role="button"
   703 +                         tooltiptext="&urlbar.webNotificationsBlocked.tooltip;"/>
   727 +                         aria-label="&urlbar.webRTCShareDevicesNotificationAnchor.label;"/>
   704 +                  <image data-permission-id="camera" class="blocked-permission-icon camera-icon" role="button"
   728 +                  <image data-permission-id="indexedDB" class="notification-anchor-icon indexedDB-icon blocked" role="button"
   705 +                         tooltiptext="&urlbar.cameraBlocked.tooltip;"/>
   729 +                         aria-label="&urlbar.indexedDBNotificationAnchor.label;"/>
   706 +                  <image data-permission-id="indexedDB" class="blocked-permission-icon indexedDB-icon" role="button"
   730 +                  <image data-permission-id="microphone" class="notification-anchor-icon microphone-icon blocked" role="button"
   707 +                         tooltiptext="&urlbar.indexedDBBlocked.tooltip;"/>
   731 +                         aria-label="&urlbar.webRTCShareMicrophoneNotificationAnchor.label;"/>
   708 +                  <image data-permission-id="microphone" class="blocked-permission-icon microphone-icon" role="button"
   732 +                  <image data-permission-id="screen" class="notification-anchor-icon screen-icon blocked" role="button"
   709 +                         tooltiptext="&urlbar.microphoneBlocked.tooltip;"/>
   733 +                         aria-label="&urlbar.webRTCShareScreenNotificationAnchor.label;"/>
   710 +                  <image data-permission-id="screen" class="blocked-permission-icon screen-icon" role="button"
   734 +                  <image data-permission-id="pointerLock" class="notification-anchor-icon pointerLock-icon blocked" role="button"
   711 +                         tooltiptext="&urlbar.screenBlocked.tooltip;"/>
   735 +                         aria-label="&urlbar.pointerLockNotificationAnchor.label;"/>
       
   736 +                </box>
   712 +                </box>
   737 +                <box id="notification-popup-box"
   713 +                <box id="notification-popup-box"
   738 +                     hidden="true"
   714 +                     hidden="true"
   739 +                     tooltiptext=""
       
   740 +                     onmouseover="document.getElementById('identity-icon').classList.add('no-hover');"
   715 +                     onmouseover="document.getElementById('identity-icon').classList.add('no-hover');"
   741 +                     onmouseout="document.getElementById('identity-icon').classList.remove('no-hover');"
   716 +                     onmouseout="document.getElementById('identity-icon').classList.remove('no-hover');"
   742 +                     align="center">
   717 +                     align="center">
   743 +                  <image id="default-notification-icon" class="notification-anchor-icon" role="button"
   718 +                  <image id="default-notification-icon" class="notification-anchor-icon" role="button"
   744 +                         aria-label="&urlbar.defaultNotificationAnchor.label;"/>
   719 +                         tooltiptext="&urlbar.defaultNotificationAnchor.tooltip;"/>
   745 +                  <image id="geo-notification-icon" class="notification-anchor-icon geo-icon" role="button"
   720 +                  <image id="geo-notification-icon" class="notification-anchor-icon geo-icon" role="button"
   746 +                         aria-label="&urlbar.geolocationNotificationAnchor.label;"/>
   721 +                         tooltiptext="&urlbar.geolocationNotificationAnchor.tooltip;"/>
   747 +                  <image id="addons-notification-icon" class="notification-anchor-icon install-icon" role="button"
   722 +                  <image id="addons-notification-icon" class="notification-anchor-icon install-icon" role="button"
   748 +                         aria-label="&urlbar.addonsNotificationAnchor.label;"/>
   723 +                         tooltiptext="&urlbar.addonsNotificationAnchor.tooltip;"/>
   749 +                  <image id="indexedDB-notification-icon" class="notification-anchor-icon indexedDB-icon" role="button"
   724 +                  <image id="indexedDB-notification-icon" class="notification-anchor-icon indexedDB-icon" role="button"
   750 +                         aria-label="&urlbar.indexedDBNotificationAnchor.label;"/>
   725 +                         tooltiptext="&urlbar.indexedDBNotificationAnchor.tooltip;"/>
   751 +                  <image id="login-fill-notification-icon" class="notification-anchor-icon login-icon" role="button"
       
   752 +                         aria-label="&urlbar.loginFillNotificationAnchor.label;"/>
       
   753 +                  <image id="password-notification-icon" class="notification-anchor-icon login-icon" role="button"
   726 +                  <image id="password-notification-icon" class="notification-anchor-icon login-icon" role="button"
   754 +                         aria-label="&urlbar.passwordNotificationAnchor.label;"/>
   727 +                         tooltiptext="&urlbar.passwordNotificationAnchor.tooltip;"/>
   755 +                  <image id="plugins-notification-icon" class="notification-anchor-icon plugin-icon" role="button"
   728 +                  <image id="plugins-notification-icon" class="notification-anchor-icon plugin-icon" role="button"
   756 +                         aria-label="&urlbar.pluginsNotificationAnchor.label;"/>
   729 +                         tooltiptext="&urlbar.pluginsNotificationAnchor.tooltip;"/>
   757 +                  <image id="web-notifications-notification-icon" class="notification-anchor-icon desktop-notification-icon" role="button"
   730 +                  <image id="web-notifications-notification-icon" class="notification-anchor-icon desktop-notification-icon" role="button"
   758 +                         aria-label="&urlbar.webNotsNotificationAnchor3.label;"/>
   731 +                         tooltiptext="&urlbar.webNotificationAnchor.tooltip;"/>
   759 +                  <image id="webRTC-shareDevices-notification-icon" class="notification-anchor-icon camera-icon" role="button"
   732 +                  <image id="webRTC-shareDevices-notification-icon" class="notification-anchor-icon camera-icon" role="button"
   760 +                         aria-label="&urlbar.webRTCShareDevicesNotificationAnchor.label;"/>
   733 +                         tooltiptext="&urlbar.webRTCShareDevicesNotificationAnchor.tooltip;"/>
   761 +                  <image id="webRTC-sharingDevices-notification-icon" class="notification-anchor-icon camera-icon in-use" role="button"
       
   762 +                         aria-label="&urlbar.webRTCSharingDevicesNotificationAnchor.label;"/>
       
   763 +                  <image id="webRTC-shareMicrophone-notification-icon" class="notification-anchor-icon microphone-icon" role="button"
   734 +                  <image id="webRTC-shareMicrophone-notification-icon" class="notification-anchor-icon microphone-icon" role="button"
   764 +                         aria-label="&urlbar.webRTCShareMicrophoneNotificationAnchor.label;"/>
   735 +                         tooltiptext="&urlbar.webRTCShareMicrophoneNotificationAnchor.tooltip;"/>
   765 +                  <image id="webRTC-sharingMicrophone-notification-icon" class="notification-anchor-icon microphone-icon in-use" role="button"
       
   766 +                         aria-label="&urlbar.webRTCSharingMicrophoneNotificationAnchor.label;"/>
       
   767 +                  <image id="webRTC-shareScreen-notification-icon" class="notification-anchor-icon screen-icon" role="button"
   736 +                  <image id="webRTC-shareScreen-notification-icon" class="notification-anchor-icon screen-icon" role="button"
   768 +                         aria-label="&urlbar.webRTCShareScreenNotificationAnchor.label;"/>
   737 +                         tooltiptext="&urlbar.webRTCShareScreenNotificationAnchor.tooltip;"/>
   769 +                  <image id="webRTC-sharingScreen-notification-icon" class="notification-anchor-icon screen-icon in-use" role="button"
       
   770 +                         aria-label="&urlbar.webRTCSharingScreenNotificationAnchor.label;"/>
       
   771 +                  <image id="pointerLock-notification-icon" class="notification-anchor-icon pointerLock-icon" role="button"
       
   772 +                         aria-label="&urlbar.pointerLockNotificationAnchor.label;"/>
       
   773 +                  <image id="servicesInstall-notification-icon" class="notification-anchor-icon service-icon" role="button"
   738 +                  <image id="servicesInstall-notification-icon" class="notification-anchor-icon service-icon" role="button"
   774 +                         aria-label="&urlbar.servicesNotificationAnchor.label;"/>
   739 +                         tooltiptext="&urlbar.servicesNotificationAnchor.tooltip;"/>
   775 +                  <image id="translate-notification-icon" class="notification-anchor-icon translation-icon" role="button"
   740 +                  <image id="translate-notification-icon" class="notification-anchor-icon translation-icon" role="button"
   776 +                         aria-label="&urlbar.translateNotificationAnchor.label;"/>
   741 +                         tooltiptext="&urlbar.translateNotificationAnchor.tooltip;"/>
   777 +                  <image id="translated-notification-icon" class="notification-anchor-icon translation-icon in-use" role="button"
   742 +                  <image id="translated-notification-icon" class="notification-anchor-icon translation-icon in-use" role="button"
   778 +                         aria-label="&urlbar.translatedNotificationAnchor.label;"/>
   743 +                         tooltiptext="&urlbar.translatedNotificationAnchor.tooltip;"/>
   779 +                  <image id="eme-notification-icon" class="notification-anchor-icon drm-icon" role="button"
   744 +                  <image id="eme-notification-icon" class="notification-anchor-icon drm-icon" role="button"
   780 +                         aria-label="&urlbar.emeNotificationAnchor.label;"/>
   745 +                         tooltiptext="&urlbar.emeNotificationAnchor.tooltip;"/>
   781 +                </box>
   746 +                </box>
   782 +                <image id="tracking-protection-icon"/>
   747 +                <image id="tracking-protection-icon"/>
   783 +                <image id="connection-icon"/>
   748 +                <image id="connection-icon"/>
   784 +                <hbox id="identity-icon-labels">
   749 +                <hbox id="identity-icon-labels">
   785 +                  <label id="identity-icon-label" class="plain" flex="1"/>
   750 +                  <label id="identity-icon-label" class="plain" flex="1"/>
   797 +                       onclick="gPopupBlockerObserver.onReportButtonClick(event);"/>
   762 +                       onclick="gPopupBlockerObserver.onReportButtonClick(event);"/>
   798 +                <image id="reader-mode-button"
   763 +                <image id="reader-mode-button"
   799 +                       class="urlbar-icon"
   764 +                       class="urlbar-icon"
   800 +                       hidden="true"
   765 +                       hidden="true"
   801 +                       onclick="ReaderParent.buttonClick(event);"/>
   766 +                       onclick="ReaderParent.buttonClick(event);"/>
       
   767 +                <toolbarbutton id="urlbar-zoom-button"
       
   768 +                       onclick="FullZoom.reset();"
       
   769 +                       tooltiptext="&urlbar.zoomReset.tooltip;"
       
   770 +                       hidden="true"/>
   802 +              </hbox>
   771 +              </hbox>
   803 +              <hbox id="userContext-icons" hidden="true">
   772 +              <hbox id="userContext-icons" hidden="true">
   804 +                <label id="userContext-label"/>
   773 +                <label id="userContext-label"/>
   805 +                <image id="userContext-indicator"/>
   774 +                <image id="userContext-indicator"/>
   806 +              </hbox>
   775 +              </hbox>
  1078 +        <sidebarheader id="sidebar-header" align="center">
  1047 +        <sidebarheader id="sidebar-header" align="center">
  1079 +          <label id="sidebar-title" persist="value" flex="1" crop="end" control="sidebar"/>
  1048 +          <label id="sidebar-title" persist="value" flex="1" crop="end" control="sidebar"/>
  1080 +          <image id="sidebar-throbber"/>
  1049 +          <image id="sidebar-throbber"/>
  1081 +          <toolbarbutton class="close-icon tabbable" tooltiptext="&sidebarCloseButton.tooltip;" oncommand="SidebarUI.hide();"/>
  1050 +          <toolbarbutton class="close-icon tabbable" tooltiptext="&sidebarCloseButton.tooltip;" oncommand="SidebarUI.hide();"/>
  1082 +        </sidebarheader>
  1051 +        </sidebarheader>
  1083 +        <browser id="sidebar" flex="1" autoscroll="false" disablehistory="true"
  1052 +        <browser id="sidebar" flex="1" autoscroll="false" disablehistory="true" disablefullscreen="true"
  1084 +                  style="min-width: 14em; width: 18em; max-width: 36em;" tooltip="aHTMLTooltip"/>
  1053 +                  style="min-width: 14em; width: 18em; max-width: 36em;" tooltip="aHTMLTooltip"/>
  1085 +      </vbox>
  1054 +      </vbox>
  1086 +
  1055 +
  1087 +      <splitter id="sidebar-splitter" class="chromeclass-extrachrome sidebar-splitter" hidden="true"/>
  1056 +      <splitter id="sidebar-splitter" class="chromeclass-extrachrome sidebar-splitter" hidden="true"/>
  1088 +      <vbox id="appcontent" flex="1">
  1057 +      <vbox id="appcontent" flex="1">
  1091 +                    flex="1" contenttooltip="aHTMLTooltip"
  1060 +                    flex="1" contenttooltip="aHTMLTooltip"
  1092 +                    tabcontainer="tabbrowser-tabs"
  1061 +                    tabcontainer="tabbrowser-tabs"
  1093 +                    contentcontextmenu="contentAreaContextMenu"
  1062 +                    contentcontextmenu="contentAreaContextMenu"
  1094 +                    autocompletepopup="PopupAutoComplete"
  1063 +                    autocompletepopup="PopupAutoComplete"
  1095 +                    selectmenulist="ContentSelectDropdown"/>
  1064 +                    selectmenulist="ContentSelectDropdown"/>
  1096 +        <chatbar id="pinnedchats" layer="true" mousethrough="always" hidden="true"/>
       
  1097 +      </vbox>
       
  1098 +      <splitter id="social-sidebar-splitter"
       
  1099 +                class="chromeclass-extrachrome sidebar-splitter"
       
  1100 +                observes="socialSidebarBroadcaster"/>
       
  1101 +      <vbox id="social-sidebar-box"
       
  1102 +            class="chromeclass-extrachrome"
       
  1103 +            observes="socialSidebarBroadcaster"
       
  1104 +            persist="width">
       
  1105 +
       
  1106 +        <sidebarheader id="social-sidebar-header" class="sidebar-header" align="center">
       
  1107 +          <image id="social-sidebar-favico"/>
       
  1108 +          <label id="social-sidebar-title" class="sidebar-title" persist="value" flex="1" crop="end" control="sidebar"/>
       
  1109 +          <toolbarbutton id="social-sidebar-button"
       
  1110 +                         class="toolbarbutton-1"
       
  1111 +                         type="menu">
       
  1112 +            <menupopup id="social-statusarea-popup" position="after_end">
       
  1113 +              <menuitem class="social-toggle-sidebar-menuitem"
       
  1114 +                        type="checkbox"
       
  1115 +                        autocheck="false"
       
  1116 +                        command="Social:ToggleSidebar"
       
  1117 +                        label="&social.toggleSidebar.label;"
       
  1118 +                        accesskey="&social.toggleSidebar.accesskey;"/>
       
  1119 +              <menuitem class="social-toggle-notifications-menuitem"
       
  1120 +                        type="checkbox"
       
  1121 +                        autocheck="false"
       
  1122 +                        command="Social:ToggleNotifications"
       
  1123 +                        label="&social.toggleNotifications.label;"
       
  1124 +                        accesskey="&social.toggleNotifications.accesskey;"/>
       
  1125 +              <menuseparator/>
       
  1126 +              <menuseparator class="social-provider-menu" hidden="true"/>
       
  1127 +              <menuitem class="social-addons-menuitem" command="Social:Addons"
       
  1128 +                        label="&social.addons.label;"/>
       
  1129 +              <menuitem label="&social.learnMore.label;"
       
  1130 +                        accesskey="&social.learnMore.accesskey;"
       
  1131 +                        oncommand="SocialUI.showLearnMore();"/>
       
  1132 +            </menupopup>
       
  1133 +          </toolbarbutton>
       
  1134 +        </sidebarheader>
       
  1135 +
       
  1136 +        <browser id="social-sidebar-browser"
       
  1137 +                 type="content"
       
  1138 +                 context="contentAreaContextMenu"
       
  1139 +                 message="true"
       
  1140 +                 messagemanagergroup="social"
       
  1141 +                 disableglobalhistory="true"
       
  1142 +                 tooltip="aHTMLTooltip"
       
  1143 +                 popupnotificationanchor="social-sidebar-favico"
       
  1144 +                 flex="1"
       
  1145 +                 style="min-width: 14em; width: 18em; max-width: 36em;"/>
       
  1146 +      </vbox>
  1065 +      </vbox>
  1147 +      <vbox id="browser-border-end" hidden="true" layer="true"/>
  1066 +      <vbox id="browser-border-end" hidden="true" layer="true"/>
  1148 +    </hbox>
  1067 +    </hbox>
  1149 +#include ../../components/customizableui/content/customizeMode.inc.xul
  1068 +#include ../../components/customizableui/content/customizeMode.inc.xul
  1150 +  </deck>
  1069 +  </deck>
  1289      { &kNS_SHELLSERVICE_CID, false, nullptr, nsMacShellServiceConstructor },
  1208      { &kNS_SHELLSERVICE_CID, false, nullptr, nsMacShellServiceConstructor },
  1290  #endif
  1209  #endif
  1291 diff --git a/browser/components/preferences/in-content/main.js b/browser/components/preferences/in-content/main.js
  1210 diff --git a/browser/components/preferences/in-content/main.js b/browser/components/preferences/in-content/main.js
  1292 --- a/browser/components/preferences/in-content/main.js
  1211 --- a/browser/components/preferences/in-content/main.js
  1293 +++ b/browser/components/preferences/in-content/main.js
  1212 +++ b/browser/components/preferences/in-content/main.js
  1294 @@ -23,16 +23,22 @@ var gMainPane = {
  1213 @@ -33,16 +33,22 @@ var gMainPane = {
  1295    init: function ()
  1214        if (AppConstants.platform == "win") {
  1296    {
  1215          // In Windows 8 we launch the control panel since it's the only
  1297      function setEventListener(aId, aEventType, aCallback)
  1216          // way to get all file type association prefs. So we don't know
  1298      {
  1217          // when the user will select the default.  We refresh here periodically
  1299        document.getElementById(aId)
  1218          // in case the default changes. On other Windows OS's defaults can also
  1300                .addEventListener(aEventType, aCallback.bind(gMainPane));
  1219          // be set while the prefs are open.
  1301      }
  1220          window.setInterval(this.updateSetDefaultBrowser.bind(this), 1000);
  1302  
  1221        }
       
  1222 +
  1303 +    var env = Components.classes["@mozilla.org/process/environment;1"]
  1223 +    var env = Components.classes["@mozilla.org/process/environment;1"]
  1304 +                          .getService(Components.interfaces.nsIEnvironment);
  1224 +                          .getService(Components.interfaces.nsIEnvironment);
  1305 +    var kde_session = 0;
  1225 +    var kde_session = 0;
  1306 +    if (env.get('KDE_FULL_SESSION') == "true")
  1226 +    if (env.get('KDE_FULL_SESSION') == "true")
  1307 +        kde_session = 1;
  1227 +        kde_session = 1;
  1308 +
       
  1309  #ifdef HAVE_SHELL_SERVICE
       
  1310      this.updateSetDefaultBrowser();
       
  1311  #ifdef XP_WIN
       
  1312      // In Windows 8 we launch the control panel since it's the only
       
  1313      // way to get all file type association prefs. So we don't know
       
  1314      // when the user will select the default.  We refresh here periodically
       
  1315      // in case the default changes. On other Windows OS's defaults can also
       
  1316      // be set while the prefs are open.
       
  1317 @@ -703,16 +709,27 @@ var gMainPane = {
       
  1318      let alwaysCheckPref = document.getElementById("browser.shell.checkDefaultBrowser");
       
  1319      alwaysCheckPref.value = true;
       
  1320  
       
  1321      let shellSvc = getShellService();
       
  1322      if (!shellSvc)
       
  1323        return;
       
  1324      try {
       
  1325        shellSvc.setDefaultBrowser(true, false);
       
  1326 +      if (kde_session == 1) {
       
  1327 +        var shellObj = Components.classes["@mozilla.org/file/local;1"]
       
  1328 +          .createInstance(Components.interfaces.nsILocalFile);
       
  1329 +        shellObj.initWithPath("/usr/bin/kwriteconfig");
       
  1330 +        var process = Components.classes["@mozilla.org/process/util;1"]
       
  1331 +          .createInstance(Components.interfaces.nsIProcess);
       
  1332 +        process.init(shellObj);
       
  1333 +        var args = ["--file", "kdeglobals", "--group", "General", "--key",
       
  1334 +            "BrowserApplication", "firefox"];
       
  1335 +        process.run(false, args, args.length);
       
  1336 +      }
       
  1337      } catch (ex) {
       
  1338        Cu.reportError(ex);
       
  1339        return;
       
  1340      }
  1228      }
  1341  
  1229  
  1342      let selectedIndex = shellSvc.isDefaultBrowser(false, true) ? 1 : 0;
  1230      // set up the "use current page" label-changing listener
  1343      document.getElementById("setDefaultPane").selectedIndex = selectedIndex;
  1231      this._updateUseCurrentButton();
  1344    }
  1232      window.addEventListener("focus", this._updateUseCurrentButton.bind(this), false);
       
  1233  
       
  1234      this.updateBrowserStartupLastSession();
       
  1235  
       
  1236 @@ -704,16 +710,27 @@ var gMainPane = {
       
  1237        let alwaysCheckPref = document.getElementById("browser.shell.checkDefaultBrowser");
       
  1238        alwaysCheckPref.value = true;
       
  1239  
       
  1240        let shellSvc = getShellService();
       
  1241        if (!shellSvc)
       
  1242          return;
       
  1243        try {
       
  1244          shellSvc.setDefaultBrowser(true, false);
       
  1245 +        if (kde_session == 1) {
       
  1246 +          var shellObj = Components.classes["@mozilla.org/file/local;1"]
       
  1247 +            .createInstance(Components.interfaces.nsILocalFile);
       
  1248 +          shellObj.initWithPath("/usr/bin/kwriteconfig");
       
  1249 +          var process = Components.classes["@mozilla.org/process/util;1"]
       
  1250 +            .createInstance(Components.interfaces.nsIProcess);
       
  1251 +          process.init(shellObj);
       
  1252 +          var args = ["--file", "kdeglobals", "--group", "General", "--key",
       
  1253 +              "BrowserApplication", "firefox"];
       
  1254 +          process.run(false, args, args.length);
       
  1255 +        }
       
  1256        } catch (ex) {
       
  1257          Cu.reportError(ex);
       
  1258          return;
       
  1259        }
       
  1260  
       
  1261        let selectedIndex = shellSvc.isDefaultBrowser(false, true) ? 1 : 0;
       
  1262        document.getElementById("setDefaultPane").selectedIndex = selectedIndex;
       
  1263      }
  1345 diff --git a/browser/components/shell/moz.build b/browser/components/shell/moz.build
  1264 diff --git a/browser/components/shell/moz.build b/browser/components/shell/moz.build
  1346 --- a/browser/components/shell/moz.build
  1265 --- a/browser/components/shell/moz.build
  1347 +++ b/browser/components/shell/moz.build
  1266 +++ b/browser/components/shell/moz.build
  1348 @@ -34,16 +34,18 @@ if CONFIG['OS_ARCH'] == 'WINNT':
  1267 @@ -34,16 +34,18 @@ if CONFIG['OS_ARCH'] == 'WINNT':
  1349      ]
  1268      ]
  1655 +
  1574 +
  1656 +#endif // nsunixshellservice_h____
  1575 +#endif // nsunixshellservice_h____
  1657 diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
  1576 diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in
  1658 --- a/browser/installer/package-manifest.in
  1577 --- a/browser/installer/package-manifest.in
  1659 +++ b/browser/installer/package-manifest.in
  1578 +++ b/browser/installer/package-manifest.in
  1660 @@ -674,16 +674,17 @@
  1579 @@ -675,16 +675,17 @@
  1661  @RESPATH@/greprefs.js
  1580  @RESPATH@/greprefs.js
  1662  @RESPATH@/defaults/autoconfig/prefcalls.js
  1581  @RESPATH@/defaults/autoconfig/prefcalls.js
  1663  @RESPATH@/browser/defaults/permissions
  1582  @RESPATH@/browser/defaults/permissions
  1664  
  1583  
  1665  ; Warning: changing the path to channel-prefs.js can cause bugs (Bug 756325)
  1584  ; Warning: changing the path to channel-prefs.js can cause bugs (Bug 756325)