mirror of
https://github.com/SoPat712/videospeed.git
synced 2025-08-21 18:08:46 -04:00
WebExtensions port Minimum Viable Product. Works in Firefox
- comment out chrome.extension.sendMessage - rename chrome.storage.sync to chrome.storage.local - remove createShadowRoot - add reload_once function
This commit is contained in:
10
inject.js
10
inject.js
@@ -1,4 +1,4 @@
|
||||
chrome.extension.sendMessage({}, function(response) {
|
||||
// chrome.extension.sendMessage({}, function(response) {
|
||||
var tc = {
|
||||
settings: {
|
||||
speed: 1.0, // default 1x
|
||||
@@ -21,7 +21,7 @@ chrome.extension.sendMessage({}, function(response) {
|
||||
}
|
||||
};
|
||||
|
||||
chrome.storage.sync.get(tc.settings, function(storage) {
|
||||
chrome.storage.local.get(tc.settings, function(storage) {
|
||||
tc.settings.speed = Number(storage.speed);
|
||||
tc.settings.speedStep = Number(storage.speedStep);
|
||||
tc.settings.rewindTime = Number(storage.rewindTime);
|
||||
@@ -62,7 +62,7 @@ chrome.extension.sendMessage({}, function(response) {
|
||||
var speed = this.getSpeed();
|
||||
this.speedIndicator.textContent = speed;
|
||||
tc.settings.speed = speed;
|
||||
chrome.storage.sync.set({'speed': speed});
|
||||
chrome.storage.local.set({'speed': speed});
|
||||
}.bind(this));
|
||||
|
||||
target.playbackRate = tc.settings.speed;
|
||||
@@ -94,7 +94,7 @@ chrome.extension.sendMessage({}, function(response) {
|
||||
wrapper.addEventListener('mousedown', prevent, true);
|
||||
wrapper.addEventListener('click', prevent, true);
|
||||
|
||||
var shadow = wrapper.createShadowRoot();
|
||||
var shadow = wrapper
|
||||
var shadowTemplate = `
|
||||
<style>
|
||||
@import "${chrome.extension.getURL('shadow.css')}";
|
||||
@@ -364,4 +364,4 @@ chrome.extension.sendMessage({}, function(response) {
|
||||
animation = false;
|
||||
}, 2000);
|
||||
}
|
||||
});
|
||||
// });
|
||||
|
@@ -4,7 +4,7 @@
|
||||
"version": "0.4.2",
|
||||
"manifest_version": 2,
|
||||
"description": "Speed up, slow down, advance and rewind any HTML5 video with quick shortcuts.",
|
||||
"homepage_url": "https://github.com/igrigorik/videospeed",
|
||||
"homepage_url": "https://github.com/codebicycle/videospeed",
|
||||
"icons": {
|
||||
"16": "icons/icon16.png",
|
||||
"48": "icons/icon48.png",
|
||||
|
14
options.js
14
options.js
@@ -110,7 +110,7 @@ function save_options() {
|
||||
fasterKeyCode = isNaN(fasterKeyCode) ? tcDefaults.fasterKeyCode : fasterKeyCode;
|
||||
displayKeyCode = isNaN(displayKeyCode) ? tcDefaults.displayKeyCode : displayKeyCode;
|
||||
|
||||
chrome.storage.sync.set({
|
||||
chrome.storage.local.set({
|
||||
speedStep: speedStep,
|
||||
rewindTime: rewindTime,
|
||||
advanceTime: advanceTime,
|
||||
@@ -134,7 +134,7 @@ function save_options() {
|
||||
|
||||
// Restores options from chrome.storage
|
||||
function restore_options() {
|
||||
chrome.storage.sync.get(tcDefaults, function(storage) {
|
||||
chrome.storage.local.get(tcDefaults, function(storage) {
|
||||
document.getElementById('speedStep').value = storage.speedStep.toFixed(2);
|
||||
document.getElementById('rewindTime').value = storage.rewindTime;
|
||||
document.getElementById('advanceTime').value = storage.advanceTime;
|
||||
@@ -150,7 +150,7 @@ function restore_options() {
|
||||
}
|
||||
|
||||
function restore_defaults() {
|
||||
chrome.storage.sync.set(tcDefaults, function() {
|
||||
chrome.storage.local.set(tcDefaults, function() {
|
||||
restore_options();
|
||||
// Update status to let user know options were saved.
|
||||
var status = document.getElementById('status');
|
||||
@@ -167,7 +167,15 @@ function initShortcutInput(inputId) {
|
||||
document.getElementById(inputId).addEventListener('keydown', recordKeyPress);
|
||||
}
|
||||
|
||||
function reload_once() {
|
||||
if(!window.location.hash) {
|
||||
window.location = window.location + '#loaded';
|
||||
window.location.reload();
|
||||
}
|
||||
}
|
||||
|
||||
document.addEventListener('DOMContentLoaded', function () {
|
||||
reload_once();
|
||||
restore_options();
|
||||
|
||||
document.getElementById('save').addEventListener('click', save_options);
|
||||
|
Reference in New Issue
Block a user