Add hide_navigation_bar embed param to hide the nav bar without disabling navigation - #9761
Open
nishantmonu51 wants to merge 2 commits into
Open
Add hide_navigation_bar embed param to hide the nav bar without disabling navigation#9761nishantmonu51 wants to merge 2 commits into
hide_navigation_bar embed param to hide the nav bar without disabling navigation#9761nishantmonu51 wants to merge 2 commits into
Conversation
The embed `navigation` param conflated two concerns: whether the runtime JWT is scoped to a single resource, and whether Rill's own navigation chrome renders. Embedders who wanted a chrome-free embed had to set `navigation: false`, which also removed the drill-through from a Canvas component to an Explore dashboard. Add `hide_navigation_bar`, which only suppresses the top bar. Access scoping is untouched, so the Canvas drill-through keeps working. The bar is still always hidden when `navigation` is false, since a JWT scoped to one resource cannot serve the breadcrumbs or the project listing. Claude-Session: https://claude.ai/code/session_01P3aBLYwJXg7FEw4nTvkRJW
AdityaHegde
approved these changes
Jul 30, 2026
The new hidden-navigation-bar test took the canvas's first "Go to ..." button, which belongs to the leaderboard component, while hovering the KPI grid. The toolbar is revealed by `group-hover` on the owning component, so the button it asserted on was never shown. Claude-Session: https://claude.ai/code/session_01P3aBLYwJXg7FEw4nTvkRJW
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The embed
navigationparam conflated two concerns: whether the runtime JWT is scoped to a single resource, and whether Rill's own navigation chrome renders. Embedders who wanted a chrome-free embed had to setnavigation: false, which also removed the drill-through from a Canvas component to an Explore dashboard.hide_navigation_bartoGetIFrameRequest, which only suppresses the top bar. It is negative-sense so the proto3 zero value preserves behavior for every existing caller.overrideResourcesinadmin/server/deployment.gois unchanged, so the Canvas drill-through keeps working as it does withnavigation: truetoday.EmbedStore.navigationBarEnabledis derived asnavigationEnabled && hide_navigation_bar !== "true". The bar is still always hidden whennavigationis false, since a JWT scoped to one resource cannot serve the breadcrumbs or the project listing.navigationpostMessage notification stay gated onnavigation, not on the bar, so drill-through still notifies the host page.--hide-navigation-barflag torill sudo embed open.Resulting behavior:
navigationhide_navigation_barfalsefalse/ omittedfalsetruetruefalse/ omittedtruetrueThe last row is the new capability. Note that in that mode there is no in-iframe affordance for returning from a dashboard the user drilled into; the host page is expected to listen for the
navigationnotification and provide its own way back. This is called out in the docs.Checklist:
https://claude.ai/code/session_01P3aBLYwJXg7FEw4nTvkRJW