NimBold
dd7c2196fe
fix(queue): dispatch admitted downloads concurrently
2026-07-25 16:50:00 +03:30
NimBold
5614022dbd
fix(downloads): bound connection recovery churn
...
Require a healthy multi-connection baseline, cap consecutive automatic recovery attempts, and preserve zero-progress recovery. Align Download Properties speed-cap controls with shared app styles.
2026-07-24 06:57:26 +03:30
NimBold
b579c35e42
feat(settings): add curated multilingual fonts
...
Bundle Vazirmatn, Noto Sans Hebrew, Noto Sans SC, and Roboto with locale-aware fallbacks while keeping custom font import out of scope.
Refs #31
2026-07-23 17:29:29 +03:30
NimBold
1f1ec828f9
feat(settings): add locale-aware font preferences
...
Bundle optional Inter and Outfit families, preserve the platform system default, and provide script-aware fallbacks for every supported locale.
Refs #31
2026-07-23 17:13:00 +03:30
NimBold
4e3ceb21a5
feat(ui): add cross-platform window control styles
...
Persist automatic and explicit macOS, Windows, GNOME, and minimal control presets with localized settings and platform-aware fallback.
Refs #31
2026-07-23 16:25:39 +03:30
NimBold
3587fb0c0d
fix(downloads): harden queue admission and live speed controls
2026-07-23 04:13:07 +03:30
NimBold
b60818d3af
feat(downloads): add live aria2 speed limits
2026-07-23 03:21:34 +03:30
NimBold
5463d27ed3
feat(settings): add opt-in calendar localization
2026-07-23 03:08:52 +03:30
NimBold
ceab8a5fdf
feat(downloads): add media quality and queue reordering
2026-07-23 02:55:33 +03:30
NimBold
9d737598c6
fix(macos): handle Cmd+M minimization ( #30 )
2026-07-22 19:02:17 +03:30
NimBold
d3e5e8c208
fix(macos): restore native window lifecycle ( #30 )
...
Install the native macOS application menu for Command-M, handle Dock reopen events only when no window is visible, and preserve early secondary-launch restores until the main window exists. Refs #30 .
2026-07-22 18:34:56 +03:30
NimBold
512a77f6bb
fix(downloads): bound backend connection counts
2026-07-22 14:37:03 +03:30
NimBold
030db52016
feat(downloads): honor media connection settings
2026-07-22 14:29:01 +03:30
NimBold
d1452ce0c1
feat(downloads): expose active Aria2 connections
2026-07-22 14:04:59 +03:30
NimBold
886388d5f2
fix: harden audited download and release paths
2026-07-21 08:39:54 +03:30
NimBold
69ce2b15ba
fix(settings): harden audited state synchronization
2026-07-21 05:05:34 +03:30
NimBold
621652ae13
feat(downloads): add opt-in batch folders ( #27 )
2026-07-20 20:04:07 +03:30
NimBold
f423d9bee3
chore(deps): refresh packages and bundled engines
2026-07-20 06:56:09 +03:30
NimBold
6e85c0842f
fix(startup): enforce keychain consent before credential access
...
Keep credential-store operations behind a per-process consent gate, prevent duplicate native grant requests, and defer legacy token migration until explicit consent. Harden the RTL/sidebar, custom window controls, bidi copy, and queue editor fixes.
Refs #17
2026-07-19 07:07:29 +03:30
NimBold
60f13f756c
fix(ui): harden RTL sidebar and desktop window controls
...
Keep custom Windows/Linux controls available during platform detection, preserve RTL table order while aligning filenames left, and persist sidebar placement overrides.
Refs #17
2026-07-19 02:34:32 +03:30
NimBold
2668f0b722
fix(media): handle locked browser cookie databases
...
Retry yt-dlp metadata and media downloads without browser cookies only when the browser database cannot be read, while preserving explicit credentials, cache identity, and cancellation behavior.
Refs #22
Refs #24
2026-07-18 17:22:10 +03:30
NimBold
93ddf427b4
feat(i18n): add localized desktop UI
...
Refs #17
2026-07-18 13:44:29 +03:30
NimBold
e4d7d5ecf0
feat(locations): make directory memory opt-in
...
Keep the last Add-window directory disabled until enabled in Settings > Locations.
Refs #23
2026-07-18 12:02:17 +03:30
NimBold
160e6af945
feat(locations): remember last Add-window directory
...
Remember manually selected Add-window folders during the current session, with a persisted Locations toggle and cross-platform path handling.\n\nRefs #23
2026-07-18 11:52:24 +03:30
NimBold
566396e629
fix(media): stabilize YouTube size estimates
2026-07-17 17:49:23 +03:30
NimBold
db39cd2153
fix: stabilize media progress and cancel controls
2026-07-17 17:12:56 +03:30
NimBold
f4b830414d
fix: harden audited persistence and download paths
2026-07-17 16:27:39 +03:30
NimBold
0447d1cab7
fix(build): scope Tailwind scanning and remove dead Rust helper
...
Limit Tailwind source detection to the frontend and root HTML while preserving the CSS-defined theme. Remove redundant test-only nonce validation scaffolding so the Rust library builds without warnings.
2026-07-17 03:20:31 +03:30
NimBold
a8dc4fb447
fix(security): harden browser handoff boundaries
2026-07-17 02:05:41 +03:30
NimBold
50c3da2f5d
fix(downloads): close media lifecycle cleanup gaps
...
Validate every Aria2 mirror URI, keep metadata cleanup errors truthful, and serialize media registration with lifecycle cancellation so abandoned tombstones cannot accumulate.
2026-07-17 01:03:52 +03:30
NimBold
6ef911919d
fix(settings): harden settings and diagnostic controls
2026-07-17 00:39:26 +03:30
NimBold
5144ecd39e
chore(deps): refresh packages and bundled engines
2026-07-17 00:03:15 +03:30
NimBold
a56b859151
fix(downloads): preserve authenticated capture metadata
...
Keep Gmail attachment filenames and origin-scoped browser cookies intact through metadata redirects, while rejecting Google sign-in responses.\n\nFixes #21
2026-07-16 22:58:12 +03:30
NimBold
469faed7b9
fix(downloads): harden add flow and URL validation
2026-07-16 22:20:12 +03:30
NimBold
79ce0c18a1
fix(downloads): harden aria2 recovery lifecycle
2026-07-16 17:56:00 +03:30
NimBold
a136fa832c
feat(downloads): support YouTube playlists
2026-07-16 16:07:00 +03:30
NimBold
f3d0e0be13
fix(downloads): recover stalls and honor connection defaults ( #19 , #20 )
2026-07-16 14:28:59 +03:30
NimBold
6e6ae51395
fix(downloads): preserve live progress across lifecycle edges
2026-07-15 20:50:46 +03:30
NimBold
1d197432b2
feat(downloads): add live limits clipboard capture and byte progress
2026-07-15 20:35:05 +03:30
NimBold
9917f29743
fix(build): gate platform-specific proxy helper
2026-07-15 12:49:40 +03:30
NimBold
57f132f53e
fix(metadata): decode URL-derived filenames
...
Decode URL path segments before sanitizing metadata filenames and preserve malformed escapes safely.
Fixes #18
2026-07-15 11:29:17 +03:30
NimBold
52b00e5cb4
fix(keychain): gate credential-store startup access
2026-07-15 11:07:48 +03:30
NimBold
82f2914077
fix: close post-release lifecycle state gaps
2026-07-15 10:13:53 +03:30
NimBold
c34c489aef
fix(settings): preserve speed limiter units
...
Persist the selected display unit for disabled limits, preserve in-progress fractional input, and keep exact KiB-backed preset values visible.\n\nNo linked issue.
2026-07-15 09:19:19 +03:30
NimBold
b81e8391e1
fix(release): harden speed limits and extension replay checks
2026-07-15 09:02:40 +03:30
NimBold
1da0fa7223
fix(security): harden credential and path boundaries
...
Preserve pending pairing tokens until credential-store migration succeeds, defer keychain access until frontend hydration, reject symlink and malformed ownership paths, and restrict metadata credentials to exact origins.
Refs #15
Refs #16
2026-07-15 08:23:43 +03:30
NimBold
d6af4ee2b5
fix(extension): harden local handoff boundaries
2026-07-15 06:06:16 +03:30
NimBold
2479ead4ed
fix(downloads): harden lifecycle race handling
...
Audit Assignment 06 lifecycle paths and preserve truthful state across ambiguous Aria2 resume failures. Clean up partial startup listener registration and prevent stale resume workers from leaking or releasing current permits.
2026-07-15 05:34:32 +03:30
NimBold
80a29356e0
fix(tools): harden scheduler limits and logs
...
Guard scheduler system actions against pending work, serialize diagnostic log transitions, and keep speed-limit saves truthful after backend failures.\n\nNo linked issue was found for this audit.
2026-07-15 03:00:46 +03:30
NimBold
45bbca0515
fix(settings): harden persisted settings and update checks
2026-07-15 02:25:53 +03:30