RPP: stop selector stats scrolling to the bottom

This CL fixes two issues (one user facing) with the selector stats
implementation:

1. As the user panned/zoomed around the timeline and the data changed,
   the data-grid would detect new data and scroll it to the bottom. This
   is not useful in this context, so this CL adds a flag to allow that
   behaviour to be turned off.

2. The selector stats table was being re-generated all the time, even if
   the set of visible UpdateLayoutTree events that backed it remained
   the same. This CL adds a check to compare the last set of events with
   the current, and bails without doing anything if they are the same.
   This severely reduces the amount of re-renders of the data grid we
   are doing.

Fixed: 337999939
Change-Id: I2f4ebf3fa887bbc306cdc89e371c5a94b9b30e12
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/5501380
Reviewed-by: Paul Irish <paulirish@chromium.org>
Auto-Submit: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
3 files changed
tree: 9e72da9b61e5410c971e95ff829206f9cfb61fe6
  1. .vscode/
  2. build_overrides/
  3. config/
  4. docs/
  5. extension-api/
  6. extensions/
  7. front_end/
  8. inspector_overlay/
  9. node_modules/
  10. scripts/
  11. test/
  12. third_party/
  13. v8/
  14. .clang-format
  15. .editorconfig
  16. .eslintignore
  17. .eslintrc.js
  18. .git-blame-ignore-revs
  19. .gitattributes
  20. .gitignore
  21. .gitmodules
  22. .gn
  23. .mailmap
  24. .npmignore
  25. .npmrc
  26. .style.yapf
  27. .stylelintignore
  28. .stylelintrc.json
  29. AUTHORS
  30. BUILD.gn
  31. codereview.settings
  32. DEPS
  33. LICENSE
  34. OWNERS
  35. package-lock.json
  36. package.json
  37. PRESUBMIT.py
  38. README.md
  39. tsconfig.json
  40. WATCHLISTS
README.md

Chrome DevTools frontend

npm package

The client-side of the Chrome DevTools, including all TypeScript & CSS to run the DevTools webapp.

Source code and documentation

The frontend is available on chromium.googlesource.com. Check out the project documentation for instructions to set up, use, and maintain a DevTools front-end checkout, as well as design guidelines, and architectural documentation.

Additional references

Source mirrors

DevTools frontend repository is mirrored on GitHub.

DevTools frontend is also available on NPM as the chrome-devtools-frontend package. It's not currently available via CJS or ES modules, so consuming this package in other tools may require some effort.

The version number of the npm package (e.g. 1.0.373466) refers to the Chromium commit position of latest frontend git commit. It's incremented with every Chromium commit, however the package is updated roughly daily.

Getting in touch