feat: sleep timer, A-B loop, related panel, smart playlists, history delete/search, batch ops, auto-backup
This commit is contained in:
@@ -39,6 +39,11 @@
|
||||
</div>
|
||||
<div id="playlistList" class="playlist-list"></div>
|
||||
|
||||
<div class="pl-header smart-pl-header">
|
||||
<span>Auto Playlists</span>
|
||||
</div>
|
||||
<div id="smartPlaylistList" class="playlist-list smart-pl-list"></div>
|
||||
|
||||
<div class="sidebar-footer">
|
||||
<label class="switch">
|
||||
<input type="checkbox" id="audioOnlyToggle" />
|
||||
@@ -95,7 +100,14 @@
|
||||
<div id="controls" class="controls hidden">
|
||||
<div class="seek-row">
|
||||
<span id="curTime" class="time">0:00</span>
|
||||
<input id="seek" class="seek" type="range" min="0" max="1000" value="0" />
|
||||
<div class="seek-wrap">
|
||||
<input id="seek" class="seek" type="range" min="0" max="1000" value="0" />
|
||||
<div id="abIndicator" class="ab-indicator hidden">
|
||||
<span id="abALabel" class="ab-label">A: --</span>
|
||||
<span style="flex:1"></span>
|
||||
<span id="abBLabel" class="ab-label">B: --</span>
|
||||
</div>
|
||||
</div>
|
||||
<span id="durTime" class="time">0:00</span>
|
||||
</div>
|
||||
<div class="btn-row">
|
||||
@@ -103,6 +115,9 @@
|
||||
<button id="playBtn" class="ctrl play" title="Play/Pause">▶</button>
|
||||
<button id="nextBtn" class="ctrl" title="Next">⏭</button>
|
||||
|
||||
<button id="abABtn" class="ctrl ab-ctrl" title="Set A-B loop start [A]">A</button>
|
||||
<button id="abBBtn" class="ctrl ab-ctrl" title="Set A-B loop end [B]">B</button>
|
||||
<button id="abClearBtn" class="ctrl ab-ctrl hidden" title="Clear A-B loop">↺</button>
|
||||
<div class="vol">
|
||||
<button id="muteBtn" class="ctrl" title="Mute">🔊</button>
|
||||
<input id="volume" type="range" min="0" max="1" step="0.01" value="1" />
|
||||
@@ -127,12 +142,18 @@
|
||||
<select id="qualitySelect"></select>
|
||||
</label>
|
||||
|
||||
<button id="sleepTimerBtn" class="ctrl" title="Sleep timer">⏱</button>
|
||||
<button id="loopBtn" class="ctrl" title="Loop current video (L)">🔂</button>
|
||||
<button id="repeatBtn" class="ctrl" title="Repeat list when finished (R)">🔁</button>
|
||||
<button id="fsBtn" class="ctrl" title="Fullscreen">⛶</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="sleepStatus" class="sleep-status hidden">
|
||||
<span id="sleepCountdown" class="sleep-countdown"></span>
|
||||
<button id="sleepCancelBtn" class="sleep-cancel">✕ Cancel</button>
|
||||
</div>
|
||||
|
||||
<div id="nowPlayingMeta" class="now-meta hidden">
|
||||
<div class="np-text">
|
||||
<div class="np-title" id="npTitle"></div>
|
||||
@@ -153,6 +174,15 @@
|
||||
</div>
|
||||
<div id="upnextList" class="upnext-list"></div>
|
||||
</div>
|
||||
|
||||
<!-- Related videos -->
|
||||
<div id="relatedPanel" class="related-panel hidden">
|
||||
<div class="related-header">
|
||||
<span class="related-label">Related</span>
|
||||
<button id="relatedToggleBtn" class="related-toggle-btn">−</button>
|
||||
</div>
|
||||
<div id="relatedList" class="related-list"></div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- List pane -->
|
||||
@@ -161,6 +191,16 @@
|
||||
<h2 id="listTitle">Search</h2>
|
||||
<div id="listActions" class="list-actions"></div>
|
||||
</div>
|
||||
<div id="listFilterBar" class="list-filter-bar hidden">
|
||||
<input id="listFilterInput" type="text" placeholder="Filter…" autocomplete="off" />
|
||||
</div>
|
||||
<div id="batchBar" class="batch-bar hidden">
|
||||
<span id="batchCount" class="batch-count">0 selected</span>
|
||||
<button id="batchQueueBtn" class="batch-btn">+ Queue</button>
|
||||
<button id="batchAddPlaylistBtn" class="batch-btn">+ Playlist</button>
|
||||
<button id="batchDeleteBtn" class="batch-btn batch-danger">Delete</button>
|
||||
<button id="batchCancelBtn" class="batch-btn">Cancel</button>
|
||||
</div>
|
||||
<div id="status" class="status hidden"></div>
|
||||
<div id="cards" class="cards"></div>
|
||||
</section>
|
||||
@@ -209,8 +249,10 @@
|
||||
<div class="shortcut-row"><kbd>L</kbd><span>Loop current video</span></div>
|
||||
<div class="shortcut-row"><kbd>R</kbd><span>Repeat list when finished</span></div>
|
||||
<div class="shortcut-row"><kbd>Q</kbd><span>Add current video to queue</span></div>
|
||||
<div class="shortcut-row"><kbd>A</kbd><span>Set A-B loop start point</span></div>
|
||||
<div class="shortcut-row"><kbd>B</kbd><span>Set A-B loop end point</span></div>
|
||||
<div class="shortcut-row"><kbd>?</kbd><span>Show this help</span></div>
|
||||
<div class="shortcut-row"><kbd>Esc</kbd><span>Close help</span></div>
|
||||
<div class="shortcut-row"><kbd>Esc</kbd><span>Close overlay / cancel selection</span></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user