Skip to content

refactor[DebuggingRegistry]: highlight nodes only on the lowest container for modern implementations#41818

Closed
hoxyq wants to merge 9 commits into
react:mainfrom
hoxyq:export-D51713089
Closed

refactor[DebuggingRegistry]: highlight nodes only on the lowest container for modern implementations#41818
hoxyq wants to merge 9 commits into
react:mainfrom
hoxyq:export-D51713089

Conversation

@hoxyq

@hoxyq hoxyq commented Dec 6, 2023

Copy link
Copy Markdown
Contributor

Summary:
Changelog: [Internal]

Use parentElement API to find lowest AppContainer ancestor, which will be responsible for highlighting an inspected element or rendering trace updates frames on the screen.

Differential Revision: D51713089

@facebook-github-bot facebook-github-bot added CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. p: Facebook Partner: Facebook Partner labels Dec 6, 2023
@facebook-github-bot

Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D51713089

@analysis-bot

analysis-bot commented Dec 6, 2023

Copy link
Copy Markdown
Platform Engine Arch Size (bytes) Diff
android hermes arm64-v8a 16,582,056 +4,102
android hermes armeabi-v7a n/a --
android hermes x86 n/a --
android hermes x86_64 n/a --
android jsc arm64-v8a 19,955,024 -18
android jsc armeabi-v7a n/a --
android jsc x86 n/a --
android jsc x86_64 n/a --

Base commit: af8c56a
Branch: main

@facebook-github-bot

Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D51713089

Ruslan Lesiutin and others added 9 commits January 2, 2024 04:15
Summary:
Changelog: [Internal]

There will be a single DebuggingRegistry instance per runtime, which will be responsible for finding lowest AppContainer ancestor for highligthed component.

It will receive refs to inspected views (ancestors) as subscriptions and later will call all necessary methods.

For some methods actual implementation will be published in the next diffs.

Differential Revision: https://internalfb.com/D51536787

fbshipit-source-id: 9870b4dd3ae50fae4646e19f2ec41e544846b664
Summary: Changelog: [Internal]

Differential Revision: https://internalfb.com/D51603860

fbshipit-source-id: 256eba6ed45ddd161a150cad682fb392587fecbe
…ents

Summary: Changelog: [Internal]

Differential Revision: https://internalfb.com/D51603861

fbshipit-source-id: 515e4b200dfa09ad1749622c6c708aa09a2a5477
…vTools

Summary: Changelog: [Internal]

Differential Revision: https://internalfb.com/D51708053

fbshipit-source-id: bfbdcea300dd452d6691db5be88d5fe2af273277
Summary: Changelog: [Internal]

Differential Revision: https://internalfb.com/D51708055

fbshipit-source-id: 709a99b5b1a5b949bae8998082ad85743d440524
Summary: Changelog: [Internal]

Differential Revision: https://internalfb.com/D51708054

fbshipit-source-id: 0347797ebd685847ff8df6e3f91641753a72c280
Summary:
Changelog: [Internal]

TODO: add a link to github issue about brownfield app being broken in dev mode

Differential Revision: https://internalfb.com/D50644900

fbshipit-source-id: 33f34f70fbd06915144d8c26eff676a186e18f54
Summary:
Changelog: [Internal]

Forking implementations for trace updates and element highlights from React DevTools: modern and legacy.

Both implementations will later solve the same problem of highlighting the component only on a single AppContainer, but with different approaches:
- Modern will be based on DOM Node APIs: `getBoundingClientRect` and `parentElement`.
- Legacy will be based on `isChildInstance` from renderer and `measure`.

All corresponding API call will be added in a separate diff later on top of these changes.

Differential Revision: https://internalfb.com/D51713087

fbshipit-source-id: ad30ccc775c948c3e1d2bee00c51865cade778a2
…iner for modern implementations (react#41818)

Summary:
Pull Request resolved: react#41818

Changelog: [Internal]

Use `parentElement` API to find lowest AppContainer ancestor, which will be responsible for highlighting an inspected element or rendering trace updates frames on the screen.

Differential Revision: D51713089

fbshipit-source-id: 3d885cc315b1557449f3a88e64703b31f916abe3
@facebook-github-bot

Copy link
Copy Markdown
Contributor

This pull request was exported from Phabricator. Differential Revision: D51713089

@hoxyq hoxyq force-pushed the export-D51713089 branch from 7f92a35 to 6e93419 Compare January 2, 2024 12:17
hoxyq pushed a commit to hoxyq/react-native that referenced this pull request Jan 15, 2024
…t container for modern implementations (react#41818)

Summary:
Pull Request resolved: react#41818

Changelog: [Internal]

Use `parentElement` API to find lowest AppContainer ancestor, which will be responsible for highlighting an inspected element or rendering trace updates frames on the screen.

Differential Revision: D51713089

Reviewed By: sammy-SC

fbshipit-source-id: 6a972a3f1565f0aeedf9ee691aef9cf7d88acf65
@facebook-github-bot

Copy link
Copy Markdown
Contributor

This pull request has been merged in 5162b43.

@facebook-github-bot facebook-github-bot added the Merged This PR has been merged. label Jan 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. fb-exported Merged This PR has been merged. p: Facebook Partner: Facebook Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants