diff --git a/web/src/at_record_web/view.gleam b/web/src/at_record_web/view.gleam index b246236..6b72e2a 100644 --- a/web/src/at_record_web/view.gleam +++ b/web/src/at_record_web/view.gleam @@ -68,7 +68,23 @@ fn authed_view(model: Model) -> Element(Msg) { /// underneath is public network data regardless of who (if anyone) is /// signed in on this browser. fn public_view(model: Model) -> Element(Msg) { - html.div([attr.class("shell")], [public_app_bar(model), public_page(model)]) + case model.route { + // The record page is a back-bar drill-down: wrap it in `.sub-page` so the + // app-bar stays fixed-height chrome and only the body flexes, instead of + // both splitting the shell height (which left a tall empty band on top). + PublicRecord(_, _) -> + html.div([attr.class("shell")], [ + html.div([attr.class("sub-page")], [ + public_app_bar(model), + public_page(model), + ]), + ]) + _ -> + html.div([attr.class("shell")], [ + public_app_bar(model), + public_page(model), + ]) + } } fn public_app_bar(model: Model) -> Element(Msg) {