Commit Graph

615 Commits

Author SHA1 Message Date
Dominik Wielgórski
5b4403b400 Splitting the 'OpenInIDE' API to 'resolvePath' and 'open' APIs
Summary: Detect if resolved path is properly computed and accordingly display a success or error notification within InAppErrorReporter.

Reviewed By: arpitratan

Differential Revision: D23425001

fbshipit-source-id: 4ca903a8b9e83dc0e11bb823537f56678dd85b76
2020-09-04 08:34:04 -07:00
Anton Nikolaev
374648975c Pin "bl" package version to 4.0.3 to fix vulerability alert
Summary: Pin "bl" package version to 4.0.3 to fix vulerability alert

Reviewed By: jknoxville

Differential Revision: D23499959

fbshipit-source-id: ae1b14d0a66d45c1b0364456071f4a8616625996
2020-09-03 09:39:02 -07:00
Michel Weststrate
cd197aeaaf Make sure network plugin doesn't crash on invalid URLs
Summary: In the attached task an IPv6 address ended up in the URL send from IG. Since that URL couldn't be parsed, it crashed the network plugin. This change makes sure the plugin doesn't crash on invalid urls.

Reviewed By: cekkaewnumchai

Differential Revision: D23344503

fbshipit-source-id: c7ac2068e407a764d59e632bef1be7c4239c8c8a
2020-09-02 05:13:06 -07:00
Michel Weststrate
2f7a84115c Fix image rendering
Summary:
Images in the network plugin are rarely displayed in the network plugin, as it tries to use the public url to preview it. However, that won't if the endpoint is behind authentication, idempotent, etc. This diff changes the behavior to instead send the network body to flipper and use that to preview.

Changelog: [Network] Fixed image preview

Reviewed By: jknoxville, passy

Differential Revision: D23370743

fbshipit-source-id: 0070e9e38c10a5761b9f7190467e26f01a7b2471
2020-09-02 05:13:06 -07:00
Michel Weststrate
9785a03ebd Summary:
See D23051239

Since the crash reporter endpoint does not exist anymore, and no data was reported there, removing the corresponding code from Flipper as well.

This also fixes the last remaining startup warning as well :)

Reviewed By: priteshrnandgaonkar

Differential Revision: D23472612

fbshipit-source-id: 7ce9f6a0261cdfe197a7da9b28a86407299effec
2020-09-02 04:27:17 -07:00
root@sandcastle1585.atn1.facebook.com
66692dd722 Flipper Release: v0.55.0
Summary: Releasing version 0.55.0

Reviewed By: priteshrnandgaonkar

Differential Revision: D23444759

fbshipit-source-id: b569ff8e8dce76028e323f906e7415689ae8b1c5
2020-09-01 03:54:11 -07:00
Pritesh Nandgaonkar
cf29bee5fa Add analytics for cert exchange step
Summary: This diff adds analytics for events like uploading certs, zipping certs.Also logs the payload data received in trusted and untrusted request handlers. It will be helpful to debug the issues through this events.

Reviewed By: jknoxville

Differential Revision: D23374024

fbshipit-source-id: 6fa709bbf05e1b99ed1882be953abbd968eefc6e
2020-08-28 07:18:42 -07:00
Dominik Wielgórski
610d06cbec Try to invoke Myles while the layout plugin is launching
Summary:
The first launch of Myles might produce a lag connected with the fact that Myles daemon needs to start (mainly, set up a Watchman subscription and depending on what state Watchman is in, it could take ~10 secs to initialise).
Therefore, trying to invoke Myles as soon as the Layout Plugin is enabled.

Reviewed By: mweststrate

Differential Revision: D23371702

fbshipit-source-id: 59ee3fb20b2df1330ff4048462f342ce2e12210a
2020-08-28 06:19:15 -07:00
Paco Estevez Garcia
d2ceb1238c Add picker for string values in the Layout Editor
Summary: This diff adds a new PoC widget for the Layout Editor to select a string from a picker. It takes a Set of values and uses them as representation. One of them is considered selected.

Reviewed By: muraziz

Differential Revision: D23374681

