Summary:
the glyph isnt working and need to get it fixed asap
changelog: UIDebugger fix icon for litho event timeline tab
Reviewed By: ivanmisuno
Differential Revision: D49780805
fbshipit-source-id: 832746237a43552171cd8e0bd3063318159279dd
Summary: Bloks ios is serializing some ns dictionary without registering the metadata, this means the look up fails. That said regsitering metadata for dictionarys where the keyspace is unbounded doesnt make any sense so for this case we can just fall back to the key as the name. Since we can rely on the id lookup passing we iterarates the enties of the object
Reviewed By: passy, ivanmisuno
Differential Revision: D49314398
fbshipit-source-id: 65f7beb0d8402b08a68b9f00b7605e0b6c44766f
Summary: Now when entering framework event table from a tree root we filter that so you can see all tree events. Also we use exact matches to avoid and nasty substring bugs
Reviewed By: lblasa
Differential Revision: D48560169
fbshipit-source-id: 1df375a2b8c5035003d82c210b55adebda8bd4ec
Summary: This lets you debug when events go off screen
Reviewed By: lblasa
Differential Revision: D48395787
fbshipit-source-id: 51a6eb74fa0f61c34f25e86a6ee40bf5969379ee
Summary: Lets you filter a nodes events by thread or type
Reviewed By: lblasa
Differential Revision: D48346955
fbshipit-source-id: 455d65ad21c54c5ad26782ac6a446f7ae15a4356
Summary: Its easier this way since this is how they come out of android internally, also a bit nicer to display the full string this way
Reviewed By: lblasa
Differential Revision: D48346954
fbshipit-source-id: 997dd3922159683fcdf4b5f5f288702a5d998dc4
Summary: Now when you click on an event the bottom bar appears automatically showing you every thing you need
Reviewed By: lblasa
Differential Revision: D48318694
fbshipit-source-id: 6505e439d949941dc0e091b9576d7d1321d8a05f
Summary:
UINode has never been a good name, we have 3 versions of a node.
ClientNode Previously UINode (the raw data from the client)
NestedNode (for the visualiser)
TreeNode (extends ClientNode and adds stuff specific to the tree like indentation and expanded states)
Arguablely we dont need nested node but that is another story
Reviewed By: elboman
Differential Revision: D47547529
fbshipit-source-id: 9a3b119d1230ea7b6734e7a3270c28287b04faf1
Summary: This file was getting overwelhming, and this seemed like a reasonable way to split it
Reviewed By: elboman
Differential Revision: D47547532
fbshipit-source-id: ab2bfa22daabbed13ec1445da0cf8ba88bda12d7
Summary: This will allow us to build a nice table easily.
Reviewed By: lblasa
Differential Revision: D47520029
fbshipit-source-id: 3cdd776533b66688329171eb29b892e0b9153540
Summary:
See title. The issue occurs because this tabs component derives a key by essentially serializing the children. Since its possible for different elements in the UIDebugger to have different number of tabs, due to framework events not always being present this was never anticipated.
Solution is to just let the callee supply a storage key which does not depend on the exact number of tabs
Reviewed By: lblasa
Differential Revision: D47520033
fbshipit-source-id: 67e57db5110fde52451d30496c25a25b0eb4a6f7
Summary:
Added selection source concept to onSelect callback. This allows us to only autoscroll the tree when selection source is the visualiser. We had feedback that the horizontal autoscrolling whilst using the tree was unhelpful.
A side benefit of selection source is better tracking of how people use kb, tree vs visualiser to select things
Changelog: UIDebugger only autoscroll horizontally when selecting via the visualiser
Reviewed By: lblasa
Differential Revision: D47334078
fbshipit-source-id: d7eadddb8d3d0fd428d5c294b2dccc2f1efa5a95
Summary:
A few enhancements:
1. we use the component name when using big grep search and looking up in codehub instead of big grep search
2. diffusion renamed to code hub
Differential Revision: D46934805
fbshipit-source-id: c818b2937256cbeaabfdfc0a191706ebdecb716b
Summary: Feedback from michel, It is always empty for android so dont show it
Reviewed By: elboman
Differential Revision: D46152985
fbshipit-source-id: 6c4f1d499ddb8916fdae6015cd57e158a0c1f182
Summary:
* Added line number as an attribute to node, in theory we could get it from the device in the case of compose
* dont need to use miles as have the file already
* cleaned up naming in ide file resolver so its clear its the qualified name we are talking about
Reviewed By: lblasa
Differential Revision: D45079135
fbshipit-source-id: 24f2d5814800a4a404b680599d307cc750758fcd
Summary:
As events get bigger, this change includes the following:
- Dedicated event inspector
- Stacktrace viewer for events with stacktrace attribution
- Stacktrace viewer is displayed within a new BottomPanel. BottomPanel can display any React component and can be reused in the future in different use cases.
Reviewed By: LukeDefeo
Differential Revision: D44628768
fbshipit-source-id: 71a9ef87e71c9a17f58c2544a1aa356eed14ed27
Summary: Leverage the properties prop of `TimelineDataDescription`. Whenever an event is selected, the event payload is shown as the event properties.
Reviewed By: antonk52
Differential Revision: D44497058
fbshipit-source-id: 09782d583957a0df8c3efd3f5a62af6b321a26e3
Summary: Because Tabs now depend on the selected node (i.e. some nodes have events, some don't) they need to use a key.
Reviewed By: antonk52
Differential Revision: D44624658
fbshipit-source-id: 693983f6a82c090adae3a2e009873d903626ab75
Summary:
The current event label used the event type. The type in itself can have this shape:
`ck:willMountComponent`
The event name is just 'willMountComponent'.
So, extract that piece of data instead.
Reviewed By: aigoncharov
Differential Revision: D43983728
fbshipit-source-id: e232b59cfe3eb0710e56fc9ba7f94b644b07ee74
Summary:
Add a frameworks events tab. This is currently using the `TimelineDataDescription` component which may ultimately be replaced by something more sophisticated.
In the meanwhile, this does the job of chronologically displaying events with a label.
Reviewed By: mweststrate
Differential Revision: D43948891
fbshipit-source-id: 31ebf8a1d0e126856c3aa5291a1a06d7f2547233
Summary:
For the visualiser we use the same trick as with the hover state. We subscribe to selection changes and only render if the prev or new state concerns us.
For the tree we change from object identity to the node id + and indent guide are added to the memoisation equal check.
Depending on teh change this tree memoisation can vary in effectiveness. If you go from nothing selecting to selecting the top element nothing is memoised since react needs to render every element to draw the indent guide. If you have somethign selected and select a nearby element the memoisation works well.
There are ways to improve this more down the road
changelog: UIDebugger improve performance of selecting nodes
Reviewed By: lblasa
Differential Revision: D43305979
fbshipit-source-id: 5d90e806ed7b6a8401e9968be398d4a67ed0c294
Summary:
Paddings and alignments were improved also
changelog:
UIDebugger - Added ability to big grep search based on android ID if available
Reviewed By: lblasa
Differential Revision: D43159228
fbshipit-source-id: e2d7190ea2411e936ba065328bcc375c64619e8f
Summary:
Make it optional to display the icon (glyph) with a default of true.
Not used in this diff, but it will in future diffs.
Reviewed By: ivanmisuno
Differential Revision: D43186605
fbshipit-source-id: b525e126bcc46604e0abc0f83b6ff33a7ce78962
Summary: <NoData /> didn't support dark mode, now it does.
Reviewed By: ivanmisuno
Differential Revision: D43186565
fbshipit-source-id: 9952535d8762d8510afcce03b6cde7b603292107
Summary: A bit more explicit with the intent, clearer code.
Reviewed By: ivanmisuno
Differential Revision: D43186540
fbshipit-source-id: 24f2168f5be91673683966208c9b8b54125aaa5b
Summary:
This change addresses some obvious issues which made the ui-debugger unusable with dark mode on.
There may more things that need changing, but at the very least this should be a good place to start.
Reviewed By: fabiomassimo
Differential Revision: D43083218
fbshipit-source-id: 8e4338b79178d3a0f05f9bcaffa2fc6f35eb0e21
Summary: This is internal to ui-debugger so there's no need to surface this information to users.
Reviewed By: ivanmisuno
Differential Revision: D43081188
fbshipit-source-id: f6abdeb7828a1709d2590cf2a10407baec645420
Summary:
- Vertically center values
- Add gutter between rows/cols
- Tryout the removal of the indentation border (it could either be removed in the future or brought back)
Reviewed By: antonk52
Differential Revision: D42581663
fbshipit-source-id: cd682adca7f76f80240a0ca6d9023368a33453c3
Summary:
Attributes Inspector didn't have support for inspectable arrays.
This change addresses an issue with the inspectable itself and adds basic support to it in the visualiser.
Reviewed By: LukeDefeo
Differential Revision: D41522879
fbshipit-source-id: f9cad42470541039c8157477b0fe9bc58f18f1ba
Summary:
Remove checkbox as we currently don't support editing values.
Instead replace with a simple 'TRUE', 'FALSE' text.
Reviewed By: antonk52
Differential Revision: D41532898
fbshipit-source-id: d4af37e30eb21ab761c39cb4ae45337247c80c9d
Summary:
^
IMHO, this is a better name.
... and secretly make it enabled by default
Reviewed By: LukeDefeo
Differential Revision: D41495973
fbshipit-source-id: f287a4beadb70587ff43ac896213a20746dd8c22
Summary:
Before this change, color inspector used a color picker that showed: color, rgba, hex.
The problem is that engineers have to click on it to see these values.
This change leaves the picker as is, but presents both hex and rgba inlined within the inspector thus avoiding extra interactions.
Reviewed By: antonk52
Differential Revision: D41495740
fbshipit-source-id: c8af01e3060d2e6725295418293b1e30679c1b1f
Summary:
^
In this case, the unknown value, which is a text will be displayed as sent by the client.
Reviewed By: antonk52
Differential Revision: D41494094
fbshipit-source-id: 9295e3f7e055a8ce9b430137600108a4cdf32c90
Summary:
Enumeration used to be a type containing a single property value of type string.
The InspectableEnum is a type that had an Enumeration value and possible values.
As we removed possible values from the enum value, this structure no longer serves its purpose.
Reviewed By: antonk52
Differential Revision: D41400874
fbshipit-source-id: e5c2d1e15ee9b3074ddd69f75ee9b8150d44379f
Summary:
As metadata got split from attributes, raw data became harder to read.
This change annotates raw data with attribute names to ease readability and thus usability.
Reviewed By: antonk52
Differential Revision: D41400622
fbshipit-source-id: 8bebb2bd368490b9d7a2b4435749cdf0570b7571
Summary: If there are no attributes for a given section, display a 'No data available' message rather than having an empty panel.
Reviewed By: antonk52
Differential Revision: D41400252
fbshipit-source-id: 0337702f638b9b917e6b3be5962838d2eb15c20d