[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-commits] [snowflake/master] Enable snowflake extension by default
commit f6f37c7e6884834d39941ea7c5803e69d4e56e00
Author: Cecylia Bocovich <cohosh@xxxxxxxxxxxxxx>
Date: Wed Jul 3 10:00:46 2019 -0400
Enable snowflake extension by default
---
proxy/init-webext.coffee | 1 +
proxy/ui.coffee | 26 +++++++++++++++-----------
proxy/webext/manifest.json | 2 +-
proxy/webext/popup.html | 4 ++--
proxy/webext/popup.js | 5 +----
5 files changed, 20 insertions(+), 18 deletions(-)
diff --git a/proxy/init-webext.coffee b/proxy/init-webext.coffee
index 20b8bc3..7ff59ba 100644
--- a/proxy/init-webext.coffee
+++ b/proxy/init-webext.coffee
@@ -24,6 +24,7 @@ init = () ->
snowflake = new Snowflake config, ui, broker
log '== snowflake proxy =='
+ update()
update = () ->
if !ui.enabled
diff --git a/proxy/ui.coffee b/proxy/ui.coffee
index 7a41f32..e6896ec 100644
--- a/proxy/ui.coffee
+++ b/proxy/ui.coffee
@@ -4,7 +4,7 @@ All of Snowflake's DOM manipulation and inputs.
class UI
active: false
- enabled: false
+ enabled: true
setStatus: (msg) ->
@@ -73,14 +73,14 @@ class WebExtUI extends UI
initToggle: ->
try
getting = chrome.storage.local.get("snowflake-enabled", (result) =>
- @enabled = result['snowflake-enabled']
- update()
- chrome.browserAction.setIcon
- path:
- 32: "icons/status-" + (if @enabled then "on" else "off") + ".png"
+ if result['snowflake-enabled'] != undefined
+ @enabled = result['snowflake-enabled']
+ @setEnabled @enabled
+ else
+ log "Toggle state not yet saved"
)
catch
- log "Toggle state not yet saved"
+ log "Error retrieving toggle state"
postActive: ->
@port?.postMessage
@@ -98,10 +98,7 @@ class WebExtUI extends UI
onMessage: (m) =>
@enabled = m.enabled
- update()
- chrome.browserAction.setIcon
- path:
- 32: "icons/status-" + (if @enabled then "on" else "off") + ".png"
+ @setEnabled @enabled
@postActive()
storing = chrome.storage.local.set({ "snowflake-enabled": @enabled },
() -> log "Stored toggle state")
@@ -117,3 +114,10 @@ class WebExtUI extends UI
chrome.browserAction.setIcon
path:
32: "icons/status-running.png"
+
+ setEnabled: (enabled) ->
+ update()
+ chrome.browserAction.setIcon
+ path:
+ 32: "icons/status-" + (if enabled then "on" else "off") + ".png"
+
diff --git a/proxy/webext/manifest.json b/proxy/webext/manifest.json
index 0da349f..fa2bc5f 100644
--- a/proxy/webext/manifest.json
+++ b/proxy/webext/manifest.json
@@ -9,7 +9,7 @@
},
"browser_action": {
"default_icon": {
- "32": "icons/status-off.png"
+ "32": "icons/status-on.png"
},
"default_title": "Snowflake",
"default_popup": "popup.html"
diff --git a/proxy/webext/popup.html b/proxy/webext/popup.html
index 1074333..9837595 100644
--- a/proxy/webext/popup.html
+++ b/proxy/webext/popup.html
@@ -7,14 +7,14 @@
</head>
<body>
<div id="active">
- <img src="icons/status-off.png" />
+ <img src="icons/status-on.png" />
<p></p>
<p></p>
</div>
<div class="b toggle">
<label id=toggle>Turn On</label>
<label class="switch">
- <input id="enabled" type="checkbox"/>
+ <input id="enabled" type="checkbox" checked/>
<span class="slider round"></span>
</label>
</div>
diff --git a/proxy/webext/popup.js b/proxy/webext/popup.js
index 977f6a2..55891d4 100644
--- a/proxy/webext/popup.js
+++ b/proxy/webext/popup.js
@@ -7,7 +7,6 @@ port.onMessage.addListener((m) => {
const div = document.getElementById('active');
const img = div.querySelector('img');
const enabled = m.enabled
- img.src = `icons/status-${enabled ? "on" : "off"}.png`;
const ps = div.querySelectorAll('p');
const clients = active ? 1 : 0;
const enabledText = document.getElementById('toggle');
@@ -16,15 +15,13 @@ port.onMessage.addListener((m) => {
enabledText.innerText = 'Turn Off';
ps[0].innerText = `${clients} client${(clients !== 1) ? 's' : ''} connected.`;
ps[1].innerText = `Your snowflake has helped ${m.total} user${(m.total !== 1) ? 's' : ''} circumvent censorship in the last 24 hours.`;
- if (active) {
- img.src = `icons/status-running.png`;
- }
} else {
ps[0].innerText = "Snowflake is off";
ps[1].innerText = "";
document.getElementById('enabled').checked = false;
enabledText.innerText = 'Turn On';
}
+ img.src = `icons/status-${active? "running" : enabled? "on" : "off"}.png`;
});
document.addEventListener('change', (event) => {
_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits