Masthead: a breadcrumb under the navigation bar, sticky with it, switched on in Settings #831
Labels
No labels
accessibility
authentication
breaking change
bug
documentation
enhancement
interface
internationalisation
observability
performance
security
tier
1
tier
2
tier
3
tier/4
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
Postulo/postulo#831
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
A setting that shows a breadcrumb below the navigation bar, using Basecoat's Breadcrumb, sticky like the bar itself.
What exists today
<header class="sticky top-0 z-30 …" data-site-header>(templates/base.html:101);app.jsmeasures it into--header-height, which the sticky sidebars, the skip link andscroll-padding-topread (static/js/app.js:2396-2405,assets/css/app.css:2265-2270). Belowmdthe main navigation is a bar fixed to the foot of the window (#299), and nothing on the header may create a containing block (base.html:95-100).core/navigation.pyknows the top-level sections only, and templates fill{% block title %}alone (2 of 74 touchtitle_tail).breadcrumb.css(.breadcrumb > ol,li,[aria-current=page], separators asli[aria-hidden],[data-rtl-flip]) is innode_modulesbut not imported. Postulo imports Basecoat's structure one component at a time and paints it inassets/css/basecoat.css;tests/test_stylesheet.pyholds the split.nav_underlineprecedent (ceaad90ea): aProfilefield and migration, the field onAccessibilityFormorAppearanceForm(accounts/forms.py:1010-1076,:1135), a card in the settings page, a data attribute on<body>fromcore/context_processors.py, and the export/import lists (core/export.py:304,core/importer.py:123).What would change
basecoat-css/components/breadcrumb.cssand paint it; a cotton componentc-breadcrumbrendering<nav aria-label="Breadcrumb"><ol>…</ol></nav>with the last itemaria-current="page".{% block breadcrumb %}per template, or a list built by the view (e.g. Listings › Test Engineer at Aperture Science).Profileboolean and its switch in Settings, off by default.<header>, so it is sticky and counted in--header-heightwithout new code.Decisions
c-breadcrumbcomponent, filled page by page, rather than a view-level registry; the sections are few and already named incore/navigation.py.nav_underline, since both change how navigation is drawn.mdwhatever the setting, so the sticky header does not grow on the smallest screens (reflow, SC 1.4.10).Checked against
mainat8c3d03570. From the maintainer's improvements list of 2026-10-07.Fixed in
d5efe63f5on main.