Compare commits

...

2 Commits

Author SHA1 Message Date
spinline
8c0d35cca5 fix(frontend): force absolute positioning for tabs scroll
All checks were successful
Build MIPS Binary / build (push) Successful in 2m1s
2026-02-21 20:31:49 +03:00
spinline
444ea4326d fix(frontend): make general tab scrollable on mobile/safari
All checks were successful
Build MIPS Binary / build (push) Successful in 2m2s
2026-02-21 20:22:18 +03:00

View File

@@ -51,8 +51,8 @@ pub fn TorrentDetailsSheet() -> impl IntoView {
</SheetClose>
</div>
<div class="flex-1 overflow-hidden p-6">
<Tabs default_value="general" class="h-full flex flex-col">
<div class="flex-1 min-h-0 overflow-hidden p-6 flex flex-col">
<Tabs default_value="general" class="flex-1 min-h-0 flex flex-col">
<TabsList class="w-full justify-start rounded-none border-b bg-transparent p-0">
<TabsTrigger value="general" class="data-[state=active]:bg-transparent data-[state=active]:shadow-none data-[state=active]:border-b-2 data-[state=active]:border-primary rounded-none">
"Genel"
@@ -68,8 +68,9 @@ pub fn TorrentDetailsSheet() -> impl IntoView {
</TabsTrigger>
</TabsList>
<div class="flex-1 overflow-y-auto mt-4 pb-12">
<TabsContent value="general" class="space-y-6 animate-in fade-in slide-in-from-bottom-2 duration-300">
<div class="relative flex-1 min-h-0 mt-4">
<div class="absolute inset-0 overflow-y-auto pb-12 pr-2">
<TabsContent value="general" class="space-y-6 animate-in fade-in slide-in-from-bottom-2 duration-300">
<crate::components::ui::shimmer::Shimmer
loading=Signal::derive(move || selected_torrent.get().is_none())
shimmer_color="rgba(0,0,0,0.06)"
@@ -151,7 +152,7 @@ pub fn TorrentDetailsSheet() -> impl IntoView {
<TabsContent value="files" class="h-full">
{move || match selected_torrent.get() {
Some(t) => leptos::either::Either::Left(view! {
<div class="h-full overflow-y-auto pr-2 pb-8">
<div class="h-full">
<crate::components::torrent::files::TorrentFilesTab hash=t.hash />
</div>
}),
@@ -167,7 +168,7 @@ pub fn TorrentDetailsSheet() -> impl IntoView {
<TabsContent value="trackers" class="h-full">
{move || match selected_torrent.get() {
Some(t) => leptos::either::Either::Left(view! {
<div class="h-full overflow-y-auto pr-2 pb-8">
<div class="h-full">
<crate::components::torrent::trackers::TorrentTrackersTab hash=t.hash />
</div>
}),
@@ -186,6 +187,7 @@ pub fn TorrentDetailsSheet() -> impl IntoView {
<p class="text-sm font-medium">"Eş listesi yakında eklenecek"</p>
</div>
</TabsContent>
</div>
</div>
</Tabs>
</div>