add theming select back

This commit is contained in:
MathMan05 2024-08-08 15:09:27 -05:00
parent ba1df39624
commit 86c038ec57
5 changed files with 35 additions and 3 deletions

View file

@ -2,6 +2,7 @@ import { Guild } from "./guild.js";
import { Direct } from "./direct.js";
import { User } from "./user.js";
import { Fullscreen } from "./fullscreen.js";
import { setTheme } from "./login.js";
import { SnowFlake } from "./snowflake.js";
import { Message } from "./message.js";
import { Member } from "./member.js";
@ -690,6 +691,16 @@ class Localuser {
regen();
});
}
{
const tas = settings.addButton("Themes & sounds");
{
const themes = ["Dark", "WHITE", "Light"];
tas.addSelect("Theme:", _ => {
localStorage.setItem("theme", themes[_]);
setTheme();
}, themes, { defaultIndex: themes.indexOf(localStorage.getItem("theme")) });
}
}
settings.show();
}
/**

View file

@ -195,7 +195,6 @@ class SelectInput {
span.textContent = this.label;
div.append(span);
const select = document.createElement("select");
select.selectedIndex = this.index;
select.onchange = this.onChange.bind(this);
for (const thing of this.options) {
const option = document.createElement("option");
@ -203,6 +202,7 @@ class SelectInput {
select.appendChild(option);
}
this.select = new WeakRef(select);
select.selectedIndex = this.index;
div.append(select);
return div;
}
@ -374,6 +374,11 @@ class Options {
this.options.push(options);
return options;
}
addSelect(label, onSubmit, selections, { defaultIndex = 0 } = {}) {
const select = new SelectInput(label, onSubmit, selections, this, { defaultIndex });
this.options.push(select);
return select;
}
addFileInput(label, onSubmit, {} = {}) {
const FI = new FileInput(label, onSubmit, this, {});
this.options.push(FI);