[tor-commits] [torbutton/master] Bug #3100: Reduce security preferences UI

mikeperry at torproject.org mikeperry at torproject.org
Thu Feb 14 06:09:25 UTC 2013


commit ec3d6ef4ff53ddbd8475bdefb8010cf80220ab6b
Author: Mike Perry <mikeperry-git at fscked.org>
Date:   Thu Feb 7 17:51:31 2013 -0800

    Bug #3100: Reduce security preferences UI
    
    We still need the pref observer plumbing...
---
 src/chrome/content/preferences.js  |  320 +-----------------------------------
 src/chrome/content/preferences.xul |  231 ++------------------------
 2 files changed, 24 insertions(+), 527 deletions(-)

diff --git a/src/chrome/content/preferences.js b/src/chrome/content/preferences.js
index 131c2a6..f53504a 100644
--- a/src/chrome/content/preferences.js
+++ b/src/chrome/content/preferences.js
@@ -137,8 +137,6 @@ function torbutton_prefs_set_field_attributes(doc)
         doc.getElementById('torbutton_socksPort').value    = o_customprefs.getIntPref('socks_port');
         */
     }
-
-    doc.getElementById('torbutton_searchEngine').disabled = !doc.getElementById('torbutton_noCaptcha').checked;
 }
 
 function torbutton_prefs_init(doc) {
@@ -193,216 +191,16 @@ function torbutton_prefs_init(doc) {
         doc.getElementById('torbutton_settingsMethod').selectedItem = doc.getElementById('torbutton_transparentTor');
     }
 
-    // doc.getElementById('torbutton_warnUponExcludedSite').checked = o_torprefs.getBoolPref('prompt_before_visiting_excluded_sites');
-
-    doc.getElementById('torbutton_disablePlugins').checked = o_torprefs.getBoolPref('no_tor_plugins');
-    doc.getElementById('torbutton_clearHistory').checked = o_torprefs.getBoolPref('clear_history');
-    doc.getElementById('torbutton_killBadJS').checked = o_torprefs.getBoolPref('kill_bad_js');
-    doc.getElementById('torbutton_resizeOnToggle').checked = o_torprefs.getBoolPref('resize_on_toggle');
-   
-    if(o_torprefs.getBoolPref('clear_cache')) {
-        doc.getElementById('torbutton_cacheGroup').selectedItem =
-            doc.getElementById('torbutton_clearCache');
-        o_torprefs.setBoolPref('block_cache', false);
-    } else {
-        doc.getElementById('torbutton_cacheGroup').selectedItem =
-            doc.getElementById('torbutton_blockCache');
-        o_torprefs.setBoolPref('block_cache', true);
-        o_torprefs.setBoolPref('clear_cache', false);
-    }
-
-    if(o_torprefs.getBoolPref('clear_cookies')) {
-        doc.getElementById('torbutton_cookieGroup').selectedItem = 
-            doc.getElementById('torbutton_clearCookies');
-        o_torprefs.setBoolPref('cookie_jars', false);
-        o_torprefs.setBoolPref('dual_cookie_jars', false);
-        o_torprefs.setBoolPref('clear_cookies', true); 
-        o_torprefs.setBoolPref('cookie_protections',false);
-        o_torprefs.setBoolPref('tor_memory_jar', true);
-        o_torprefs.setBoolPref('nontor_memory_jar', true);
-        doc.getElementById('torbutton_torMemoryJar').disabled = true;
-        doc.getElementById('torbutton_nonTorMemoryJar').disabled = true;
-    } else if(o_torprefs.getBoolPref('cookie_jars')) {
-        doc.getElementById('torbutton_cookieGroup').selectedItem =
-            doc.getElementById('torbutton_cookieJars');
-        o_torprefs.setBoolPref('cookie_jars', true);
-        o_torprefs.setBoolPref('dual_cookie_jars', false);
-        o_torprefs.setBoolPref('clear_cookies', false);
-        o_torprefs.setBoolPref('cookie_protections',false);        
-        o_torprefs.setBoolPref('tor_memory_jar', true);
-        doc.getElementById('torbutton_torMemoryJar').disabled = true;
-        doc.getElementById('torbutton_nonTorMemoryJar').disabled = false;        
-    } else if(o_torprefs.getBoolPref('cookie_protections')) {
-        doc.getElementById('torbutton_cookieGroup').selectedItem =
-            doc.getElementById('torbutton_cookieProtections');
-        o_torprefs.setBoolPref('cookie_jars', false);
-        o_torprefs.setBoolPref('dual_cookie_jars', true);
-        o_torprefs.setBoolPref('clear_cookies', false); 
-        doc.getElementById('torbutton_torMemoryJar').disabled = false;
-        doc.getElementById('torbutton_nonTorMemoryJar').disabled = false;
-    } 
-    else if(o_torprefs.getBoolPref('dual_cookie_jars')) {
-        doc.getElementById('torbutton_cookieGroup').selectedItem =
-            doc.getElementById('torbutton_dualCookieJars');
-        o_torprefs.setBoolPref('cookie_jars', false);
-        o_torprefs.setBoolPref('dual_cookie_jars', true);
-        o_torprefs.setBoolPref('clear_cookies', false); 
-        o_torprefs.setBoolPref('cookie_protections',false);
-        doc.getElementById('torbutton_torMemoryJar').disabled = false;
-        doc.getElementById('torbutton_nonTorMemoryJar').disabled = false;
-    }  else {
-        doc.getElementById('torbutton_cookieGroup').selectedItem =
-            doc.getElementById('torbutton_mmmCookies');
-        o_torprefs.setBoolPref('cookie_jars', false);
-        o_torprefs.setBoolPref('dual_cookie_jars', false);
-        o_torprefs.setBoolPref('clear_cookies', false); 
-        o_torprefs.setBoolPref('tor_memory_jar', false);
-        o_torprefs.setBoolPref('nontor_memory_jar', false);
-        doc.getElementById('torbutton_torMemoryJar').disabled = true;
-        doc.getElementById('torbutton_nonTorMemoryJar').disabled = true;
-    }
-
-    doc.getElementById('torbutton_torMemoryJar').checked = o_torprefs.getBoolPref('tor_memory_jar');
-    doc.getElementById('torbutton_nonTorMemoryJar').checked = o_torprefs.getBoolPref('nontor_memory_jar');
-
-    doc.getElementById('torbutton_noDomStorage').checked = 
-        o_torprefs.getBoolPref('disable_domstorage');
-    
-    if(o_torprefs.getIntPref('shutdown_method') == 0) {
-        doc.getElementById('torbutton_shutdownGroup').selectedItem
-            = doc.getElementById('torbutton_noShutdown');
-    } else if(o_torprefs.getIntPref('shutdown_method') == 1) {
-        doc.getElementById('torbutton_shutdownGroup').selectedItem
-            = doc.getElementById('torbutton_torShutdown');
-    } else {
-        o_torprefs.setIntPref('shutdown_method', 2); 
-        doc.getElementById('torbutton_shutdownGroup').selectedItem
-            = doc.getElementById('torbutton_allShutdown');
-    }
-
-    /*
-    switch(o_torprefs.getIntPref('startup_state')) {
-        case 0: // non-tor
-            doc.getElementById("torbutton_startupStateGroup").selectedItem =
-                doc.getElementById('torbutton_startNonTor');
-            break;
-        case 1: // tor
-            doc.getElementById("torbutton_startupStateGroup").selectedItem =
-                doc.getElementById('torbutton_startTor');
-            break;
-        case 2: // shutdown state
-            doc.getElementById("torbutton_startupStateGroup").selectedItem =
-                doc.getElementById('torbutton_startPrevious');
-            break;
-    }*/
-    
-    if ((doc.getElementById('torbutton_refererSpoofGroup').selectedIndex = o_torprefs.getIntPref('refererspoof'))==4)
-      doc.getElementById('torbutton_CustomRef').value = o_torprefs.getCharPref('customref');
-    
-    doc.getElementById('torbutton_torSessionStore').checked = !o_torprefs.getBoolPref('notor_sessionstore');
-    doc.getElementById('torbutton_nonTorSessionStore').checked = !o_torprefs.getBoolPref('nonontor_sessionstore');
-
-    //doc.getElementById('torbutton_reloadCrashedJar').checked = o_torprefs.getBoolPref('reload_crashed_jar');
-    
-    doc.getElementById('torbutton_blockTorHRead').checked = o_torprefs.getBoolPref('block_thread');
-    doc.getElementById('torbutton_blockTorHWrite').checked = o_torprefs.getBoolPref('block_thwrite');
-    doc.getElementById('torbutton_blockNonTorHRead').checked = o_torprefs.getBoolPref('block_nthread');
-    doc.getElementById('torbutton_blockNonTorHWrite').checked = o_torprefs.getBoolPref('block_nthwrite');
-    doc.getElementById('torbutton_blockTorForms').checked = o_torprefs.getBoolPref('block_tforms');
-    doc.getElementById('torbutton_blockNonTorForms').checked = o_torprefs.getBoolPref('block_ntforms');
-    doc.getElementById('torbutton_isolateContent').checked = o_torprefs.getBoolPref('isolate_content');
-    doc.getElementById('torbutton_noSearch').checked = o_torprefs.getBoolPref('no_search');
-    doc.getElementById('torbutton_disableLivemarks').checked = o_torprefs.getBoolPref('disable_livemarks');
-    doc.getElementById('torbutton_closeTor').checked = o_torprefs.getBoolPref('close_tor');
-    doc.getElementById('torbutton_closeNonTor').checked = o_torprefs.getBoolPref('close_nontor');
-    doc.getElementById('torbutton_setUagent').checked = o_torprefs.getBoolPref('set_uagent');
-    doc.getElementById('torbutton_refererSpoofGroup').selectedIndex = o_torprefs.getIntPref('refererspoof');
-    doc.getElementById('torbutton_spoofEnglish').checked = o_torprefs.getBoolPref('spoof_english');
-    doc.getElementById('torbutton_clearHttpAuth').checked = o_torprefs.getBoolPref('clear_http_auth');
-    doc.getElementById('torbutton_blockJSHistory').checked = o_torprefs.getBoolPref('block_js_history');
-    doc.getElementById('torbutton_blockTorFileNet').checked = o_torprefs.getBoolPref('block_tor_file_net');
-    doc.getElementById('torbutton_blockNonTorFileNet').checked = o_torprefs.getBoolPref('block_nontor_file_net');
-
-    doc.getElementById('torbutton_fixGoogleSrch').checked = o_torprefs.getBoolPref('fix_google_srch');
     doc.getElementById('torbutton_lockedMode').checked = o_torprefs.getBoolPref('locked_mode');
-
-    switch(o_torprefs.getIntPref('google_redir_url')) {
-        case 1:
-            doc.getElementById("torbutton_searchEngine").selectedItem =
-                doc.getElementById('torbutton_engine1');
-            break;
-        case 2:
-            doc.getElementById("torbutton_searchEngine").selectedItem =
-                doc.getElementById('torbutton_engine2');
-            break;
-        case 3:
-            doc.getElementById("torbutton_searchEngine").selectedItem =
-                doc.getElementById('torbutton_engine3');
-            break;
-        case 4:
-            doc.getElementById("torbutton_searchEngine").selectedItem =
-                doc.getElementById('torbutton_engine4');
-            break;
-        case 5:
-            doc.getElementById("torbutton_searchEngine").selectedItem =
-                doc.getElementById('torbutton_engine5');
-            break;
-
-    }
-    doc.getElementById('torbutton_noCaptcha').checked = o_torprefs.getBoolPref('dodge_google_captcha');
-    doc.getElementById('torbutton_searchEngine').disabled = !o_torprefs.getBoolPref('dodge_google_captcha');
-
-    /*
-    doc.getElementById('torbutton_jarCerts').checked = o_torprefs.getBoolPref('jar_certs');
-    doc.getElementById('torbutton_jarCACerts').checked = o_torprefs.getBoolPref('jar_ca_certs');
-    */
-
-    doc.getElementById('torbutton_noUpdates').checked = o_torprefs.getBoolPref('no_updates');
-    doc.getElementById('torbutton_updateTorbuttonViaTor').checked = o_torprefs.getBoolPref('update_torbutton_via_tor');
+    
+    doc.getElementById('torbutton_blockDisk').checked = o_torprefs.getBoolPref('block_disk');
+    doc.getElementById('torbutton_resistFingerprinting').checked = o_torprefs.getBoolPref('resist_fingerprinting');
+    doc.getElementById('torbutton_blockPlugins').checked = o_torprefs.getBoolPref('no_tor_plugins');
+    doc.getElementById('torbutton_restrictThirdParty').checked = o_torprefs.getBoolPref('restrict_thirdparty');
 
     torbutton_prefs_set_field_attributes(doc);
 }
 
