Compare commits
No commits in common. "9ea92126372a7e6e029d669858cb1a9c4f23a1e9" and "ccfb7c18bad000d7fb9b7669d26254cf226f6d9b" have entirely different histories.
9ea9212637
...
ccfb7c18ba
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "multi-hoster-uploader",
|
||||
"version": "2.2.2",
|
||||
"version": "2.2.1",
|
||||
"description": "Upload files to doodstream, voe, vidmoly, byse simultaneously",
|
||||
"main": "main.js",
|
||||
"scripts": {
|
||||
|
||||
@ -1019,25 +1019,6 @@ function showContextMenu(x, y) {
|
||||
cancelSep.style.display = 'none';
|
||||
}
|
||||
|
||||
// Dynamic "delete by hoster" submenu
|
||||
const deleteHosterSubmenu = menu.querySelector('.ctx-hoster-delete-submenu');
|
||||
const deleteHosterContainer = menu.querySelector('.ctx-hoster-delete-items');
|
||||
const hosterCounts = new Map();
|
||||
queueJobs.forEach(j => hosterCounts.set(j.hoster, (hosterCounts.get(j.hoster) || 0) + 1));
|
||||
deleteHosterContainer.innerHTML = '';
|
||||
if (hosterCounts.size > 0) {
|
||||
deleteHosterSubmenu.style.display = '';
|
||||
hosterCounts.forEach((count, hoster) => {
|
||||
const item = document.createElement('div');
|
||||
item.className = 'ctx-item ctx-item-danger';
|
||||
item.dataset.action = `delete-hoster:${hoster}`;
|
||||
item.textContent = `${getHosterLabel(hoster)} (${count})`;
|
||||
deleteHosterContainer.appendChild(item);
|
||||
});
|
||||
} else {
|
||||
deleteHosterSubmenu.style.display = 'none';
|
||||
}
|
||||
|
||||
menu.style.display = 'block';
|
||||
const menuX = Math.min(x, window.innerWidth - menu.offsetWidth - 5);
|
||||
menu.style.left = menuX + 'px';
|
||||
@ -1045,12 +1026,7 @@ function showContextMenu(x, y) {
|
||||
|
||||
// Flip submenus if they would overflow the viewport right edge
|
||||
menu.querySelectorAll('.ctx-submenu-items').forEach(sub => {
|
||||
// Temporarily show to measure actual width (display:none → offsetWidth=0)
|
||||
sub.style.visibility = 'hidden';
|
||||
sub.style.display = 'block';
|
||||
sub.classList.toggle('flip-left', menuX + menu.offsetWidth + sub.offsetWidth > window.innerWidth);
|
||||
sub.style.display = '';
|
||||
sub.style.visibility = '';
|
||||
});
|
||||
}
|
||||
|
||||
@ -1276,25 +1252,6 @@ async function handleContextAction(action) {
|
||||
renderQueueTable();
|
||||
updateStatusBar();
|
||||
updateQueueActionButtons();
|
||||
} else if (action.startsWith('delete-hoster:')) {
|
||||
const hoster = action.replace('delete-hoster:', '');
|
||||
// Cancel active uploads for this hoster
|
||||
const activeIds = queueJobs
|
||||
.filter(j => j.hoster === hoster && (j.status === 'uploading' || j.status === 'queued' || j.status === 'retrying' || j.status === 'getting-server' || j.status === 'preview'))
|
||||
.map(j => j.id);
|
||||
if (activeIds.length > 0) await window.api.cancelSelectedJobs(activeIds);
|
||||
// Remove ALL jobs for this hoster
|
||||
queueJobs = queueJobs.filter(j => {
|
||||
if (j.hoster === hoster) { removeJobFromIndex(j); return false; }
|
||||
return true;
|
||||
});
|
||||
selectedJobIds.clear();
|
||||
syncSelectedFilesFromQueue();
|
||||
renderQueueTable();
|
||||
if (queueJobs.length === 0) { selectedFiles = []; updateUploadView(); }
|
||||
updateStatusBar();
|
||||
updateQueueActionButtons();
|
||||
persistQueueStateSoon(true);
|
||||
} else if (action.startsWith('shutdown-')) {
|
||||
const mode = action.replace('shutdown-', '');
|
||||
await window.api.setShutdownAfterFinish(mode);
|
||||
|
||||
@ -265,10 +265,6 @@
|
||||
<div class="ctx-separator"></div>
|
||||
<div class="ctx-item" data-action="delete-selected">Entfernen</div>
|
||||
<div class="ctx-item" data-action="delete-all">Alle entfernen</div>
|
||||
<div class="ctx-submenu ctx-hoster-delete-submenu" style="display:none">
|
||||
<div class="ctx-item ctx-item-danger">Hoster entfernen ▸</div>
|
||||
<div class="ctx-submenu-items ctx-hoster-delete-items"></div>
|
||||
</div>
|
||||
<div class="ctx-separator ctx-hoster-cancel-sep" style="display:none"></div>
|
||||
<div class="ctx-hoster-cancel-items"></div>
|
||||
</div>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user