Removing palettes on Solid effect.

Bubbling bugfix for effect selection.
Re-introduced 'tt'.
This commit is contained in:
Blaz Kristan 2021-10-29 23:55:42 +02:00
parent 38c84bb1f6
commit 044d830b64
4 changed files with 2224 additions and 2200 deletions

View File

@ -99,16 +99,16 @@
<div class="qcs" onclick="pC('rnd');" title="Random" style="background:linear-gradient(to right, red, orange, yellow, green, blue, purple);transform: translateY(-11px);">R</div> <div class="qcs" onclick="pC('rnd');" title="Random" style="background:linear-gradient(to right, red, orange, yellow, green, blue, purple);transform: translateY(-11px);">R</div>
</div> </div>
<div id="csl"> <div id="csl">
<button class="btn xxs" onclick="selectSlot(0);">1</button> <button id="csl-0" class="btn xxs" onclick="selectSlot(0);">1</button>
<button class="btn xxs" onclick="selectSlot(1);">2</button> <button id="csl-1" class="btn xxs" onclick="selectSlot(1);">2</button>
<button class="btn xxs" onclick="selectSlot(2);">3</button> <button id="csl-2" class="btn xxs" onclick="selectSlot(2);">3</button>
</div> </div>
<div id="hexw"> <div id="hexw">
<input id="hexc" type="text" class="noslide" onkeydown="hexEnter(this)" autocomplete="off" maxlength="8" /> <input id="hexc" type="text" class="noslide" onkeydown="hexEnter(this)" autocomplete="off" maxlength="8" />
<button id="hexcnf" class="btn btn-xs" onclick="fromHex();"><i class="icons btn-icon">&#xe390;</i></button> <button id="hexcnf" class="btn btn-xs" onclick="fromHex();"><i class="icons btn-icon">&#xe390;</i></button>
</div> </div>
<div id="palw" class="il">
<p class="labels"><i class="icons sel-icon" onclick="tglHex()">&#xe2b3;</i> Color palette</p> <p class="labels"><i class="icons sel-icon" onclick="tglHex()">&#xe2b3;</i> Color palette</p>
<div class="il">
<div class="staytop fnd"> <div class="staytop fnd">
<input type="text" class="fnd" placeholder="Search" oninput="search(this,'pallist')" onfocus="search(this,'pallist')" /> <input type="text" class="fnd" placeholder="Search" oninput="search(this,'pallist')" onfocus="search(this,'pallist')" />
<i class="icons clear-icon" onclick="clean(this)">&#xe38f;</i> <i class="icons clear-icon" onclick="clean(this)">&#xe38f;</i>
@ -180,7 +180,7 @@
<div id="segutil2"> <div id="segutil2">
<button class="btn btn-s" id="rsbtn" onclick="rSegs()">Reset segments</button> <button class="btn btn-s" id="rsbtn" onclick="rSegs()">Reset segments</button>
</div> </div>
<!--p>Transition: <input id="tt" class="noslide" type="number" min="0" max="65.5" step="0.1" value="0.7">s</p--> <p>Transition: <input id="tt" class="noslide" type="number" min="0" max="65.5" step="0.1" value="0.7">s</p>
</div> </div>
<div id="Presets" class="tabcontent"> <div id="Presets" class="tabcontent">

View File

@ -917,13 +917,13 @@ function genPalPrevCss(id)
function generateListItemHtml(listName, id, name, clickAction, extraHtml = '') function generateListItemHtml(listName, id, name, clickAction, extraHtml = '')
{ {
return `<div class="lstI${id==0?' sticky':''}" data-id="${id}" onClick="${clickAction}()"> return `<div class="lstI${id==0?' sticky':''}" data-id="${id}" onClick="${clickAction}(${id})">
<label class="radio schkl"> <label class="radio schkl" onclick="event.preventDefault()">
&nbsp; &nbsp;
<input type="radio" value="${id}" name="${listName}"> <input type="radio" value="${id}" name="${listName}">
<span class="radiomark schk"></span> <span class="radiomark schk"></span>
</label> </label>
<div class="lstIcontent" onClick="${clickAction}(${id})"> <div class="lstIcontent">
<span class="lstIname"> <span class="lstIname">
${name} ${name}
</span> </span>
@ -1017,6 +1017,16 @@ function updateUI()
gId('wwrap').style.display = (isRgbw) ? "block":"none"; gId('wwrap').style.display = (isRgbw) ? "block":"none";
gId("wbal").style.display = (lastinfo.leds.cct) ? "block":"none"; gId("wbal").style.display = (lastinfo.leds.cct) ? "block":"none";
if (selectedFx===0) {
gId("csl-1").style.display = "none";
gId("csl-2").style.display = "none";
gId("palw").style.display = "none";
} else {
gId("csl-1").style.display = "inline-block";
gId("csl-2").style.display = "inline-block";
gId("palw").style.display = "inline-block";
}
updatePA(); updatePA();
updateHex(); updateHex();
updateRgb(); updateRgb();
@ -1113,6 +1123,9 @@ function readState(s,command=false)
if (s.pl<0) currentPreset = s.ps; if (s.pl<0) currentPreset = s.ps;
else currentPreset = s.pl; else currentPreset = s.pl;
tr = s.transition;
d.gId('tt').value = tr/10;
var selc=0; var ind=0; var selc=0; var ind=0;
populateSegments(s); populateSegments(s);
for (let i = 0; i < (s.seg||[]).length; i++) for (let i = 0; i < (s.seg||[]).length; i++)
@ -1197,13 +1210,13 @@ function requestJson(command=null)
command.v = true; // force complete /json/si API response command.v = true; // force complete /json/si API response
command.time = Math.floor(Date.now() / 1000); command.time = Math.floor(Date.now() / 1000);
/*
var t = d.gId('tt'); var t = d.gId('tt');
if (t.validity.valid && command.transition==null) { if (t.validity.valid && command.transition==null) {
var tn = parseInt(t.value*10); var tn = parseInt(t.value*10);
if (tn != tr) command.transition = tn; if (tn != tr) command.transition = tn;
} }
*/
req = JSON.stringify(command); req = JSON.stringify(command);
if (req.length > 1000) useWs = false; //do not send very long requests over websocket if (req.length > 1000) useWs = false; //do not send very long requests over websocket

File diff suppressed because it is too large Load Diff

View File

@ -8,7 +8,7 @@
*/ */
// version code in format yymmddb (b = daily build) // version code in format yymmddb (b = daily build)
#define VERSION 2110271 #define VERSION 2110291
//uncomment this if you have a "my_config.h" file you'd like to use //uncomment this if you have a "my_config.h" file you'd like to use
//#define WLED_USE_MY_CONFIG //#define WLED_USE_MY_CONFIG