Browse Source

Added whitelist mode support in popup UI

master
Said Achmiz 6 years ago
parent
commit
649d7b0773
2 changed files with 60 additions and 18 deletions
  1. 35
    5
      popup.css
  2. 25
    13
      popup.js

+ 35
- 5
popup.css View File

/***********/
/* GENERAL */
/***********/

html { html {
font-size: 16px; font-size: 16px;
box-sizing: border-box; box-sizing: border-box;
margin: 0; margin: 0;
padding: 0; padding: 0;
} }

/***********/
/* BUTTONS */
/***********/

button { button {
-webkit-appearance: none; -webkit-appearance: none;
-moz-appearance: none; -moz-appearance: none;
button::selection { button::selection {
background-color: transparent; background-color: transparent;
} }

/***************/
/* MAIN BUTTON */
/***************/

.main-button-container { .main-button-container {
display: flex; display: flex;
flex-flow: column; flex-flow: column;
button.main-button.active::after { button.main-button.active::after {
opacity: 1.0; opacity: 1.0;
} }

button.main-button.whitelist::after {
opacity: 0.15;
}
button.main-button.whitelist.active::after {
opacity: 0.0;
}

/*********************/
/* AUXILIARY BUTTONS */
/*********************/

.aux-button-container { .aux-button-container {
display: flex; display: flex;
flex-flow: column; flex-flow: column;
content: "Options"; content: "Options";
margin: 0 3px 0 0; margin: 0 3px 0 0;
} }

/********/
/* MISC */
/********/

.misc {
height: 4rem;
position: relative;
}
button.reload-button { button.reload-button {
background-color: #ffd; background-color: #ffd;
margin: 4px; margin: 4px;
font-size: 2rem; font-size: 2rem;
font-weight: 900; font-weight: 900;
} }

.misc {
height: 4rem;
position: relative;
}

+ 25
- 13
popup.js View File

); );
} }
} else { // if whitelist mode } else { // if whitelist mode
// TODO: code this!
if (ASK.pageExcluded) {
/* In this case, stickies are NOT being killed. We must remove all
applicable exclusion patterns. */
ASK.exclusionPatterns = ASK.exclusionPatterns.filter(pattern =>
!ASK.activeTabLocation.match(new RegExp(pattern))
);
} else {
/* In this case, stickies ARE being killed. We must add an exclusion
pattern. */
ASK.exclusionPatterns.push(regExpForCurrentTab());
}
} }
recalculatePatternEffects(); recalculatePatternEffects();
} }


function updateUIState() { function updateUIState() {
let button = document.querySelector("button.main-button"); let button = document.querySelector("button.main-button");
if (ASK.mode == "blacklist" && ASK.pageMatched && !ASK.pageExcluded) {
button.classList.toggle("active", true);
// button.innerHTML = "X";
} else if (ASK.mode == "blacklist" && (!ASK.pageMatched || ASK.pageExcluded)) {
button.classList.toggle("active", false);
// button.innerHTML = "O";
} else if (ASK.mode == "whitelist" && !ASK.pageExcluded) {
button.classList.toggle("active", false);
// button.innerHTML = "X";
} else if (ASK.mode == "whitelist" && ASK.pageExcluded) {
button.classList.toggle("active", true);
// button.innerHTML = "O";
if (ASK.mode == "blacklist") {
if (ASK.pageMatched && !ASK.pageExcluded) {
button.classList.toggle("active", true);
} else {
button.classList.toggle("active", false);
}
button.classList.toggle("whitelist", false);
} else {
if (!ASK.pageExcluded) {
button.classList.toggle("active", false);
} else {
button.classList.toggle("active", true);
}
button.classList.toggle("whitelist", true);
} }
} }



Loading…
Cancel
Save