fix: feedback round 2 — language, subscriptions, feed scope, UX
- Language detection: classify one cleaned+concatenated blob (strip emoji, @mentions, #tags, numbers, punctuation); fixes caps/emoji-heavy channels (e.g. Nessaj -> Hungarian, no more bogus Chinese/Korean) - Feed now joins the user's subscriptions, so unsubscribing on YouTube removes a channel from the feed; periodic subscription re-sync job picks up changes - Watched/Saved/Hidden views ignore the Shorts/live default-hiding so the full set is visible (fixes hidden videos missing from the Hidden view) - Persist feed filters + search across reloads (localStorage) - 3D polish: cards lift with shadow on hover; chips/buttons get depth and a press effect; undo toast lasts longer
This commit is contained in:
parent
8c245e986f
commit
e07a37622d
9 changed files with 97 additions and 27 deletions
|
|
@ -13,6 +13,7 @@ from app.sync.runner import (
|
|||
run_recent_backfill,
|
||||
run_rss_poll,
|
||||
run_shorts,
|
||||
run_subscription_resync,
|
||||
)
|
||||
|
||||
logger = logging.getLogger("subfeed.scheduler")
|
||||
|
|
@ -58,6 +59,10 @@ def _shorts_job() -> None:
|
|||
_job("shorts", run_shorts)
|
||||
|
||||
|
||||
def _subscriptions_job() -> None:
|
||||
_job("subscriptions", run_subscription_resync)
|
||||
|
||||
|
||||
def start_scheduler() -> None:
|
||||
global _scheduler
|
||||
if not settings.scheduler_enabled or _scheduler is not None:
|
||||
|
|
@ -87,6 +92,12 @@ def start_scheduler() -> None:
|
|||
minutes=settings.shorts_probe_interval_minutes,
|
||||
id="shorts",
|
||||
)
|
||||
scheduler.add_job(
|
||||
_subscriptions_job,
|
||||
"interval",
|
||||
minutes=settings.subscriptions_resync_minutes,
|
||||
id="subscriptions",
|
||||
)
|
||||
scheduler.start()
|
||||
_scheduler = scheduler
|
||||
logger.info("scheduler started")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue