Changeset 344
- Timestamp:
- 01/13/08 19:31:14 (10 months ago)
- Location:
- extension/tubelube/content
- Files:
-
- 10 moved
-
tubelube-config.js (moved) (moved from extension/tubelube/content/kabl-config.js) (1 diff)
-
tubelube-config.xul (moved) (moved from extension/tubelube/content/kabl-config.xul) (1 diff)
-
tubelube-inserter-bindings.xml (moved) (moved from extension/tubelube/content/kabl-inserter-bindings.xml)
-
tubelube-inserter.js (moved) (moved from extension/tubelube/content/kabl-inserter.js) (7 diffs)
-
tubelube-overlay.js (moved) (moved from extension/tubelube/content/kabl-overlay.js)
-
tubelube-overlay.xul (moved) (moved from extension/tubelube/content/kabl-overlay.xul) (3 diffs)
-
tubelube-parse.js (moved) (moved from extension/tubelube/content/kabl-parse.js)
-
tubelube-policy.js (moved) (moved from extension/tubelube/content/kabl-policy.js)
-
tubelube-pref.js (moved) (moved from extension/tubelube/content/kabl-pref.js)
-
tubelube-prefobs.js (moved) (moved from extension/tubelube/content/kabl-prefobs.js)
Legend:
- Unmodified
- Added
- Removed
-
extension/tubelube/content/tubelube-config.js
r251 r344 32 32 // ***** END LICENSE BLOCK ***** 33 33 34 function gKablConfigOpen() {35 document.getElementById('enabled').setAttribute('checked', gKablEnabled);36 37 var textbox=document.getElementById('rules');38 textbox.value=gKablRules;39 textbox.selectionStart=0;40 textbox.selectionEnd=0;41 textbox.focus();42 }43 44 function gKablConfigAccept() {45 var parseOk=gKablCheckConfig();46 47 if (!parseOk) {48 return confirm('Parse error.\nReally save rules?');49 }50 51 // extract pref vals52 gKablEnabled=document.getElementById('enabled').checked;53 gKablRules=document.getElementById('rules').value;54 55 gKablSave();56 57 return true;58 }59 60 function gKablCheckConfig() {61 var textbox=document.getElementById('rules');62 63 var parsed=gKablRulesObj.parse(textbox.value);64 65 if (parsed instanceof Array) {66 textbox.selectionStart=parseInt(parsed[0]);67 textbox.selectionEnd=parseInt(parsed[1]);68 69 gKablSetStatusLabel('err', parsed[2]);70 } else {71 gKablSetStatusLabel('ok');72 }73 74 // return the focus here for continued editing75 textbox.focus();76 77 return !(parsed instanceof Array);78 }79 80 function gKablSetStatusLabel(type, msg) {81 for (label in {'unk':1, 'ok':1, 'err':1}) {82 document.getElementById('status_'+label).setAttribute(83 'hidden', (label!=type)84 );85 }86 87 var errmsg=document.getElementById('status_errmsg');88 if ('err'==type) {89 errmsg.setAttribute('value', msg);90 errmsg.setAttribute('hidden', false);91 } else {92 errmsg.setAttribute('hidden', true);93 }94 }95 96 34 // This function originates from AdBlock Plus, reused under MPL. 97 35 function gKablLoadInBrowser(url) { -
extension/tubelube/content/tubelube-config.xul
r237 r344 1 1 <?xml version='1.0'?> 2 2 <?xml-stylesheet href='chrome://global/skin/global.css' type='text/css'?> 3 <?xml-stylesheet href='chrome://kabl/skin/kabl-config.css' type='text/css'?> 4 <dialog title='Karma Blocker - Configuration' 3 <prefwindow 5 4 xmlns='http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul' 6 buttons='accept,cancel,extra2' 7 8 buttonlabelaccept='Save' 9 buttonlabelcancel='Cancel' 10 buttonlabelextra2='Help' 5 title='Tube Lube Options' 6 type='prefwindow' 7 > 8 <prefpane> 9 <preferences> 10 <preference id='enabled' name='extensions.tubelube.enabled' type='bool'/> 11 </preferences> 11 12 12 onload='return gKablConfigOpen();' 13 ondialogaccept='return gKablConfigAccept();' 14 ondialogcancel='return true;' 15 ondialogextra2='gKablLoadInBrowser("http://trac.arantius.com/wiki/Extensions/KarmaBlocker");' 16 17 id='kabl-config-dialog' 18 persist="screenX screenY width height sizemode" 19 > 20 <script type='application/javascript' src='chrome://kabl/content/kabl-config.js'></script> 21 <script type='application/javascript' src='chrome://kabl/content/kabl-pref.js'></script> 22 <script type='application/javascript' src='chrome://kabl/content/kabl-parse.js'></script> 23 24 <dialogheader title='Karma Blocker' description='Configuration'/> 25 26 <checkbox id='enabled' label='Enabled' /> 27 <textbox id='rules' cols='80' rows='15' multiline='true' flex='1' /> 28 29 <hbox id='status_box' align='center'> 30 <button oncommand='gKablCheckConfig();' label='Status' accesskey='S' /> 31 32 <textbox id='status_line' readonly='readonly' flex='1'> 33 <label id='status_unk' value='Click button to check...' hidden='false' /> 34 <label id='status_ok' value='OK' hidden='true' style='color: green;'/> 35 <label id='status_err' value='Error' hidden='true' style='color: red;' /> 36 <label id='status_errmsg' value='' hidden='true' /> 37 </textbox> 38 39 </hbox> 40 41 </dialog> 13 <vbox> 14 <checkbox label="Enabled" preference="enabled"?> 15 </vbox> 16 </prefpane> 17 </prefwindow> -
extension/tubelube/content/tubelube-inserter.js
r334 r344 42 42 //////////////////////////////////////////////////////////////////////////////// 43 43 44 var gKablInserter={};44 var TubeLubePreLoad={}; 45 45 46 gKablInserter.initialize=function() {47 this.browser=document.getElementById('kablInserterBrowser');48 this.browser.addEventListener('load', gKablInserter.setup, true);46 TubeLubePreLoad.initialize=function() { 47 var browser=document.getElementById('TubeLubePreLoadBrowser'); 48 browser.addEventListener('load', TubeLubePreLoad.setup, true); 49 49 } 50 50 51 gKablInserter.setup=function(event) {52 gKablInserter.addObserver();51 TubeLubePreLoad.setup=function(event) { 52 TubeLubePreLoad.addObserver(); 53 53 } 54 54 55 gKablInserter.shutdown=function() {55 TubeLubePreLoad.shutdown=function() { 56 56 try { 57 57 this.removeObserver(); … … 61 61 //////////////////////////////////////////////////////////////////////////////// 62 62 63 gKablInserter.addObserver=function() {63 TubeLubePreLoad.addObserver=function() { 64 64 var tabBrowser=document.getElementById('content'); 65 tabBrowser.addProgressListener( gKablInserterTabProgressListener,65 tabBrowser.addProgressListener(TubeLubePreLoadTabProgressListener, 66 66 Components.interfaces.nsIWebProgress.NOTIFY_STATE_DOCUMENT); 67 67 … … 72 72 } 73 73 74 gKablInserter.removeObserver=function() {74 TubeLubePreLoad.removeObserver=function() { 75 75 var tabBrowser=document.getElementById('content'); 76 tabBrowser.removeProgressListener( gKablInserterTabProgressListener);76 tabBrowser.removeProgressListener(TubeLubePreLoadTabProgressListener); 77 77 } 78 78 79 79 //////////////////////////////////////////////////////////////////////////////// 80 80 81 gKablInserter.attachToWindow=function(win) {81 TubeLubePreLoad.attachToWindow=function(win) { 82 82 if ('about:blank'==win.location.href) return; 83 83 84 84 var browser=this.getBrowserByWindow(win); 85 85 if (browser && !browser.attachedKablInserter) { 86 browser.addProgressListener( gKablInserterFrameProgressListener,86 browser.addProgressListener(TubeLubePreLoadFrameProgressListener, 87 87 Components.interfaces.nsIWebProgress.NOTIFY_DOCUMENT); 88 88 browser.attachedKablInserter=true; … … 90 90 } 91 91 92 gKablInserter.attachToLoadingWindow=function(win) {92 TubeLubePreLoad.attachToLoadingWindow=function(win) { 93 93 if (!gKablEnabled) return; 94 94 var whereFlag=false; … … 108 108 } 109 109 110 gKablInserter.getBrowserByWindow=function(win) {110 TubeLubePreLoad.getBrowserByWindow=function(win) { 111 111 var tabBrowser=document.getElementById('content'); 112 112 for (var i=0; i<tabBrowser.browsers.length; ++i) { … … 120 120 //////////////////////////////////////////////////////////////////////////////// 121 121 122 function gKablInserterWebProgressListener() {}123 gKablInserterWebProgressListener.prototype={122 function TubeLubePreLoadWebProgressListener() {} 123 TubeLubePreLoadWebProgressListener.prototype={ 124 124 stateIsRequest: false, 125 125 … … 143 143 }; 144 144 145 var gKablInserterTabProgressListener=new gKablInserterWebProgressListener();146 gKablInserterTabProgressListener.onLocationChange=function(progress, request, loc) {145 var TubeLubePreLoadTabProgressListener=new TubeLubePreLoadWebProgressListener(); 146 TubeLubePreLoadTabProgressListener.onLocationChange=function(progress, request, loc) { 147 147 // Only attach to windows that are their own parent - e.g. not frames 148 148 if (progress.DOMWindow.parent==progress.DOMWindow) { 149 gKablInserter.attachToWindow(progress.DOMWindow);149 TubeLubePreLoad.attachToWindow(progress.DOMWindow); 150 150 } 151 151 } 152 152 153 var gKablInserterFrameProgressListener=new gKablInserterWebProgressListener();154 gKablInserterFrameProgressListener.onStateChange=function(progress, request, flag, status) {153 var TubeLubePreLoadFrameProgressListener=new TubeLubePreLoadWebProgressListener(); 154 TubeLubePreLoadFrameProgressListener.onStateChange=function(progress, request, flag, status) { 155 155 // When the load of the top-level page or a frame within begins 156 156 if (flag & Components.interfaces.nsIWebProgressListener.STATE_START) { 157 gKablInserter.attachToLoadingWindow(progress.DOMWindow);157 TubeLubePreLoad.attachToLoadingWindow(progress.DOMWindow); 158 158 } 159 159 } -
extension/tubelube/content/tubelube-overlay.xul
r272 r344 1 1 <?xml version='1.0'?> 2 2 <overlay id='kabl-overlay' xmlns='http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul'> 3 4 <script type='application/x-javascript' src='chrome://kabl/content/kabl-pref.js'></script>5 <script type='application/x-javascript' src='chrome://kabl/content/kabl-parse.js'></script>6 <script type='application/x-javascript' src='chrome://kabl/content/kabl-overlay.js'></script>7 <script type='application/x-javascript' src='chrome://kabl/content/kabl-inserter.js'></script>8 3 9 4 <!-- … … 13 8 <vbox id='appcontent'> 14 9 <box > 15 <browser id=' kablInserterBrowser'16 style='-moz-binding: url("chrome:// kabl/content/kabl-inserter-bindings.xml#content");'10 <browser id='TubeLubePreLoadBrowser' 11 style='-moz-binding: url("chrome://tubelube/content/tubelube-preload-bindings.xml#content");' 17 12 /> 18 13 </box> … … 41 36 <key id='kabl-key-toggle' 42 37 modifiers='control,alt' 43 key=' K'44 oncommand=' gKabl.toggle();'38 key='t' 39 oncommand='/*gKabl.toggle();*/' 45 40 /> 46 41 </keyset>