new option to hide controller by default

When enabled controller visibility in 'manual' mode: to hide/unhide the
user needs to use the configured shortcut keys.

Closes https://github.com/igrigorik/videospeed/issues/156.
This commit is contained in:
Ilya Grigorik
2016-12-22 17:12:51 -08:00
parent 8300c3a8e9
commit 4a3d170f84
3 changed files with 14 additions and 0 deletions

View File

@@ -12,6 +12,7 @@ chrome.extension.sendMessage({}, function(response) {
advanceKeyCode: 88, // default: X advanceKeyCode: 88, // default: X
displayKeyCode: 86, // default: V displayKeyCode: 86, // default: V
rememberSpeed: false, // default: false rememberSpeed: false, // default: false
startHidden: false, // default: false
blacklist: ` blacklist: `
www.instagram.com www.instagram.com
twitter.com twitter.com
@@ -33,6 +34,7 @@ chrome.extension.sendMessage({}, function(response) {
tc.settings.displayKeyCode = Number(storage.displayKeyCode); tc.settings.displayKeyCode = Number(storage.displayKeyCode);
tc.settings.advanceKeyCode = Number(storage.advanceKeyCode); tc.settings.advanceKeyCode = Number(storage.advanceKeyCode);
tc.settings.rememberSpeed = Boolean(storage.rememberSpeed); tc.settings.rememberSpeed = Boolean(storage.rememberSpeed);
tc.settings.startHidden = Boolean(storage.startHidden);
tc.settings.blacklist = String(storage.blacklist); tc.settings.blacklist = String(storage.blacklist);
initializeWhenReady(document); initializeWhenReady(document);
@@ -94,6 +96,10 @@ chrome.extension.sendMessage({}, function(response) {
wrapper.addEventListener('mousedown', prevent, true); wrapper.addEventListener('mousedown', prevent, true);
wrapper.addEventListener('click', prevent, true); wrapper.addEventListener('click', prevent, true);
if (tc.settings.startHidden) {
wrapper.classList.add('vsc-hidden');
}
var shadow = wrapper.createShadowRoot(); var shadow = wrapper.createShadowRoot();
var shadowTemplate = ` var shadowTemplate = `
<style> <style>

View File

@@ -36,6 +36,10 @@
<label for="displayKeyInput">Show/hide controller</label> <label for="displayKeyInput">Show/hide controller</label>
<input id="displayKeyInput" placeholder="press a key" type="text" value=""/> <input id="displayKeyInput" placeholder="press a key" type="text" value=""/>
</div> </div>
<div class="row">
<label for="rememberSpeed">Hide controller by default</label>
<input id="startHidden" type="checkbox"/>
</div>
</section> </section>
<section> <section>

View File

@@ -10,6 +10,7 @@ var tcDefaults = {
advanceKeyCode: 88, // default: X advanceKeyCode: 88, // default: X
displayKeyCode: 86, // default: V displayKeyCode: 86, // default: V
rememberSpeed: false, // default: false rememberSpeed: false, // default: false
startHidden: false, // default: false
blacklist: ` blacklist: `
www.instagram.com www.instagram.com
twitter.com twitter.com
@@ -98,6 +99,7 @@ function save_options() {
var fasterKeyCode = document.getElementById('fasterKeyInput').keyCode; var fasterKeyCode = document.getElementById('fasterKeyInput').keyCode;
var displayKeyCode = document.getElementById('displayKeyInput').keyCode; var displayKeyCode = document.getElementById('displayKeyInput').keyCode;
var rememberSpeed = document.getElementById('rememberSpeed').checked; var rememberSpeed = document.getElementById('rememberSpeed').checked;
var startHidden = document.getElementById('startHidden').checked;
var blacklist = document.getElementById('blacklist').value; var blacklist = document.getElementById('blacklist').value;
speedStep = isNaN(speedStep) ? tcDefaults.speedStep : Number(speedStep); speedStep = isNaN(speedStep) ? tcDefaults.speedStep : Number(speedStep);
@@ -121,6 +123,7 @@ function save_options() {
fasterKeyCode: fasterKeyCode, fasterKeyCode: fasterKeyCode,
displayKeyCode: displayKeyCode, displayKeyCode: displayKeyCode,
rememberSpeed: rememberSpeed, rememberSpeed: rememberSpeed,
startHidden: startHidden,
blacklist: blacklist.replace(/^\s+|\s+$/gm,'') blacklist: blacklist.replace(/^\s+|\s+$/gm,'')
}, function() { }, function() {
// Update status to let user know options were saved. // Update status to let user know options were saved.
@@ -145,6 +148,7 @@ function restore_options() {
updateShortcutInputText('fasterKeyInput', storage.fasterKeyCode); updateShortcutInputText('fasterKeyInput', storage.fasterKeyCode);
updateShortcutInputText('displayKeyInput', storage.displayKeyCode); updateShortcutInputText('displayKeyInput', storage.displayKeyCode);
document.getElementById('rememberSpeed').checked = storage.rememberSpeed; document.getElementById('rememberSpeed').checked = storage.rememberSpeed;
document.getElementById('startHidden').checked = storage.startHidden;
document.getElementById('blacklist').value = storage.blacklist; document.getElementById('blacklist').value = storage.blacklist;
}); });
} }