lexgui 0.5.3 → 0.5.5

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,9 +491,9 @@ class CodeEditor {
491
491
 
492
492
  searchPanel.sameLine( 4 );
493
493
  searchPanel.addText( null, "", null, { placeholder: "Find" } );
494
- searchPanel.addButton( null, "up", () => this.search( null, true ), { className: 'micro', icon: "fa fa-arrow-up" } );
495
- searchPanel.addButton( null, "down", () => this.search(), { className: 'micro', icon: "fa fa-arrow-down" } );
496
- searchPanel.addButton( null, "x", this.hideSearchBox.bind( this ), { className: 'micro', icon: "fa fa-xmark" } );
494
+ searchPanel.addButton( null, "up", () => this.search( null, true ), { icon: "fa fa-arrow-up" } );
495
+ searchPanel.addButton( null, "down", () => this.search(), { icon: "fa fa-arrow-down" } );
496
+ searchPanel.addButton( null, "x", this.hideSearchBox.bind( this ), { icon: "fa fa-xmark" } );
497
497
 
498
498
  box.querySelector( 'input' ).addEventListener( 'keyup', e => {
499
499
  if( e.key == 'Escape' ) this.hideSearchBox();
@@ -530,7 +530,7 @@ class CodeEditor {
530
530
  // Add code-sizer
531
531
  {
532
532
  this.codeSizer = document.createElement( 'div' );
533
- this.codeSizer.className = "code-sizer";
533
+ this.codeSizer.className = "code-sizer pseudoparent-tabs";
534
534
 
535
535
  // Append all childs
536
536
  while( this.codeScroller.firstChild )
@@ -1535,9 +1535,9 @@ class CodeEditor {
1535
1535
  let panel = new LX.Panel({ className: "lexcodetabinfo", width: "calc(100%)", height: "auto" });
1536
1536
 
1537
1537
  panel.sameLine();
1538
- panel.addLabel( this.code.title, { float: 'right', signal: "@tab-name" });
1539
- panel.addLabel( "Ln " + 1, { xmaxWidth: "48px", signal: "@cursor-line" });
1540
- panel.addLabel( "Col " + 1, { xmaxWidth: "48px", signal: "@cursor-pos" });
1538
+ panel.addLabel( this.code.title, { fit: true, signal: "@tab-name" });
1539
+ panel.addLabel( "Ln " + 1, { fit: true, signal: "@cursor-line" });
1540
+ panel.addLabel( "Col " + 1, { fit: true, signal: "@cursor-pos" });
1541
1541
  panel.addButton( null, "Spaces: " + this.tabSpaces, ( value, event ) => {
1542
1542
  LX.addContextMenu( "Spaces", event, m => {
1543
1543
  const options = [ 2, 4, 8 ];
@@ -1619,7 +1619,7 @@ class CodeEditor {
1619
1619
  this.processFocus(false);
1620
1620
 
1621
1621
  LX.addContextMenu( null, e, m => {
1622
- m.add( "Create", this.addTab.bind( this, "unnamed.js", true ) );
1622
+ m.add( "Create", this.addTab.bind( this, "unnamed.js", true, "", { language: "JavaScript" } ) );
1623
1623
  m.add( "Load", this.loadTabFromFile.bind( this, "unnamed.js", true ) );
1624
1624
  });
1625
1625
  }
@@ -1731,7 +1731,8 @@ class CodeEditor {
1731
1731
  title: code.title,
1732
1732
  icon: tabIcon,
1733
1733
  onSelect: this._onSelectTab.bind( this, isNewTabButton ),
1734
- onContextMenu: this._onContextMenuTab.bind( this, isNewTabButton )
1734
+ onContextMenu: this._onContextMenuTab.bind( this, isNewTabButton ),
1735
+ allowDelete: true
1735
1736
  } );
1736
1737
 
1737
1738
  // Move into the sizer..
@@ -1805,7 +1806,8 @@ class CodeEditor {
1805
1806
  title: code.title,
1806
1807
  icon: tabIcon,
1807
1808
  onSelect: this._onSelectTab.bind( this, isNewTabButton ),
1808
- onContextMenu: this._onContextMenuTab.bind( this, isNewTabButton )
1809
+ onContextMenu: this._onContextMenuTab.bind( this, isNewTabButton ),
1810
+ allowDelete: true
1809
1811
  });
1810
1812
 
1811
1813
  // Move into the sizer..
@@ -3911,14 +3913,15 @@ class CodeEditor {
3911
3913
  }
3912
3914
 
3913
3915
  _measureChar( char = "a", use_floating = false, get_bb = false ) {
3914
-
3915
- var line = document.createElement( "pre" );
3916
- var text = document.createElement( "span" );
3916
+ const parentContainer = LX.makeContainer( null, "lexcodeeditor", "", document.body );
3917
+ const container = LX.makeContainer( null, "code", "", parentContainer );
3918
+ const line = document.createElement( "pre" );
3919
+ container.appendChild( line );
3920
+ const text = document.createElement( "span" );
3917
3921
  line.appendChild( text );
3918
3922
  text.innerText = char;
3919
- this.code.appendChild( line );
3920
3923
  var rect = text.getBoundingClientRect();
3921
- LX.UTILS.deleteElement( line );
3924
+ LX.UTILS.deleteElement( parentContainer );
3922
3925
  const bb = [ use_floating ? rect.width : Math.floor( rect.width ), use_floating ? rect.height : Math.floor( rect.height ) ];
3923
3926
  return get_bb ? bb : bb[ 0 ];
3924
3927
  }
@@ -4489,8 +4492,8 @@ CodeEditor.keywords = {
4489
4492
  'arguments', 'extends', 'instanceof', 'Infinity'],
4490
4493
  'C': ['int', 'float', 'double', 'long', 'short', 'char', 'const', 'void', 'true', 'false', 'auto', 'struct', 'typedef', 'signed', 'volatile', 'unsigned', 'static', 'extern', 'enum', 'register',
4491
4494
  'union'],
4492
- 'C++': ['int', 'float', 'double', 'bool', 'long', 'short', 'char', 'wchar_t', 'const', 'static_cast', 'dynamic_cast', 'new', 'delete', 'void', 'true', 'false', 'auto', 'struct', 'typedef', 'nullptr',
4493
- 'NULL', 'signed', 'unsigned', 'namespace', 'enum', 'extern', 'union', 'sizeof', 'static'],
4495
+ 'C++': ['int', 'float', 'double', 'bool', 'long', 'short', 'char', 'wchar_t', 'const', 'static_cast', 'dynamic_cast', 'new', 'delete', 'void', 'true', 'false', 'auto', 'class', 'struct', 'typedef', 'nullptr',
4496
+ 'NULL', 'signed', 'unsigned', 'namespace', 'enum', 'extern', 'union', 'sizeof', 'static', 'private', 'public'],
4494
4497
  'CMake': ['cmake_minimum_required', 'set', 'not', 'if', 'endif', 'exists', 'string', 'strequal', 'add_definitions', 'macro', 'endmacro', 'file', 'list', 'source_group', 'add_executable',
4495
4498
  'target_include_directories', 'set_target_properties', 'set_property', 'add_compile_options', 'add_link_options', 'include_directories', 'add_library', 'target_link_libraries',
4496
4499
  'target_link_options', 'add_subdirectory', 'add_compile_definitions', 'project', 'cache'],
@@ -176,7 +176,7 @@ class Timeline {
176
176
  header.addTitle(this.name );
177
177
  }
178
178
 
179
- const buttonContainer = LX.makeContainer(["auto", "100%"], "", { display: "flex" });
179
+ const buttonContainer = LX.makeContainer( ["auto", "100%"], "flex flex-row" );
180
180
 
181
181
  header.queue( buttonContainer );
182
182
 
package/build/lexgui.css CHANGED
@@ -34,7 +34,7 @@
34
34
  --global-text-secondary: light-dark(#262627, #d1d1d3);
35
35
  --global-text-tertiary: light-dark(#3c3c3df5, #aaaaaa);
36
36
  --global-text-quaternary: light-dark(#515152f5, #807f7f);
37
- --global-intense-background: light-dark(#fefefe, #030304);
37
+ --global-intense-background: light-dark(#fefefe, #040405);
38
38
  --global-medium-background: #252525;
39
39
  --global-blur-background: light-dark(#f7f7f7d8, #1f1f1fe7);
40
40
  --global-color-transparent: #00000000;
@@ -182,6 +182,7 @@ body {
182
182
  margin: 0;
183
183
  padding: 0;
184
184
  font-family: var(--global-font);
185
+ background-color: var(--global-color-primary);
185
186
  }
186
187
 
187
188
  *,
@@ -332,7 +333,7 @@ svg.xxl { width: var(--svg-size-xxl); height: var(--svg-size-xxl); }
332
333
  outline: none;
333
334
  }
334
335
 
335
- :root[data-strictVP="false"] {
336
+ :root[data-strictVP="false"] #lexroot {
336
337
  bottom: unset;
337
338
  }
338
339
 
@@ -344,8 +345,11 @@ svg.xxl { width: var(--svg-size-xxl); height: var(--svg-size-xxl); }
344
345
  max-width: 256px;
345
346
  }
346
347
 
347
- .lexicon {
348
+ .lock {
348
349
  margin-left: 4px;
350
+ }
351
+
352
+ .lexicon {
349
353
  cursor: pointer;
350
354
  line-height: inherit !important;
351
355
  color: var(--global-text-secondary);
@@ -896,13 +900,43 @@ a svg, svg path {
896
900
 
897
901
  /* Generic */
898
902
 
899
- .lexcontainer {
900
- display: flex;
901
- flex-direction: row;
903
+ .lexcontainer.wrapper {
904
+ margin-left: auto;
905
+ margin-right: auto;
906
+ max-width: 1400px;
907
+ border: 0px solid var(--global-color-tertiary);
902
908
  }
903
909
 
904
- .lexcontainer.col {
905
- flex-direction: column;
910
+ @media (min-width: 1400px) {
911
+ .lexcontainer.wrapper {
912
+ border-left-width: 1px;
913
+ border-right-width: 1px;
914
+ }
915
+ }
916
+
917
+ @media (min-width: 1800px) {
918
+ .lexcontainer.wrapper {
919
+ max-width: 1536px;
920
+ }
921
+ }
922
+
923
+ .lextooltip {
924
+ position: fixed;
925
+ background-color: var(--global-text-primary);
926
+ color: var(--global-color-primary);
927
+ font-size: var(--global-font-size-sm);
928
+ padding: 0.2rem;
929
+ padding-inline: 0.5rem;
930
+ border-radius: 0.4rem;
931
+ transition: opacity 0.3s cubic-bezier(0.16, 1, 0.3, 1);
932
+ animation-duration: 400ms;
933
+ animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
934
+ will-change: transform, opacity;
935
+ animation-name: slideUpAndFade;
936
+ }
937
+
938
+ .lextooltip[data-closed] {
939
+ opacity: 0;
906
940
  }
907
941
 
908
942
  /* Dropdown Menu */
@@ -1067,7 +1101,6 @@ a svg, svg path {
1067
1101
 
1068
1102
  .lexsplitbar.vertical {
1069
1103
  cursor: ns-resize;
1070
- transform: translateY(-3px);
1071
1104
  left: calc(50% - 32px);
1072
1105
  }
1073
1106
 
@@ -1095,6 +1128,9 @@ a svg, svg path {
1095
1128
  .lexbranch {
1096
1129
  width: 100%;
1097
1130
  border-radius: 6px;
1131
+ }
1132
+
1133
+ .lexpanel .lexbranch:not(:last-of-type) {
1098
1134
  margin-bottom: 4px !important;
1099
1135
  }
1100
1136
 
@@ -1107,7 +1143,6 @@ a svg, svg path {
1107
1143
 
1108
1144
  .lexbranch.last .lexbranchcontent {
1109
1145
  overflow: hidden;
1110
- margin-bottom: 6px;
1111
1146
  }
1112
1147
 
1113
1148
  .lexbranchtitle {
@@ -1177,10 +1212,6 @@ a svg, svg path {
1177
1212
  align-content: center;
1178
1213
  }
1179
1214
 
1180
- .lexbranch.first .lexbranchtitle {
1181
- margin-top: 4px;
1182
- }
1183
-
1184
1215
  .lexbranch.last.closed .lexbranchtitle {
1185
1216
  margin-bottom: 6px;
1186
1217
  }
@@ -1297,9 +1328,12 @@ a svg, svg path {
1297
1328
 
1298
1329
  .lexwidget .inputicon {
1299
1330
  padding: 6px;
1300
- font-size: var(--global-font-size-sm);
1331
+ font-size: var(--global-font-size-xs);
1301
1332
  align-self: center;
1302
1333
  text-align: center;
1334
+ margin-left: 4px;
1335
+ position: absolute;
1336
+ z-index: 1;
1303
1337
  }
1304
1338
 
1305
1339
  .lexseparator {
@@ -1353,10 +1387,11 @@ a svg, svg path {
1353
1387
  /* Text Widget */
1354
1388
 
1355
1389
  .lexwidget input.lextext, .lexwidget div.lextext {
1390
+ width: 100%;
1356
1391
  border-radius: 6px;
1357
1392
  position: relative;
1358
1393
  border: 1px solid transparent;
1359
- padding: 4px 12px !important;
1394
+ padding: 6px 12px;
1360
1395
  }
1361
1396
 
1362
1397
  .lexwidget .lextext:disabled {
@@ -1409,6 +1444,7 @@ a svg, svg path {
1409
1444
  /* TextArea Widget */
1410
1445
 
1411
1446
  .lexwidget textarea {
1447
+ width: 100%;
1412
1448
  word-break: break-word;
1413
1449
  font-family: var(--global-font);
1414
1450
  background: none;
@@ -1420,6 +1456,25 @@ a svg, svg path {
1420
1456
  transition: 0.1s linear;
1421
1457
  }
1422
1458
 
1459
+ .lexwidget textarea.outline {
1460
+ background: var(--global-color-primary);
1461
+ border: 1px solid #7a797c4f;
1462
+ }
1463
+
1464
+ .lexwidget textarea.nobg {
1465
+ background: none;
1466
+ border: 1px solid transparent;
1467
+ }
1468
+
1469
+ .lexwidget textarea.dashed {
1470
+ background: var(--global-color-primary);
1471
+ border: 1px dashed #7a797c4f;
1472
+ }
1473
+
1474
+ .lexwidget textarea.outline:hover, .lexwidget .lextext.nobg:hover {
1475
+ background: none;
1476
+ }
1477
+
1423
1478
  .lexwidget textarea:disabled {
1424
1479
  resize: none;
1425
1480
  }
@@ -2156,7 +2211,7 @@ dialog .lexselect .lexselectoptions {
2156
2211
  .lexwidget .vecbox .drag-icon {
2157
2212
  position: absolute;
2158
2213
  width: 2px;
2159
- right: 0.25em;
2214
+ right: 1em;
2160
2215
  top: 25%;
2161
2216
  font-size: var(--global-font-size-sm);
2162
2217
  color: var(--global-text-secondary);
@@ -2547,12 +2602,11 @@ input[type=number] {
2547
2602
  .lextree .lextreetools {
2548
2603
  background: var(--global-color-tertiary);
2549
2604
  padding: 2px;
2550
- padding-left: 6px;
2551
- padding-right: 6px;
2605
+ padding-inline: 8px;
2552
2606
  display: flex;
2553
2607
  align-items: center;
2554
2608
  border-radius: 10px;
2555
- margin-top: 4px;
2609
+ gap: 0.5rem;
2556
2610
  }
2557
2611
 
2558
2612
  .lexwidget.nobranch .lextree .lextreetools {
@@ -2569,15 +2623,10 @@ input[type=number] {
2569
2623
  }
2570
2624
 
2571
2625
  .lextree .lextreetools.notitle {
2572
- /* padding-top: 14px; */
2573
2626
  border-top-left-radius: 8px;
2574
2627
  border-top-right-radius: 8px;
2575
2628
  }
2576
2629
 
2577
- .lextree .lextreetools a {
2578
- margin-right: 8px;
2579
- }
2580
-
2581
2630
  .lextree span {
2582
2631
  padding: 8px;
2583
2632
  display: block;
@@ -2625,9 +2674,13 @@ input[type=number] {
2625
2674
  -moz-user-select: none;
2626
2675
  -ms-user-select: none;
2627
2676
  user-select: none;
2677
+ transition-property: color, background-color, border-color;
2678
+ transition-timing-function: ease-out;
2679
+ transition-duration: .15s;
2628
2680
  }
2629
2681
 
2630
2682
  .lextree .lextreeitem input {
2683
+ color: var(--global-color-primary);
2631
2684
  padding: 0;
2632
2685
  border: none;
2633
2686
  }
@@ -2668,8 +2721,12 @@ input[type=number] {
2668
2721
  }
2669
2722
 
2670
2723
  .lextree .lextreeitem.selected {
2671
- color: var(--global-text-primary);
2672
- background: light-dark(var(--global-color-accent-light), var(--global-color-accent));
2724
+ color: #f4f4f5;
2725
+ background: var(--global-color-accent);
2726
+ }
2727
+
2728
+ .lextree .lextreeitem.selected a.lexicon {
2729
+ color: #f4f4f5;
2673
2730
  }
2674
2731
 
2675
2732
  .lextree .lextreeitem a.hierarchy {
@@ -2680,18 +2737,6 @@ input[type=number] {
2680
2737
  font-size: var(--global-font-size-sm);
2681
2738
  }
2682
2739
 
2683
- .lextree .lextreeitem .itemicon:hover {
2684
- color: var(--global-color-accent);
2685
- }
2686
-
2687
- .lextree .lextreeitem.selected .itemicon:hover {
2688
- color: var(--global-text-secondary);
2689
- }
2690
-
2691
- .lextree .lextreeitem .itemicon:active {
2692
- margin-top: 7px;
2693
- }
2694
-
2695
2740
  /* File Input */
2696
2741
 
2697
2742
  .lexfileinput::file-selector-button {
@@ -2795,7 +2840,7 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
2795
2840
 
2796
2841
  .lexbadge {
2797
2842
  border-radius: 0.35rem;
2798
- color: #fff;
2843
+ color: var(--global-text-primary);
2799
2844
  border: 1px solid var(--badge-color, #14171a);
2800
2845
  width: fit-content;
2801
2846
  justify-content: center;
@@ -2821,6 +2866,10 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
2821
2866
  background-color: #0000;
2822
2867
  background-image: none;
2823
2868
  }
2869
+ .lexbadge.no-bg {
2870
+ background: none;
2871
+ border: none;
2872
+ }
2824
2873
  /* Sizes */
2825
2874
  .lexbadge.xs { padding-inline: 0.4rem; font-size: var(--global-font-size-xs); }
2826
2875
  .lexbadge.sm { padding-inline: 0.5rem; font-size: var(--global-font-size-sm); }
@@ -2874,7 +2923,7 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
2874
2923
  }
2875
2924
 
2876
2925
  .lexmenubox {
2877
- position: absolute;
2926
+ position: fixed;
2878
2927
  z-index: 1001;
2879
2928
  background-color: #111111f3;
2880
2929
  border: 1px solid #aaaaaa48;
@@ -3066,8 +3115,7 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
3066
3115
 
3067
3116
  .lexcontextmenu {
3068
3117
  z-index: 102;
3069
- position: absolute;
3070
- /* padding-right: 20px; */
3118
+ position: fixed;
3071
3119
  border-radius: 6px;
3072
3120
  box-shadow: 0 0 6px rgba(46, 46, 46, 0.2) !important;
3073
3121
  background-color: var(--global-blur-background);
@@ -3170,7 +3218,6 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
3170
3218
  padding: 10px;
3171
3219
  display: flex;
3172
3220
  flex-direction: column;
3173
- gap: 0.2rem;
3174
3221
  }
3175
3222
 
3176
3223
  .lexsidebar *::-webkit-scrollbar {
@@ -3201,8 +3248,8 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
3201
3248
  }
3202
3249
 
3203
3250
  .lexsidebar .lexsidebarseparator {
3204
- background-color: #5251514d;
3205
- width: 100%;
3251
+ background-color: var(--global-color-tertiary);
3252
+ width: calc(100% + 20px);
3206
3253
  height: 1px;
3207
3254
  margin: 0 auto;
3208
3255
  margin-top: 0.4rem;
@@ -3212,7 +3259,7 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
3212
3259
  .lexsidebar .lexsidebarfilter {
3213
3260
  transform: translate(0, 0);
3214
3261
  opacity: 1;
3215
- margin-block: 0.5rem;
3262
+ margin-bottom: 0.5rem;
3216
3263
  transition: all 0.2s cubic-bezier(0,0,.2,1);
3217
3264
  }
3218
3265
 
@@ -3253,8 +3300,9 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
3253
3300
 
3254
3301
  .lexsidebar .lexsidebarentry {
3255
3302
  width: 100%;
3256
- padding: 6px;
3257
3303
  padding-inline: 8px;
3304
+ padding-block: 6px;
3305
+ margin-block: 0.15rem;
3258
3306
  border-radius: 8px;
3259
3307
  cursor: pointer;
3260
3308
  -webkit-user-select: none;
@@ -3283,7 +3331,8 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
3283
3331
  transform: scale(0.99);
3284
3332
  }
3285
3333
 
3286
- .lexsidebar .lexsidebarentry div {
3334
+ .lexsidebar .lexsidebarentry .lexsidebarentrycontent {
3335
+ font-weight: 500;
3287
3336
  display: flex;
3288
3337
  gap: 0.8em;
3289
3338
  margin: 0;
@@ -3291,22 +3340,26 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
3291
3340
  opacity: 0.95;
3292
3341
  }
3293
3342
 
3294
- .lexsidebar .lexsidebarentry div i {
3343
+ .lexsidebar .lexsidebarentry .lexsidebarentrycontent i {
3295
3344
  min-width: 22px;
3296
3345
  max-width: 22px;
3297
3346
  margin: auto 0;
3298
3347
  text-align: center;
3299
- margin-left: -2px;
3348
+ font-size: var(--global-font-size-lg);
3300
3349
  }
3301
3350
 
3302
- .lexsidebar .lexsidebarentry div a:not(.lexicon) {
3351
+ .lexsidebar .lexsidebarentry .lexsidebarentrycontent a:not(.lexicon) {
3303
3352
  overflow: hidden;
3304
3353
  white-space: nowrap;
3305
3354
  text-overflow: ellipsis;
3306
3355
  align-content: center;
3307
3356
  }
3308
3357
 
3309
- .lexsidebar .lexsidebarentry a.lexicon {
3358
+ .lexsidebar .lexsidebarentry .lexsidebarentryicon {
3359
+ margin-left: 2px;
3360
+ }
3361
+
3362
+ .lexsidebar .lexsidebarentry a.lexicon:not(.lexsidebarentryicon) {
3310
3363
  margin-left: auto;
3311
3364
  }
3312
3365
 
@@ -3362,30 +3415,16 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
3362
3415
  display: none !important;
3363
3416
  }
3364
3417
 
3365
- .lexsidebar.collapsed .lexsidebarcontent div a {
3418
+ .lexsidebar.collapsed .lexsidebarentrycontent div, .lexsidebar.collapsed .lexsidebarcontent div a:not(.lexsidebarentryicon) {
3366
3419
  display: none;
3367
3420
  }
3368
3421
 
3369
- .lexsidebar .lexsidebarentry .lexsidebarentrydesc {
3370
- position: absolute;
3371
- margin-left: 32px;
3372
- font-weight: 600;
3373
- background-color: var(--global-text-primary);
3374
- color: var(--global-color-primary);
3375
- font-size: var(--global-font-size);
3376
- border-radius: 6px;
3377
- text-align: center;
3378
- opacity: 0;
3379
- transform: translate(-12px, 0);
3380
- z-index: 102;
3381
- padding: 4px 8px;
3382
- transition: opacity ease-in 0.15s, transform ease-in 0.15s;
3383
- pointer-events: none;
3384
- }
3422
+ .lexsidebar.collapsed .lexsidebarentry:hover {
3423
+ display: flex;
3424
+ }
3385
3425
 
3386
- .lexsidebar.collapsed .lexsidebarentry:hover .lexsidebarentrydesc {
3387
- opacity: 1;
3388
- transform: translate(0, 0);
3426
+ .lexsidebar .lexsidebarheader {
3427
+ margin-bottom: 0.5rem;
3389
3428
  }
3390
3429
 
3391
3430
  .lexsidebar .lexsidebarfooter, .lexsidebar .lexsidebarheader {
@@ -3627,7 +3666,7 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
3627
3666
  text-align: center;
3628
3667
  align-items: center;
3629
3668
  padding: 3px;
3630
- color: var(--global-text-secondary);
3669
+ color: var(--global-text-tertiary);
3631
3670
  cursor: pointer;
3632
3671
  -webkit-user-select: none;
3633
3672
  -moz-user-select: none;
@@ -3637,9 +3676,10 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
3637
3676
  }
3638
3677
 
3639
3678
  .lexareatabs .lexareatab.thumb {
3640
- position: absolute;
3641
3679
  background: var(--global-color-accent);
3642
3680
  z-index: 0;
3681
+ height: 22px;
3682
+ position: absolute;
3643
3683
  transition: linear transform 0.15s;
3644
3684
  }
3645
3685
 
@@ -3647,7 +3687,6 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
3647
3687
  background-color: var(--global-color-tertiary);
3648
3688
  border-radius: 8px;
3649
3689
  padding: 3px;
3650
- margin: 6px;
3651
3690
  gap: 0.1em;
3652
3691
  }
3653
3692
 
@@ -3656,7 +3695,6 @@ meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
3656
3695
  transition: 0.1s;
3657
3696
  background: none;
3658
3697
  border-radius: 6px;
3659
- color: var(--global-text-secondary);
3660
3698
  }
3661
3699
 
3662
3700
  .lexareatabs.fit {
@@ -4783,7 +4821,6 @@ ul.lexassetscontent {
4783
4821
 
4784
4822
  /* Code Editor */
4785
4823
  .codebasearea {
4786
-
4787
4824
  display: flex;
4788
4825
  position: relative;
4789
4826
  overflow: inherit;
@@ -4871,20 +4908,25 @@ ul.lexassetscontent {
4871
4908
  z-index: 3;
4872
4909
  bottom: 0px;
4873
4910
  justify-items: end;
4911
+ padding-inline: 1rem;
4912
+ }
4913
+
4914
+ .lexcodetabinfo .lexinlinewidgets {
4915
+ justify-content: end;
4874
4916
  }
4875
4917
 
4876
4918
  .lexcodegutter {
4877
4919
  width: 48px;
4878
4920
  height: calc(100% - 65px);
4879
4921
  background-color: light-dark(var(--global-color-tertiary), var(--global-medium-background));
4880
- margin-top: 28px;
4922
+ margin-top: 31px;
4881
4923
  overflow: hidden;
4882
4924
  position: absolute;
4883
4925
  top: 0;
4884
4926
  }
4885
4927
 
4886
4928
  .lexcodeeditor .codetabsarea {
4887
- height: calc(100% - 64px) !important;
4929
+ height: calc(100% - 80px) !important;
4888
4930
  background-color: light-dark(var(--global-color-tertiary), var(--global-medium-background));
4889
4931
  overflow: scroll;
4890
4932
  }
@@ -4916,7 +4958,6 @@ ul.lexassetscontent {
4916
4958
  -moz-osx-font-smoothing: grayscale;
4917
4959
  font-feature-settings: "ss04", "ss05";
4918
4960
  font-size: var(--code-editor-font-size);
4919
- /* padding-right: 6px; */
4920
4961
  position: relative;
4921
4962
  }
4922
4963
 
@@ -5053,7 +5094,7 @@ ul.lexassetscontent {
5053
5094
  box-sizing: border-box;
5054
5095
  margin: 0;
5055
5096
  padding: 0;
5056
- margin-top: 26px;
5097
+ margin-top: 31px;
5057
5098
  z-index: 1 !important;
5058
5099
  right: 0px;
5059
5100
  pointer-events: none;
@@ -5120,7 +5161,7 @@ ul.lexassetscontent {
5120
5161
 
5121
5162
  .lexcodeeditor .searchbox {
5122
5163
  background-color: var(--global-color-secondary);
5123
- width: 256px;
5164
+ /* width: 256px; */
5124
5165
  position: absolute;
5125
5166
  right: 6px;
5126
5167
  top: 26px;
@@ -5129,8 +5170,9 @@ ul.lexassetscontent {
5129
5170
  border: 1px solid var(--global-color-tertiary);
5130
5171
  box-shadow: 0 0px 4px #101010;
5131
5172
  overflow-y: scroll;
5132
- transform: translateY(-72px);
5133
- transition: transform 0.2s ease-in;
5173
+ transform: translateY(-96px);
5174
+ opacity: 0;
5175
+ transition: transform 0.2s ease-in, opacity 0.2s ease-in;
5134
5176
  }
5135
5177
 
5136
5178
  .lexcodeeditor .searchbox.gotoline {
@@ -5139,6 +5181,7 @@ ul.lexassetscontent {
5139
5181
 
5140
5182
  .lexcodeeditor .searchbox.opened {
5141
5183
  transform: translateY(0px);
5184
+ opacity: 1;
5142
5185
  }
5143
5186
 
5144
5187
  .lexcodeeditor .searchbox .lexpanel span {
@@ -5212,6 +5255,10 @@ ul.lexassetscontent {
5212
5255
  border: 2px solid var(--global-color-primary);
5213
5256
  }
5214
5257
 
5258
+ .lexcodesnippet .lexareatabs.row {
5259
+ border-radius: 0;
5260
+ }
5261
+
5215
5262
  .lexcodesnippet .lexwindowbuttons {
5216
5263
  width: 100px;
5217
5264
  padding-inline: 16px;