fbshipit-source-id: 324a3dd74a6b16edb77b862345d5288dd714fea1
2020-08-28 05:26:21 -07:00
Pritesh Nandgaonkar
be641441d9 Add access token as a param in cdn link and minor improvements
Summary:
This fixes two issues. One issue where the recent change of cdn to lookaside hostname broke our build download process. More about this can be found [here](https://fb.workplace.com/groups/flipperfyi/permalink/772986153467682/).
It also fixes a bug which occurred on a retry when an error happened. Recently I made changes where, if the build is downloaded then retrying shouldn't redownload it. But we used to remove the downloaded builds after install phase, so this diff just removes the build when the download is successfull.

Reviewed By: nikoant

Differential Revision: D23372251

fbshipit-source-id: b57e69f65a20fc123191962d60165a62859d4ef7
2020-08-27 08:54:17 -07:00
Anton Nikolaev
5b2fc65101 Flipper opens two copies of React devtools for react-native
Summary: https://github.com/facebook/flipper/issues/1391

Reviewed By: mweststrate

Differential Revision: D23369774

fbshipit-source-id: 25b406d90a91dbf6c2b28ffdbdb44ed1bec8fffe
2020-08-27 03:48:27 -07:00
Timur Valiev
7632d8acf6 Bundles inspector - copy bundle button
Summary:
Adding a copy button next to search box. Copy nt or bloks raw bundle.
Before that we had a contxt menu on left side bar, which didn;t look good when we have only one active bundles (check appden comments in diff bellow)

Reviewed By: mweststrate

Differential Revision: D23345480

fbshipit-source-id: 919e7fec1d1884f5e8980c3b6cc5a94eb3d69be1
2020-08-26 09:18:03 -07:00
Pritesh Nandgaonkar
dc4e224bfb Show possible remediation steps for known errors in a notification
Summary: This diff fires a notification with a remediation suggestion when the client takes a long time to connect back, for both WW and FS_ACCESS case

Reviewed By: mweststrate

Differential Revision: D23321067

fbshipit-source-id: 17ab93974e9571a0ba78af05c624eeb0522637c6
2020-08-26 07:56:58 -07:00
Timur Valiev
ce12c4e3df Make self inspection available for all devs - internal and open source
Summary:
Flipper self inspection is being used by internal devs for a month now and peeple seems happy with it :) Let's make it available to open source devs!

changelog: Flipper Self inspection - Flipper Messages plugin added to dev builds to show messages sent/received from clients

Reviewed By: jknoxville

Differential Revision: D23345560

fbshipit-source-id: 95bac52b966a78fbfa8e4d4c4e15d9d45ca960f7
2020-08-26 07:54:06 -07:00
Nicole Stiliyan Vukadinova
381f31526c Change replace the QuickPerformanceLogger class with the QPLCore
Summary: Now that the vanilla JS QuickPerformanceLoggerCore was created with the core methods from QPL, we are using this in Flipper so that we have one source of truth

Reviewed By: nubbel

Differential Revision: D23128231

fbshipit-source-id: 16841aab2563509c7184a09ecb8d3f534c53e896
2020-08-26 03:49:34 -07:00
Pritesh Nandgaonkar
73e3cfe4a1 Minor Bug fixes
Summary: With this change, I verified that our enterprise wilde app is able to connect to Flipper.

Reviewed By: jknoxville

Differential Revision: D23318335

fbshipit-source-id: cc952297ead1e8afcb1d9f5062e593e51e8ce893
2020-08-25 09:37:45 -07:00
Michel Weststrate
8d4ff8d48e Fixed several UI issues in Databases plugin
Summary:
This diff improves showing details in the databases plugin in a few ways:

