wu-sheng opened a new pull request, #77: URL: https://github.com/apache/skywalking-horizon-ui/pull/77
## Why Follow-up to #75. The widget editor was a **sticky** side panel, but a sticky element can only stay pinned within its containing block — here the widget **canvas**, which is tall. So once you scrolled past the bottom of the canvas and clicked a bottom-row widget, the editor opened with its **top clipped off-screen** (measured live: drawer `top: -252` in an `863px` viewport — header and first fields hidden, only the footer in view). You had to hunt for the editor, and #76's "scroll the page to it" attempt was worse — it yanked a bottom-widget click back up to the top. ## What Pin the editor to the viewport with `position: fixed`, overlaying the grid column the `.editor-split` layout already reserves for it (x / width tracked on layout change via a `ResizeObserver`; the y-extent is the viewport below the topbar). Now clicking a widget — anywhere, including the bottom rows — opens the editor **fully visible, in place, with no page scroll**. A visibility guard hides the fixed panel when the editor card scrolls out of view, so it never floats over the scope-config cards above. ## Validation Headless, against the demo OAP, on a 9-widget board (`1600×863`): - **Click bottom widget (scrolled to it):** page does not jump (`scrollTop 1730 → 1730`), editor at `top: 44, bottom: 863` — **fully in view, body doesn't overflow, Delete visible**. - **Scroll up to the scope config:** editor `display: none` — no float over the config. - **Scroll back to the editor card:** editor reappears, `top: 44, bottom: 863`, complete. type-check ✅ · build ✅ · lint ✅. No new UI strings. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
