mirror of
https://github.com/wled/WLED.git
synced 2025-04-23 14:27:18 +00:00
* Prevent UI from sliding when using sliders (#1400) An iro.js version bump in commit 98e4ac6 changed names for the slider & colorwheel classes which made the filter in function lock() fail. Also it seems that not all elements of the Iro sliders & colorwheel have appropriate classes set. Just changing the names still sometimes failed when the user accidentally grabbed a part of the slider / colorwheel that has no class name set. To mitigate this, lock() now checks the events classlist for classes starting with "Iro" as well as it's parents classlist if no "Iro" classes were found * Regenerate wled00/html_ui.h
This commit is contained in:
parent
bdaef7e541
commit
7684fb83d6
@ -2443,10 +2443,23 @@ let iSlide = 0, x0 = null, scrollS = 0, locked = false, w;
|
||||
|
||||
function unify(e) { return e.changedTouches ? e.changedTouches[0] : e }
|
||||
|
||||
function hasIroClass(classList) {
|
||||
for (var i = 0; i < classList.length; i++) {
|
||||
var element = classList[i];
|
||||
if (element.startsWith('Iro')) return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
function lock(e) {
|
||||
if (pcMode) return;
|
||||
var l = e.target.classList;
|
||||
if (l.contains('noslide') || l.contains('iro__wheel__saturation') || l.contains('iro__slider__value') || l.contains('iro__slider')) return;
|
||||
var pl = e.target.parentElement.classList;
|
||||
|
||||
if (l.contains('noslide') || hasIroClass(l) || hasIroClass(pl)) return;
|
||||
|
||||
x0 = unify(e).clientX;
|
||||
scrollS = d.getElementsByClassName("tabcontent")[iSlide].scrollTop;
|
||||
|
||||
|
2839
wled00/html_ui.h
2839
wled00/html_ui.h
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user