mirror of
https://github.com/browser-use/browser-use.git
synced 2026-09-14 19:59:47 +08:00
9863fe17fb
is_element_visible_according_to_all_parents mutated snapshot_node.bounds in place while walking the frame chain, permanently shifting every checked node's coordinates by frame offsets and scroll — corrupting values shared with absolute_position math, paint-order filtering, and any later visibility check (the function was not even idempotent). Worse, a frame node appears in its own frame chain (_construct_enhanced_node appends it before computing visibility), so an iframe's bounds were offset by themselves — coordinates doubled — wrongly classifying iframes past half the viewport threshold as invisible and silently dropping their entire content subtree from extraction. Work on a copy of the bounds and skip self in the frame chain.