Commit Graph

453 Commits

Author SHA1 Message Date
Chaiwat Ekkaewnumchai
f275ee00c5 Add Keys for FlipperObject
Summary: This adds ability to iterate over FlipperObject before sending it to be processed on Flipper desktop

Reviewed By: mweststrate

Differential Revision: D21214901

fbshipit-source-id: a6186a42004f1afb70889a395b1df037447f9881
2020-05-07 03:40:58 -07:00
Dan Yang
56b4d43eb0 Database Plugin - Increase blob max length and attempt to render UTF-8
Summary: 512 is a pretty small blob length. Increasing it to 5120 and changing it to attempt to stringify UTF-8 if not ascii.

Reviewed By: jknoxville

Differential Revision: D21253132

fbshipit-source-id: 1cc9226b86a9b9ddfd73e29c8b0c04ac54b5b4b2
2020-04-29 16:11:22 -07:00
Scott Kyle
c7a6908093 Add API to retrieve Java Object from Flipper objects
Summary: There's no existing API on the Flipper objects to get an arbitrary Java object, which we need in an inspector plugin we're building (`getDynamic` requires you to know what you want in the end).

Reviewed By: jknoxville

Differential Revision: D21223329

fbshipit-source-id: 29e9f8788be404cec44c6ddeb6b56b939b97b766
2020-04-29 08:27:21 -07:00
Joshua Selbo
e6b7c9a346 Migrate Sonar Android tests (#1045)
Summary: Pull Request resolved: https://github.com/facebook/flipper/pull/1045

Reviewed By: passy

Differential Revision: D21181354

fbshipit-source-id: ddc329f8bafd5890b7428642d32f7f62e1d499ad
2020-04-23 15:19:32 -07:00
Pritesh Nandgaonkar
17ccdeaf6f Change the export logic for the Inspector
Summary:
This enables the feature which showed the theme information in the layout plugin. It was disabled due to the OOM which occurred while exporting flipper trace. The OOM happened when we tried to serialise the whole layout hierarchy and the amount of info added per node by the theme info was quite heavy. Thus removing it solved the OOM problem at that point, but its not the correct solution.

The problem is that each node has too much information and sending it at one stretch is very heavy and causes OOM. So instead of sending it at one stretch, I have broken it into multiple calls at each level of the tree. This no longer causes OOM and we will be able to show theme information too.

Also for iOS we don't have AXNodes call or AXRoot feature implemented, so anyway I had to put a check to not make those calls, so instead I have kept the feature of fetching all nodes on the iOS instead, as there has been no problem on the iOS side with regards to the OOM. But I am indifferent, the same logic will work for iOS too, it might increase the time to export.

issue discussed [here](https://fb.workplace.com/groups/flippersupport/permalink/854729375007722/)

Reviewed By: jknoxville

Differential Revision: D21136057

fbshipit-source-id: becd237a6d53c50af082597f2e8ed790c25cb966
2020-04-23 04:31:17 -07:00
Michal Zielinski
2d1870cf7d Add support for deleting a shared preference (#1018)
Summary:
This change makes it possible to remove preferences. I also added a `Delete` context menu option to `DataInspector` because I needed it to implement this feature. passy confirmed that it makes sense to add this because delete is a common action.

Fixes https://github.com/facebook/flipper/issues/451
Pull Request resolved: https://github.com/facebook/flipper/pull/1018

Reviewed By: jknoxville

Differential Revision: D21086308

Pulled By: passy

fbshipit-source-id: 551ff0908d5e6c93f58d6012b42e1ee3531de997
2020-04-17 09:01:04 -07:00
Pascal Hartig
4be1b4d491 Add support for AndroidX fragments (#957)
Summary:
Fix https://github.com/facebook/flipper/issues/931

This is not how I would *like* to fix this, but it should do the job.
When the switch over to AndroidX was made, the overall abstraction
started to leak and we really need to remodel this in its entirety.
There's also the question of whether we want to support both support
fragments and AndroidX fragments or not. Right now it's kinda-sorta
supported but only under some circumstances, which is not great.

I also added some more defensive try/catches as there's some unsafe casting
involved and future changes may break this causing the entire layout to disappear.

Change Log: Fix support for AndroidX fragments in Layout Inspector.

Pull Request resolved: https://github.com/facebook/flipper/pull/957

Test Plan:
Changed the sample app to include some AndroidX fragments and they
now show up (again) in the view hierarchy:

![Screenshot 2020-04-01 13 40 53](https://user-images.githubusercontent.com/9906/78138910-915fbc00-741f-11ea-8386-4eeca9b7f932.png)

Tested internally that FB4A fragments show up again, too:

{F233098198}

Reviewed By: mweststrate

Differential Revision: D20792503

Pulled By: passy

fbshipit-source-id: 7030b897ab547d1e8803b7f0d7aaa34263cfaed2
2020-04-03 09:21:03 -07:00
John Knox
84e9756b83 Catch Error, not just Exceptions in ErrorReportingRunnable
Summary: We can OOM in flipper, and we'd like to catch those and prevent them from crashing the app. They are Errors, not Exceptions.

Reviewed By: mweststrate

Differential Revision: D20648824

fbshipit-source-id: 60002a3c950518e56189776f05df8f2c92a851f0
2020-03-25 17:39:21 -07:00
Chaiwat Ekkaewnumchai
4eccacbac8 (Client) Add Connection Listener to BufferingFlipperPlugin
Summary:
- Add a new listener to be called when the plugin is initialized

Note:
- This is a part of this PR: https://github.com/facebook/flipper/pull/488

Reviewed By: jknoxville

Differential Revision: D20474259

fbshipit-source-id: ef1673ffa7fbc087761a753fbae813346bd481c3
2020-03-23 22:03:09 -07:00
Pritesh Nandgaonkar
cfb82ad8c8 Fix the broken export of layout plugin in android(not easily reproducible)
Summary:
There was a bug reported recently where the fetching all the nodes failed and the error is pasted [here](https://our.intern.facebook.com/intern/paste/P127476330/). From the paste we can see this `android.content.res.Resources$NotFoundException: Unable to find resource ID #0x0`.

Reported bug is [here](https://fb.workplace.com/groups/flippersupport/permalink/830359447444715/)

I was able to repro this luckily

{F231474948}

Reviewed By: xiphirx

Differential Revision: D20441839

fbshipit-source-id: 9e9bfd15422c0f6c6f7a71aa22e9b1c8d640ec4a
2020-03-18 21:11:13 -07:00
Sim Sun
4a2349c42d refactor(asan): remove asan checker
Summary: Remove asan checker, we can use `BuildConfig.IS_ASAN_BUILD` to check whether it's a asan build to instead of invoking a JNI api.

Differential Revision: D20088093

fbshipit-source-id: f26d367430a983fbe7b630919a4131fdf2e2d510
2020-02-25 21:48:28 -08:00
Hilal Alsibai
33bbeadfe9 Add theme information for Application, Activity and View descriptors
Summary: This will query for and display all of the associated theme information for each of the descriptors.

Reviewed By: passy

Differential Revision: D20008056

fbshipit-source-id: 720d224144b0822528ca8e23cdbec9fe9dd25e6b
2020-02-24 11:33:01 -08:00
John Knox
c262ab4e14 Change positionOnScreen to positionOnScreen{X,Y}
Summary:
Nested subobjects work but aren't very well typed in the layout plugin.
So changing it to help flipper work with it.
From:
```
positionOnScreen: {x: 234, y: 456},
```
to
```
positionOnScreenX: 234,
positionOnScreenY: 456,
```

Reviewed By: passy

Differential Revision: D19998161

fbshipit-source-id: 4e4d7ced3cb37c527bbdf65549ec436311a8c2b8
2020-02-20 11:25:05 -08:00
Pascal Hartig
35eeebffd0 Revert D19987003: Add theme information for Application, Activity and View descriptors
Differential Revision:
D19987003

Original commit changeset: c9b51311d287

fbshipit-source-id: c4536cfbb5e2a4fd198b5039067d89b2b8b5b92b
2020-02-20 05:15:03 -08:00
Hilal Alsibai
6f4de969fb Add theme information for Application, Activity and View descriptors
Summary: This will query for and display all of the associated theme information for each of the descriptors.

Reviewed By: passy

Differential Revision: D19987003

fbshipit-source-id: c9b51311d28712a1af76c45a434bfb25d28d5c54
2020-02-20 04:08:58 -08:00
Michel Weststrate
1383260a7c Expose React Devtools as a Metro plugin
Summary:
This diff turns the DevTools plugin from a normal plugin in a device plugin. The reason for that can be seen at the end of the test plan in the first stack of this diff: Regardless on which client you open the devtools, you are always looking at the react tree of the app that happens to listen at the appropriate port, unrelated to the actively selected app. This diff moves the plugin from being a client plugin to a device plugin, a Metro device plugin to be precisely, as of the latter there is only one and they should typically correspond (which is why we can trigger reload as done in the previous diff)

Currently we have a Flipper plugin inside the iOS / Android apps with one purpose: to select different ports to listen to on different devices. But this functionality was never implemented, nor seems there to be much demand for. So these plugin don't offer any actual value. The widely used standalone version of the react devtools (https://www.npmjs.com/package/react-devtools) doesn't offer port customization either, so this limitation seems to be acceptable.

To make sure that this change is backward compatible, we make sure to show the metro device if we find metro, regardless whether it is new enough to support log forwarding and reload commands (previously we only showed the device if it has the /events endpoint).

The only case I can think of we are killing with this approach is where people are debugging a RN app, but with having metro running. I doubt that is an actual case, but probably rickhanlonii knows more about that.

Furthermore this diff makes sure that the devTools can connect to physical android devices. Also, making it to the end of this explanation means that you have done most of the reviewing for this diff. The actual code diff is shorter.

Reviewed By: passy

Differential Revision: D19878605

fbshipit-source-id: 3f33e59d4f6e4cce39102420f38afee10018999f
2020-02-17 03:41:13 -08:00
Andres Suarez
c315691b2d Apply clang-format
Differential Revision: D19843069

fbshipit-source-id: af3f3998e2259ca5070b43ffb19933cf9304319d
2020-02-11 19:29:23 -08:00
John Knox
9280b3178d Include positionOnScreen in layout data
Summary:
Context: https://fb.workplace.com/groups/flippersupport/permalink/804152663398727/

This gives flipper the location of every node, in relation to the entire screen. This allows it to visualize the position of each node on it's own diagram, overlayed over a screenshot for example. The use case in mind is after importing flipper data, you'll still be able to see layout nodes overlayed over a screenshot taken during export.

Currently this is only added to Android Views, meaning we don't get it for Litho views or anything on iOS.
This is basically to get something working end-to-end, and if it's all good, then I'll add the other types of views.

Reviewed By: passy

Differential Revision: D19747691

fbshipit-source-id: 8ba3aae6b7685de6faaf55b9628c200802801db4
2020-02-06 05:03:28 -08:00
Ryo Sakaguchi
0e326330c0 Add Nullable annotation to getInstanceIfInitialized (#770)
Summary:
When calling from Kotlin codes, making nullability clear is safer.
This PR adds `Nullable` annotation to `getInstanceIfInitialized`.

## Changelog

Add `Nullable` annotation to `getInstanceIfInitialized`
Pull Request resolved: https://github.com/facebook/flipper/pull/770

Reviewed By: mweststrate

Differential Revision: D19719980

Pulled By: passy

fbshipit-source-id: 195b396a8fd75a15247da7244215aca9ed35886c
2020-02-04 06:42:37 -08:00
Artem Pianykh
67c646069a Fix incorrect override of equals in FlipperArray, FlipperObject
Summary:
mityal implemented a new check for nullsafe to warn about potentially
incorrect overrides of `equals` method (not yet released).

While testing some other things I stumbled upon incorrect `equal`
overrides in Flipper, particularly not properly handling `null` param.

Reviewed By: passy

Differential Revision: D19639882

fbshipit-source-id: 7f9aec7270e89a906810807f6849628967047b2a
2020-01-30 07:17:09 -08:00
Zac Sweers
48d6ea4c30 Remove stetho (#762)
Summary:
## Summary

Resolves https://github.com/facebook/flipper/issues/607

This removes stetho dependencies directly in favor of just copying in the used classes. This removes the last non-androidx dependency from the project, and is useful as stetho appears to be unmaintained. The fresco stetho dependency appeared to be completely unused.

## Changelog

Remove stetho dependencies. It was unused other than a few utility methods, but came at the cost of preventing Flipper consumers from completely removing dependencies that hadn't updated to Androidx yet.
Pull Request resolved: https://github.com/facebook/flipper/pull/762

Test Plan: Existing tests still pass with no regressions. Functionally this should be no difference.

Reviewed By: jknoxville

Differential Revision: D19577969

Pulled By: passy

fbshipit-source-id: b277ddf97a9d2c846dd0b9227c02bb46c1ecd930
2020-01-28 05:24:30 -08:00
Hilal Alsibai
c430fc3e18 Show window theme attributes when clicking on a window in the inspector
Summary: Currently we dont describe a `Window` object at all. Now we how the relevant theme data associated with the window.

Reviewed By: passy

Differential Revision: D19550049

fbshipit-source-id: 29903fb487b0be91d305f3b8d8fa7e4c3b3213e9
2020-01-27 12:49:43 -08:00
Chun-Ho Ng
c8b9dd949b Fix Opening FB4A Database Plugin
Summary:
The FB4A SQLite database plugin has to be opened 4-5 times before it shows a list of databases. This is because some databases are encrypted and can't be opened. In this case the code throws and exception and we do not catch that, causing the whole load process to crash.

Now catching the exception and returning an empty list.

Reviewed By: jknoxville

Differential Revision: D19463876

fbshipit-source-id: af8c9a70dc2761e62088d90ce89f8d16057e8745
2020-01-21 15:58:29 -08:00
John Knox
91b1ebf2b8 Back out "Fix initHybrid app-crashing bug"
Summary: This was a failed attempt to fix invalid initialization, but just means it fails elsewhere, so undoing this change.

Reviewed By: passy

Differential Revision: D18685054

fbshipit-source-id: fc460ee7cacc8cb89ee2a22243f9738383cbba43
2019-11-26 05:30:33 -08:00
John Knox
554037d444 Don't allow initialization when not in supported build
Summary:
If something calls FlipperClient.getInstance(), it will start a new thread and try to start the client. If this is in a context that will fail, like a process that hasn't loaded the .so, then it will fail, but we don't know who started the thread. This adds logging before spawning a new thread so we can see the stack trace of the culprit.

It might want to throw an error instead, that will help track down the culprit of such initializations, but this is a less intrusive change to just stop the failures from happening, to start with.

Reviewed By: cekkaewnumchai

Differential Revision: D18658972

fbshipit-source-id: 2433d4d6ef411d4fb28f31e27bcef702c5a8f4db
2019-11-23 18:21:21 -08:00
John Knox
4faac01448 Fix initHybrid app-crashing bug
Summary: We're seeing some cases of initHybrid failing when the C++ class hasn't been registered. I don't think we should be attempting to init in these cases, so gating it by the same logic as when we load the static library.

Reviewed By: priteshrnandgaonkar

Differential Revision: D18658101

fbshipit-source-id: b29592135dcf637a8c0d40aee30e383f4f35e527
2019-11-22 10:52:02 -08:00
Sara Valderrama
19df98e525 update accessibility hierarchy to show class names
Summary: Show the simple name instead of the node info class since this is taken into account for the attributes.

Reviewed By: jknoxville

Differential Revision: D18574219

fbshipit-source-id: 4b134e8be18c313e08df423dcdbe286d96c80b56
2019-11-19 10:04:10 -08:00
Michael Evans
cc19cc75ee Move declaration of required permissions into core lib (#593)
Summary:
If we move the permissions into the library itself, the manifest
merger will take care of adding them to consuming applications,
making setup instructions easier.

## Changelog

Move required permission declarations into flipper-core
Pull Request resolved: https://github.com/facebook/flipper/pull/593

Test Plan:
Using aapt we can dump the permissions of a sample app.
`$ANDROID_HOME/build-tools/29.0.2/aapt d permissions sample-debug.apk `
```
package: com.facebook.flipper.sample
uses-permission: name='android.permission.WRITE_EXTERNAL_STORAGE'
uses-permission: name='android.permission.INTERNET'
uses-permission: name='android.permission.ACCESS_WIFI_STATE'
uses-permission: name='android.permission.READ_EXTERNAL_STORAGE'
uses-permission: name='android.permission.FOREGROUND_SERVICE
```

Reviewed By: priteshrnandgaonkar

Differential Revision: D18006323

Pulled By: passy

fbshipit-source-id: c4cf28ee698faa3e2b631462f2953976135b299c
2019-10-18 06:43:35 -07:00
Pascal Hartig
9e96f0c7c2 Remove closed task references
Summary: No longer relevant.

Reviewed By: jknoxville

Differential Revision: D17951216

fbshipit-source-id: 2ef2a97c594af7cf9c134555779765872cfa0eb4
2019-10-16 08:08:23 -07:00
Andres Suarez
0675dd924d Tidy up Flipper license headers [1/2]
Reviewed By: passy

Differential Revision: D17863711

fbshipit-source-id: 259dc77826fb803ff1b88c88529d7f679d3b74d8
2019-10-11 13:46:45 -07:00
s1rius
86eb24b02c Work with custom SharedPreferences implementation (#571)
Summary:
see https://github.com/facebook/flipper/issues/450
If we want to control a custom SharedPreferences, we can create a Class as SharedPreferencesDescriptor's Subclass, override the getSharedPreferences() function to return a custom SharedPreferences instance.

## Changelog
add getSharedPreferences() function in SharedPreferencesDescriptor Class
Pull Request resolved: https://github.com/facebook/flipper/pull/571

Test Plan: No

Reviewed By: jknoxville

Differential Revision: D17738675

Pulled By: passy

fbshipit-source-id: d227e7d6461194f7a01ae7b2ba53434dd71fc0d2
2019-10-08 01:51:21 -07:00
Chaiwat Ekkaewnumchai
053cfc09f3 Make LeakCanary a Separate Plugin
Summary: Pull Request resolved: https://github.com/facebook/flipper/pull/559

Reviewed By: passy

Differential Revision: D17546936

fbshipit-source-id: dce128a771b73e8b18dfc2b78ee99502c3f1ce86
2019-09-25 03:05:56 -07:00
Pascal Hartig
b041da6d61 Move litho plugin tests
Summary:
I missed these. :(

Open source CI is unhappy about this - for good reasons.

Reviewed By: jknoxville

Differential Revision: D17500071

fbshipit-source-id: 96106f660dee59985c51e2635321ab4ad00a795a
2019-09-20 10:24:38 -07:00
Pascal Hartig
2baadf9867 Make litho/sections a separate plugin
Summary:
Breaking Litho/Sections off. Doesn't really make sense to have
two deps for this especially since they're pretty tightly coupled.

This makes our core already quite slim.

Reviewed By: jknoxville

Differential Revision: D17420118

fbshipit-source-id: 9a03911f4af6410745b9aefd0e6a75bdf106660f
2019-09-19 03:02:51 -07:00
Pascal Hartig
c4a9b603e2 Make network a separate plugin
Summary: Per title.

Reviewed By: jknoxville

Differential Revision: D17419678

fbshipit-source-id: aee00f077b7ed955c60884853dc1128d27366ee8
2019-09-19 03:02:51 -07:00
Pascal Hartig
7ac82bec4e Make fresco a stand-alone gradle project (#548)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/548

First project to pull out of the "fat distribution" we currently have.
Still needs setup for Maven and registration in Bintray.

Reviewed By: jknoxville

Differential Revision: D17395660

fbshipit-source-id: 6244495a2e25d705dd930ef87c7e5e1f038eb921
2019-09-19 03:02:51 -07:00
Mihaela Ogrezeanu
fc2b8db8cf Show full event name in sidebar
Summary: Show info about the event which triggered a new changeset generation; in case of a state update, also show the name of the method which triggered the state update.

Reviewed By: pasqualeanatriello

Differential Revision: D17162202

fbshipit-source-id: ebf218f8ce71799e4dd452f54b1621af7f83cc51
2019-09-10 06:56:41 -07:00
Mihaela Ogrezeanu
0c307b7c27 Use state update attribution
Summary: Use the string sent from the client to show which section triggered a state update.

Reviewed By: pasqualeanatriello

Differential Revision: D17162190

fbshipit-source-id: a72eea1c6fc0fba851028aa050f0c6772a590e8d
2019-09-10 06:56:41 -07:00
Mihaela Ogrezeanu
e05a3bdeca Add state update attribution
Summary:
Show the section which triggered the state update in the tree hierarchy.
We can't use the attribution param that was being passed from SectionTree because it contains the key of the section, not the global key.

Reviewed By: pasqualeanatriello

Differential Revision: D17161730

fbshipit-source-id: bae5e509c378ffdf210acac6564212c873c5855b
2019-09-10 06:56:40 -07:00
Benjamin Elo
a90422bf2f Added additional parameters for logging
Summary:
The navigation plugin supports logging of a date and the class name. This addition adds that support.

I have kept the previoius method which I will remove once  I update the fb4a navigation plugin integration.

Reviewed By: danielbuechele

Differential Revision: D17202996

fbshipit-source-id: eac95328a6e2278c3a27ca608b9b675c8efe4528
2019-09-05 05:59:55 -07:00
Mihaela Ogrezeanu
f716c34295 Show prev and next data for a SingleComponentSection
Summary: The SingleComponentSection doesn't store anything in the data field unless it's set manually by the dev; this adds custom info about the prev and next data so we can use it for debugging

Reviewed By: pasqualeanatriello

Differential Revision: D17112284

fbshipit-source-id: 55aa49583e3bc7d046661d34841b7c3283972d76
2019-08-30 05:44:58 -07:00
Ron Edelstein
0f503f40ac Apply java formatting
Reviewed By: zertosh

Differential Revision: D17006136

fbshipit-source-id: 356442170cee830f4794bff456a6d2162f45d6b3
2019-08-24 20:33:38 -07:00
Sara Valderrama
8699d62b47 fix isTalkbackFocusable evaluation utils for flipper plugins
Summary: utils used by redblock and layout plugins were incorrectly checking node instead of childNode for listviews that have non-visible children

Reviewed By: nscoding

Differential Revision: D16897804

fbshipit-source-id: 8f62956c57568694db76030377552e43ce3a9216
2019-08-20 10:40:38 -07:00
Benjamin Elo
8f6740bb01 Open source version of Navigation Plugin
Summary:
Here I have an early version of the Navigation Plugin (Android) for Open Source.

A lot of apps will be using there own Navigation framework for handling deep links. In order to keep things as simple as possible, recording navigation events is done through a single function that can be called from anywhere in the app. This will allow users to place this function in there own navigation frameworks and use there own logic with it.

Seperately, I have shown how this can be used with our Android sample app. I use the built in Android intent-filters to provide a demo of how this can potentially be used, and to form the basis of the docs that I will write.

Reviewed By: passy, danielbuechele

Differential Revision: D16828049

fbshipit-source-id: 22765f63ca0c471689d2ec5865fdfc155b92697f
2019-08-16 07:15:56 -07:00
Pritesh Nandgaonkar
53c1eee641 Change the implementation of fresco plugin on android
Summary: This updates the implementation of the export of the fresco plugin on the android side. Initially we used to send all the images info in one call, but its not scalable, as the images increase, the payload size of the rsocket can increase which will lead rsocket to drop messages. This diff updates the implementation of android side to match the one on the iOS side.

Reviewed By: passy

Differential Revision: D16627823

fbshipit-source-id: 563bf5fb20595c198b6447bb4e41f04af6e46644
2019-08-08 09:16:41 -07:00
Chun-Ho Ng
fe56c8471c Frontend improvements for Databases plugin
Summary:
Specs here: https://fb.quip.com/aPPOAWMraRMT

Screenshots:
https://pxl.cl/Gngf
https://pxl.cl/Gngg
https://pxl.cl/Gngd
https://pxl.cl/GxQr
https://pxl.cl/Gngh
https://pxl.cl/Gngk
https://pxl.cl/Gngl
https://pxl.cl/Gngm

Reviewed By: quanturium

Differential Revision: D16266093

fbshipit-source-id: a5408b974875dcabcbd6055ccbb2818d0c1b25f6
2019-08-07 21:09:49 -07:00
Sara Valderrama
f591475f85 A few mini-fixes for the accessibility layout inspector
Summary:
- fix mutual selection of elements in ax and non-ax tree (simplifies linkedNode logic as well)
- remove unneeded extraInfo attributes (focused, nonAXwithAXchild, & hasAXNode were not/no longer being used)
- use 50/50 fixed width view for trees when both are visible

Reviewed By: jknoxville

Differential Revision: D16390355

fbshipit-source-id: bbf9ea887f8f1035df8b4b0562ddcc4de291f004
2019-08-01 22:03:26 -07:00
Sara Valderrama
a646c4e2ff Update talkback output in flipper accessibility utils for password fields
Summary: Talkback prepends "password" on focus for password editText outputs. Flipper's AccessibilityUtil should include this case.

Reviewed By: blavalla

Differential Revision: D16427345

fbshipit-source-id: 28afdd196973539618b73824671ef02128a4e9ab
2019-07-23 11:29:22 -07:00
Mihaela Ogrezeanu
11198e003e Display data model in side panel
Summary:
This displays the data models passed to the Sections in the side panel when a data node is clicked. This does not change the collapse behaviour when a Section node is clicked.
To make it easier to associate a section with its changesets, appended the global indexes a Section is responsible for to the node label.

Reviewed By: passy

Differential Revision: D16283820

fbshipit-source-id: f1149f47dff448de05d919f7f8d16a2aba53bbb0
2019-07-17 06:29:22 -07:00
Mihaela Ogrezeanu
9c96545bbd Add Flipper plugin to Litho's sample apps
Summary: Add plugin to sample app.

Reviewed By: marco-cova

Differential Revision: D16181876

fbshipit-source-id: fe60fa9f593c16cb24d6901c98b6392a05c6d837
2019-07-16 10:57:24 -07:00