2022-11-16 14:48:05 +00:00
|
|
|
<!DOCTYPE html>
|
|
|
|
<html>
|
|
|
|
<head>
|
2022-12-20 05:24:58 +00:00
|
|
|
<link rel="stylesheet" href="chrome://browser/content/extension.css">
|
|
|
|
<meta name="color-scheme" content="dark light">
|
2022-11-17 13:53:39 +00:00
|
|
|
<style>
|
2022-12-20 05:24:58 +00:00
|
|
|
html, body {
|
|
|
|
margin: 0;
|
|
|
|
}
|
|
|
|
html {
|
2022-12-20 11:13:07 +00:00
|
|
|
--highlight: rgba(132, 150, 130, 0.1);
|
|
|
|
--confirmed: rgb(0, 124, 6);
|
2022-12-20 05:24:58 +00:00
|
|
|
--hover: rgba(120,120,130,0.15);
|
|
|
|
--border: rgba(120,120,130,0.3);
|
|
|
|
--border-2: rgba(130,130,150,0.3);
|
|
|
|
--radius: 12px;
|
|
|
|
--popup-height: 400px;
|
|
|
|
overflow: hidden !important;
|
|
|
|
height: var(--popup-height);
|
|
|
|
}
|
|
|
|
body {
|
|
|
|
width: 300px;
|
|
|
|
overflow: hidden;
|
|
|
|
}
|
2022-11-17 13:53:39 +00:00
|
|
|
.hide {
|
|
|
|
display: none;
|
|
|
|
}
|
2022-12-20 05:24:58 +00:00
|
|
|
h1 {
|
|
|
|
font-size: 1em;
|
|
|
|
margin-block: .2em;
|
|
|
|
}
|
|
|
|
h2 {
|
|
|
|
font-size: 1em;
|
|
|
|
}
|
|
|
|
#mhi-wrapper, #mhi-containers {
|
|
|
|
display: contents;
|
|
|
|
}
|
|
|
|
form {
|
|
|
|
display: flex;
|
|
|
|
flex-direction: column;
|
|
|
|
height: 100vh;
|
|
|
|
}
|
|
|
|
.scroller {
|
|
|
|
height: 0;
|
|
|
|
overflow-y: auto;
|
|
|
|
flex-grow: 1;
|
|
|
|
padding: 6px;
|
|
|
|
box-sizing: border-box;
|
|
|
|
}
|
|
|
|
fieldset {
|
|
|
|
border: 0;
|
|
|
|
padding: 0;
|
|
|
|
margin: 0;
|
|
|
|
}
|
|
|
|
fieldset > h2, summary {
|
|
|
|
margin-inline: .6em;
|
|
|
|
margin-bottom: .4em;
|
|
|
|
}
|
|
|
|
.row {
|
|
|
|
background-color: var(--highlight);
|
|
|
|
padding: .8em;
|
|
|
|
box-sizing: border-box;
|
|
|
|
display: flex;
|
|
|
|
flex-wrap: wrap;
|
|
|
|
margin-bottom: 2px;
|
|
|
|
position: relative;
|
|
|
|
gap: .4em;
|
|
|
|
transition: background-color .1s;
|
|
|
|
}
|
|
|
|
.row:hover, .row:focus-within {
|
|
|
|
background: var(--hover);
|
|
|
|
}
|
|
|
|
.row:first-of-type {
|
|
|
|
border-top-left-radius: var(--radius);
|
|
|
|
border-top-right-radius: var(--radius);
|
|
|
|
}
|
|
|
|
.row:last-of-type {
|
|
|
|
border-bottom-left-radius: var(--radius);
|
|
|
|
border-bottom-right-radius: var(--radius);
|
|
|
|
}
|
|
|
|
label {
|
|
|
|
width: 0;
|
|
|
|
flex-grow: 9999;
|
|
|
|
}
|
|
|
|
label::before { /* Make entire .row clickable */
|
|
|
|
content: "";
|
|
|
|
position: absolute;
|
|
|
|
inset: 0;
|
|
|
|
}
|
|
|
|
label span {
|
2022-11-26 01:40:41 +00:00
|
|
|
display: block;
|
2022-12-20 05:24:58 +00:00
|
|
|
font-size: .9em;
|
|
|
|
opacity: .7;
|
|
|
|
margin-top: .2em;
|
|
|
|
}
|
|
|
|
input[type="text"] {
|
|
|
|
width: 100%;
|
|
|
|
}
|
|
|
|
input, textarea, select {
|
|
|
|
border: 1px solid var(--border);
|
|
|
|
padding: .7em;
|
|
|
|
border-radius: calc(var(--radius) / 2);
|
|
|
|
font-size: inherit;
|
|
|
|
flex-grow: 1;
|
|
|
|
box-sizing: border-box;
|
|
|
|
position: relative;
|
|
|
|
z-index: 2;
|
|
|
|
}
|
|
|
|
.textarea-container {
|
|
|
|
width: calc(100% - .14em);
|
|
|
|
border-radius: inherit;
|
|
|
|
}
|
|
|
|
textarea {
|
|
|
|
resize: vertical;
|
|
|
|
width: 100%;
|
|
|
|
}
|
|
|
|
select {
|
|
|
|
margin-block: -.8em;
|
|
|
|
padding-block: .4em;
|
|
|
|
border: 0;
|
|
|
|
background: none;
|
|
|
|
text-align: right;
|
2022-11-26 01:40:41 +00:00
|
|
|
}
|
2022-12-20 05:24:58 +00:00
|
|
|
.footer {
|
|
|
|
padding: 6px;
|
|
|
|
display: flex;
|
|
|
|
flex-wrap: wrap;
|
|
|
|
align-items: center;
|
|
|
|
justify-content: space-between;
|
|
|
|
border-top: 1px dashed var(--border-2);
|
|
|
|
position: relative;
|
2022-12-20 05:59:02 +00:00
|
|
|
background-color: var(--highlight);
|
2022-12-20 05:24:58 +00:00
|
|
|
box-shadow: 0 0 24px rgba(0,0,0,0.1);
|
|
|
|
}
|
|
|
|
[type="submit"] {
|
|
|
|
flex-grow: 0;
|
|
|
|
padding-inline: 2em;
|
|
|
|
}
|
|
|
|
[type="submit"]:not(:hover):not(:focus) {
|
|
|
|
background: none;
|
|
|
|
}
|
|
|
|
.footer span {
|
|
|
|
width: 0;
|
|
|
|
flex-grow: 1;
|
|
|
|
text-align: right;
|
|
|
|
padding-inline: 1em;
|
|
|
|
}
|
|
|
|
.footer a {
|
|
|
|
opacity: .7;
|
|
|
|
text-underline-offset: .2em;
|
|
|
|
color: inherit;
|
|
|
|
}
|
|
|
|
#indicator {
|
|
|
|
order: -1;
|
|
|
|
width: calc(100% + 12px);
|
|
|
|
font-weight: 600;
|
|
|
|
padding: .7em;
|
|
|
|
margin: -6px;
|
|
|
|
margin-bottom: 8px;
|
2022-12-20 11:13:07 +00:00
|
|
|
background-color: var(--confirmed);
|
2022-12-20 05:24:58 +00:00
|
|
|
text-align: center;
|
2022-12-20 11:13:07 +00:00
|
|
|
color: white;
|
2022-11-26 01:40:41 +00:00
|
|
|
}
|
2022-12-20 05:56:18 +00:00
|
|
|
@media (prefers-color-scheme: dark) {
|
|
|
|
body {
|
|
|
|
color: white;
|
|
|
|
}
|
|
|
|
}
|
2022-11-17 13:53:39 +00:00
|
|
|
</style>
|
2022-12-08 10:08:14 +00:00
|
|
|
<script src="lib/jquery-3.6.1.min.js"></script>
|
|
|
|
<script src="popup.min.js"></script>
|
2022-11-16 14:48:05 +00:00
|
|
|
</head>
|
2022-12-20 05:24:58 +00:00
|
|
|
<body>
|
|
|
|
<div id="mhi-wrapper">
|
|
|
|
<div id="mhi-containers">
|
2022-12-06 11:04:25 +00:00
|
|
|
<form id="fediact-settings">
|
2022-12-20 05:24:58 +00:00
|
|
|
<div class="scroller">
|
|
|
|
<fieldset>
|
|
|
|
<div class="row">
|
|
|
|
<label for="homeinstance">
|
|
|
|
<h1>Home Server Domain</h1>
|
|
|
|
<span>
|
|
|
|
Make sure you are logged into your home server
|
|
|
|
</span>
|
|
|
|
</label>
|
|
|
|
<input type="text" id="homeinstance" name="homeinstance" placeholder="example.social">
|
|
|
|
</div>
|
|
|
|
</fieldset>
|
|
|
|
<fieldset>
|
|
|
|
<h2>Redirect Settings</h2>
|
|
|
|
<div class="row">
|
|
|
|
<label for="redirects">Enable
|
|
|
|
<span>
|
|
|
|
Redirect to home server on double-click
|
|
|
|
</span>
|
|
|
|
</label>
|
|
|
|
<input type="checkbox" id="redirects" name="redirects">
|
|
|
|
</div>
|
|
|
|
<div class="row">
|
|
|
|
<label for="alert">Prompt
|
|
|
|
<span>
|
|
|
|
Show confirmation dialog before redirecting
|
|
|
|
</span>
|
|
|
|
</label>
|
|
|
|
<input type="checkbox" id="alert" name="alert">
|
|
|
|
</div>
|
|
|
|
<div class="row">
|
|
|
|
<label for="target">Open in...</label>
|
|
|
|
<select name="target" id="target" selected="_blank">
|
|
|
|
<option id="target_blank" value="_blank">New tab</option>
|
|
|
|
<option id="target_self" value="_self">Same tab</option>
|
|
|
|
</select>
|
|
|
|
</div>
|
|
|
|
</fieldset>
|
|
|
|
<fieldset>
|
|
|
|
<h2>Other Settings</h2>
|
|
|
|
<div class="row">
|
|
|
|
<label for="autoaction">Actions
|
|
|
|
<span>
|
|
|
|
Enable following, boosting, etc. from logged out servers
|
|
|
|
</span>
|
|
|
|
</label>
|
|
|
|
<input type="checkbox" id="autoaction" name="autoaction">
|
|
|
|
</div>
|
|
|
|
<div class="row">
|
|
|
|
<label for="hidemuted">Hide muted/blocked
|
|
|
|
<span>
|
|
|
|
Note: May fail / decrease performance
|
|
|
|
</span>
|
|
|
|
</label>
|
|
|
|
<input type="checkbox" id="hidemuted" name="hidemuted">
|
|
|
|
</div>
|
|
|
|
<div class="row">
|
|
|
|
<label for="delay">API delay
|
|
|
|
<span>
|
|
|
|
Only allow one API request every 500ms
|
|
|
|
</span>
|
|
|
|
</label>
|
|
|
|
<input type="checkbox" id="delay" name="delay">
|
|
|
|
</div>
|
|
|
|
</fieldset>
|
|
|
|
<fieldset>
|
|
|
|
<h2>Mode</h2>
|
|
|
|
<div class="row">
|
2022-12-20 10:57:40 +00:00
|
|
|
<label for="runifloggedin">Ignore sessions
|
|
|
|
<span>
|
|
|
|
Run FediAct on instances where I'm logged in
|
|
|
|
</span>
|
|
|
|
</label>
|
2022-12-20 05:24:58 +00:00
|
|
|
<input type="checkbox" id="runifloggedin" name="runifloggedin">
|
|
|
|
</div>
|
|
|
|
</fieldset>
|
|
|
|
<fieldset>
|
|
|
|
<h2>Filtered servers</h2>
|
|
|
|
<div class="row">
|
2022-12-20 10:57:40 +00:00
|
|
|
<label for="mode">Mode</label>
|
2022-12-20 05:24:58 +00:00
|
|
|
<select name="mode" id="mode" selected="blacklist">
|
2022-12-20 10:57:40 +00:00
|
|
|
<option id="blacklist" value="blacklist">Allowlist</option>
|
|
|
|
<option id="whitelist" value="whitelist">Denylist</option>
|
2022-12-20 05:24:58 +00:00
|
|
|
</select>
|
|
|
|
</div>
|
|
|
|
<div class="row">
|
|
|
|
<div class="hide textarea-container" id="blacklist_input">
|
|
|
|
<textarea id="blacklist_content" name="blacklist_content" placeholder="example.social example2.social"></textarea>
|
|
|
|
</div>
|
|
|
|
<div class="hide textarea-container" id="whitelist_input">
|
|
|
|
<textarea id="whitelist_content" name="whitelist_content" placeholder="example.social example2.social"></textarea>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</fieldset>
|
|
|
|
</div>
|
|
|
|
<div class="footer">
|
|
|
|
<input type="submit" value="Save">
|
|
|
|
<span id="indicator" style="display:none">Settings saved!</span>
|
|
|
|
<span><a target="_blank" href="https://github.com/lartsch/FediAct">More info / help on Github</a></span>
|
|
|
|
|
2022-11-17 13:53:39 +00:00
|
|
|
</div>
|
|
|
|
</form>
|
2022-11-16 14:48:05 +00:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</body>
|
2022-11-16 16:08:12 +00:00
|
|
|
</html>
|