-function torbutton_cookie_update(doc) {
-    var o_torprefs = torbutton_get_prefbranch('extensions.torbutton.');
-    doc.getElementById('torbutton_torMemoryJar').checked = o_torprefs.getBoolPref('tor_memory_jar');
-    doc.getElementById('torbutton_nonTorMemoryJar').checked = o_torprefs.getBoolPref('nontor_memory_jar');
-
-    if(doc.getElementById('torbutton_cookieGroup').selectedItem 
-            == doc.getElementById('torbutton_clearCookies')) {
-        doc.getElementById('torbutton_torMemoryJar').checked = true;
-        doc.getElementById('torbutton_nonTorMemoryJar').checked = true;
-        doc.getElementById('torbutton_torMemoryJar').disabled = true;
-        doc.getElementById('torbutton_nonTorMemoryJar').disabled = true;
-
-    } else if(doc.getElementById('torbutton_cookieGroup').selectedItem
-            == doc.getElementById('torbutton_cookieJars')) {
-        doc.getElementById('torbutton_torMemoryJar').checked = true;
-        doc.getElementById('torbutton_torMemoryJar').disabled = true;
-        doc.getElementById('torbutton_nonTorMemoryJar').disabled = false;
-
-    } else if(doc.getElementById('torbutton_cookieGroup').selectedItem
-            == doc.getElementById('torbutton_dualCookieJars')) {
-        doc.getElementById('torbutton_torMemoryJar').disabled = false;
-        doc.getElementById('torbutton_nonTorMemoryJar').disabled = false;
-
-    } else if(doc.getElementById('torbutton_cookieGroup').selectedItem
-            == doc.getElementById('torbutton_mmmCookies')) {
-        doc.getElementById('torbutton_torMemoryJar').checked = false;
-        doc.getElementById('torbutton_nonTorMemoryJar').checked = false;
-        doc.getElementById('torbutton_torMemoryJar').disabled = true;
-        doc.getElementById('torbutton_nonTorMemoryJar').disabled = true;
-
-    } else if(doc.getElementById('torbutton_cookieGroup').selectedItem
-            == doc.getElementById('torbutton_cookieProtections')) {
-        doc.getElementById('torbutton_torMemoryJar').checked = o_torprefs.getBoolPref('tor_memory_jar');
-        doc.getElementById('torbutton_nonTorMemoryJar').checked = o_torprefs.getBoolPref('nontor_memory_jar');
-        doc.getElementById('torbutton_torMemoryJar').disabled = false;
-        doc.getElementById('torbutton_nonTorMemoryJar').disabled = false;
-
-    }
-}
-
 function torbutton_prefs_save(doc) {
     torbutton_log(2, "called prefs_save()");
     var o_torprefs = torbutton_get_prefbranch('extensions.torbutton.');
@@ -485,112 +283,12 @@ function torbutton_prefs_save(doc) {
             o_customprefs.setIntPref('socks_version', 5); 
         }
     }
