fix: preserve custom backgrounds and home fallback layering
This commit is contained in:
@@ -5,6 +5,7 @@ import { useRouter } from "next/navigation";
|
||||
import { RefreshButton } from "@/components/library/RefreshButton";
|
||||
import { PullToRefreshIndicator } from "@/components/common/PullToRefreshIndicator";
|
||||
import { usePullToRefresh } from "@/hooks/usePullToRefresh";
|
||||
import { usePreferences } from "@/contexts/PreferencesContext";
|
||||
|
||||
interface HomeClientWrapperProps {
|
||||
children: ReactNode;
|
||||
@@ -13,6 +14,12 @@ interface HomeClientWrapperProps {
|
||||
export function HomeClientWrapper({ children }: HomeClientWrapperProps) {
|
||||
const router = useRouter();
|
||||
const [isRefreshing, setIsRefreshing] = useState(false);
|
||||
const { preferences } = usePreferences();
|
||||
|
||||
const hasCustomBackground =
|
||||
(preferences.background.type === "gradient" && Boolean(preferences.background.gradient)) ||
|
||||
(preferences.background.type === "image" && Boolean(preferences.background.imageUrl)) ||
|
||||
preferences.background.type === "komga-random";
|
||||
|
||||
const handleRefresh = async () => {
|
||||
try {
|
||||
@@ -44,8 +51,12 @@ export function HomeClientWrapper({ children }: HomeClientWrapperProps) {
|
||||
isHiding={pullToRefresh.isHiding}
|
||||
/>
|
||||
<main className="relative isolate overflow-hidden">
|
||||
<div className="pointer-events-none absolute inset-0 -z-10 bg-[linear-gradient(180deg,hsl(var(--background)/0.99)_0%,hsl(var(--background)/0.95)_28%,hsl(var(--background))_100%)]" />
|
||||
<div className="pointer-events-none absolute inset-0 -z-10 bg-[linear-gradient(128deg,hsl(var(--primary)/0.14)_0%,transparent_36%),linear-gradient(235deg,hsl(185_82%_54%/0.1)_4%,transparent_34%),linear-gradient(320deg,hsl(332_82%_63%/0.08)_8%,transparent_32%)]" />
|
||||
{!hasCustomBackground && (
|
||||
<>
|
||||
<div className="pointer-events-none absolute inset-0 -z-10 bg-[linear-gradient(180deg,hsl(var(--background)/0.99)_0%,hsl(var(--background)/0.95)_28%,hsl(var(--background))_100%)]" />
|
||||
<div className="pointer-events-none absolute inset-0 -z-10 bg-[linear-gradient(128deg,hsl(var(--primary)/0.14)_0%,transparent_36%),linear-gradient(235deg,hsl(185_82%_54%/0.1)_4%,transparent_34%),linear-gradient(320deg,hsl(332_82%_63%/0.08)_8%,transparent_32%)]" />
|
||||
</>
|
||||
)}
|
||||
|
||||
<div className="container mx-auto space-y-12 px-4 py-8">
|
||||
<div className="flex justify-end">
|
||||
|
||||
Reference in New Issue
Block a user