Files
flipper/desktop
Harold Martin cdb72db5a9 Fix LeakCanary plugin UI, Upgrade LC dependency and make it compile only (#3367)
Summary:
**Currently, the Leak Canary plugins is broken, see this screenshot (unable to expand):**
<img width="1359" alt="Screen Shot 2022-01-29 at 2 06 33 PM" src="https://user-images.githubusercontent.com/745166/151679662-9d8e8eb6-c19c-4008-9821-1c2c1af92351.png">

**This fix repairs and improves the UI:**
<img width="1350" alt="Screen Shot 2022-01-29 at 2 06 03 PM" src="https://user-images.githubusercontent.com/745166/151679677-7965604c-dd04-4ee5-bc8e-d53a82da1bd7.png">

## Changelog

- Fixes UI to enable showing leak trace
- Upgrades LackCanary dependency from 2.6 to 2.8.1
- Makes Kotlin and LC `compileOnly` dependencies in order to prevent conflict for the users
- Updates documentation

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

Test Plan:
See demo at https://github.com/hbmartin/leakcanary/tree/flipper-demo/leakcanary-android-sample

**Static Docs Preview: flipper**
|[Full Site](https://our.intern.facebook.com/intern/staticdocs/eph/D33915179/V3/flipper/)|

|**Modified Pages**|

Reviewed By: passy

Differential Revision: D33915179

Pulled By: cekkaewnumchai

fbshipit-source-id: 9698dba23ab475c8cd84e4c222dfc41712b05a1e
2022-02-03 01:37:28 -08:00
..
2021-12-16 14:54:59 -08:00
2022-01-25 10:22:59 -08:00
2022-01-19 11:05:06 -08:00
2022-02-02 04:10:35 -08:00
2021-12-17 07:36:07 -08:00
2021-09-27 08:25:20 -07:00
2021-10-08 01:33:03 -07:00
2021-12-17 07:36:07 -08:00
2021-12-17 10:04:23 -08:00

Flipper Desktop

This folder contains everything to run the Flipper 'Desktop', that is, the UI which you use to interact with the device / app under debug.

Packages provided here:

  • flipper-common: utilities & types shared between client, server, flipper-plugin
  • flipper-server-core: all device & client management goes in here. Basically flipper's backend
  • flipper-ui-core: all UI goes in here, as far as it doesn't depend on Electron
  • flipper-ui-electron: the Electron app, will load server-core and ui-core, and glue them together, providing implementations for some electron * specific stuff like dialgos
  • flipper-server: A node process hosting flipper-server-core, that can be connected to over websockets. And probably can serve a browser version of the UI as well.
  • flipper-ui-browser: thin wrapper around flipper-ui-core, providing some browser specific behavior / stubs.
  • flipper-dump: (might remove later), but want to hack a quick and dirt flipper dump in here, as alternative way to test flipper-server-core.
  • flipper-plugin: The flipper SDK used by plugins. Exposes all API's that can be used by plugins
  • pkg: CLI tool to manage building flipper plugins
  • pkg-lib
  • plugin-lib
  • babel-transformer
  • doctor
  • eslint-plugin-flipper

Packages overview

flipper-ui-electron:
   - flipper-server-core (directly embedded)
   - flipper-ui-core
       - plugins (prebundled)
   - plugins (installable)
       - flipper-plugin

flipper-server
   - flipper-server-core
   - flipper-ui-browser (served by webserver)
       - flipper-ui-core (communicates using WebSocket with server-core)
           - plugins (prebundled)
   - plugins (installable)?

flipper-dump
   - flipper-server-core