diff options
author | id_ed25519_bbb.git <joak@nospace.at> | 2016-12-19 13:59:01 +0100 |
---|---|---|
committer | id_ed25519_bbb.git <joak@nospace.at> | 2016-12-19 13:59:01 +0100 |
commit | 3c08a384d5471bca3e414091aeef9afcfb9ba668 (patch) | |
tree | 5542c856c5694b5b217ba1703e453b65b5695c06 | |
parent | bc37ec21ad65fbd4284e0d75dc372532a33dbd7b (diff) |
add lamp and mirror
36 files changed, 518 insertions, 0 deletions
diff --git a/2016_lamp_browser/chrome/icon-16.png b/2016_lamp_browser/chrome/icon-16.png Binary files differnew file mode 100644 index 0000000..698e8bf --- /dev/null +++ b/2016_lamp_browser/chrome/icon-16.png diff --git a/2016_lamp_browser/chrome/icon-32.png b/2016_lamp_browser/chrome/icon-32.png Binary files differnew file mode 100644 index 0000000..a629ac6 --- /dev/null +++ b/2016_lamp_browser/chrome/icon-32.png diff --git a/2016_lamp_browser/chrome/icon-64.png b/2016_lamp_browser/chrome/icon-64.png Binary files differnew file mode 100644 index 0000000..80130ab --- /dev/null +++ b/2016_lamp_browser/chrome/icon-64.png diff --git a/2016_lamp_browser/chrome/icon.png b/2016_lamp_browser/chrome/icon.png Binary files differnew file mode 100644 index 0000000..21fd4ae --- /dev/null +++ b/2016_lamp_browser/chrome/icon.png diff --git a/2016_lamp_browser/chrome/lamp.css b/2016_lamp_browser/chrome/lamp.css new file mode 100644 index 0000000..78c8a81 --- /dev/null +++ b/2016_lamp_browser/chrome/lamp.css @@ -0,0 +1,3 @@ +/* +empty +*/ diff --git a/2016_lamp_browser/chrome/lamp.js b/2016_lamp_browser/chrome/lamp.js new file mode 100644 index 0000000..b732f8d --- /dev/null +++ b/2016_lamp_browser/chrome/lamp.js @@ -0,0 +1,22 @@ +document.addEventListener('DOMContentLoaded', init); + +function init(){ + var elem = document.getElementById('on'); + elem.addEventListener('click',funcon); + var elem2 = document.getElementById('off'); + elem2.addEventListener('click',funcoff); +} + +function funcon(){ + chrome.tabs.insertCSS({ + code: "body{transition: opacity 0.2s ease-in; opacity: 1}" + }); +} + +function funcoff(){ + chrome.tabs.insertCSS({ + code: "body{transition: opacity 0.2s ease-in; opacity: 0}" + }); +} + + diff --git a/2016_lamp_browser/chrome/manifest.json b/2016_lamp_browser/chrome/manifest.json new file mode 100644 index 0000000..64fa4ea --- /dev/null +++ b/2016_lamp_browser/chrome/manifest.json @@ -0,0 +1,23 @@ +{ + "manifest_version": 2, + + "name": "Lamp", + "description": "If you turn off this lamp it will darken your browser!", + "version": "1.0", + "author": "joak", + "permissions": ["activeTab"], + "browser_action": { + "default_icon": "icon.png", + "default_popup": "popup.html", + "default_title": "Turns off the light!" + }, + "icons": { + "16": "icon-16.png", + "32": "icon-32.png", + "64": "icon-64.png" + }, + "content_scripts": [{ + "matches": ["<all_urls>"], + "css": ["lamp.css"] + }] +} diff --git a/2016_lamp_browser/chrome/popup.html b/2016_lamp_browser/chrome/popup.html new file mode 100644 index 0000000..3aeee38 --- /dev/null +++ b/2016_lamp_browser/chrome/popup.html @@ -0,0 +1,52 @@ +<!doctype html> +<html> + <head> + <title>Lamp</title> + <style> + body { + font-family: "Segoe UI", "Lucida Grande", Tahoma, sans-serif; + font-size: 100%; + background: white; + width: 400px; + height: 105px; + } + #button { + text-align: center; + margin-top: 15px; + margin-bottom: 5px; + } + #start { + position: absolute: + top: 50%; + } + #wrapper{ + border: 5px solid black; + padding: 10px; + } + #title{ + text-align: center; + } + #title h2{ + margin-top: 1px; + } + #settings{ + text-align: center; + } + </style> + <script src="lamp.js"></script> + </head> + <body> + <div id="wrapper"> + <div id="title"> + <h2>Lamp</h2> + </div> + <div id="settings"> + <div id="button"> + <button type="button" id="on">On</button> + <button type="button" id="off">Off</button> + </div> + </div> + </div> + </body> +</html> + diff --git a/2016_lamp_browser/firefox/README.md b/2016_lamp_browser/firefox/README.md new file mode 100644 index 0000000..1a34eb0 --- /dev/null +++ b/2016_lamp_browser/firefox/README.md @@ -0,0 +1,2 @@ +#lamp +If you turn off the lamp it will darken your browser! diff --git a/2016_lamp_browser/firefox/data/icon-16.png b/2016_lamp_browser/firefox/data/icon-16.png Binary files differnew file mode 100644 index 0000000..698e8bf --- /dev/null +++ b/2016_lamp_browser/firefox/data/icon-16.png diff --git a/2016_lamp_browser/firefox/data/icon-32.png b/2016_lamp_browser/firefox/data/icon-32.png Binary files differnew file mode 100644 index 0000000..a629ac6 --- /dev/null +++ b/2016_lamp_browser/firefox/data/icon-32.png diff --git a/2016_lamp_browser/firefox/data/icon-64.png b/2016_lamp_browser/firefox/data/icon-64.png Binary files differnew file mode 100644 index 0000000..80130ab --- /dev/null +++ b/2016_lamp_browser/firefox/data/icon-64.png diff --git a/2016_lamp_browser/firefox/data/icon.png b/2016_lamp_browser/firefox/data/icon.png Binary files differnew file mode 100644 index 0000000..21fd4ae --- /dev/null +++ b/2016_lamp_browser/firefox/data/icon.png diff --git a/2016_lamp_browser/firefox/data/onoff.js b/2016_lamp_browser/firefox/data/onoff.js new file mode 100644 index 0000000..378a724 --- /dev/null +++ b/2016_lamp_browser/firefox/data/onoff.js @@ -0,0 +1,11 @@ +var on = document.getElementById("on"); +var off = document.getElementById("off"); + +on.addEventListener('click', function(event) { + self.port.emit("lamp", "on"); +}, true); + +off.addEventListener('click', function() { + self.port.emit("lamp", "off"); +}, true); + diff --git a/2016_lamp_browser/firefox/data/panel.html b/2016_lamp_browser/firefox/data/panel.html new file mode 100644 index 0000000..1f3c13d --- /dev/null +++ b/2016_lamp_browser/firefox/data/panel.html @@ -0,0 +1,44 @@ +<head> + <style> + body { + font-family: "Segoe UI", "Lucida Grande", Tahoma, sans-serif; + font-size: 100%; + background: white; + } + #button { + text-align: center; + margin-top: 15px; + margin-bottom: 5px; + } + #start { + position: absolute: + top: 50%; + } + #wrapper{ + border: 5px solid black; + padding: 10px; + } + #title{ + text-align: center; + } + #title h2{ + margin-top: 1px; + } + #settings{ + text-align: center; + } + </style> +</head> +<body> + <div id="wrapper"> + <div id="title"> + <h2>Lamp</h2> + </div> + <div id="settings"> + <div id="button"> + <button type="button" id="on">On</button> + <button type="button" id="off">Off</button> + </div> + </div> + </div> +</body> diff --git a/2016_lamp_browser/firefox/index.js b/2016_lamp_browser/firefox/index.js new file mode 100644 index 0000000..c83160e --- /dev/null +++ b/2016_lamp_browser/firefox/index.js @@ -0,0 +1,55 @@ +var { ToggleButton } = require('sdk/ui/button/toggle'); +var panels = require("sdk/panel"); +var self = require("sdk/self").data; +var pageMod = require("sdk/page-mod"); +var state = false; + +var button = ToggleButton({ + id: "my-button", + label: "lamp", + icon: { + "16": "./icon-16.png", + "32": "./icon-32.png", + "64": "./icon-64.png" + }, + onChange: handleChange +}); + +var panel = panels.Panel({ + width: 500, + height: 130, + contentURL: self.url("panel.html"), + contentScriptFile: self.url("onoff.js"), + onHide: handleHide +}); + +function handleChange(state) { + if (state.checked) { + panel.show({ + position: button + }); + } +} + +function handleHide() { + button.state('window', {checked: false}); +} + +var workers = []; +panel.port.on("lamp", function (text) { + if(text == "on"){ + state = true; + pageMod.PageMod({ + include: "*", + attachTo: ["existing", "top"], + contentScript: 'document.getElementsByTagName("body")[0].style = "transition: opacity 0.2s ease-in; opacity: 1"' + }); + } else if (text == "off"){ + state == false; + pageMod.PageMod({ + include: "*", + attachTo: ["existing", "top"], + contentScript: 'document.getElementsByTagName("body")[0].style = "transition: opacity 0.2s ease-in; opacity: 0.0"' + }); + } +}); diff --git a/2016_lamp_browser/firefox/lamp.xpi b/2016_lamp_browser/firefox/lamp.xpi Binary files differnew file mode 100644 index 0000000..0468d7a --- /dev/null +++ b/2016_lamp_browser/firefox/lamp.xpi diff --git a/2016_lamp_browser/firefox/package.json b/2016_lamp_browser/firefox/package.json new file mode 100644 index 0000000..cd27a59 --- /dev/null +++ b/2016_lamp_browser/firefox/package.json @@ -0,0 +1,17 @@ +{ + "title": "lamp", + "name": "lamp", + "version": "0.0.1", + "icon": "resource://lamp/data/icon-32.png", + "homepage": "http://joak.nospace.at", + "description": "If you turn off this lamp it will darken your browser!", + "main": "index.js", + "author": "joak", + "engines": { + "firefox": ">=38.0a1" + }, + "license": "GPL", + "keywords": [ + "jetpack" + ] +} diff --git a/2016_mirror_browser/chrome/icon-16.png b/2016_mirror_browser/chrome/icon-16.png Binary files differnew file mode 100644 index 0000000..79df038 --- /dev/null +++ b/2016_mirror_browser/chrome/icon-16.png diff --git a/2016_mirror_browser/chrome/icon-32.png b/2016_mirror_browser/chrome/icon-32.png Binary files differnew file mode 100644 index 0000000..4e7aa3a --- /dev/null +++ b/2016_mirror_browser/chrome/icon-32.png diff --git a/2016_mirror_browser/chrome/icon-64.png b/2016_mirror_browser/chrome/icon-64.png Binary files differnew file mode 100644 index 0000000..32577f2 --- /dev/null +++ b/2016_mirror_browser/chrome/icon-64.png diff --git a/2016_mirror_browser/chrome/icon.png b/2016_mirror_browser/chrome/icon.png Binary files differnew file mode 100644 index 0000000..413653a --- /dev/null +++ b/2016_mirror_browser/chrome/icon.png diff --git a/2016_mirror_browser/chrome/manifest.json b/2016_mirror_browser/chrome/manifest.json new file mode 100644 index 0000000..b296a4e --- /dev/null +++ b/2016_mirror_browser/chrome/manifest.json @@ -0,0 +1,23 @@ +{ + "manifest_version": 2, + + "name": "Mirror", + "description": "This mirror flips your online activity!", + "version": "1.0", + "author": "joak", + "permissions": ["activeTab"], + "browser_action": { + "default_icon": "icon.png", + "default_popup": "popup.html", + "default_title": "Flip horizontally page!" + }, + "icons": { + "16": "icon-16.png", + "32": "icon-32.png", + "64": "icon-64.png" + }, + "content_scripts": [{ + "matches": ["<all_urls>"], + "css": ["mirror.css"] + }] +} diff --git a/2016_mirror_browser/chrome/mirror.css b/2016_mirror_browser/chrome/mirror.css new file mode 100644 index 0000000..78c8a81 --- /dev/null +++ b/2016_mirror_browser/chrome/mirror.css @@ -0,0 +1,3 @@ +/* +empty +*/ diff --git a/2016_mirror_browser/chrome/mirror.js b/2016_mirror_browser/chrome/mirror.js new file mode 100644 index 0000000..558c357 --- /dev/null +++ b/2016_mirror_browser/chrome/mirror.js @@ -0,0 +1,39 @@ +document.addEventListener('DOMContentLoaded', init); + +function init(){ + var elem1 = document.getElementById('lron'); + elem1.addEventListener('click',funclron); + var elem2 = document.getElementById('lroff'); + elem2.addEventListener('click',funclroff); + var elem3 = document.getElementById('upon'); + elem3.addEventListener('click',funcudon); + var elem4 = document.getElementById('upoff'); + elem4.addEventListener('click',funcudoff); +} + +function funclron(){ + chrome.tabs.insertCSS({ + code: "body{transform: rotateY(180deg);}" + }); +} + +function funclroff(){ + chrome.tabs.insertCSS({ + code: "body{transform: rotateY(0deg);}" + }); +} + + +function funcudon(){ + chrome.tabs.insertCSS({ + code: "body{transform: rotateX(180deg);}" + }); +} + +function funcudoff(){ + chrome.tabs.insertCSS({ + code: "body{transform: rotateX(0deg);}" + }); +} + + diff --git a/2016_mirror_browser/chrome/popup.html b/2016_mirror_browser/chrome/popup.html new file mode 100644 index 0000000..17e2c9c --- /dev/null +++ b/2016_mirror_browser/chrome/popup.html @@ -0,0 +1,58 @@ +<!doctype html> +<html> + <head> + <title>Mirror</title> + <style> + body { + font-family: "Segoe UI", "Lucida Grande", Tahoma, sans-serif; + font-size: 100%; + background: white; + width: 400px; + height: 105px; + } + #button { + text-align: center; + margin-top: 15px; + margin-bottom: 5px; + } + #start { + position: absolute: + top: 50%; + } + #wrapper{ + border: 5px solid black; + padding: 10px; + } + #title{ + text-align: center; + } + #title h2{ + margin-top: 1px; + } + #settings{ + text-align: center; + } + </style> + <script src="mirror.js"></script> + </head> + <body> + <div id="wrapper"> + <div id="title"> + <h2>Mirror</h2> + </div> + <div id="settings"> + <div id="button"> + <p>⬌ + <button type="button" id="lron">On</button> + <button type="button" id="lroff">Off</button> + </p> + <p>⬍ + <button type="button" id="upon">O n</button> + <button type="button" id="upoff"> Off</button> + </p> + </div> + </div> + </div> + </body> +</html> + diff --git a/2016_mirror_browser/firefox/README.md b/2016_mirror_browser/firefox/README.md new file mode 100644 index 0000000..e6c91e3 --- /dev/null +++ b/2016_mirror_browser/firefox/README.md @@ -0,0 +1,2 @@ +#mirror +This mirror flips your online activity! diff --git a/2016_mirror_browser/firefox/data/icon-16.png b/2016_mirror_browser/firefox/data/icon-16.png Binary files differnew file mode 100644 index 0000000..79df038 --- /dev/null +++ b/2016_mirror_browser/firefox/data/icon-16.png diff --git a/2016_mirror_browser/firefox/data/icon-32.png b/2016_mirror_browser/firefox/data/icon-32.png Binary files differnew file mode 100644 index 0000000..4e7aa3a --- /dev/null +++ b/2016_mirror_browser/firefox/data/icon-32.png diff --git a/2016_mirror_browser/firefox/data/icon-64.png b/2016_mirror_browser/firefox/data/icon-64.png Binary files differnew file mode 100644 index 0000000..32577f2 --- /dev/null +++ b/2016_mirror_browser/firefox/data/icon-64.png diff --git a/2016_mirror_browser/firefox/data/icon.png b/2016_mirror_browser/firefox/data/icon.png Binary files differnew file mode 100644 index 0000000..32577f2 --- /dev/null +++ b/2016_mirror_browser/firefox/data/icon.png diff --git a/2016_mirror_browser/firefox/data/onoff.js b/2016_mirror_browser/firefox/data/onoff.js new file mode 100644 index 0000000..945e090 --- /dev/null +++ b/2016_mirror_browser/firefox/data/onoff.js @@ -0,0 +1,21 @@ +var lron = document.getElementById("lron"); +var lroff = document.getElementById("lroff"); +var udon = document.getElementById("udon"); +var udoff = document.getElementById("udoff"); + +lron.addEventListener('click', function(event) { + self.port.emit("lrmirror", "on"); +}, true); + +lroff.addEventListener('click', function() { + self.port.emit("lrmirror", "off"); +}, true); + +udon.addEventListener('click', function(event) { + self.port.emit("udmirror", "on"); +}, true); + +udoff.addEventListener('click', function() { + self.port.emit("udmirror", "off"); +}, true); + diff --git a/2016_mirror_browser/firefox/data/panel.html b/2016_mirror_browser/firefox/data/panel.html new file mode 100644 index 0000000..e904c90 --- /dev/null +++ b/2016_mirror_browser/firefox/data/panel.html @@ -0,0 +1,53 @@ +<head> + <style> + body { + font-family: "Segoe UI", "Lucida Grande", Tahoma, sans-serif; + font-size: 100%; + background: white; + } + .extra-font{ + font-family: Times New Roman; + } + #button { + text-align: center; + margin-top: 15px; + margin-bottom: 5px; + } + #start { + position: absolute: + top: 50%; + } + #wrapper{ + border: 5px solid black; + padding: 10px; + } + #title{ + text-align: center; + } + #title h2{ + margin-top: 1px; + } + #settings{ + text-align: center; + } + </style> +</head> +<body> + <div id="wrapper"> + <div id="title"> + <h2>Mirror</h2> + </div> + <div id="settings"> + <div id="button"> + <p>↔ + <button type="button" id="lron">On</button> + <button type="button" id="lroff">Off</button> + </p> + <p>↕ + <button type="button" id="udon">On</button> + <button type="button" id="udoff">Off</button> + </p> + </div> + </div> + </div> +</body> diff --git a/2016_mirror_browser/firefox/index.js b/2016_mirror_browser/firefox/index.js new file mode 100644 index 0000000..6c143c7 --- /dev/null +++ b/2016_mirror_browser/firefox/index.js @@ -0,0 +1,73 @@ +var { ToggleButton } = require('sdk/ui/button/toggle'); +var panels = require("sdk/panel"); +var self = require("sdk/self").data; +var pageMod = require("sdk/page-mod"); +var state = false; + +var button = ToggleButton({ + id: "my-button", + label: "mirror", + icon: { + "16": "./icon-16.png", + "32": "./icon-32.png", + "64": "./icon-64.png" + }, + onChange: handleChange +}); + +var panel = panels.Panel({ + width: 500, + height: 180, + contentURL: self.url("panel.html"), + contentScriptFile: self.url("onoff.js"), + onHide: handleHide +}); + +function handleChange(state) { + if (state.checked) { + panel.show({ + position: button + }); + } +} + +function handleHide() { + button.state('window', {checked: false}); +} + +panel.port.on("lrmirror", function (text) { + if(text == "on"){ + state = true; + pageMod.PageMod({ + include: "*", + attachTo: ["existing", "top"], + contentScript: 'document.getElementsByTagName("body")[0].style = "transform: rotateY(180deg)"' + }); + } else if (text == "off"){ + state == false; + pageMod.PageMod({ + include: "*", + attachTo: ["existing", "top"], + contentScript: 'document.getElementsByTagName("body")[0].style = "transform: rotateY(0deg)"' + }); + } +}); + +panel.port.on("udmirror", function (text) { + if(text == "on"){ + state = true; + pageMod.PageMod({ + include: "*", + attachTo: ["existing", "top"], + contentScript: 'document.getElementsByTagName("body")[0].style = "transform: rotateX(180deg)"' + }); + } else if (text == "off"){ + state == false; + pageMod.PageMod({ + include: "*", + attachTo: ["existing", "top"], + contentScript: 'document.getElementsByTagName("body")[0].style = "transform: rotateX(0deg)"' + }); + } +}); + diff --git a/2016_mirror_browser/firefox/mirror.xpi b/2016_mirror_browser/firefox/mirror.xpi Binary files differnew file mode 100644 index 0000000..3744a35 --- /dev/null +++ b/2016_mirror_browser/firefox/mirror.xpi diff --git a/2016_mirror_browser/firefox/package.json b/2016_mirror_browser/firefox/package.json new file mode 100644 index 0000000..5cdbbbf --- /dev/null +++ b/2016_mirror_browser/firefox/package.json @@ -0,0 +1,17 @@ +{ + "title": "mirror", + "name": "mirror", + "version": "0.0.1", + "icon": "resource://mirror/data/icon-32.png", + "homepage": "http://joak.nospace.at", + "description": "This mirror flips horizontally your online activity!", + "main": "index.js", + "author": "joak", + "engines": { + "firefox": ">=38.0a1" + }, + "license": "GPL", + "keywords": [ + "jetpack" + ] +} |