-    // o_torprefs.setBoolPref('prompt_before_visiting_excluded_sites', doc.getElementById('torbutton_warnUponExcludedSite').checked);
-  o_torprefs.setIntPref('refererspoof', doc.getElementById('torbutton_refererSpoofGroup').selectedIndex);
-    o_torprefs.setBoolPref('no_tor_plugins', doc.getElementById('torbutton_disablePlugins').checked);
-    o_torprefs.setBoolPref('clear_history', doc.getElementById('torbutton_clearHistory').checked);
-    o_torprefs.setBoolPref('kill_bad_js', doc.getElementById('torbutton_killBadJS').checked);
-    o_torprefs.setBoolPref('resize_on_toggle', doc.getElementById('torbutton_resizeOnToggle').checked);
-    o_torprefs.setBoolPref('isolate_content', doc.getElementById('torbutton_isolateContent').checked);
-
-    o_torprefs.setBoolPref('clear_cache', doc.getElementById('torbutton_clearCache').selected);
-    o_torprefs.setBoolPref('block_cache', doc.getElementById('torbutton_blockCache').selected);
-
-    o_torprefs.setBoolPref('clear_cookies', doc.getElementById('torbutton_clearCookies').selected);
-    o_torprefs.setBoolPref('cookie_jars', doc.getElementById('torbutton_cookieJars').selected);
-    o_torprefs.setBoolPref('dual_cookie_jars', doc.getElementById('torbutton_dualCookieJars').selected || doc.getElementById('torbutton_cookieProtections').selected);
-    o_torprefs.setBoolPref('cookie_protections', doc.getElementById('torbutton_cookieProtections').selected);
-    o_torprefs.setBoolPref('disable_domstorage', doc.getElementById('torbutton_noDomStorage').checked);
-    o_torprefs.setBoolPref('clear_http_auth', doc.getElementById('torbutton_clearHttpAuth').checked);
-    o_torprefs.setBoolPref('block_js_history', doc.getElementById('torbutton_blockJSHistory').checked);
-    o_torprefs.setBoolPref('block_tor_file_net', doc.getElementById('torbutton_blockTorFileNet').checked);
-    o_torprefs.setBoolPref('block_nontor_file_net', doc.getElementById('torbutton_blockNonTorFileNet').checked);
-    
-    o_torprefs.setBoolPref('tor_memory_jar', doc.getElementById('torbutton_torMemoryJar').checked);
-    o_torprefs.setBoolPref('nontor_memory_jar', doc.getElementById('torbutton_nonTorMemoryJar').checked);
-
-    if(doc.getElementById('torbutton_shutdownGroup').selectedItem ==
-            doc.getElementById('torbutton_noShutdown')) {
-        o_torprefs.setIntPref('shutdown_method', 0); 
-    } else if(doc.getElementById('torbutton_shutdownGroup').selectedItem ==
-            doc.getElementById('torbutton_torShutdown')) {
-        o_torprefs.setIntPref('shutdown_method', 1); 
-    } else {
-        o_torprefs.setIntPref('shutdown_method', 2); 
-    }
-
-    /* Reset the shutdown option if the user wants to manage own cookies */
-    if(!o_torprefs.getBoolPref('cookie_jars') 
-            && !o_torprefs.getBoolPref('clear_cookies')
-            && !o_torprefs.getBoolPref('dual_cookie_jars')) {
-        o_torprefs.setIntPref('shutdown_method', 0); 
-        doc.getElementById('torbutton_shutdownGroup').selectedItem
-            = doc.getElementById('torbutton_noShutdown');
-    }
-    
-
-    /*
-    if(doc.getElementById('torbutton_startupStateGroup').selectedItem ==
-            doc.getElementById('torbutton_startNonTor')) {
-        o_torprefs.setIntPref('startup_state', 0);
-    } else if(doc.getElementById('torbutton_startupStateGroup').selectedItem ==
-            doc.getElementById('torbutton_startTor')) {
-        o_torprefs.setIntPref('startup_state', 1);
-    } else {
-        o_torprefs.setIntPref('startup_state', 2);
-    }*/
-
-    o_torprefs.setBoolPref('notor_sessionstore', !doc.getElementById('torbutton_torSessionStore').checked);
-    o_torprefs.setBoolPref('nonontor_sessionstore', !doc.getElementById('torbutton_nonTorSessionStore').checked);
-    //o_torprefs.setBoolPref('reload_crashed_jar', doc.getElementById('torbutton_reloadCrashedJar').checked);
-    o_torprefs.setBoolPref('block_thread', doc.getElementById('torbutton_blockTorHRead').checked);
-    o_torprefs.setBoolPref('block_thwrite', doc.getElementById('torbutton_blockTorHWrite').checked);
-    o_torprefs.setBoolPref('block_nthread', doc.getElementById('torbutton_blockNonTorHRead').checked);
-    o_torprefs.setBoolPref('block_nthwrite', doc.getElementById('torbutton_blockNonTorHWrite').checked);
-    o_torprefs.setBoolPref('block_tforms', doc.getElementById('torbutton_blockTorForms').checked);
-    o_torprefs.setBoolPref('block_ntforms', doc.getElementById('torbutton_blockNonTorForms').checked);
-    o_torprefs.setBoolPref('no_search', doc.getElementById('torbutton_noSearch').checked);
-    o_torprefs.setBoolPref('disable_livemarks', doc.getElementById('torbutton_disableLivemarks').checked);
-    o_torprefs.setBoolPref('close_tor', doc.getElementById('torbutton_closeTor').checked);
-    o_torprefs.setBoolPref('close_nontor', doc.getElementById('torbutton_closeNonTor').checked);
-    o_torprefs.setBoolPref('no_updates', doc.getElementById('torbutton_noUpdates').checked);
-
-    o_torprefs.setBoolPref('set_uagent', doc.getElementById('torbutton_setUagent').checked);
-    o_torprefs.setBoolPref('spoof_english', doc.getElementById('torbutton_spoofEnglish').checked);
-
     o_torprefs.setBoolPref('locked_mode', doc.getElementById('torbutton_lockedMode').checked);
 
