flutter / devtools

Performance tools for Flutter
https://flutter.dev/docs/development/tools/devtools/
BSD 3-Clause "New" or "Revised" License
1.55k stars 319 forks source link

Improve inspector hover inspection and setting discoverability #6600

Open matthew-carroll opened 10 months ago

matthew-carroll commented 10 months ago

I'm trying to dig through a big widget tree via the inspector in the browser. If I dare to let my cursor pause for just a moment, I get a massive popup about the widget under my cursor. This popup covers half the tree display, and it consumes scroll behavior. It's hugely annoying and makes it nearly impossible to click around the tree.


DevTools version: 2.28.1 IDE: Android-Studio Connected Device: CPU / OS: arm64 (64 bit) ios Connected app type: Flutter native (debug build) Dart Version: 3.3.0-26.0.dev Flutter Version: 3.16.0-12.0.pre.41 / master Framework / Engine: 4b72a6e831 / 472be42e90

CoderDake commented 10 months ago

@matthew-carroll this is something that can be disabled in the flutter inspector settings :) Screenshot 2023-10-27 at 9 49 00 AM

matthew-carroll commented 10 months ago

Any reason that setting is placed so far away from where it has an effect? Me filing this issue is a pretty good indication that it wasn't obvious.

kenzieschmoll commented 10 months ago

Is there somewhere on the Inspector screen where this setting would have been more discoverable? Screenshot 2023-10-27 at 2 16 25 PM

matthew-carroll commented 10 months ago

I'm not sure if the popups appear everywhere or only the widget tree. The experience that lead me to file this issue was the constant interruption as I was interacting with the widget tree. I was expanding, collapsing, reading values, and I was getting bombarded with the popups.

If the popups only appear in the widget tree, then I think it would make sense to place the setting cog on the widget tree pane. Even more effective would be a dedicated icon button just for the capability. Obviously there's limited space, but this is an option that one is likely to want to toggle repeatedly based on the task. When I was searching and discovering the tree structure, I didn't want those popups in my face and stealing my scroll wheel. But once I hone in on a widget that I care about, then those popups might become useful again. Toggling that by moving the mouse all the way to the other side of the window, opening a popup, clicking a toggle, closing the popup, and moving the mouse back to the original side of the window, is a high level of friction for a setting that you might want to toggle every few seconds as you explore that tree.

matthew-carroll commented 10 months ago

Also, I don't remember if it was available or not, but most applications that let you control popups also let you decide how long your cursor remains stationary before a popup appears. That would also be a very relevant configuration to help achieve the most useful version of this feature, rather than have it feel like it's in the way.

CoderDake commented 10 months ago

@InMatrix do you have any opinions on setting discoverability here?