diff --git a/libxmp.exported b/libxmp.exported index 4293117..7865ef7 100644 --- a/libxmp.exported +++ b/libxmp.exported @@ -19,4 +19,7 @@ _xmp_channel_mute _xmp_channel_vol _xmp_inject_event _xmp_test_module_from_memory -_xmp_load_module_from_memory \ No newline at end of file +_xmp_load_module_from_memory +_xmp_prev_position +_xmp_next_position +_xmp_set_position \ No newline at end of file diff --git a/src/player.css b/src/player.css index d44001d..b9a5ca5 100644 --- a/src/player.css +++ b/src/player.css @@ -94,19 +94,20 @@ div.tracker .header .controls .part { border: var(--header-border); color: white; } -div.tracker .header .controls .title-div { display: flex; grid-column: span 3 / span 3; } -div.tracker .header .controls .player-div { padding: 10px 0px 0px 0px; text-align: center; grid-column: span 2 / span 2; grid-column-start: 3; grid-row-start: 3; } -div.tracker .header .controls .type-div { margin: 2px; display: flex; grid-column: span 2 / span 2; grid-row-start: 4; } +div.tracker .header .controls .title-div { grid-column: span 2 / span 2; } +div.tracker .header .controls .seq-div { grid-column-start: 3; } div.tracker .header .controls .bpm-div { padding: 10px 0px 0px 0px; text-align: center; grid-column-start: 4; } -div.tracker .header .controls .vol-div { display:flex; min-width: 280px; gap: 4px; grid-column: span 2 / span 2; grid-column-start: 1; grid-row-start: 2; } -div.tracker .header .controls .stsep-div { display:flex; min-width: 280px; gap: 4px; grid-column: span 2 / span 2; grid-column-start: 3; grid-row-start: 2; } +div.tracker .header .controls .vol-div { min-width: 280px; gap: 4px; grid-column: span 2 / span 2; grid-row-start: 2; } +div.tracker .header .controls .stsep-div { min-width: 280px; gap: 4px; grid-column: span 2 / span 2; grid-column-start: 3; grid-row-start: 2; } +div.tracker .header .controls .player-div { padding: 10px 0px 0px 0px; text-align: center; grid-column: span 2 / span 2; grid-row-start: 3; } +div.tracker .header .controls .type-div { grid-column: span 2 / span 2; grid-column-start: 3; grid-row-start: 3; } div.tracker .header .controls .instruments-div, div.tracker .header .controls .samples-div { display: none; } body.tracker div.tracker .header .controls .instruments-div { grid-column: span 2 / span 2; - grid-row: span 4 / span 4; + grid-row: span 5 / span 5; grid-column-start: 5; grid-row-start: 1; display: unset; @@ -114,30 +115,38 @@ body.tracker div.tracker .header .controls .instruments-div { body.tracker div.tracker .header .controls .samples-div { grid-column: span 2 / span 2; - grid-row: span 4 / span 4; + grid-row: span 5 / span 5; grid-column-start: 7; grid-row-start: 1; display: unset; } -div.tracker .header .controls button#play { grid-column-start: 1; grid-row-start: 3; } -div.tracker .header .controls button#pause { grid-column-start: 1; grid-row-start: 4; } -div.tracker .header .controls button#stop { grid-column-start: 2; grid-row-start: 3; } -div.tracker .header .controls button#download { grid-column-start: 2; grid-row-start: 4; } +div.tracker .header .controls button#play { grid-row-start: 4; } +div.tracker .header .controls button#pause { grid-row-start: 4; } +div.tracker .header .controls button#stop { grid-row-start: 4; } +div.tracker .header .controls button#download { grid-row-start: 4; } -div.tracker .header .controls .title-div .title { display: flex; } -div.tracker .header .controls .title-div .part { flex-grow: 1; } -div.tracker .header .controls .title-div .part:not(.title) { padding: 10px 0px 0px 0px; text-align: center; } +div.tracker .header .controls .header-div { display: flex; color: var(--text-color); } +div.tracker .header .controls .header-div .part { flex-grow: 1; padding: 0px 4px; } +div.tracker .header .controls .header-div .part:not(.text) { text-align: center; font-size: 14px; padding: 2px 0px 0px 0px; } +div.tracker .header .controls .title-div .title, +div.tracker .header .controls .type-div .type, +div.tracker .header .controls .seq-div .seq, +div.tracker .header .controls .vol-div .vol, +div.tracker .header .controls .stsep-div .stsep { display: flex; } +div.tracker .header .controls .title-div .part, +div.tracker .header .controls .type-div .part, +div.tracker .header .controls .seq-div .part, +div.tracker .header .controls .vol-div .part, +div.tracker .header .controls .stsep-div .part { flex-grow: 1; } +div.tracker .header .controls .seq-div .seq button { flex-grow: 1; font-size: 14px; } div.tracker .header .controls .vol-div img, -div.tracker .header .controls .stsep-div img { padding: 6px; } - -div.tracker .header .controls .vol-div .vol-text, -div.tracker .header .controls .stsep-div .stsep-text { margin: 4px 0px; width: 40px; padding :4px 10px; } +div.tracker .header .controls .stsep-div img { padding: 8px; } div.tracker .header .controls .container { overflow-x: clip; overflow-x: auto; - height: 132px; + height: 162px; font-size: 14px; } @@ -203,7 +212,11 @@ input[type="range"]::slider-thumb { } div.tracker .header .controls .title-div .title input, -div.tracker .header .controls .type-div input { flex-grow: 1; } +div.tracker .header .controls .type-div input, +div.tracker .header .controls .vol-div input, +div.tracker .header .controls .stsep-div input { flex-grow: 1; } +div.tracker .header .controls .vol-div input, +div.tracker .header .controls .stsep-div input { height: 16px; } div.tracker .header .curtime, div.tracker .header .totaltime { } div.tracker .header .speed, div.tracker .header .bpm { display: inline-block; margin: 2px; } diff --git a/src/player.html b/src/player.html index cc253f5..cb2b2d9 100644 --- a/src/player.html +++ b/src/player.html @@ -11,16 +11,43 @@