-    o_torprefs.setIntPref('refererspoof',doc.getElementById('torbutton_refererSpoofGroup').selectedIndex);
-    o_torprefs.setBoolPref('fix_google_srch', doc.getElementById('torbutton_fixGoogleSrch').checked);
-    o_torprefs.setBoolPref('dodge_google_captcha', doc.getElementById('torbutton_noCaptcha').checked);
-
-    if(doc.getElementById('torbutton_searchEngine').selectedItem ==
-            doc.getElementById('torbutton_engine1')) {
-        o_torprefs.setIntPref('google_redir_url', 1);
-    } else if(doc.getElementById('torbutton_searchEngine').selectedItem ==
-            doc.getElementById('torbutton_engine2')) {
-        o_torprefs.setIntPref('google_redir_url', 2);
-    } else if(doc.getElementById('torbutton_searchEngine').selectedItem ==
-            doc.getElementById('torbutton_engine3')) {
-        o_torprefs.setIntPref('google_redir_url', 3);
-    } else if(doc.getElementById('torbutton_searchEngine').selectedItem ==
-            doc.getElementById('torbutton_engine4')) {
-        o_torprefs.setIntPref('google_redir_url', 4);
-    } else {
-        o_torprefs.setIntPref('google_redir_url', 5);
-    }
-
-    /*
-    o_torprefs.setBoolPref('jar_certs', doc.getElementById('torbutton_jarCerts').checked);
-    o_torprefs.setBoolPref('jar_ca_certs',
-            o_torprefs.getBoolPref('jar_certs') &&
-            doc.getElementById('torbutton_jarCACerts').checked);
-    */
-
-    o_torprefs.setBoolPref('no_updates',
-            doc.getElementById('torbutton_noUpdates').checked);
-    o_torprefs.setBoolPref('update_torbutton_via_tor',
-            doc.getElementById('torbutton_updateTorbuttonViaTor').checked);
+    o_torprefs.setBoolPref('block_disk', doc.getElementById('torbutton_blockDisk').checked);
+    o_torprefs.setBoolPref('resist_fingerprinting', doc.getElementById('torbutton_resistFingerprinting').checked);
+    o_torprefs.setBoolPref('no_tor_plugins', doc.getElementById('torbutton_blockPlugins').checked);
+    o_torprefs.setBoolPref('restrict_thirdparty', doc.getElementById('torbutton_restrictThirdParty').checked);
 
     // if tor settings were initially active, update the active settings to reflect any changes
     if (tor_enabled) torbutton_activate_tor_settings();
