mirror of
https://github.com/servo/servo
synced 2026-05-09 00:22:16 +02:00
The `InspectorActor` and its children now query the `BrowsingContextActor` for the active pipeline ID and script sender instead of storing their own copies, which become outdated on navigation. Previously, the inspector remained permanently stuck to the pipeline that was active upon launch. Now, connecting a fresh devtools client session after navigation allows inspection of each `BrowsingContext`'s active DOM. Navigation within a continuous remote debugging session still breaks the Firefox inspector panel. This is due to multiple compatibility issues with the protocol implementation, which will be addressed in separate PRs. This PR does not touch `TimelineActor` or `FramerateActor`. These are theoretically affected by the same issue as the `InspectorActor`, but in practice neither is ever instantiated. It seems both have been effectively unreachable code since1aab10f2and will require more extensive work and testing that is beyond the scope of this change. Testing: Updates to the `WalkerActor` and `BrowsingContextActor` are unit tested via the new `test_walker_observes_new_dom_after_nav` case in `devtools_tests.py`. There are no existing unit tests to reference for the highlighter and style actors; these have been tested manually but this PR does not introduce further automated tests. This PR also improves handling of `tabNavigated` messages to simplify the unit test written for4c69d85. --------- Signed-off-by: Brent Schroeter <contact@brentsch.com>