diff --git a/ui/src/context/BreadcrumbContext.tsx b/ui/src/context/BreadcrumbContext.tsx index 4d7c563b..c3a478a3 100644 --- a/ui/src/context/BreadcrumbContext.tsx +++ b/ui/src/context/BreadcrumbContext.tsx @@ -1,4 +1,4 @@ -import { createContext, useCallback, useContext, useState, type ReactNode } from "react"; +import { createContext, useCallback, useContext, useEffect, useState, type ReactNode } from "react"; export interface Breadcrumb { label: string; @@ -19,6 +19,15 @@ export function BreadcrumbProvider({ children }: { children: ReactNode }) { setBreadcrumbsState(crumbs); }, []); + useEffect(() => { + if (breadcrumbs.length === 0) { + document.title = "Paperclip"; + } else { + const parts = [...breadcrumbs].reverse().map((b) => b.label); + document.title = `${parts.join(" · ")} · Paperclip`; + } + }, [breadcrumbs]); + return ( {children}