Thanks Shu for bringing up the discussion.
For the inspector, I'll try to tag the bugs I know about.
Yesterday in the meeting, I said I didn't know of any big existing
inspector bugs (as in things that are broken) that were due to platform
bugs.
But, for sure, there are plenty of things we could change on platform to
help. I see 3 categories:
1. things we've worked around in JS, but could have done better if we'd had
the right skills then,
2. features we just don't have yet because we lack some platform APIs,
3. new web features that are being or will be implemented that would
require tooling.
For 1:
- The box-model highlighter is a good example of something we implemented
using JS-XUL only at the beginning, and had to rewrite completely, using a
new platform API (I added, mentored by platform people) so it would work on
firefox os, fennec, etc...
Axel mentioned a lack of resources, but I believe most of us have some C++
experience and, when mentored, can fix things like this.
For 2:
- The "styles as-authored" project that Tom mentioned also needs platform
work. We've lived so far without it because we can still show CSS style to
the user, only it's the CSS style that was interpreted by the browser, so
all invalid properties are removed. Other devtools show the style exactly
as it was authored, and we've wanted to do that to, to level-up.
As Tom said, he spends a lot of his time adding new chrome-only platform
APIs or modifying existing ones to make this work.
- The DOM walker that we use to show the DOM tree in the inspector used to
not show anonymous content or pseudo-elements. Again, we lived with it for
a long while because it's not like the inspector didn't work at all. But at
some stage, showing :before and :after in the DOM tree became important and
we worked with platform to make that happen.
For 3, I have 2 examples of things we're doing:
- The WebAnimations API (new user-facing API for animations) is being
implemented on the platform and right when that started, platform reached
out to us (Brian Birtles) in order to get some tooling right from the
start. It's a good example of how things should go for new features because
we've been working together with them for a while, syncing our roadmaps.
- Another example of a new feature is CSS Grid. Layout platform people are
working on implementing this new w3c spec, and when it's implemented, it'd
be great to have devtools support for it. So I've reached out to Mats
Palmgren who's doing most of the implementation and we're going to start
working together on this soon (Q4 I believe).
Patrick