♻️ refactor: remove redundant 'X abbrechen' context menu items

'Hoster entfernen' already cancels active uploads AND removes jobs.
The separate 'doodstream.com abbrechen' etc. items were redundant
and confused users with two ways to do the same thing.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Administrator 2026-03-22 14:48:51 +01:00
parent 8803f09974
commit cb70b47242
2 changed files with 0 additions and 38 deletions

View File

@ -1018,24 +1018,6 @@ function showContextMenu(x, y) {
const startItem = menu.querySelector('[data-action="start-selected"]');
if (startItem) startItem.textContent = n > 1 ? `Ausgewählte starten (${n})` : 'Ausgewählte starten';
// Dynamic "cancel hoster" items
const cancelSep = menu.querySelector('.ctx-hoster-cancel-sep');
const cancelContainer = menu.querySelector('.ctx-hoster-cancel-items');
const activeHosters = [...new Set(queueJobs.filter(j => j.status === 'uploading' || j.status === 'queued' || j.status === 'retrying' || j.status === 'getting-server' || j.status === 'preview').map(j => j.hoster))];
cancelContainer.innerHTML = '';
if (activeHosters.length > 0) {
cancelSep.style.display = '';
activeHosters.forEach(h => {
const item = document.createElement('div');
item.className = 'ctx-item ctx-item-danger';
item.dataset.action = `cancel-hoster:${h}`;
item.textContent = `${h} abbrechen`;
cancelContainer.appendChild(item);
});
} else {
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');
@ -1275,24 +1257,6 @@ async function handleContextAction(action) {
} else if (action === 'always-on-top') {
alwaysOnTopState = !alwaysOnTopState;
await window.api.setAlwaysOnTop(alwaysOnTopState);
} else if (action.startsWith('cancel-hoster:')) {
const hoster = action.replace('cancel-hoster:', '');
const jobIds = [];
for (const job of queueJobs) {
if (job.hoster === hoster && (job.status === 'uploading' || job.status === 'queued' || job.status === 'retrying' || job.status === 'getting-server' || job.status === 'preview')) {
jobIds.push(job.id);
// Mark queued/preview jobs as error immediately
if (job.status === 'queued' || job.status === 'preview') {
job.status = 'error';
job.error = 'Hoster abgebrochen';
}
}
}
// Cancel active uploads via IPC
if (jobIds.length > 0) await window.api.cancelSelectedJobs(jobIds);
renderQueueTable();
updateStatusBar();
updateQueueActionButtons();
} else if (action.startsWith('delete-hoster:')) {
const hoster = action.replace('delete-hoster:', '');
// Cancel active uploads for this hoster

View File

@ -269,8 +269,6 @@
<div class="ctx-item ctx-item-danger">Hoster entfernen &#9656;</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>
<div class="context-menu" id="recentContextMenu" style="display:none">