From dd3800268288e15b26173b9937e5be979728d448 Mon Sep 17 00:00:00 2001 From: thepra Date: Tue, 6 Oct 2026 23:31:07 +0200 Subject: [PATCH] Feed tabs say what they are Below xl every feed tab but the selected one was a lone icon with no name, for a screen reader or a finger. DTab takes an AccessibleName, which DTabs renders as the tab's label and tooltip, and FeedTabs names each tab; on a phone every tab shows its name too. The strip is marked as one that scrolls sideways (data-scroll-x), says it holds the feeds, and on a phone fades at the edge where more tabs wait (edge-fade-x, a scroll-driven animation where the browser has one); the selected tab is brought into view when it changes (window.revealActive). Explore's tabs get the same. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01LsXgEaXee4GCU1hwYgPJXw --- Components/Daisy/Navigation/DTab.razor | 2 ++ Components/Daisy/Navigation/DTabs.razor | 1 + Components/Feed/FeedTabs.razor | 22 ++++++++++--- Pages/Explore.razor | 16 +++++++-- Resources/AllStrings.it.resx | 3 ++ Resources/AllStrings.resx | 3 ++ Services/AppStatusService.cs | 4 +++ Styles/touch.css | 43 +++++++++++++++++++++++++ wwwroot/main.js | 9 ++++++ 9 files changed, 97 insertions(+), 6 deletions(-) diff --git a/Components/Daisy/Navigation/DTab.razor b/Components/Daisy/Navigation/DTab.razor index 04fa7fe..d248ca6 100644 --- a/Components/Daisy/Navigation/DTab.razor +++ b/Components/Daisy/Navigation/DTab.razor @@ -9,6 +9,8 @@ [Parameter] public RenderFragment ChildContent { get; set; } [Parameter] public bool Disabled { get; set; } [Parameter] public string Class { get; set; } + /// The tab's name for a screen reader and as its tooltip, when its Header shows only an icon. + [Parameter] public string AccessibleName { get; set; } protected override void OnInitialized() { diff --git a/Components/Daisy/Navigation/DTabs.razor b/Components/Daisy/Navigation/DTabs.razor index 98d9ce7..4ae32d9 100644 --- a/Components/Daisy/Navigation/DTabs.razor +++ b/Components/Daisy/Navigation/DTabs.razor @@ -12,6 +12,7 @@ var index = i; var tab = tabs[i];