flutter / flutter/devtools

Provide a way to see inherited values in the Inspector

Open
#3,084 1 comment 1 reaction 0 assignees View on GitHub
new feature P2 screen: inspector
Dominant language
Dart
Stars
1.7k
Forks
404
Avg merge
6d 17h
Merged PRs (30d)
18

Description

I'm often faced with one of the following questions:

* Why does this text look like this? (E.g. why is it gray even though I don't tell it to be gray anywhere?)
* Why doesn't this text react to changes in `TextTheme`?
* Where is this text style attribute coming from, exactly?

Text style comes from an inherited widget called `DefaultTextStyle`. In complex apps, there are several layers of `DefaultTextStyle`, and `Text` merges them all into the final style.

In the IntelliJ Flutter inspector (before DevTools integration), it was possible to show the RenderObject/Element tree, and from there, the developer was able to see the `debugLabel`. It was not perfect, but — as far as I know — it was the only way to debug issues like the ones listed above.

DevTools doesn't have a RenderObject/Element tree (https://github.com/flutter/devtools/issues/636), and afaik there is no other way to get to this information.

Screen Shot 2021-06-03 at 5 06 55 PM

For what it's worth, I don't think the "go to the Element tree" method was the best developer experience. If we can surface this information better, that would be amazing. Like, in the widget tree above, I can imagine showing information about the `Text`'s current `TextStyle`'s `debugLabel` somewhere in that tree.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.