1. if there is large content, it is no longer rendered of screen
1. the section is now scrollable
1. made layout vertical rather than horizontal to have more space vor values
1. show the type of a value
1. better detection of JSON versus non-json values (primitives would be picked up as json, but in contrast binary ascii such as used in instagram wouldn't). This fixes also string to be rendered incorrectly by accidentally parsing them as numbers, such as can be seen in https://fb.workplace.com/groups/flippersupport/permalink/948112715669387/

Changelog: [Databases] Fixed several layout issues when inspecting rows, and added better JSON support and support for larger responses.

Reviewed By: cekkaewnumchai

Differential Revision: D23317689

fbshipit-source-id: 47ab5164e25da003e0d1a4ae7ccb1537b637e572
2020-08-25 08:49:24 -07:00
root@sandcastle962.atn2.facebook.com
36825675d1 Flipper Release: v0.54.0
Summary: Releasing version 0.54.0

Reviewed By: mweststrate

Differential Revision: D23314243

fbshipit-source-id: ce2561b356f082613f656fedac9c08b440845bb1
2020-08-25 08:25:04 -07:00
James Harmon
47d3dd6413 Load routes to device during init (#1491)
Summary:
This is a replacement for PR https://github.com/facebook/flipper/pull/1486 which had the wrong username

When the network plugin is loaded, the route table in the device is empty.  It needs to be populated with whatever routes have already been created and saved in local storage.  Otherwise, the user would need to modify the routes to force an update.

Issue is described here - https://github.com/facebook/flipper/issues/1476

## Changelog

Routes updated in device when plugin is initialized

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

Test Plan:
1. Create a mock for the get request in the sample Android app
2. Kill the app
3. Start the app
4. Issue the get request in the app
5. Verify that the request is mocked in the Network plugin

![image](https://user-images.githubusercontent.com/69264583/90853263-37648200-e33f-11ea-8ab1-afc09395e62e.png)

Reviewed By: passy

Differential Revision: D23292355

Pulled By: mweststrate

fbshipit-source-id: 2fe16e9067a627cae02a4b1db422952d364fd036
2020-08-24 14:56:32 -07:00
Michel Weststrate
0b528f19ce Escape table names and keys
Summary:
https://github.com/facebook/flipper/issues/1426

Changelog: [Databases] Fixed escaping of column names, see #1426

Reviewed By: jknoxville

Differential Revision: D23293248

fbshipit-source-id: 6acbb87727524ba2bdc7973cad8c124a3ee026e6
2020-08-24 08:08:25 -07:00
John Knox
39a465b8b8 Use idb to poll for devices, if it is installed
Summary:
Bringing the pkd CPU usage fix to open source releases.

Now when idb is installed, Flipper will always use it to check for devices, and only fallback to instruments if not.

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

Reviewed By: passy

Differential Revision: D23293675

fbshipit-source-id: 6ff3e89167f5f6d4130f197b2a675202334d0e7d
2020-08-24 07:53:00 -07:00
Rakha Kanz Kautsar
573bf8a940 Fix scoped symlink module resolution (#1482)
Summary:
Fixes https://github.com/facebook/flipper/issues/1481

## Changelog

Fix symlinked scoped module resolving to outer directory

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

Test Plan:
Added one more case to the existing test case for `getWatchFolders.ts`

```
❯ yarn run test:debug getWatchFolders
yarn run v1.22.4
$ yarn build:pkg && node --inspect node_modules/.bin/jest --runInBand getWatchFolders
$ cd pkg && yarn build
$ tsc -b
Debugger listening on ws://127.0.0.1:9229/41e16e0b-8a44-42fe-93ac-9dd9d06e418d
For help, see: https://nodejs.org/en/docs/inspector
 PASS  pkg-lib/src/__tests__/getWatchFolders.node.ts
  getWatchFolders
    ✓ getWatchFolders correctly resolves symlinked packages (12 ms)

Test Suites: 1 passed, 1 total
Tests:       1 passed, 1 total
Snapshots:   1 passed, 1 total
Time:        2.358 s
Ran all test suites matching /getWatchFolders/i.
{emoji:2728}  Done in 8.60s.
```

Reviewed By: mweststrate

Differential Revision: D23293357

Pulled By: nikoant

fbshipit-source-id: de2a506693727489238c6f6ec62d07526f8f0c69
2020-08-24 06:14:36 -07:00
Michel Weststrate
8a5860cb78 API reference documentation
Summary:
Documented all exposed Sandy APIs plugin developers should know about.

Honestly didn't proof-read it myself yet, but wanted to publish this diff at least before PTO, so that the information is available to anyone interested / playing with sandy

Reviewed By: jknoxville

Differential Revision: D22976373

fbshipit-source-id: c30918201d2feeb306ca0d9a3ae1ec10bdf7e2f5
2020-08-24 04:57:02 -07:00
Chaiwat Ekkaewnumchai
ecc3a280cf Fix Scroll to Left on When Element Inspected in Middle
Summary:
`scrollTo` used there caused the window to scroll to the most left when a user was inspecting an element which horizontal scroll wasn't in the most left position.

This diff removes the horizontal constrain and only scroll vertically.

Reviewed By: mweststrate

Differential Revision: D23284227

fbshipit-source-id: 7c19cac7496927c631572e222cb1d635dd1f8ea4
2020-08-24 03:36:57 -07:00
Esa Firman
f4c36377df make body option persisted across request selection (#1448)
Summary:
This PR make the formatter body option persisted across request selection as mentioned in [here](https://github.com/facebook/flipper/issues/432)

Close https://github.com/facebook/flipper/issues/432

## Changelog

Make request body option persisted across request selection

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

Test Plan:
1. Select the first request and change the body option from `parsed` to `formatted`

<img width="1432" alt="Screen Shot 2020-08-10 at 19 00 07" src="https://user-images.githubusercontent.com/1691440/89780560-de753c80-db3b-11ea-87d7-92831e16b961.png">

2. Move to second request, still in `formatted`

<img width="1431" alt="Screen Shot 2020-08-10 at 19 00 18" src="https://user-images.githubusercontent.com/1691440/89780573-e9c86800-db3b-11ea-900e-e6d02054e9ba.png">

Reviewed By: cekkaewnumchai

Differential Revision: D23264774

Pulled By: mweststrate

fbshipit-source-id: aed97642d030fa8e01e63d115e79ffb7a702c5e6
2020-08-24 03:34:20 -07:00
Michel Weststrate
223f4ac2c5 Remove startup errors (#1484)
Summary:
This diff removes some irrelevant error messages that are always logged in the OSS build, and got even reported a few times.

The yarn lock file somehow got in a state where emotion/core was included twice (probably due to having a really old yarn version here), causing the logs view to crash. So fixed that manually.

P.S. the fact that the warning in the screenshot does not take the full width is an issue in console-feed component itself, I opened https://github.com/samdenty/console-feed/pull/50 for that

## Changelog

changelog: Removed some irrelevant errors from startup flow

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

Test Plan:
Before

![Screenshot from 2020-08-19 14-18-51](https://user-images.githubusercontent.com/1820292/90639856-33454100-e227-11ea-8d34-94ec4e7ea61d.png)

After

![Screenshot from 2020-08-19 14-11-52](https://user-images.githubusercontent.com/1820292/90639881-3b9d7c00-e227-11ea-9cef-e3a96a89ba9d.png)

Reviewed By: jknoxville

Differential Revision: D23220937

Pulled By: mweststrate

fbshipit-source-id: 5f7b28adfbf99c938ad3abba75f26c6917463510
2020-08-21 10:08:22 -07:00
Michel Weststrate
81eb09e7b0 Unify error notifications (#1483)
Summary:
Note: this is to be stacked upon https://github.com/facebook/flipper/pull/1479

Note: this PR will probably not succeed against FB internal flipper, as I'm pretty sure there are more call sites that need to be updated. So consider this WIP

Currently connection errors are managed in the connection reducers, and are displayed through their own means, the error bar. Showing console.errors is also hooked up to this mechanism in FB internal flipper, but not at all in the OSS version, which means that some connection errors are never shown to the user.

Besides that there is a notification system that is used by for example the crash reporter and plugin updater.

Having effectively (at least) two notifications mechanisms is confusing and error prone. This PR unifies both approaches, and rather than having the connection reducer manage it's own errors, it leverages the more generic notifications reducer. Since, in the previous PR, console errors and warnings have become user facing (even in OSS and production builds, which wasn't the case before), there is no need anymore for a separate error bar.

I left the notifications mechanism itself as-is, but as discussed in the Sandy project the notification screen will probably be overhauled, and the system wide notifications will become in-app notifications.

## Changelog

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

Test Plan: Only updated the unit tests at this point. Manual tests still need to be done.

Reviewed By: passy

Differential Revision: D23220896

Pulled By: mweststrate

fbshipit-source-id: 8ea37cf69ce9605dc232ca90afe9e2f70da26652
2020-08-21 10:08:21 -07:00
Michel Weststrate
76b72f3d77 Fix condition on processing message queues for sandy plugins
Summary:
While converting Bloks-Script plugin, Timur found a bug where the message queue wasn't processed.

Although queue processing was unit tested, the integration into the rendering lifecycle wasn't explicitly tested and missed a TODO that already signalled this should have been implemented.

Added a unit test to verify the bug and fix. Also tested in a running Flipper instance with the converted plugin (next diff)

Reviewed By: jknoxville

Differential Revision: D23263909

fbshipit-source-id: 63783c980247bdf6c93d00a46881d7d0eb291d09
2020-08-21 09:09:34 -07:00
Dominik Wielgórski
6c7748238d Update 'open in ide' menu only if the path for a class is resolved
Summary: If myles is taking too long users might experience issues with multiple tabs open for 'open in diffusion' functionality. This diff addresses this problem by displaying 'open in ide' menu only if the path is already resolved.

Reviewed By: mweststrate

Differential Revision: D23242199

fbshipit-source-id: ffa698110d4c5e0c0e0686fbc56a7eea6b5782e6
2020-08-21 08:57:22 -07:00
Michel Weststrate
744fe01922 Some renames
Summary:
Some non-semantic changes. Mostly an earlier rename that was accidentally done only locally rather than across the codebase

Also support `.spec` test extension, which is more idiomatic Jest, since we don't use the `.node` and `.electron` distinction anymore anyway.

Reviewed By: jknoxville

Differential Revision: D22976438

fbshipit-source-id: f3abedb36cbac1e835295177117ccbca492a67a1
2020-08-20 13:32:47 -07:00
Michel Weststrate
bce3d48e71 Better handle no (valid) plugin selection
Summary: Little ux tweak, there are some rare scenarios where you can end up in an empty plugin screen, made a small message.

Reviewed By: jknoxville

Differential Revision: D22846396

fbshipit-source-id: 0ad19f1c252112d78a5587e6633fee2d9542d5e1
2020-08-20 13:32:47 -07:00
Michel Weststrate
685cc09b3b DeviceLogs plugin to Sandy
Summary:
Converted the DeviceLogs plugin to sandy.

Kept logic and UI the same (so same batching, localstorage mechanisms etc). But used sandy api's for log subscribing, state, and separating the logical part of the component from the UI.

Note that some mechanisms work slightly different, like deeplinking and scrollToBottom handling, to reflect the fact that plugins are now long lived

Reviewed By: jknoxville

Differential Revision: D22845466

fbshipit-source-id: 7c98b2ddd9121dc730768ee1bece7e71bb5bec16
2020-08-20 13:32:47 -07:00
Michel Weststrate
dd15cffa64 Introduced first class console to help users debugging issues (#1479)
Summary:
Handling issues typically start with: did you look at the Electron logs? Since Flipper is such an extensible tool, running in varying environments I think the console should be support as first class concept. Many errors are currently not shown to the user. This PR is a first attempt to fix that.

The implementation is based on https://github.com/samdenty/console-feed, which is used by quite some web based IDE like tools (like codesandbox), and offers a lot of goodies out of the box, like collapsing errors, objects, etc.

Edit: also added a counter keeping track of the amount of errors

N.B. no need to immediately review this diff, I'll import it to phabricator as soon as I can :)

## Changelog

changelog: Introduce 'Debug Logs' section to help users to troubleshoot issues or to provide more accurate reports.

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

Test Plan: ![Screenshot from 2020-08-18 15-29-55](https://user-images.githubusercontent.com/1820292/90526011-c9b22d80-e167-11ea-88cf-7b4e07918a96.png)

Reviewed By: jknoxville

Differential Revision: D23198103

Pulled By: passy

fbshipit-source-id: a2505f9fa59e10676a44ffa33312efe83c7be55d
2020-08-20 13:27:48 -07:00
Michel Weststrate
f342561196 Better error handling (#1478)
Summary:
Show a notification if device connect failed, or if USB debugging hasn't been authorized

When trying to run Flipper on my linux device, it didn't connect to my phone ootb. `adb devices` showed the device, and the flipper console did show an error, which, correctly stated that the device isn't authorized, but I missed the popup on my phone. This hopefully removes one hindrance for others in the future when connecting Flipper to Android.

## Changelog

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

Test Plan:
Before (no hint in Flipper UI):

![Screenshot from 2020-08-18 12-11-27](https://user-images.githubusercontent.com/1820292/90509026-9ca65080-e150-11ea-9119-2ba68633566a.png)

After:
Desktop notification + notification in notifications section

![Screenshot from 2020-08-18 12-47-10](https://user-images.githubusercontent.com/1820292/90509353-1b02f280-e151-11ea-899a-47d59ec93dcc.png)
![Screenshot from 2020-08-18 12-47-40](https://user-images.githubusercontent.com/1820292/90509358-1d654c80-e151-11ea-82c0-e86c5c34390d.png)

(sorry, had a movie, but can't access paste and GH doesn't allow them)

Reviewed By: passy

Differential Revision: D23220915

Pulled By: mweststrate

fbshipit-source-id: 4f4bc8023612301191ece62b9bc2bd008f3bb3cb
2020-08-20 02:58:07 -07:00
root@sandcastle1328.prn2.facebook.com
f1c3bf8697 Flipper Release: v0.53.0
Summary: Releasing version 0.53.0

Reviewed By: priteshrnandgaonkar

Differential Revision: D23213490

fbshipit-source-id: 66dfa59dbae33d372bad9e284f9773e2ab88487b
2020-08-19 08:22:00 -07:00
Pritesh Nandgaonkar
2e98c7f3c7 Solve the bug where iOS physical device was not detected
Summary:
As per the title

Bug:

{F288338655}

Reviewed By: mweststrate

Differential Revision: D23168390

fbshipit-source-id: e57ac1f22c0a3932fe9948d16cf9fc9cc74ab636
2020-08-18 04:16:15 -07:00
Pascal Hartig
6170bfea41 Upgrade fs-extra
Summary: Bringing this to the latest version everywhere.

Reviewed By: priteshrnandgaonkar

Differential Revision: D23051537

fbshipit-source-id: 5cad59ab6fcc57fc72df8ace985a7b5f39de2bda
2020-08-18 03:32:09 -07:00
Dominik Wielgórski
8aa29d00f2 Display Xcode for CK and Android Studio for Litho Components
Summary:
Detect the framework used for a given component and accordingly, display a proper IDE list.

[FB Only]
changelog: It is now possible to directly open CKComponents from the Layout inspect

Reviewed By: adityasharat

Differential Revision: D23158628

fbshipit-source-id: 305f10752c72eac001334f09bab29264e3e328a6
2020-08-17 10:20:53 -07:00
Dominik Wielgórski
7d0dd3c656 Implemented method to get CKComponent path
Summary:
Added corresponding method for CKComponents which handles two main cases:

- CKSomeComponent_Spec should have corresponding CKSomeComponentSpec.mm

- CKSomeComponent should have corresponding CKSomeComponent.mm

Reviewed By: cuva

Differential Revision: D23158626

fbshipit-source-id: 9d5645a70d838847696aced6bbc947a8c4383f0c
2020-08-17 10:20:53 -07:00
Dominik Wielgórski
939ed27aad Detect if given Component is LithoComponent
Summary: Useful for next diffs: enables to detect whether we have LithoComponent or CKComponent

Reviewed By: adityasharat

Differential Revision: D23128972

fbshipit-source-id: b9aef358c1426df4f05213c42e43402e8cae984f
2020-08-17 10:20:53 -07:00
Dominik Wielgórski
26b54ece5a Add functionality to resolve Litho Components / Sections
Summary:
Few cases to consider:
- SomeComponent.* might correspond to SomeComponentSpec.java
- SomeComponent.* might correspond to SomeComponentSpec.kt
- SomeComponent.* might not have a corresponding Spec file
- SomeComponent.kt (if it's a KComponent) corresponds to SomeComponent.kt

Reviewed By: adityasharat

Differential Revision: D23100032

fbshipit-source-id: f0604f3d1061f0e15fa2f455bdddd4d07ac12305
2020-08-17 10:20:53 -07:00
Dominik Wielgórski
641d39cf94 Added extension to getBestPath API
Summary: Expand API by passing a default extension

Reviewed By: adityasharat

Differential Revision: D23078940

fbshipit-source-id: c9303add194e85deb174a8fc343e37b73f59d1c0
2020-08-17 10:20:53 -07:00
Andrey Mishanin
f40c0b9f1e Add highlight for nodes in tree
Summary:
- Passing the `treeNodeIndexPath` from `FocusInfo` all the way to the `Tree` component.
- Using the index path to find the right node and give it a different visual appearance.

Reviewed By: kevin0571

Differential Revision: D23161057

fbshipit-source-id: 05a95444bb76c1f28a21b42bf477ed9c9929e3b1
2020-08-17 08:04:53 -07:00
Andrey Mishanin
7989b4792a Handling payload
Summary:
- Added `treeNodeIndexPath` to `FocusInfo` which represents the path to the selected node in the component tree.
- Extracting scope root ID from payload to identify the time line track that corresponds to the selected component.
- Finding the most recent 'Tree Build' event on the track so we can be sure the selected component is in the associated component tree.
- Extracting the index path to the selected node in the tree.

Reviewed By: kevin0571

Differential Revision: D23160875

fbshipit-source-id: 8607bf7b34bca1374f9fafded197b35c811f3f75
2020-08-17 08:04:53 -07:00
Andrey Mishanin
4fc63da386 Wrap focusedGenerationId in a type
Summary:
- Use `FocusInfo` type instead of a raw string (I'll add another field to it in the next diff and it made sense to keep the changes separate).
- `userSelectedGenerationId` now has the type of `string | undefined` for consistency.

Reviewed By: fabiomassimo

Differential Revision: D23160820

fbshipit-source-id: f210d93b9ed7cb25eb3c2c8e6e6aadec4dc872d7
2020-08-17 08:04:53 -07:00
Pritesh Nandgaonkar
f626925443 Upload/Download certs zip from Flipper
Summary:
This diff adds upload and download logic for certs. It makes changes on both Flipper Client and Desktop side. With this we enable cert exchange through WWW.

Next Diffs:

1) Add Flipper state in cert provider for more debug data
2) Tests

Reviewed By: jknoxville

Differential Revision: D23092706

fbshipit-source-id: e576253606b64b62848b70203db7e09a3bd77fd9
2020-08-17 06:51:52 -07:00
Austin Wang
0d53935b81 Add papercuts link to star rating popup
Summary:
Added papercuts link to the thanks message after user submits a rating within the star rating popup.
Also increased the timeout after submitting ratings from 1500 to 5000, due to the longer thanks message. Also added a dismiss option.

Reviewed By: jknoxville

Differential Revision: D23115320

fbshipit-source-id: 78de3481e5a085949ddbfbdd51ff499b8b567959
2020-08-14 10:35:36 -07:00
John Knox
f743940d02 [network[ Fix missing response status code bug
Summary:
There's a bug in the network inspector.

Messages come in in batches for performance reasons.
These batches can include both requests and responses, but the code assumes only one or the other.

This fixes it to make it not mutually exclusive.

This bug only affects row building in the table, so when you click on the row, you can still see the response and everything.

Reviewed By: cekkaewnumchai

Differential Revision: D23102575

fbshipit-source-id: 47e8c6b0f1c9cf0d5860b6f349a7d9fe225c73ae
2020-08-13 07:59:08 -07:00
John Knox
d423afd75d Fix high pkd CPU usage issue
Summary:
Running `instruments -s devices` causes the `pkd` process in catalina to spike to ~100% for a few seconds.

Flipper runs this command every 3 seconds to poll for devices.
This switches it to use `idb list-targets` instead which is much more performant.

Currently switched off in the open-source version while we make sure it's working well. If you set the GK value 'flipper_use_idb_to_list_devices' to true, then you'll get the new behaviour.

Reviewed By: passy

Differential Revision: D23102067

fbshipit-source-id: 9e17155d938a4fe326e082511f747444e4b533a2
2020-08-13 03:48:09 -07:00
Dominik Wielgórski
7e4c9d05d4 Events for navigation functionality
Summary: Added new events for 'open in IDE' functionality within the Layout Plugin

Reviewed By: passy

Differential Revision: D23075105

fbshipit-source-id: 1d18977da728bb4c53cd13e8669253dea65d7c4d
2020-08-13 03:08:16 -07:00