Commit Graph

315 Commits

Author SHA1 Message Date
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
Mihaela Ogrezeanu
474cc1289e Add data model to tree and colour changeset operation
Summary:
This colours data model nodes in the tree to show how they were part of the current changeset: whether the data model caused an insert, update, remove etc.
This also adds phantom Section nodes for Sections that were completely removed from the tree; this is helpful for debugging cases where a section's key changes without intention, causing items to be completely removed and inserted.

Reviewed By: topwu

Differential Revision: D16165767

fbshipit-source-id: a011666dce33e4d757fb415e71ba163aa334f6e6
2019-07-11 09:56:18 -07:00
Mihaela Ogrezeanu
0d4e2e6eb3 Add changeset info in side panel
Summary: the side panel displays information with the changesets that were applied for each section

Reviewed By: adityasharat

Differential Revision: D16131069

fbshipit-source-id: d03547148e483e196600191291e58a13acf505c3
2019-07-11 09:56:17 -07:00
Mihaela Ogrezeanu
169836fc2f Create SectionTree in plugin
Summary: Create Sections hierarchy from data received when a changeset is applied and send it to the plugin to render it

Reviewed By: adityasharat

Differential Revision: D16120480

fbshipit-source-id: 30b824d8d6e65b537c3e98b7ee3438055f6f1ec2
2019-07-10 12:13:15 -07:00
Mihaela Ogrezeanu
a952f988d6 Generate and send bogus data to changeset plugin
Summary:
This hooks up the listeners that send events from the SectionTree to the desktop plugin. gradle build will fail until I release a new Litho version with D16120818
ChangesetDebug receives events on every valid changeset, it will parse the data into Flipper objects and pass it to the desktop client to render it.
Right now this just sends an event with empty data

Reviewed By: adityasharat

Differential Revision: D16121473

fbshipit-source-id: eeef92cea7dae836861d417ed6a00fcb11901e78
2019-07-10 12:13:15 -07:00
Pascal Hartig
dd7924c963 Move navigation tests into private folder
Summary: The corresponding implementation isn't open-sourced.

Reviewed By: danielbuechele

Differential Revision: D16121833

