Skip to content

fix(hover): correct element identity and path expansion for hover sel… - #57

Open
heipa24 wants to merge 2 commits into
FlaUI:mainfrom
heipa24:fix/hover-path-and-identity
Open

fix(hover): correct element identity and path expansion for hover sel…#57
heipa24 wants to merge 2 commits into
FlaUI:mainfrom
heipa24:fix/hover-path-and-identity

Conversation

@heipa24

@heipa24 heipa24 commented Aug 14, 2026

Copy link
Copy Markdown
  • Compare RuntimeId byte-wise as authoritative identity in IsSameElement, falling back to FlaUI Equals plus name/type/location matching when both RuntimeIds are missing (Flutter/self-drawn apps)
  • Expand full parent chain with the RawView walker to select the hovered element instead of adding an orphan top-level node; insert missing intermediate nodes via InsertMissingElement
  • Guard circular detection with IsSameElementSafe (RuntimeId required) and a maxPathDepth=100 safety limit
  • ScrollIntoView and focus the tree so programmatic selection shows the active blue highlight
  • Guard string.Format in InternalLogger against FormatException on user data

…ection

- Compare RuntimeId byte-wise as authoritative identity in IsSameElement, falling back to FlaUI Equals plus name/type/location matching when both RuntimeIds are missing (Flutter/self-drawn apps)
- Expand full parent chain with the RawView walker to select the hovered element instead of adding an orphan top-level node; insert missing intermediate nodes via InsertMissingElement
- Guard circular detection with IsSameElementSafe (RuntimeId required) and a maxPathDepth=100 safety limit
- ScrollIntoView and focus the tree so programmatic selection shows the active blue highlight
- Guard string.Format in InternalLogger against FormatException on user data
@heipa24

heipa24 commented Aug 14, 2026

Copy link
Copy Markdown
Author

To avoid the performance cost of updating the element tree and details panel on every hover move, consider updating on demand instead: reuse the existing "Get Current Element State" button (or add a dedicated button/hotkey) to sync the hovered element into the tree and details once, which keeps the hover loop lightweight. A "live update" toggle could preserve the current behavior for cases where continuous updates are wanted.

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.

1 participant