Fixes for SeaMonkey and Thunderbird branch-2.0 tip
authorPhilip Chee <philip.chee@gmail.com>
Mon, 14 Dec 2009 10:29:09 -0800
branchbranch-2.0
changeset 3792c468e058583
parent 378 a827ef1d27ae
Fixes for SeaMonkey and Thunderbird
extension.properties
src/chrome/content/crashreports/sidebar.js
src/chrome/content/crashreports/sidebar.xul
src/chrome/content/messenger.js
src/chrome/content/messengerOverlay.xul
src/chrome/content/suite.js
src/chrome/content/suiteOverlay.xul
src/install.rdf
     1.1 --- a/extension.properties
     1.2 +++ b/extension.properties
     1.3 @@ -1,5 +1,5 @@
     1.4  name=nightly
     1.5  guid={8620c15f-30dc-4dba-a131-7c5d20cf4a29}
     1.6 -version=2.0.3
     1.7 +version=2.0.4pre
     1.8  chromejar=nightly
     1.9  globalxpt=nightly
     2.1 --- a/src/chrome/content/crashreports/sidebar.js
     2.2 +++ b/src/chrome/content/crashreports/sidebar.js
     2.3 @@ -100,12 +100,5 @@ clickCommand: function(event)
     2.4    sidebar.command(tree, event, row.value);
     2.5  },
     2.6  
     2.7 -checkPopup: function(event)
     2.8 -{
     2.9 -  var tree = document.getElementById("tree");
    2.10 -  var type = tree.view.getCellText(tree.currentIndex, tree.columns.getNamedColumn("type"));
    2.11 -  return type=="incident";
    2.12 -},
    2.13 -
    2.14  QueryInterface: XPCOMUtils.generateQI([Ci.nttIBreakpadProgressListener])
    2.15  }
     3.1 --- a/src/chrome/content/crashreports/sidebar.xul
     3.2 +++ b/src/chrome/content/crashreports/sidebar.xul
     3.3 @@ -53,7 +53,7 @@
     3.4    <script src="sidebar.js"/>
     3.5    
     3.6    <popupset>
     3.7 -    <popup id="crashReportContext" onpopupshowing="return sidebar.checkPopup(event)">
     3.8 +    <popup id="crashReportContext">
     3.9        <menuitem oncommand="sidebar.copy(event)" label="&nightly.crashreports.copyid;"/>
    3.10      </popup>
    3.11    </popupset>
     4.1 --- a/src/chrome/content/messenger.js
     4.2 +++ b/src/chrome/content/messenger.js
     4.3 @@ -49,6 +49,10 @@ init: function()
     4.4    }
     4.5    nightly.variables.defaulttitle=brandbundle.getString("brandShortName");
     4.6    nightly.variables.brandname=brandbundle.getString("brandFullName");
     4.7 +  if (!("toggleSidebar" in window)) {
     4.8 +    document.getElementById("viewCrashReportsSidebar").hidden = true;
     4.9 +    document.getElementById("nightly-menu-crashreports-sep").hidden = true;
    4.10 +  }
    4.11  },
    4.12  
    4.13  openURL: function(url, event)
     5.1 --- a/src/chrome/content/messengerOverlay.xul
     5.2 +++ b/src/chrome/content/messengerOverlay.xul
     5.3 @@ -49,15 +49,30 @@
     5.4         
     5.5    <script type="application/x-javascript" src="nightly.js" />
     5.6    <script type="application/x-javascript" src="messenger.js" />
     5.7 -  <script type="application/x-javascript" src="breakpad/breakpad.js" />
     5.8 +  <script type="application/x-javascript" src="crashreports/crashreports.js" />
     5.9    <script type="application/x-javascript" src="chrome://nightly/content/platform.js" />
    5.10  
    5.11 +  <!-- Sidebar -->
    5.12 +  <broadcasterset id="mainBroadcasterSet">
    5.13 +    <broadcaster id="viewCrashReportsSidebar"
    5.14 +                 autoCheck="false"
    5.15 +                 label="&nightly.crashreports.sidebar.title;"
    5.16 +                 type="checkbox"
    5.17 +                 group="sidebar"
    5.18 +                 sidebarurl="chrome://nightly/content/crashreports/sidebar.xul"
    5.19 +                 oncommand="toggleSidebar('viewCrashReportsSidebar');"/>
    5.20 +  </broadcasterset>
    5.21 +
    5.22 +  <menupopup id="viewSidebarMenu">
    5.23 +    <menuitem observes="viewCrashReportsSidebar"/>
    5.24 +  </menupopup>
    5.25 +
    5.26    <toolbarpalette id="MailToolbarPalette">
    5.27      <toolbarbutton id="nightly-tester-enter"
    5.28 -            class="toolbarbutton-1"
    5.29 -            label="&nightly.id.insert.label;"
    5.30 -            tooltiptext="&nightly.id.insert.tooltip;"
    5.31 -            oncommand="nightly.insertTemplate('buildid');"/>
    5.32 +                   class="toolbarbutton-1"
    5.33 +                   label="&nightly.id.insert.label;"
    5.34 +                   tooltiptext="&nightly.id.insert.tooltip;"
    5.35 +                   oncommand="nightly.insertTemplate('buildid');"/>
    5.36    </toolbarpalette>
    5.37  
    5.38    <popupset id="mainPopupSet">
    5.39 @@ -79,7 +94,8 @@
    5.40          <menuseparator/>
    5.41          <menuitem label="&nightly.openprofile.label;" oncommand="nightly.openProfileDir();"/>
    5.42  #include "crashreports/crashreports.inc.xul"
    5.43 -        <menuseparator/>
    5.44 +        <menuitem id="nightly-crashreports-sidebar" observes="viewCrashReportsSidebar"/>
    5.45 +        <menuseparator id="nightly-menu-crashreports-sep"/>
    5.46          <menuitem label="&nightly.leakreporter.label;" oncommand="nightlyApp.detectLeaks(event);"/>
    5.47          <menuseparator/>
    5.48          <menuitem label="&nightly.options.label;" oncommand="nightly.launchOptions();"/>
     6.1 --- a/src/chrome/content/suite.js
     6.2 +++ b/src/chrome/content/suite.js
     6.3 @@ -37,6 +37,8 @@
     6.4  #
     6.5  var nightlyApp = {
     6.6  
     6.7 +storedTitle: document.documentElement.getAttribute("titlemodifier"),
     6.8 +
     6.9  init: function()
    6.10  {
    6.11    var brandbundle = document.getElementById("bundle_brand");
    6.12 @@ -46,6 +48,10 @@ init: function()
    6.13    }
    6.14    nightly.variables.brandname=brandbundle.getString("brandFullName");
    6.15    nightly.variables.defaulttitle=nightlyApp.storedTitle;
    6.16 +  document.getElementById("content").addEventListener("DOMTitleChanged",nightlyApp.titleUpdated,false);
    6.17 +  if (!("toggleSidebar" in window)) {
    6.18 +    document.getElementById("viewCrashReportsSidebar").hidden = true;
    6.19 +  }
    6.20  },
    6.21  
    6.22  detectLeaks: function(event)
    6.23 @@ -55,19 +61,41 @@ detectLeaks: function(event)
    6.24  
    6.25  openURL: function(url, event)
    6.26  {
    6.27 -  openTopWin(url);
    6.28 +  if ("openUILink" in window)
    6.29 +    openUILink(url, event, false, true);
    6.30 +  else
    6.31 +    openTopWin(url);
    6.32 +},
    6.33 +
    6.34 +titleUpdated: function()
    6.35 +{
    6.36 +  gBrowser.updateTitlebar();
    6.37 +},
    6.38 +
    6.39 +updateTitlebar: function()
    6.40 +{
    6.41 +  window.setTimeout("gBrowser.updateTitlebar();", 50);
    6.42  },
    6.43  
    6.44  setCustomTitle: function(title)
    6.45  {
    6.46 +  document.documentElement.setAttribute("titlemodifier",title);
    6.47 +  document.documentElement.setAttribute("titlemenuseparator"," - ");
    6.48 +  nightlyApp.updateTitlebar();
    6.49  },
    6.50  
    6.51  setBlankTitle: function()
    6.52  {
    6.53 +  document.documentElement.setAttribute("titlemodifier","");
    6.54 +  document.documentElement.setAttribute("titlemenuseparator","");
    6.55 +  nightlyApp.updateTitlebar();
    6.56  },
    6.57  
    6.58  setStandardTitle: function()
    6.59  {
    6.60 +  document.documentElement.setAttribute("titlemodifier",nightlyApp.storedTitle);
    6.61 +  document.documentElement.setAttribute("titlemenuseparator"," - ");
    6.62 +  nightlyApp.updateTitlebar();
    6.63  }
    6.64  
    6.65  }
     7.1 --- a/src/chrome/content/suiteOverlay.xul
     7.2 +++ b/src/chrome/content/suiteOverlay.xul
     7.3 @@ -49,7 +49,8 @@
     7.4         
     7.5    <script type="application/x-javascript" src="nightly.js" />
     7.6    <script type="application/x-javascript" src="suite.js" />
     7.7 -  <script type="application/x-javascript" src="breakpad/breakpad.js" />
     7.8 +  <script type="application/x-javascript" src="session/session.js" />
     7.9 +  <script type="application/x-javascript" src="crashreports/crashreports.js" />
    7.10    <script type="application/x-javascript" src="chrome://nightly/content/platform.js" />
    7.11  
    7.12    <!-- Sidebar -->
    7.13 @@ -59,14 +60,26 @@
    7.14            label="&nightly.crashreports.sidebar.title;"
    7.15            type="checkbox"
    7.16            group="sidebar"
    7.17 -          sidebarurl="chrome://nightly/content/breakpad/sidebar.xul"
    7.18 +          sidebarurl="chrome://nightly/content/crashreports/sidebar.xul"
    7.19            oncommand="toggleSidebar('viewCrashReportsSidebar');"/>
    7.20    </broadcasterset>
    7.21  
    7.22 +  <menupopup id="viewSidebarMenu">
    7.23 +    <menuitem observes="viewCrashReportsSidebar"/>
    7.24 +  </menupopup>
    7.25 +
    7.26    <keyset id="navKeys">
    7.27      <key key="s" modifiers="accel,shift" oncommand="nightly.getScreenshot();"/>
    7.28    </keyset>
    7.29  
    7.30 +  <toolbarpalette id="BrowserToolbarPalette">
    7.31 +    <toolbarbutton id="nightly-tester-enter"
    7.32 +            class="toolbarbutton-1"
    7.33 +            label="&nightly.id.insert.label;"
    7.34 +            tooltiptext="&nightly.id.insert.tooltip;"
    7.35 +            oncommand="nightly.insertTemplate('buildid');"/>
    7.36 +  </toolbarpalette>
    7.37 +
    7.38    <popupset id="mainPopupSet">
    7.39      <tooltip orient="vertical" id="nightly-crashreport-tooltip" onpopupshowing="return crashreports.popupTooltip(event)">
    7.40        <label/>
    7.41 @@ -76,6 +89,10 @@
    7.42      </popup>
    7.43    </popupset>
    7.44    
    7.45 +  <menupopup id="goPopup">
    7.46 +    <menuitem id="nightly-session-restore" label="&nightly.session.restore;" insertbefore="endUndoSeparator" oncommand="session.restore()"/>
    7.47 +  </menupopup>
    7.48 +
    7.49    <menupopup id="taskPopup">
    7.50      <menu id="nightly-menu" label="Nightly Tester Tools" insertbefore="sep_switchprofile">
    7.51        <menupopup onpopupshowing="nightly.menuPopup(event,this);">
    7.52 @@ -86,9 +103,9 @@
    7.53          <menuseparator/>
    7.54          <menuitem label="&nightly.openprofile.label;" oncommand="nightly.openProfileDir();"/>
    7.55  #include "crashreports/crashreports.inc.xul"
    7.56 -        <menuitem id="nightly-breakpad-sidebar" observes="viewBreakpadSidebar"/>
    7.57 +        <menuitem id="nightly-crashreports-sidebar" observes="viewCrashReportsSidebar"/>
    7.58          <menuseparator/>
    7.59 -        <menuitem label="&nightly.leakreporter.label;" oncommand="nightlyApp.detectLeaks(event);"/>
    7.60 +        <menuitem label="&nightly.leakreporter.label;" oncommand="nightlyApp.detectLeaks(event);" onclick="checkForMiddleClick(this, event);"/>
    7.61          <menuseparator/>
    7.62          <menuitem label="&nightly.options.label;" oncommand="nightly.launchOptions();"/>
    7.63        </menupopup>
     8.1 --- a/src/install.rdf
     8.2 +++ b/src/install.rdf
     8.3 @@ -77,7 +77,7 @@
     8.4        <Description>
     8.5          <em:id>{92650c4d-4b8e-4d2a-b7eb-24ecf4f6b63a}</em:id>
     8.6          <em:minVersion>2.0a1pre</em:minVersion>
     8.7 -        <em:maxVersion>2.0b1pre</em:maxVersion>
     8.8 +        <em:maxVersion>2.0.*</em:maxVersion>
     8.9        </Description>
    8.10      </em:targetApplication>
    8.11  	
    8.12 @@ -99,6 +99,7 @@
    8.13      <em:contributor>Steve England (QA)</em:contributor>
    8.14      <em:contributor>Stephen Lau (Songbird port)</em:contributor>
    8.15      <em:contributor>FAMFAMFAM (Some icons)</em:contributor>
    8.16 +    <em:contributor>Philip Chee (SeaMonkey and Thunderbird fixes)</em:contributor>
    8.17  
    8.18      <em:iconURL>chrome://nightly/content/brand/icon.png</em:iconURL>
    8.19      <em:optionsURL>chrome://nightly/content/options/options.xul</em:optionsURL>