fbshipit-source-id: 91b2fd3bce79468321e49f7798ff54dbf5abd38f
2019-07-05 02:31:26 -07:00
Pascal Hartig
660fa71505 Reenable x86 builds (#476)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/476

Fixes https://github.com/facebook/flipper/issues/471

Disabling the x86 builds altogether does more harm than good.

Reviewed By: jknoxville

Differential Revision: D16119936

fbshipit-source-id: cc276dcbd1d55585d8c108b76703aa260c9c9a09
2019-07-04 06:29:50 -07:00
Benjamin Elo
4d774ba252 Added navigation plugin
Summary: Adding the auto-genrated scarf files from creating the Flipper navigation plugin. GK for this plugin is flipper-navigation.

Reviewed By: jknoxville, danielbuechele

Differential Revision: D16119841

fbshipit-source-id: 74e19c82dc95e73fe2ae06d1eb8cef2456b81931
2019-07-04 05:20:51 -07:00
Mihaela Ogrezeanu
3ba71cea9c Added plugin for Sections Changesets in Android
Summary: just the skeleton for the android plugin

Reviewed By: passy

Differential Revision: D16006791

fbshipit-source-id: b0fe2143afeab6bc0671b7ad5a3ccfbccdd6e40a
2019-07-04 03:40:13 -07:00
Arnaud Frugier
f40ac0617c Add getTableInfo API to process incoming TableInfo queries
Summary: Getting the "definition" of the database was originally on the GetTableStructure endpoint. This diff moves it to a new GetTableInfo endpoint

Reviewed By: jknoxville

Differential Revision: D15902619

fbshipit-source-id: ac136d24ee577711366636801b5d74d83fbc523f
2019-06-20 08:29:53 -07:00
Sidharth Guglani
5a6d978536 Search with both name and id of the component in layout inspector and handle deeplinkpayload
Summary:
deepLinkPayload is passed as initialQuery to Search component and in componentDidMount we perform search if initially query is defined.

This does not handle the case if node is not present in the layout inspector tree.

Reviewed By: danielbuechele

Differential Revision: D15874343

fbshipit-source-id: c604baea16838f07e8f8bfc0f1e67c5e830dfe97
2019-06-19 09:08:10 -07:00
Pascal Hartig
71575ce7cf Hook up stacktraces to leak notification
Summary: Transfer it from the device, reformat the notification to make use of it.

Reviewed By: danielbuechele

Differential Revision: D15779267

fbshipit-source-id: 747dc7f895528618ff6a07c15b7f72bf6a1adde9
2019-06-13 11:18:03 -07:00
Pascal Hartig
6168b3c604 Upgrade to Fresco 2.0.0
Summary: Need a Fresco release including the previous diff first.

Reviewed By: danielbuechele

Differential Revision: D15762090

fbshipit-source-id: ec30778ffc1cd3e48dcfc4d514a9ba13fb26fd75
2019-06-13 10:18:20 -07:00
Pascal Hartig
fd89d73be5 Keep track of a Throwable if custom LeakTracker is set
Summary:
This makes it easier to track down leaks as we currently only have their class names. There are some limitations if this is creates on a separate thread, but that can be addressed separately.

This does require temporarily removing the Flipper integration as the interface changes in a backwards-incompatible manner. This will be restored with the next diff in the stack.

Reviewed By: oprisnik

Differential Revision: D15760947

fbshipit-source-id: 3a5c48f6244f1afc8b7e00230bd1ae2f197e6cdf
2019-06-13 04:12:41 -07:00
Pritesh Nandgaonkar
7d8db465e1 Bump Folly dependency for Android (#463)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/463

Was made aware [here](https://github.com/facebook/flipper/issues/461) that
we currently don't build with NDK 20 because of Folly. The above issue exists only for x86 platform and not for other platform. I have updated the folly and RSocket. Although this diff doesn't solve the issue mentioned above for x86, but it updates the dependencies to the latest version. To mitigate temporarily, I have updated the gradle to not build for x86.

Reviewed By: passy

Differential Revision: D15713205

fbshipit-source-id: 79dd5825b0b876c87a1868fde8f3353a76012267
2019-06-12 03:40:19 -07:00
Jan Rabe
8dc9e5aee2 adding PreferenceManager.getDefaultSharedPreferencesName to default (#454)
Summary:
Adding context [PreferenceManager.getDefaultSharedPreferencesName](https://developer.android.com/reference/android/preference/PreferenceManager.html#getDefaultSharedPreferences(android.content.Context)) by default.

## Changelog

Adding context default shared preference by default.
Pull Request resolved: https://github.com/facebook/flipper/pull/454

Reviewed By: jknoxville

Differential Revision: D15759223

Pulled By: passy

fbshipit-source-id: d0770444ce2ea43e2c9bfdc9969532d330f71488
2019-06-11 08:56:25 -07:00
Pascal Hartig
151ad849cb Re-enable leak tracker
Summary: Restore the temporarily removed leak tracker setup.

Reviewed By: jknoxville

Differential Revision: D15713663

fbshipit-source-id: c98a90ee86173dad7131bfe5b05bb3488f27ae6d
2019-06-07 06:56:14 -07:00
Rain ⁣
aa649ff48f standardize C-like MIT copyright headers throughout fbsource
Summary:
`/*` is the standard throughout open source code. For example, Firefox uses single /*: https://hg.mozilla.org/mozilla-central/file/21d22b2f541258d3d1cf96c7ba5ad73e96e616b5/gfx/ipc/CompositorWidgetVsyncObserver.cpp#l3

In addition, Rust considers `/**` to be a doc comment (similar to Javadoc) and having such a comment at the beginning of the file causes `rustc` to barf.

Note that some JavaScript tooling requires `/**`. This is OK since JavaScript files were not covered by the linter in the first place, but it would be good to have that tooling fixed too.

Reviewed By: zertosh

Differential Revision: D15640366

fbshipit-source-id: b4ed4599071516364d6109720750d6a43304c089
2019-06-06 19:40:28 -07:00
Pascal Hartig
afe7c8bf25 Upgrade to Fresco 1.14.2
Summary: Includes the LeakTracker interface change. Restores the temporarily deleted tracker, wires it back up. Requires Fresco 0.14.2 being released which has yet to happen.

Reviewed By: oprisnik

Differential Revision: D15655667

fbshipit-source-id: ab4361be35101efe7564dfdd7a69cba93135eb7e
2019-06-06 08:02:46 -07:00
Pascal Hartig
dc41e2d778 Temporarily remove FlipperCloseableReferenceLeakTracker
Summary:
Ugh, this is the only way we can land the API-breaking next diff. Will
be reverted straight after.

Reviewed By: oprisnik

Differential Revision: D15655666

fbshipit-source-id: c9318e348c187de4562a9a636287cfa7b523356f
2019-06-06 04:54:32 -07:00
Pritesh Nandgaonkar
62c112c713 Fix the FlipperArray creation of events
Summary:
The FlipperArray creation from JSONArray used to create an array of `null`'s instead of the FlipperObject, which used to crash the Flipper. Thus added a check in the flipper to not crash in the case when it receives array of nulls. Also fixed the Fresco plugin in mobile to send the proper FlipperArray.

Bug:

{F160049909}

Reviewed By: passy

Differential Revision: D15608297

fbshipit-source-id: 625e017d3bce4135ac699ee5aee8d871db378749
2019-06-04 03:39:28 -07:00
Pascal Hartig
faf19452eb Send CloseableRef leaks to Flipper plugin (#455)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/455

Only logging to the console for now, but it's a good start.

Reviewed By: oprisnik

Differential Revision: D15535820

fbshipit-source-id: 8531ec5ef681d01b2428a1f016b2a1d9f1589a34
2019-05-31 16:58:16 -07:00
John Knox
f71d33586f Disable Databases plugin test until roboelectric is upgraded
Summary: This gradle flag is stopping the other tests from passing.

Reviewed By: quanturium

Differential Revision: D15558776

fbshipit-source-id: 54934c73271e1cbb041877fef0dfb2de21733424
2019-05-30 14:29:12 -07:00
Daniel Büchele
53b852dbe6 fix undefined colors on litho components
Summary:
When a color was changed on a litho component, the changes were made, but the display in Flipper's layout sidebar always showed `rgba(0,0,0,0)` as a color. This was because reading the color failed for `ComparableColorDrawable` and it sent `0` as fallback value.

This diff adds an additional check if the value is an instance of `ComparableColorDrawable` and reads the color from it.

Reviewed By: passy

Differential Revision: D15469093

fbshipit-source-id: 7f1aaf1c4981815605aca5ba735fa09e80deaa42
2019-05-29 09:19:29 -07:00
John Knox
a630b50a8f Add databases plugin v0 (android) (#441)
Summary:
Adds a plugin for listing the databases, tables and contents of those tables in an android app.
Right now, works with sqlite, but it should be generic enough to work with other db types.

## Changelog

Add initial version of android databases plugin

Creating a PR, I may need to do some cleaning up, but this is to kick off that process.
Pull Request resolved: https://github.com/facebook/flipper/pull/441

Reviewed By: danielbuechele

Differential Revision: D15288831

Pulled By: jknoxville

fbshipit-source-id: 6379ad60d640ea6b0a9473acc03dd6ea81a3a8d4
2019-05-28 10:17:56 -07:00
Sidharth Guglani
0d769aa1c2 using object tracking and creating flipper objects for debug components
Summary: Using ObjectTracker to track debug component nodes and creating flipper objects with debug component data

Reviewed By: davidaurelio

Differential Revision: D15462076

fbshipit-source-id: 5d0b28b6aea4729b85cc9de9ab35f2a07edbae1c
2019-05-23 20:41:20 -07:00
Pritesh Nandgaonkar
914cbf6ccd Request all metadata for Images plugin before export
Summary:
Fresco plugin on the desktop side used to ask for all the image list along with the metadata when it was mounted. The mobile side never sent the image list and other information if not requested from it. That means, although Fresco plugin is a background plugin, there weren't any messages sent from the mobile side. Thus there was no trace available for Images plugin when the trace was exported. This diff, adds a hook which gets called before the export, where we request all the metadata from the mobile SDK.

BUG:

{F159305887}

Reviewed By: passy

Differential Revision: D15407962

fbshipit-source-id: 0012de2ab29d0f62e92d00f4926b04b1e394b62a
2019-05-23 05:48:04 -07:00
Pascal Hartig
b41b64e507 Remove gradle rhino dep
Summary: Noticed that this is still spamming the warning logs during build.

Reviewed By: danielbuechele

Differential Revision: D15354006

fbshipit-source-id: f34b99267d946ccb9ae0704beebbd48d39e9723a
2019-05-15 11:05:18 -07:00
Pascal Hartig
c6e60e1e0c Fix typo
Summary: Drive-by fix.

Reviewed By: danielbuechele

Differential Revision: D15353813

fbshipit-source-id: 34fa17d63d80daaea4d453c749f3a676b645d7a1
2019-05-15 10:26:37 -07:00
Pascal Hartig
71230b3f7b Move navigation test to right folder
Summary: Probably wrong default.

Reviewed By: danielbuechele

Differential Revision: D15353913

fbshipit-source-id: d2582b9356ff14a4503fab9b85566cc1a59f31e8
2019-05-15 10:26:37 -07:00
Pascal Hartig
6ea07c9e71 Move test to right directory
Summary: You're not supposed to be here.

Reviewed By: SidharthGuglani

Differential Revision: D15353936

fbshipit-source-id: f389aeaff71f940d96dfc0422694fb0020dee05c
2019-05-15 09:10:55 -07:00
Sidharth Guglani
3086a7262d Create yoga performance plugin initial files using scarf
Summary:
YogaPerformance flipper plugin initial files
Auto generated using scarf plugin

Reviewed By: davidaurelio

Differential Revision: D15317118

fbshipit-source-id: 30c5c93a8ad4312478ea85979bdf230aa9186596
2019-05-14 03:21:32 -07:00
Corey Wu
2badd4efea Add Flipper plugin for Navigation
Summary:
The main goal is to update visitation id for our targeted tabs requirements (https://fb.quip.com/2jZiA97DTATi). In doing so, we want an easier way to debug whether everything is working as expected.

I've been meaning to add something like this for a while since it's a pain to explain what the visitation id and HSM look like as you navigate the app, so this should help the other teams who're using visitation id as well.

Will probably also start adding navigation events and any other data that we feel is useful.

Run:
```
fbsource/xplat/sonar/scripts/facebook/create-plugin.py Navigation --android
```
Then clean a few things up and fix lints.

Differential Revision: D14759995

fbshipit-source-id: 066dcbf70eed7056f995053cc9ba80dcbbafdb03
2019-05-11 20:45:49 -07:00
Pascal Hartig
84e4b916ee Remove JS console plugin
Summary: This is to unblock our mobile lab build target that adds Flipper to a redex-able build. Redex currently crashes when it tries to optimise Rhino. This could probably be fixed but we don't have any real use-cases for the console plugin right now. It should be fairly easy to unland this even partially if we want to revive this in the future.

Reviewed By: danielbuechele

Differential Revision: D15044539

fbshipit-source-id: f0857274aa046f5be935a342cf91b6a390fcb3dc
2019-05-09 09:54:53 -07:00
Pascal Hartig
3fa0a92754 Ensure build dir exists before writing to it (#436)
Summary:
This is because `doLast` may happen after the cleanup came around to undo `createNativeDepsDirectories` specified as dependency.
Pull Request resolved: https://github.com/facebook/flipper/pull/436

Reviewed By: jknoxville

Differential Revision: D15260597

Pulled By: passy

fbshipit-source-id: b752af2b71217ebc1d802b43f1585e858a41fc00
2019-05-08 10:10:43 -07:00
Pascal Hartig
2cdcd9bad9 Fix inspector crash on null colors
Summary: Quick fix for layout plugin and export crashing when encountering nullable props for colors and drawables like `refreshProgressBarBackgroundColor` on `RecyclerSpec`. The rendered view in the inspector is not great right now, but better than a crash. Working on the correct representation next.

Reviewed By: jknoxville

Differential Revision: D15241151

fbshipit-source-id: 3754dee8861a442127a34d7c3211d223c5f390c1
2019-05-07 13:59:17 -07:00
Pascal Hartig
1c67540bf7 Fix javadoc typo
Summary: Drive-by fix.

Reviewed By: jknoxville

Differential Revision: D15241511

fbshipit-source-id: e87f31a9929c24aa56b8101303703342d2ae64c5
2019-05-07 10:27:57 -07:00
Pascal Hartig
6dda7d2b63 More headers
Reviewed By: jknoxville

Differential Revision: D15199272

fbshipit-source-id: d46355a284a6e2acdaccd622dfd4419b06e61a61
2019-05-03 12:08:04 -07:00
Pascal Hartig
2b0e91aa69 Add tutorial section and Android part
Summary:
JS is next. Screenshot on the intro page is really bad.
I hope danielbuechele can replace this. :)

Reviewed By: jknoxville

Differential Revision: D15184371

fbshipit-source-id: 2faaf46450d192ae400675c13b8d71fa1b7dab14
2019-05-03 10:21:21 -07:00
Pascal Hartig
f584eb05dd Another round of header updates
Summary: I hope that this takes care of all the android violations.

Reviewed By: danielbuechele

Differential Revision: D15199150

fbshipit-source-id: 0f5b4edc1bc9d38de0885f88bb2c3e43acfa09cd
2019-05-03 09:59:33 -07:00
Pascal Hartig
74c8dbe631 Fix gradle directory error
Summary:
Without this, running clean as part of a longer build
chain will fail because it tries to write to a directory
which got removed in a previous step.

Reviewed By: jknoxville

Differential Revision: D15197982

fbshipit-source-id: 296f5a30661a6e2138c0e37f0103f1b6a82bcfc9
2019-05-03 08:51:13 -07:00
Daniel Büchele
5afb148ffa Migrate to custom plugin
Summary: In this step, we want to visualize our mammals in a custom card view. For this reason, we need to replace `createTablePlugin` with a React component that extends `FlipperPlugin`.

Reviewed By: jknoxville

Differential Revision: D15183324

fbshipit-source-id: 329cdc5c6cbd7e1435538e8cdddf049d914ff221
2019-05-03 02:50:04 -07:00
Pascal Hartig
18af62ebfd Add a basic android plugin
Summary:
Moves some things around for package access reasons.
Otherwise sets up the simplest possible plugin that
just sends over all the data it shows in the UI
on connection time. Is that a good idea? You tell me.

JS part coming with the next diff.

Reviewed By: jknoxville

Differential Revision: D15182282

fbshipit-source-id: da5c1de43dfaee273b4eecc0f4512bef872a0ac6
2019-05-02 09:10:26 -07:00
Pascal Hartig
bbee7a3357 Update iOS license headers (and more)
Summary: Add the affiliates bit that the linter is checking for.

Reviewed By: jknoxville

Differential Revision: D15164826

fbshipit-source-id: 500ffe89ec0c2fd3acfbc374408d16a337cecfa4
2019-05-02 03:28:07 -07:00
Pascal Hartig
cd9445a3bd Add Fresco plugin
Summary: Per title

Reviewed By: jknoxville

Differential Revision: D15166443

fbshipit-source-id: e8098ce941d66fc2948fcf3d2e99f0813f20049e
2019-05-01 09:39:52 -07:00
Pascal Hartig
3829ac7d03 Enable Sections and Litho plugins
Summary: Per title

Reviewed By: jknoxville

Differential Revision: D15166432

fbshipit-source-id: ec2a53ef2af920e4c9f8a8742b2b8fbff01320fe
2019-05-01 09:39:52 -07:00
Pascal Hartig
3339944ff4 Tutorial app
Summary:
A very basic app with a scrolling list backed by a static data source. It also covers two bases that we hadn't before: Sections and Kotlin; the latter being the better choice for a modern Android tutorial anyway.

Missing right now: BUCK support (likely not going to come anytime soon due to the kapt limitations), the actual Flipper plugin integration (that's up next).

Reviewed By: jknoxville

Differential Revision: D15166195

fbshipit-source-id: 3cfaa1d243548279cabc4f244c13363f1bcaa36c
2019-05-01 09:39:52 -07:00
Pascal Hartig
2e65ab7133 Reorganise sample into debug/release flavours
Summary:
This makes use of the new no-op package and also structures the app
into release and debug flavours that can be built with and without
Flipper part of the APK.

This was a pretty tedious adventure. I may have missed some corner cases
and also restructured a bunch of seemingly unrelated stuff that was
necessary to respect buck module boundaries.

Reviewed By: jknoxville

Differential Revision: D15148004

fbshipit-source-id: bf81f45105f5f16d17daccb3e8050ee00d69fc35
2019-05-01 08:38:22 -07:00