commit | 5148c84fdd42ec746cc53cc3bbeb581157e48e69 | [log] [tgz] |
---|---|---|
author | Ergün Erdoğmuş <ergunsh@chromium.org> | Tue Aug 02 08:20:48 2022 |
committer | Devtools-frontend LUCI CQ <devtools-frontend-scoped@luci-project-accounts.iam.gserviceaccount.com> | Tue Aug 02 09:23:15 2022 |
tree | 6d37b2a9e37906a2a4f2516f17604465a7243dbe | |
parent | 8a7568d0a982c73a70aad47aa6c81e35c7de5b02 [diff] |
Use CodeMirror CSS parser for formatting CSS crrev/c/3551896 reintroduced formatting styles using CodeMirror parser. However, instead of using `CSS` parser for `cssStreamParser` it used `SCSS` parser[1] and somehow it was able to work correctly for most of the cases albeit with an incorrect logic (when we step through code we expect `propertyStart` to be marked correctly -- "border" is a property start but it wasn't marking it as a `propertyStart`) Also, `stringStream` from codemirror/language[2] doesn't move `stream.start` when it eats tokens so we need to move it ourselves so that `stream.current` returns the last token which is used on deciding whether the current part is a keyword[3]. Otherwise the code stream for `border` position becomes `*{border` which doesn't match to the keyword [1]: https://github.com/codemirror/legacy-modes/blob/31553acf171d1243ca7a6d8aadd63f392f7e1c12/mode/css.js#L746 [2]: https://github.com/codemirror/language/blob/main/src/stringstream.ts [3]: https://github.com/codemirror/legacy-modes/blob/31553acf171d1243ca7a6d8aadd63f392f7e1c12/mode/css.js#L182 Fixed: 1334564 Change-Id: I4bd32989de78f172f5b825ae2c29c5d6646f3b25 Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/3789375 Reviewed-by: Changhao Han <changhaohan@chromium.org> Commit-Queue: Ergün Erdoğmuş <ergunsh@chromium.org> Reviewed-by: Michael Liao <michael.liao@microsoft.com>
The client-side of the Chrome DevTools, including all JS & CSS to run the DevTools webapp.
The frontend is available on chromium.googlesource.com.
Please be aware that DevTools follows additional development guidelines.
The issue triage guidelines can be found in docs/triage_guidelines.md.
Instructions to set up, use, and maintain a DevTools frontend checkout can be found in docs/workflows.md.
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.
All DevTools commits: View the log or follow @DevToolsCommits on Twitter
All open DevTools tickets on crbug.com
File a new DevTools ticket: new.crbug.com
Code reviews mailing list: devtools-reviews@chromium.org
@ChromeDevTools on Twitter
Chrome DevTools mailing list: groups.google.com/forum/google-chrome-developer-tools