lexgui 0.1.36 → 0.1.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -491,6 +491,7 @@ class VideoEditor {
491
491
  await new Promise(r => setTimeout(r, 1000));
492
492
  this.video.currentTime = 10000000 * Math.random();
493
493
  }
494
+ this.video.currentTime = -1; // BUG: some videos will not play unless this line is present
494
495
  this.video.currentTime = 0;
495
496
  this.endTime = this.video.duration;
496
497
  this.timebar.currentX = this._timeToX(0);
@@ -498,7 +499,10 @@ class VideoEditor {
498
499
  this._setStartValue(this.timebar.startX);
499
500
  this._setCurrentValue(this.timebar.currentX);
500
501
  this.timebar.update(this.timebar.currentX);
501
- this._update();
502
+
503
+ if ( !this.requestId ){ // only have one update on flight
504
+ this._update();
505
+ }
502
506
  this.controls = options.controls ?? true;
503
507
  if(!this.controls) {
504
508
  this.hideControls();
@@ -615,12 +619,16 @@ class VideoEditor {
615
619
  this.controlsArea.hide();
616
620
  }
617
621
 
618
- delete ( ) {
622
+ stopUpdates(){
623
+
619
624
  if(this.requestId) {
620
625
  cancelAnimationFrame(this.requestId);
621
626
  this.requestId = null;
622
627
  }
628
+ }
623
629
 
630
+ delete ( ) {
631
+ this.stopUpdates();
624
632
  delete this;
625
633
  }
626
634
  }
package/build/lexgui.css CHANGED
@@ -776,6 +776,7 @@ body.noevents * {
776
776
  margin-top: 0.3em;
777
777
  margin-right: 0.7em;
778
778
  color: var(--global-selected-light);
779
+ font-size: 11px;
779
780
  }
780
781
 
781
782
  .lextitle.link {
@@ -1282,6 +1283,17 @@ input[type=number] {
1282
1283
  border: 2px solid var(--global-selected);
1283
1284
  }
1284
1285
 
1286
+ .lexwidget .numberbox span {
1287
+ position: absolute;
1288
+ top: -2px;
1289
+ pointer-events: none;
1290
+ }
1291
+
1292
+ .lexinputmeasure {
1293
+ font-family: var(--global-font);
1294
+ font-size: var(--global-font-size);
1295
+ }
1296
+
1285
1297
  .lexinputslider {
1286
1298
  appearance: none;
1287
1299
  -moz-appearance: none;
@@ -1339,6 +1351,40 @@ input[type="range"] {
1339
1351
  right: 0.8em;
1340
1352
  }
1341
1353
 
1354
+ .lexwidget .lexunit {
1355
+ -webkit-user-select: none; /* Safari 3.1+ */
1356
+ -moz-user-select: none; /* Firefox 2+ */
1357
+ -ms-user-select: none; /* IE 10+ */
1358
+ user-select: none; /* Standard syntax */
1359
+ }
1360
+
1361
+ /* Size Widget */
1362
+
1363
+ .lexwidget .lexsizecross {
1364
+ color: var(--global-selected);
1365
+ font-weight: 800;
1366
+ }
1367
+
1368
+ /* Pad Widget */
1369
+
1370
+ .lexwidget .lexpad {
1371
+ place-items: center;
1372
+ }
1373
+
1374
+ .lexwidget .lexpad .lexinnerpad {
1375
+ border-radius: 4px;
1376
+ background-color: var(--global-dark-background);
1377
+ }
1378
+
1379
+ .lexwidget .lexpad .lexinnerpad .lexpadthumb {
1380
+ background-color: var(--global-selected-light);
1381
+ width: 10%;
1382
+ height: 10%;
1383
+ border-radius: 2px;
1384
+ transform: translate(0px, 0px);
1385
+ }
1386
+
1387
+
1342
1388
  /* Tabs Widget */
1343
1389
 
1344
1390
  .lextabscontainer {
@@ -2090,7 +2136,7 @@ meter::-webkit-meter-even-less-good-value {
2090
2136
  }
2091
2137
 
2092
2138
  .lexoverlaybuttons .lexbutton {
2093
- padding: 18px 12px;
2139
+ padding: 16px 12px;
2094
2140
  font-size: var(--global-font-size-big);
2095
2141
  border-radius: 10px;
2096
2142
  justify-content: center;
@@ -2146,7 +2192,6 @@ meter::-webkit-meter-even-less-good-value {
2146
2192
  background: none;
2147
2193
  -webkit-backdrop-filter: none;
2148
2194
  backdrop-filter: none;
2149
- aspect-ratio: 1;
2150
2195
  }
2151
2196
 
2152
2197
  .lexoverlaybuttons.vertical .lexoverlaygroup {
@@ -2502,6 +2547,76 @@ meter::-webkit-meter-even-less-good-value {
2502
2547
  width: 95%;
2503
2548
  }
2504
2549
 
2550
+ /* Knob Widget */
2551
+
2552
+ .lexknob {
2553
+ padding: 8px;
2554
+ }
2555
+
2556
+ .lexknob .knobcircle {
2557
+ background: rgb(62,62,62);
2558
+ background: linear-gradient(180deg, rgba(82,82,82,1) 0%, rgba(40,40,40,1) 100%);
2559
+ width: 64px;
2560
+ height: 64px;
2561
+ margin: 0 auto;
2562
+ border-radius: 50%;
2563
+ position: relative;
2564
+ box-shadow: 0px 3px 9px 2px #121212a9;
2565
+ }
2566
+
2567
+ .lexknob.sm .knobcircle {
2568
+ width: 48px;
2569
+ height: 48px;
2570
+ }
2571
+
2572
+ .lexknob.bg .knobcircle {
2573
+ width: 81px;
2574
+ height: 81px;
2575
+ }
2576
+
2577
+ .lexknob .innerknobcircle {
2578
+ background-color:rgba(62,62,62,1);
2579
+ width: 56px;
2580
+ height: 56px;
2581
+ border-radius: 50%;
2582
+ margin: 0;
2583
+ position: absolute;
2584
+ top: 50%;
2585
+ left: 50%;
2586
+ translate: -50% -50%;
2587
+ }
2588
+
2589
+ .lexknob.sm .innerknobcircle {
2590
+ width: 39px;
2591
+ height: 39px;
2592
+ }
2593
+
2594
+ .lexknob.bg .innerknobcircle {
2595
+ width: 73px;
2596
+ height: 73px;
2597
+ }
2598
+
2599
+ .lexknob .knobmarker {
2600
+ background-color: var(--global-selected);
2601
+ filter: brightness(1.5);
2602
+ width: 6px;
2603
+ height: 6px;
2604
+ border-radius: 50%;
2605
+ margin: 0 auto;
2606
+ margin-top: 6px;
2607
+ }
2608
+
2609
+ .lexknob.sm .knobmarker {
2610
+ width: 5px;
2611
+ height: 5px;
2612
+ }
2613
+
2614
+ .lexknob.bg .knobmarker {
2615
+ width: 7px;
2616
+ height: 7px;
2617
+ margin-top: 8px;
2618
+ }
2619
+
2505
2620
  /** Timeline */
2506
2621
 
2507
2622
  .lextimeline {