Skip to content

NMS-20375: Bug Fixes for new Topology Preview UI - #8899

Merged
marshallmassengill merged 6 commits into
foundation-2026from
mm/NMS-20375-smoke
Sep 30, 2026
Merged

marshallmassengill merged 6 commits into
foundation-2026from
mm/NMS-20375-smoke

Conversation

@marshallmassengill

Copy link
Copy Markdown
Contributor

Bunch of bug fixes for the new Topology Preview UI. All of these are UI changes so I've lumped them into one for this. I can break these out if anyone feels strongly about it. Some of these are to prep for other changes coming in NMS-20376.

Assisted by Anthropic Claude Fable 5.1.

External References

The export re-rendered the sigma scene alone, and the background image is a
DOM layer sigma never sees. The scene is now drawn onto a canvas that first
carries the page color and the background at its on-screen rect and opacity,
scaled to the device pixel ratio the export uses.
The fit bounds came from nodes and free-standing labels, so a floor plan
larger than the nodes on it was cut off, and a view with a background and no
nodes yet did not fit at all. The bounds now take in annotation shapes and
the background image, and the fit runs when either is present.
Escape was handled only in Edit mode, and there only to leave link or shape
drawing or a label edit; a selection, a rubber band mid-drag, a half-drawn
link or shape, background adjusting, and a discovered graph's focus had no
key to back out of. One Escape now undoes the most transient thing present,
in order: a label edit, a rubber band, a shape or link draft, then the draw
or adjust mode, then the selection, then the focus.
Sigma paints node and edge labels with its own default, Arial, while every
DOM element around them uses the OpenNMS font. The renderer now takes the
page's --onms-font-family for both, repaints once webfonts have loaded, and
the stats box drops its monospace face for tabular figures in the page font.
PrimeVue pads the body by the scrollbar width whenever it locks page
scroll. The stable scrollbar gutter already keeps that space reserved,
so the padding narrowed the page and shifted the in-flow content left
by the scrollbar width for as long as any modal dialog was open.
The footer kept the negative side margins it had when it sat in a
padded Bootstrap container. It now sits directly in the layout's footer
grid cell, which has no padding to cancel, so margin-right: -1rem pushed
it 16px past the viewport and made every page 1rem wider than the
window. html's overflow-x: hidden hides the scrollbar but not the
overflow, so a programmatic scroll could leave the page shifted 16px
left, and two tabs on the same page could lay out differently.

@synqotik synqotik left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@marshallmassengill
marshallmassengill merged commit ad839a7 into foundation-2026 Sep 30, 2026
15 checks passed
@marshallmassengill
marshallmassengill deleted the mm/NMS-20375-smoke branch September 30, 2026 22:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants