Grammalecte  Hex Artifact Content

Artifact 94f44e1159bdfe2b13ffb6808423d79241aad820e5d27383e96c8a7d125538f8:


0000: 2f 2f 20 4a 61 76 61 53 63 72 69 70 74 0a 0a 63  // JavaScript..c
0010: 6f 6e 73 74 20 43 63 20 3d 20 43 6f 6d 70 6f 6e  onst Cc = Compon
0020: 65 6e 74 73 2e 63 6c 61 73 73 65 73 3b 0a 63 6f  ents.classes;.co
0030: 6e 73 74 20 43 69 20 3d 20 43 6f 6d 70 6f 6e 65  nst Ci = Compone
0040: 6e 74 73 2e 69 6e 74 65 72 66 61 63 65 73 3b 0a  nts.interfaces;.
0050: 2f 2f 63 6f 6e 73 74 20 43 75 20 3d 20 43 6f 6d  //const Cu = Com
0060: 70 6f 6e 65 6e 74 73 2e 75 74 69 6c 73 3b 0a 0a  ponents.utils;..
0070: 0a 66 75 6e 63 74 69 6f 6e 20 6f 70 65 6e 49 6e  .function openIn
0080: 42 72 6f 77 73 65 72 55 52 4c 20 28 73 55 52 4c  BrowserURL (sURL
0090: 29 20 7b 0a 20 20 20 20 2f 2f 20 6d 65 74 68 6f  ) {.    // metho
00a0: 64 20 66 6f 75 6e 64 20 69 6e 20 53 33 2e 47 6f  d found in S3.Go
00b0: 6f 67 6c 65 2e 54 72 61 6e 73 6c 61 74 6f 72 0a  ogle.Translator.
00c0: 20 20 20 20 74 72 79 20 7b 0a 20 20 20 20 20 20      try {.      
00d0: 20 20 6f 70 65 6e 55 52 4c 28 73 55 52 4c 29 3b    openURL(sURL);
00e0: 0a 20 20 20 20 20 20 20 20 2f 2f 20 57 6f 72 6b  .        // Work
00f0: 73 20 69 6e 20 6f 76 65 72 6c 61 79 2e 6a 73 2c  s in overlay.js,
0100: 20 62 75 74 20 6e 6f 74 20 68 65 72 65 e2 80 a6   but not here...
0110: 20 53 65 65 6d 73 20 74 68 65 72 65 20 69 73 20   Seems there is 
0120: 6e 6f 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e  no documentation
0130: 20 61 76 61 69 6c 61 62 6c 65 20 61 62 6f 75 74   available about
0140: 20 74 68 69 73 20 66 65 61 74 75 72 65 20 6f 6e   this feature on
0150: 20 4d 6f 7a 69 6c 6c 61 2e 6f 72 67 0a 20 20 20   Mozilla.org.   
0160: 20 7d 0a 20 20 20 20 63 61 74 63 68 20 28 65 29   }.    catch (e)
0170: 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 6f   {.        conso
0180: 6c 65 2e 65 72 72 6f 72 28 65 29 3b 0a 20 20 20  le.error(e);.   
0190: 20 20 20 20 20 2f 2f 43 75 2e 72 65 70 6f 72 74       //Cu.report
01a0: 45 72 72 6f 72 28 65 29 3b 0a 20 20 20 20 7d 0a  Error(e);.    }.
01b0: 7d 0a 0a 66 75 6e 63 74 69 6f 6e 20 6f 70 65 6e  }..function open
01c0: 49 6e 54 61 62 55 52 4c 20 28 73 55 52 4c 29 20  InTabURL (sURL) 
01d0: 7b 0a 20 20 20 20 2f 2f 20 6d 65 74 68 6f 64 20  {.    // method 
01e0: 66 6f 75 6e 64 20 69 6e 20 53 33 2e 47 6f 6f 67  found in S3.Goog
01f0: 6c 65 2e 54 72 61 6e 73 6c 61 74 6f 72 0a 20 20  le.Translator.  
0200: 20 20 74 72 79 20 7b 0a 20 20 20 20 20 20 20 20    try {.        
0210: 6c 65 74 20 78 57 4d 20 3d 20 43 63 5b 22 40 6d  let xWM = Cc["@m
0220: 6f 7a 69 6c 6c 61 2e 6f 72 67 2f 61 70 70 73 68  ozilla.org/appsh
0230: 65 6c 6c 2f 77 69 6e 64 6f 77 2d 6d 65 64 69 61  ell/window-media
0240: 74 6f 72 3b 31 22 5d 2e 67 65 74 53 65 72 76 69  tor;1"].getServi
0250: 63 65 28 43 69 2e 6e 73 49 57 69 6e 64 6f 77 4d  ce(Ci.nsIWindowM
0260: 65 64 69 61 74 6f 72 29 3b 0a 20 20 20 20 20 20  ediator);.      
0270: 20 20 6c 65 74 20 78 57 69 6e 20 3d 20 78 57 4d    let xWin = xWM
0280: 2e 67 65 74 4d 6f 73 74 52 65 63 65 6e 74 57 69  .getMostRecentWi
0290: 6e 64 6f 77 28 22 6d 61 69 6c 3a 33 70 61 6e 65  ndow("mail:3pane
02a0: 22 29 3b 0a 20 20 20 20 20 20 20 20 6c 65 74 20  ");.        let 
02b0: 78 54 61 62 6d 61 69 6c 20 3d 20 78 57 69 6e 2e  xTabmail = xWin.
02c0: 64 6f 63 75 6d 65 6e 74 2e 67 65 74 45 6c 65 6d  document.getElem
02d0: 65 6e 74 42 79 49 64 28 27 74 61 62 6d 61 69 6c  entById('tabmail
02e0: 27 29 3b 0a 20 20 20 20 20 20 20 20 78 57 69 6e  ');.        xWin
02f0: 2e 66 6f 63 75 73 28 29 3b 0a 20 20 20 20 20 20  .focus();.      
0300: 20 20 69 66 20 28 78 54 61 62 6d 61 69 6c 29 20    if (xTabmail) 
0310: 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 78 54  {.            xT
0320: 61 62 6d 61 69 6c 2e 6f 70 65 6e 54 61 62 28 27  abmail.openTab('
0330: 63 6f 6e 74 65 6e 74 54 61 62 27 2c 20 7b 20 63  contentTab', { c
0340: 6f 6e 74 65 6e 74 50 61 67 65 3a 20 73 55 52 4c  ontentPage: sURL
0350: 20 7d 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20   });.        }. 
0360: 20 20 20 7d 0a 20 20 20 20 63 61 74 63 68 20 28     }.    catch (
0370: 65 29 20 7b 0a 20 20 20 20 20 20 20 20 63 6f 6e  e) {.        con
0380: 73 6f 6c 65 2e 65 72 72 6f 72 28 65 29 3b 0a 20  sole.error(e);. 
0390: 20 20 20 20 20 20 20 2f 2f 43 75 2e 72 65 70 6f         //Cu.repo
03a0: 72 74 45 72 72 6f 72 28 65 29 3b 0a 20 20 20 20  rtError(e);.    
03b0: 7d 0a 7d 0a                                      }.}.