Devtools: IndexedDB ContextMenu Expand and Collapse Value Objects This change adds 2 context menu entries for the IndexedDB datagrid to allow for expanding and collapsing the value objects from the keyboard. Note: This change does not currently work with the contextMenuKey due to an existing issue where contextMenuKey on the data grid will not target the selected node, but on whichever row happens to be in the center of the currently visible section of data grid. This issue will be resolved with this change: https://chromium-review.googlesource.com/c/chromium/src/+/1729554 Before: https://imgur.com/8Iz96jv After: https://imgur.com/UwSUVOh Bug: 963183 Change-Id: Iefb563dc744b524d3282b62141a9da12230e9911 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1725990 Reviewed-by: Lorne Mitchell <[email protected]> Commit-Queue: Brandon Goddard <[email protected]> Cr-Original-Commit-Position: refs/heads/master@{#706603} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: d0bf0d06e4239335f5cbe022724ac3ae29ea2563
The client-side of the Chrome DevTools, including all JS & CSS to run the DevTools webapp.
It is available on NPM as the chrome-devtools-frontend package. It's not currently available via CJS or ES2015 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.
The frontend is available through a git subtree mirror on chromium.googlesource.com, with a regularly updating GitHub mirror at github.com/ChromeDevTools/devtools-frontend. The codebase's true location is in third_party/blink/renderer/devtools/ in Chromium's git repo.
npm startPower user tips:
You can customize the port for the dev server: e.g.
PORT=8888 npm start.You can also launch chrome and start the server separately:
npm run chromenpm run serverWhen you start Chrome separately, you can pass extra args to Chrome:
npm run chrome -- https://news.ycombinator.com(e.g. this launches Hacker News on startup)
If you want to reset your development profile for Chrome, pass in “--reset-profile”:
npm start -- --reset-profileOR
npm run chrome -- --reset-profile
dtrunIf you want to run these npm commands anywhere in the chromium repo (e.g. in chromium/src), you'll want to setup our dtrun CLI helper.
One-time setup:
npm run setup-dtrun
Now, you can use any of the following commands by simply doing: dtrun test.
In addition, you no longer need to pass double dashes (e.g. --) before you pass in the flags. So you can do: dtrun test -d inspector/test.html.
npm run formatFormats your code using clang-format
npm run format-pyFormats your Python code using yapf
Note: Yapf is a command line tool. You will have to install this manually, either from PyPi through
pip install yapfor if you want to enable multiprocessing in Python 2.7,pip install futures
npm testBuilds devtools and runs all inspector/devtools web tests.
Note: If you're using a full chromium checkout and compiled content shell in out/Release, then
npm testuses that. Otherwise, with only a front-end checkout (i.e. cloning from GitHub), thennpm testwill fetch a previously compiled content shell from the cloud (and cache it for future test runs).
npm test basics# run specific tests npm test -- inspector/sources inspector/console # debug a specific test. Any one of: npm run debug-test inspector/cookie-resource-match.html npm test -- --debug-devtools inspector/cookie-resource-match.html npm test -- -d inspector/cookie-resource-match.html # pass in additional flags to the test harness npm test -- -f --child-processes=16 # ...for example, use a higher test timeout npm test -- --time-out-ms=6000000 <test_path>
--fetch-content-shell# If you're using a full chromium checkout and have a compiled content shell, # this will fetch a pre-compiled content shell. This is useful if you # haven't compiled your content shell recently npm test -- --fetch-content-shell
--target=SUB_DIRECTORY_NAME# If you're using a build sub-directory that's not out/Release, # such as out/Default, then use --target=SUB_DIRECTORY_NAME npm test -- --target=Default
@ChromeDevTools on Twitter
Chrome DevTools mailing list: groups.google.com/forum/google-chrome-developer-tools
The tests are run through Karma.
python scripts/run_tests.py
You can also specify with which Chrome binary to run tests by setting the chrome-binary variable.
python scripts/run_tests.py --chrome-binary=/path/to/chromium/build/chromium