better UX and UI on the room page

This commit is contained in:
2026-01-05 00:00:12 +01:00
parent 6e51bf8568
commit 5cf034200e
13 changed files with 1984 additions and 2341 deletions

View File

@@ -78,13 +78,11 @@ const AnimePlayer = (function() {
initElements();
setupEventListeners();
// In Room Mode, we show the player immediately and hide extra controls
if (_roomMode) {
if(els.playerWrapper) {
els.playerWrapper.style.display = 'block';
els.playerWrapper.classList.add('room-mode');
}
// Hide extension list loading in room mode
} else {
loadExtensionsList();
}
@@ -128,10 +126,8 @@ const AnimePlayer = (function() {
els.progressBuffer = document.querySelector('.progress-buffer');
els.progressHandle = document.querySelector('.progress-handle');
// Subtitles canvas
els.subtitlesCanvas = document.getElementById('subtitles-canvas');
// Create skip button if not exists
if (!document.getElementById('skip-overlay-btn')) {
const btn = document.createElement('button');
btn.id = 'skip-overlay-btn';
@@ -143,13 +139,11 @@ const AnimePlayer = (function() {
}
function setupEventListeners() {
// Close player
if(!_roomMode) {
const closeBtn = document.getElementById('close-player-btn');
if(closeBtn) closeBtn.addEventListener('click', closePlayer);
}
// Episode navigation
if(els.prevBtn) els.prevBtn.onclick = () => playEpisode(_currentEpisode - 1);
if(els.nextBtn) els.nextBtn.onclick = () => playEpisode(_currentEpisode + 1);
@@ -203,6 +197,15 @@ const AnimePlayer = (function() {
return;
}
if (videoData.malId) _malId = videoData.malId;
if (videoData.episode) _currentEpisode = parseInt(videoData.episode);
_skipIntervals = [];
if (els.progressContainer) {
els.progressContainer.querySelectorAll('.skip-range, .skip-cut').forEach(e => e.remove());
}
if (_skipBtn) _skipBtn.classList.remove('visible');
_currentSubtitles = videoData.subtitles || [];
if (els.loader) els.loader.style.display = 'none';

View File

@@ -118,7 +118,7 @@ class CreateRoomModal {
this.close();
window.open(`/room?id=${data.room.id}`, '_blank', 'noopener,noreferrer');
window.location.href = `/room?id=${data.room.id}`
} catch (err) {
alert(err.message);
} finally {

File diff suppressed because it is too large Load Diff