Add Interface and Badged
This commit is contained in:
parent
a3128aa0a6
commit
781a4f648a
36
clearurls.js
36
clearurls.js
|
@ -7,6 +7,8 @@ var data = [];
|
||||||
var providers = [];
|
var providers = [];
|
||||||
var prvKeys = [];
|
var prvKeys = [];
|
||||||
var globalStatus;
|
var globalStatus;
|
||||||
|
var badges = [];
|
||||||
|
var tabid = 0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialize the JSON provider object keys.
|
* Initialize the JSON provider object keys.
|
||||||
|
@ -124,6 +126,10 @@ function Provider(_name,_completeProvider = false){
|
||||||
rules.push(rule);
|
rules.push(rule);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the rules for the provider
|
||||||
|
* @param String _rules RegEx as string
|
||||||
|
*/
|
||||||
this.setRules = function(_rules) {
|
this.setRules = function(_rules) {
|
||||||
rules = _rules;
|
rules = _rules;
|
||||||
};
|
};
|
||||||
|
@ -191,6 +197,12 @@ function removeFieldsFormURL(provider, request)
|
||||||
|
|
||||||
if(bevorReplace != url)
|
if(bevorReplace != url)
|
||||||
{
|
{
|
||||||
|
if(badges[tabid] == null)
|
||||||
|
{
|
||||||
|
badges[tabid] = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
browser.browserAction.setBadgeText({text: (++badges[tabid]).toString(), tabId: tabid});
|
||||||
changes = true;
|
changes = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -261,6 +273,30 @@ function clearUrl(request)
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Call by each tab is closed.
|
||||||
|
*/
|
||||||
|
function handleRemoved(tabId, removeInfo) {
|
||||||
|
delete badges[tabId];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Call by each tab is closed.
|
||||||
|
*/
|
||||||
|
browser.tabs.onRemoved.addListener(handleRemoved);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Call by each tab change to set the actual tab id
|
||||||
|
*/
|
||||||
|
function handleActivated(activeInfo) {
|
||||||
|
tabid = activeInfo.tabId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Call by each tab change.
|
||||||
|
*/
|
||||||
|
browser.tabs.onActivated.addListener(handleActivated);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Call by each Request and checking the url.
|
* Call by each Request and checking the url.
|
||||||
*
|
*
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"manifest_version": 2,
|
"manifest_version": 2,
|
||||||
"name": "ClearURLs",
|
"name": "ClearURLs",
|
||||||
"version": "0.4",
|
"version": "0.5",
|
||||||
"author": "Kevin R., Arne S.",
|
"author": "Kevin R., Arne S.",
|
||||||
"description": "Remove tracking elements form URLs. ",
|
"description": "Remove tracking elements form URLs. ",
|
||||||
"homepage_url": "https://github.com/KevinRoebert/ClearUrls",
|
"homepage_url": "https://github.com/KevinRoebert/ClearUrls",
|
||||||
|
|
27
popup.html
27
popup.html
|
@ -2,6 +2,7 @@
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>ClearURLs Add-on</title>
|
<title>ClearURLs Add-on</title>
|
||||||
|
<meta charset="utf-8">
|
||||||
<link rel="stylesheet" type="text/css" href="popup_style.css">
|
<link rel="stylesheet" type="text/css" href="popup_style.css">
|
||||||
<link rel="stylesheet" type="text/css" href="switchButtons.css">
|
<link rel="stylesheet" type="text/css" href="switchButtons.css">
|
||||||
<script src="jquery-3.2.1.min.js"></script>
|
<script src="jquery-3.2.1.min.js"></script>
|
||||||
|
@ -9,37 +10,13 @@
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="main">
|
<div id="main">
|
||||||
<div class="header">ClearURLs 0.4</div>
|
<div class="header">ClearURLs 0.5</div>
|
||||||
<div id="content">
|
<div id="content">
|
||||||
<div id="default">
|
<div id="default">
|
||||||
<div id="global">
|
<div id="global">
|
||||||
Enable globally:<br>
|
Enable globally:<br>
|
||||||
<button id="globalStatus" class="status statusEnabled"></button>
|
<button id="globalStatus" class="status statusEnabled"></button>
|
||||||
</div>
|
</div>
|
||||||
<div id="individual">
|
|
||||||
Enable individually:<br>
|
|
||||||
<div id="presets">
|
|
||||||
<label class="switch">
|
|
||||||
<input type="checkbox">
|
|
||||||
<span class="slider round"></span>
|
|
||||||
<label>Google</label>
|
|
||||||
</label>
|
|
||||||
<!--<div class="element"><button class="switch switchEnabled"></button><div class="textElement">---placeholder---</div><br></div>-->
|
|
||||||
<!-- <button id="exception" class="enable" onclick="handleException()">Enable on page</button><br> -->
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div id="custom">
|
|
||||||
My rules (advanced):<br>
|
|
||||||
<div id="rules">
|
|
||||||
---placeholder---<br>
|
|
||||||
</div>
|
|
||||||
<div id="addRuleOuter">
|
|
||||||
Add new rule:<br>
|
|
||||||
<div id="addRuleInner">
|
|
||||||
<div id="addRuleField"><input type="text"></div><button id="addRuleBtn"><img src="plus.png"></button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
101
popup_style.css
101
popup_style.css
|
@ -1,8 +1,9 @@
|
||||||
body {
|
body {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
|
top: 0;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
min-width: 500px;
|
min-width: 180px;
|
||||||
max-width: 600px;
|
max-width: 180px;
|
||||||
font-family: "Arial";
|
font-family: "Arial";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -11,13 +12,8 @@ img {
|
||||||
margin: auto;
|
margin: auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#main {
|
#main {
|
||||||
max-width: 500px;
|
top: 0;
|
||||||
max-height: 400px;
|
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
overflow-x: hidden;
|
overflow-x: hidden;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
|
@ -36,15 +32,12 @@ img {
|
||||||
color: #dedede;
|
color: #dedede;
|
||||||
font-size: 11pt;
|
font-size: 11pt;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
top: 0;
|
||||||
padding: 2px 0px 2px 0px;
|
padding: 2px 0px 2px 0px;
|
||||||
margin: 5px 0px 5px 0px;
|
margin: 5px 0px 5px 0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#default::after {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#default::after, #presets::after, .element::after, #rules::after, #addRuleOuter::after, #addRuleInner::after {
|
|
||||||
content: " ";
|
content: " ";
|
||||||
clear: both;
|
clear: both;
|
||||||
display: table;
|
display: table;
|
||||||
|
@ -52,7 +45,6 @@ img {
|
||||||
|
|
||||||
#global {
|
#global {
|
||||||
width: 50%;
|
width: 50%;
|
||||||
float: left;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.status {
|
.status {
|
||||||
|
@ -75,76 +67,6 @@ img {
|
||||||
background-image: url("icon128_g.png");
|
background-image: url("icon128_g.png");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#individual {
|
|
||||||
width: 50%;
|
|
||||||
float: right;
|
|
||||||
}
|
|
||||||
|
|
||||||
#presets, #rules, #addRuleOuter {
|
|
||||||
margin: 10px 0px 0px 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#custom {
|
|
||||||
margin-top: 20px;
|
|
||||||
width: 100%;
|
|
||||||
display: block;
|
|
||||||
float: left;
|
|
||||||
}
|
|
||||||
|
|
||||||
#addRuleInner {
|
|
||||||
margin-top: 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#addRuleField {
|
|
||||||
overflow: hidden;
|
|
||||||
float: left;
|
|
||||||
width: calc(100% - 55px);
|
|
||||||
height: 25px;
|
|
||||||
border-radius: 3px;
|
|
||||||
height: 30px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#addRuleField input {
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
border: none;
|
|
||||||
background-color: #d7d6db;
|
|
||||||
-webkit-transition: .4s;
|
|
||||||
transition: .4s;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#addRuleField input:focus {
|
|
||||||
background-color: #ccc;
|
|
||||||
-webkit-transition: .4s;
|
|
||||||
transition: .4s;
|
|
||||||
}
|
|
||||||
|
|
||||||
#addRuleBtn {
|
|
||||||
width: 45px;
|
|
||||||
padding: 3px 0px 3px 0px;
|
|
||||||
float: right;
|
|
||||||
background-color: #b5e61d;
|
|
||||||
border: none;
|
|
||||||
border-radius: 3px;
|
|
||||||
height: 30px;
|
|
||||||
}
|
|
||||||
|
|
||||||
#addRuleBtn:active {
|
|
||||||
background-color: #96d160;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.switch {
|
.switch {
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
width: 50px;
|
width: 50px;
|
||||||
|
@ -152,15 +74,4 @@ img {
|
||||||
float: left;
|
float: left;
|
||||||
background: none;
|
background: none;
|
||||||
border: none;
|
border: none;
|
||||||
}/*
|
|
||||||
.switchEnabled {
|
|
||||||
background-image: url("switchEnabled.png");
|
|
||||||
}
|
|
||||||
.switchDisabled {
|
|
||||||
background-image: url("switchDisabled.png");
|
|
||||||
}*/
|
|
||||||
|
|
||||||
.textElement {
|
|
||||||
clear: right;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user