diff --git a/src/chrome/content/preferences.xul b/src/chrome/content/preferences.xul
index a53f54f..e41dee8 100644
--- a/src/chrome/content/preferences.xul
+++ b/src/chrome/content/preferences.xul
@@ -161,222 +161,21 @@
 -->
     </tabpanel>
     <tabpanel>
-        <tabbox style="border: 0px">
-         <tabs style="border: 0px">
-          <tab label="&torbutton.prefs.dynamic;"/>
-          <tab label="&torbutton.prefs.history;"/>
-          <tab label="&torbutton.prefs.forms;"/>
-          <tab label="&torbutton.prefs.cache;"/>
-          <tab label="&torbutton.prefs.cookies;"/>
-          <tab label="&torbutton.prefs.startup;"/>
-          <tab label="&torbutton.prefs.shutdown;"/>
-          <tab label="&torbutton.prefs.headers;"/>
-         </tabs>
-         <tabpanels style="border: 0px">
-          <tabpanel id="plugins">
-           <vbox>
-        <checkbox id="torbutton_disablePlugins" label="&torbutton.prefs.disable_plugins;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-        <checkbox id="torbutton_isolateContent" label="&torbutton.prefs.isolate_content;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-        <checkbox id="torbutton_killBadJS" label="&torbutton.prefs.kill_bad_js;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-        <checkbox id="torbutton_resizeOnToggle" label="&torbutton.prefs.resize_on_toggle;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-        <checkbox id="torbutton_noSearch" label="&torbutton.prefs.no_search;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-        <checkbox id="torbutton_disableLivemarks"
-                  label="&torbutton.prefs.disable_livemarks; &torbutton.prefs.dtd_recommended;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-        <checkbox id="torbutton_blockTorFileNet" label="&torbutton.prefs.block_tor_file_net;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-        <checkbox id="torbutton_blockNonTorFileNet" label="&torbutton.prefs.block_nontor_file_net;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-        <checkbox id="torbutton_updateTorbuttonViaTor"
-                  label="&torbutton.prefs.update_torbutton_via_tor; &torbutton.prefs.dtd_recommended;"
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-        <checkbox id="torbutton_noUpdates" label="&torbutton.prefs.no_updates;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-        <checkbox id="torbutton_closeTor" label="&torbutton.prefs.close_tor;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-        <checkbox id="torbutton_closeNonTor" label="&torbutton.prefs.close_nontor;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-           </vbox>
-          </tabpanel>
-          <tabpanel id="history">
-           <vbox>
-          <checkbox id="torbutton_blockJSHistory" label="&torbutton.prefs.block_js_history;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-          <checkbox id="torbutton_blockTorHRead" label="&torbutton.prefs.block_thread;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-          <checkbox id="torbutton_blockTorHWrite" label="&torbutton.prefs.block_thwrite;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-          <checkbox id="torbutton_blockNonTorHRead" label="&torbutton.prefs.block_nthread;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-          <checkbox id="torbutton_blockNonTorHWrite" label="&torbutton.prefs.block_nthwrite;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-          <checkbox id="torbutton_clearHistory" label="&torbutton.prefs.clear_history;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-           </vbox>
-          </tabpanel>
-          <tabpanel id="forms">
-           <vbox flex="1">
-          <checkbox id="torbutton_blockTorForms" label="&torbutton.prefs.block_tforms;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-          <checkbox id="torbutton_blockNonTorForms" label="&torbutton.prefs.block_ntforms;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-           </vbox>
-          </tabpanel>
-          <tabpanel id="cache">
-           <vbox>
-            <!-- FIXME: maybe add pref to manage cache by yourself... --> 
-            <radiogroup id="torbutton_cacheGroup">
-             <radio id="torbutton_clearCache" 
-                   label="&torbutton.prefs.clear_cache;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-             <radio id="torbutton_blockCache" 
-                   label="&torbutton.prefs.block_cache;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-            </radiogroup>
-           </vbox>
-          </tabpanel>
-          <tabpanel id="cookies">
-           <vbox>
-            <radiogroup onselect="torbutton_cookie_update(document)" id="torbutton_cookieGroup">
-             <radio id="torbutton_clearCookies"
-                    label="&torbutton.prefs.clear_cookies;" 
-                    oncommand="torbutton_prefs_set_field_attributes(document)"/>             
-            <radio id="torbutton_cookieJars"
-                    label="&torbutton.prefs.cookie_jars;" 
-                    oncommand="torbutton_prefs_set_field_attributes(document)"/>
-
-            <radio id="torbutton_dualCookieJars"
-                    label="&torbutton.prefs.dual_cookie_jars;" 
-                    oncommand="torbutton_prefs_set_field_attributes(document)"/>
-            <radio id="torbutton_cookieProtections"
-                    label="&torbutton.prefs.cookie_protection;"
-                    oncommand="torbutton_prefs_set_field_attributes(document)"/>
-            <radio id="torbutton_mmmCookies"
-                    label="&torbutton.prefs.mmm_cookies;" 
-                    oncommand="torbutton_prefs_set_field_attributes(document)"/> 
-            </radiogroup>
-            <checkbox id="torbutton_torMemoryJar" 
-                   label="&torbutton.prefs.tor_memory_jar;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-            <checkbox id="torbutton_nonTorMemoryJar" 
-                   label="&torbutton.prefs.nontor_memory_jar;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-            <checkbox id="torbutton_noDomStorage" 
-                   label="&torbutton.prefs.disable_domstorage;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-            <checkbox id="torbutton_clearHttpAuth" 
-                   label="&torbutton.prefs.clear_http_auth;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-           </vbox>
-          </tabpanel>
-          <tabpanel id="startup">
-            <!-- 
-            This shouldn't be a user-changeable pref. Unless something is broken,
-            it should always be true        
-            <checkbox id="torbutton_reloadCrashedJar" label="&torbutton.prefs.reload_crashed_jar;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-             -->
-            <vbox>
-            <!--
-            <hbox>
-             <label value="&torbutton.prefs.startup_state;" control="torbutton_startupStateGroup"/>
-             <radiogroup align="center" orient="horizontal" id="torbutton_startupStateGroup">
-              <radio id="torbutton_startTor" 
-                   label="&torbutton.prefs.tor;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-              <radio id="torbutton_startNonTor" 
-                   label="&torbutton.prefs.non_tor;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-              <radio id="torbutton_startPrevious" 
-                   label="&torbutton.prefs.shutdown_state;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-             </radiogroup>
-            </hbox>
-            -->
-            <hbox>
-             <label value="&torbutton.prefs.startup_tor;" control="torbutton_restoreTorGroup"/>
-             <radiogroup align="center" orient="horizontal" id="torbutton_restoreTorGroup">
-              <radio id="torbutton_restoreTor" 
-                   label="&torbutton.prefs.tor;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-              <radio id="torbutton_restoreNonTor" 
-                   label="&torbutton.prefs.non_tor;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-             </radiogroup>
-            </hbox>
-            <vbox>
-             <label value="&torbutton.prefs.session_restore;" control="torbutton_restoreTorGroup"/>
-             <checkbox class="indent" id="torbutton_torSessionStore" label="&torbutton.prefs.tor_tabs;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-             <checkbox class="indent" id="torbutton_nonTorSessionStore" label="&torbutton.prefs.nontor_tabs;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-            </vbox>
-            
-           </vbox>
-          </tabpanel>
-
-          <tabpanel id="shutdown">
-           <vbox>
-            <radiogroup id="torbutton_shutdownGroup">
-             <radio id="torbutton_noShutdown" 
-                   label="&torbutton.prefs.no_shutdown;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-             <radio id="torbutton_torShutdown" 
-                   label="&torbutton.prefs.tor_shutdown;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-             <radio id="torbutton_allShutdown" 
-                   label="&torbutton.prefs.all_shutdown;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-            </radiogroup>
-           </vbox>
-          </tabpanel>
-          <tabpanel id="headers">
-           <vbox>
-          <checkbox id="torbutton_setUagent" label="&torbutton.prefs.set_uagent;" 
-                  oncommand="torbutton_prefs_set_field_attributes(document)"/>
-          <checkbox id="torbutton_spoofEnglish" label="&torbutton.prefs.spoof_english;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-<!--
-          <checkbox id="torbutton_jarCerts" label="&torbutton.prefs.jar_certs;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-          <checkbox id="torbutton_jarCACerts" label="&torbutton.prefs.jar_ca_certs;" 
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
--->
-           <radiogroup id="torbutton_refererSpoofGroup" label="&torbutton.prefs.refererspoofing;" collapsed="true">
-              <radio id="torbutton_smartSpoof" label="&torbutton.prefs.smartspoof;" oncommand="torbutton_prefs_set_field_attributes(document)" />              
-              <radio id="torbutton_noRefSpoof" label="&torbutton.prefs.nospoof;" oncommand="torbutton_prefs_set_field_attributes(document)" />
-              <radio id="torbutton_blankReferer" label="&torbutton.prefs.spoofblank;" oncommand="torbutton_prefs_set_field_attributes(document)" />
-          </radiogroup>
-          <checkbox id="torbutton_fixGoogleSrch" label="&torbutton.prefs.fix_google_srch;"
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-          <spacer/>
-          <checkbox id="torbutton_noCaptcha" label="&torbutton.prefs.dodge_google_captcha;"
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-          <hbox class="indent" align="center">
-             <radiogroup align="center" orient="horizontal" id="torbutton_searchEngine">
-              <radio id="torbutton_engine4" label="&torbutton.prefs.engine4;"
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-              <radio id="torbutton_engine5" label="&torbutton.prefs.engine5;"
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-              <radio id="torbutton_engine1" label="&torbutton.prefs.engine1;"
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-              <radio id="torbutton_engine2" label="&torbutton.prefs.engine2;"
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-              <radio id="torbutton_engine3" label="&torbutton.prefs.engine3;"
-                   oncommand="torbutton_prefs_set_field_attributes(document)"/>
-             </radiogroup>
-            </hbox>
-
-            </vbox>
-          </tabpanel>
-         </tabpanels>
-        </tabbox>
-     </tabpanel>
+     <vbox>
+       <checkbox id="torbutton_blockDisk" 
+              label="&torbutton.prefs.block_disk;" 
+              oncommand="torbutton_prefs_set_field_attributes(document)"/>
+       <checkbox id="torbutton_blockPlugins" 
+              label="&torbutton.prefs.block_plugins;" 
+              oncommand="torbutton_prefs_set_field_attributes(document)"/>
+       <checkbox id="torbutton_restrictThirdParty" 
+              label="&torbutton.prefs.restrict_thirdparty;" 
+              oncommand="torbutton_prefs_set_field_attributes(document)"/>
+       <checkbox id="torbutton_resistFingerprinting" 
+              label="&torbutton.prefs.resist_fingerprinting;" 
+              oncommand="torbutton_prefs_set_field_attributes(document)"/>
+     </vbox>
+    </tabpanel>
     <tabpanel>
        <vbox>
         <label class="indent" control="torbutton_panelStyle" value="&torbutton.prefs.panel_format;"/>





More information about the tor-commits mailing list