diff --git a/package.json b/package.json
index 4450523..40061d0 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "real-debrid-downloader",
- "version": "1.5.76",
+ "version": "1.5.77",
"description": "Real-Debrid Downloader Desktop (Electron + React + TypeScript)",
"main": "build/main/main/main.js",
"author": "Sucukdeluxe",
diff --git a/src/renderer/App.tsx b/src/renderer/App.tsx
index 0a82166..aa65b63 100644
--- a/src/renderer/App.tsx
+++ b/src/renderer/App.tsx
@@ -2150,7 +2150,7 @@ export function App(): ReactElement {
- {(["name", "progress", "size", "hoster"] as PkgSortColumn[]).flatMap((col) => {
+ {(["name", "size", "progress", "hoster"] as PkgSortColumn[]).flatMap((col) => {
const labels: Record
= { name: "Name", progress: "Fortschritt", size: "Geladen / Größe", hoster: "Hoster" };
const isActive = downloadsSortColumn === col;
return [
@@ -2187,7 +2187,7 @@ export function App(): ReactElement {
,
];
})}
- Account
+ Service
Status
Geschwindigkeit
@@ -2251,7 +2251,6 @@ export function App(): ReactElement {
{entry.name}
- {entry.status === "completed" ? "100%" : "-"}
{(() => {
const pct = entry.totalBytes > 0 ? Math.min(100, Math.round((entry.downloadedBytes / entry.totalBytes) * 100)) : 0;
const label = `${humanSize(entry.downloadedBytes)} / ${humanSize(entry.totalBytes)}`;
@@ -2263,6 +2262,7 @@ export function App(): ReactElement {
) : "-";
})()}
+ {entry.status === "completed" ? "100%" : "-"}
-
{entry.provider ? providerLabels[entry.provider] : "-"}
{entry.status === "completed" ? "Abgeschlossen" : "Gelöscht"}
@@ -2723,6 +2723,13 @@ export function App(): ReactElement {
else { executeDeleteSelection(ids); }
}}>Ausgewählte entfernen ({[...selectedIds].filter((id) => snapshot.session.items[id]).length})
)}
+ {hasPackages && !contextMenu.itemId && (
+
+ )}
{hasPackages && !multi && (() => {
const pkg = snapshot.session.packages[contextMenu.packageId];
const items = pkg?.itemIds.map((id) => snapshot.session.items[id]).filter(Boolean) || [];
@@ -2869,13 +2876,6 @@ const PackageCard = memo(function PackageCard({ pkg, items, packageSpeed, isFirs
{ e.stopPropagation(); onStartEdit(pkg.id, pkg.name); }} title="Klicken zum Umbenennen">{pkg.name}
)}
-
-
-
- {combinedProgress}%
- {combinedProgress}%
-
-
{(() => {
const totalBytes = items.reduce((sum, item) => sum + (item.totalBytes || item.downloadedBytes || 0), 0);
const dlBytes = items.reduce((sum, item) => sum + (item.downloadedBytes || 0), 0);
@@ -2889,6 +2889,13 @@ const PackageCard = memo(function PackageCard({ pkg, items, packageSpeed, isFirs
) : "-";
})()}
+
+
+
+ {combinedProgress}%
+ {combinedProgress}%
+
+
{
const hosters = [...new Set(items.map((item) => extractHoster(item.url)).filter(Boolean))];
return hosters.join(", ");
@@ -2914,15 +2921,6 @@ const PackageCard = memo(function PackageCard({ pkg, items, packageSpeed, isFirs
{!collapsed && items.map((item) => (
{ e.stopPropagation(); onSelect(item.id, e.ctrlKey); }} onMouseDown={(e) => { e.stopPropagation(); onSelectMouseDown(item.id, e); }} onMouseEnter={() => onSelectMouseEnter(item.id)} onContextMenu={(e) => { e.preventDefault(); e.stopPropagation(); onContextMenu(pkg.id, item.id, e.clientX, e.clientY); }}>
{item.fileName}
-
- {item.totalBytes > 0 ? (
-
-
- {item.progressPercent}%
- {item.progressPercent}%
-
- ) : "-"}
-
{(() => {
const total = item.totalBytes || item.downloadedBytes || 0;
const dl = item.downloadedBytes || 0;
@@ -2936,6 +2934,15 @@ const PackageCard = memo(function PackageCard({ pkg, items, packageSpeed, isFirs
) : "-";
})()}
+
+ {item.totalBytes > 0 ? (
+
+
+ {item.progressPercent}%
+ {item.progressPercent}%
+
+ ) : "-"}
+
{extractHoster(item.url) || "-"}
{item.provider ? providerLabels[item.provider] : "-"}
0 ? `${item.fullStatus} · R${item.retries}` : item.fullStatus}>