summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ui/ui.js60
1 files changed, 30 insertions, 30 deletions
diff --git a/src/ui/ui.js b/src/ui/ui.js
index e367f74..6538ade 100644
--- a/src/ui/ui.js
+++ b/src/ui/ui.js
@@ -214,6 +214,9 @@ var UI = (() => {
}
+ if (!UI.mobile) {
+ UI.Sites.correctSize(presets);
+ }
}
@@ -246,42 +249,40 @@ var UI = (() => {
return row;
}
- correctSize() {
- if (!(UI.mobile || document.getElementById("presets-sizer"))) {
- // adapt button to label if needed
- let presets = document.querySelector(".presets");
- let sizer = document.createElement("div");
- sizer.id = "presets-sizer";
- sizer.appendChild(presets.cloneNode(true));
- document.body.appendChild(sizer);
- setTimeout(async () => {
- let presetWidth = sizer.querySelector("input.preset").offsetWidth;
- let labelWidth = 0;
- for (let l of sizer.querySelectorAll("label.preset")) {
- let lw = l.offsetWidth;
- debug("lw", l.textContent, lw);
- if (lw > labelWidth) labelWidth = lw;
- }
+ static correctSize(presets) {
+ // adapt button to label if needed
+ let sizer = document.createElement("div");
+ sizer.id = "presets-sizer";
+ sizer.appendChild(presets.cloneNode(true));
+ document.body.appendChild(sizer);
+ setTimeout(async () => {
+ let presetWidth = sizer.querySelector("input.preset").offsetWidth;
+ let labelWidth = 0;
+ for (let l of sizer.querySelectorAll("label.preset")) {
+ let lw = l.offsetWidth;
+ debug("lw", l.textContent, lw);
+ if (lw > labelWidth) labelWidth = lw;
+ }
- debug(`Preset: %s Label: %s`, presetWidth, labelWidth);
- labelWidth += 16;
- if (presetWidth < labelWidth) {
- for (let ss of document.styleSheets) {
- if (ss.href.endsWith("/ui.css")) {
- for (let r of ss.cssRules) {
- if (/input\.preset:checked.*min-width:/.test(r.cssText)) {
- r.style.minWidth = (labelWidth) + "px";
- break;
- }
+ debug(`Preset: %s Label: %s`, presetWidth, labelWidth);
+ labelWidth += 16;
+ if (presetWidth < labelWidth) {
+ for (let ss of document.styleSheets) {
+ if (ss.href.endsWith("/ui.css")) {
+ for (let r of ss.cssRules) {
+ if (/input\.preset:checked.*min-width:/.test(r.cssText)) {
+ r.style.minWidth = (labelWidth) + "px";
+ break;
}
}
}
}
+ }
- sizer.style.display = "none";
+ sizer.remove();
- }, 100);
- }
+ }, 100);
+ UI.Sites.correctSize = () => {}; // just once, please!
}
allSiteRows() {
@@ -446,7 +447,6 @@ var UI = (() => {
root.addEventListener("change", this, true);
root.wiredBy = this;
}
- this.correctSize();
return root;
}