Changeset 372

Show
Ignore:
Timestamp:
04/28/08 20:29:38 (3 weeks ago)
Author:
t-bone
Message:
  • Wire up the new UI, in the net error page.
Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • extension/resurrect/content/netError.xhtml

    r371 r372  
    291291 
    292292      <fieldset id='resurrect'> 
    293         <legend> 
     293        <!-- fake elements so getElementById() doesn't die --> 
     294        <div id='targetTab' style='display: none;'></div> 
     295        <div id='targetWin' style='display: none;'></div> 
     296 
     297        <legend> 
    294298          <img src='chrome://resurrect/skin/tb-icon-small.png' /> 
    295299          &resurrect.thispage; 
  • extension/resurrect/content/resurrect-select-mirror.xul

    r371 r372  
    2424 
    2525    <label value='&resurrect.fromMirror;' /> 
     26    <vbox id='resurrect'> 
    2627    <button 
    2728        value='coralcdn' label=' &resurrect.coralcdn;' 
     
    4849        image='chrome://resurrect/skin/cacheicons/msn.png' 
    4950    /> 
     51    </vbox> 
    5052 
    5153</vbox> 
  • extension/resurrect/content/resurrect.js

    r309 r372  
    11var resurrect={ 
    2  
    3     mirrors:[ 
    4         {name:'CoralCDN', id:'coralcdn'}, 
    5         {name:'Google Cache', id:'google'}, 
    6         {name:'The Internet Archive', id:'archive'}, 
    7         {name:'MSN Cache', id:'msn'}, 
    8         {name:'Yahoo! Cache', id:'yahoo'} 
    9     ], 
    102 
    113    originalDoc:null, 
     
    2012            .addEventListener('popupshowing', resurrect.toggleContextItems, false); 
    2113 
    22         window.document.getElementById("appcontent").addEventListener( 
     14        window.document.getElementById('appcontent').addEventListener( 
    2315            'DOMContentLoaded', resurrect.attachClickEvent, false 
    2416        ); 
     
    4436        var contentDoc=event.target; 
    4537        if (contentDoc.documentURI.match(/^about:neterror/)) { 
    46             contentDoc.getElementById('mirror').addEventListener( 
     38            contentDoc.getElementById('resurrect').addEventListener( 
    4739                'click', resurrect.clickedHtml, false 
    4840            ); 
    49             try { 
    50                 // because this button isn't always there 
    51                 contentDoc.getElementById('mirrorSelect').addEventListener( 
    52                     'click', resurrect.clickedHtml, false 
    53                 ); 
    54             } catch (e) { } 
    5541        } 
    5642    }, 
     
    8167            selectedTab=aTab; 
    8268            mTabBox.selectedPanel=getBrowserForTab(mCurrentTab).parentNode; 
    83             mCurrentTab.selected = true; 
     69            mCurrentTab.selected=true; 
    8470            updateCurrentBrowser(); 
    8571        } 
     
    10187    clickedHtml:function(event) { 
    10288        return resurrect.clickHandler( 
     89            event, 
    10390            event.target.ownerDocument, 
    10491            event.target.ownerDocument, 
     
    10996    clickedXul:function(event) { 
    11097        return resurrect.clickHandler( 
     98            event, 
    11199            event.target.ownerDocument, 
    112100            window.arguments[0], 
     
    115103    }, 
    116104 
    117     clickHandler:function(ownerDoc, contentDoc, rawUrl) { 
    118         // Check, set, disabled status. 
    119         var listbox=ownerDoc.getElementById('mirror'); 
    120  
    121         if (-1==listbox.selectedIndex) return false; 
    122         if (resurrect.disabled) return false; 
    123  
     105    clickHandler:function(event, ownerDoc, contentDoc, rawUrl) { 
     106        if (resurrect.disabled) return; 
    124107        resurrect.disabled=true; 
    125         listbox.setAttribute('disabled', true); 
    126  
    127         var button=contentDoc.getElementById('mirrorSelect'); 
    128         if (!button && ownerDoc.documentElement.getButton) { 
    129             button=ownerDoc.documentElement.getButton('accept'); 
    130         } 
    131         button.setAttribute('disabled', true); 
    132108 
    133109        // Run the actual code.  After timeout for UI repaint. 
    134         setTimeout(resurrect.selectMirror, 1, ownerDoc, contentDoc, rawUrl); 
    135     }, 
    136  
    137     selectMirror:function(ownerDoc, contentDoc, rawUrl) { 
    138         var listbox=ownerDoc.getElementById('mirror'); 
    139  
     110        setTimeout( 
     111            resurrect.selectMirror, 1, 
     112            event.target.getAttribute('value'), ownerDoc, contentDoc, rawUrl 
     113        ); 
     114    }, 
     115 
     116    selectMirror:function(mirror, ownerDoc, contentDoc, rawUrl) { 
    140117        var gotoUrl=null; 
    141118        var encUrl=encodeURIComponent(rawUrl); 
    142119 
    143         switch (listbox.value) { 
     120        switch (mirror) { 
    144121        case 'coralcdn': 
    145122            gotoUrl=rawUrl.substring(0, 8)+ 
     
    213190                contentDoc.location.assign(gotoUrl); 
    214191            } 
    215         } 
    216  
    217         if ('chrome://resurrect/content/resurrect-select-mirror.xul'==window.document.location) { 
    218             // setTimeout avoids errors because the window is gone 
    219             setTimeout(window.close, 0); 
     192 
     193            if ('chrome://resurrect/content/resurrect-select-mirror.xul'==window.document.location) { 
     194                // setTimeout avoids errors because the window is gone 
     195                setTimeout(window.close, 0); 
     196            } 
     197        } else { 
     198            resurrect.disabled=false; 
    220199        } 
    221200    } 
    222  
    223 // // // // // // // // // // // // // // // // // // // // // // // // // // // 
    224201 
    225202}//end var resurrect 
  • extension/resurrect/locale/en-US/overlay.dtd

    r205 r372  
    1010<!ENTITY resurrect.yahoo "Yahoo! Cache"> 
    1111<!ENTITY resurrect.archive "The Internet Archive"> 
    12 <!ENTITY resurrect.msn "MSN Cache"> 
     12<!ENTITY resurrect.msn "Live Search (MSN) Cache"> 
    1313<!ENTITY resurrect.inCurrTab "In the current tab/window"> 
    1414<!ENTITY resurrect.inNewTab "In a new tab"> 
  • extension/resurrect/skin/netError.css

    r371 r372  
    11div#errorPageContainer { 
    2     padding-right: 17em; 
    3     max-width: 47em; 
     2    padding-right: 20em; 
     3    max-width: 45em; 
    44} 
    55