Commit Graph

3751 Commits

Author SHA1 Message Date
Lorenzo Blasa
5b2d20e0e0 Scaffolding for windows bundle
Summary: Just adds a function stub that will add the necessary run script for windows.

Reviewed By: passy

Differential Revision: D47627532

fbshipit-source-id: 09b6a203c2a5def20e586b5753d95ca58797852a
2023-07-27 07:06:58 -07:00
Lorenzo Blasa
2fd94048fb Fixes an issue with selection by refactoring
Summary: Refactor was going to happen, but it was required at this stage as to fix a selection problem.

Reviewed By: LukeDefeo

Differential Revision: D47831239

fbshipit-source-id: 87ce6250721f6d3df3e826e779409625ddc85660
2023-07-27 04:36:24 -07:00
Lorenzo Blasa
9a2ff5d88d Add sidebar to visualise entry details
Summary: Follow-up from previous diff. Details can be visualised.

Reviewed By: antonk52

Differential Revision: D47797513

fbshipit-source-id: 9a560e3c7da1c9ceffd421ac2670559fdb255204
2023-07-26 09:17:28 -07:00
Lorenzo Blasa
8fc56925a9 Make connectivity log entries selectable
Summary: Once an item is selected, more details can be shown to our users.

Reviewed By: antonk52

Differential Revision: D47797390

fbshipit-source-id: 1bf98f81df32d103f7c0fc332f819507dcf84cc2
2023-07-26 09:17:28 -07:00
Lorenzo Blasa
c3a40ab0ab Clear connectivity logs button
Summary: Add the option to clear the connectivity logs.

Reviewed By: antonk52

Differential Revision: D47797301

fbshipit-source-id: ce9414f3057cab367d34524717c83bfbf0703c0c
2023-07-26 08:16:47 -07:00
Lorenzo Blasa
fa1c2db026 Exchange medium always visible
Summary: ^

Reviewed By: antonk52

Differential Revision: D47797219

fbshipit-source-id: ec643abce429157ca54eb1253d658117cc759565
2023-07-26 08:16:47 -07:00
Lorenzo Blasa
0ab1aeee78 ClientQuery optional for commands
Summary:
Some commands are run without a ClientQuery i.e. fetching devices.

Nevertheless, this can be provide insights when problems take place.

Reviewed By: antonk52

Differential Revision: D47795358

fbshipit-source-id: 0b7dc34475ae061f1b72843a087a798d305ed1c8
2023-07-26 08:16:47 -07:00
generatedunixname89002005306973
6962289ad9 Flipper Release: v0.208.0
Summary: Releasing version 0.208.0

Reviewed By: aigoncharov

Differential Revision: D47791662

fbshipit-source-id: 9a93f9d49c0fa9a3e1598e3f00f988a94cc1eea0
2023-07-26 04:32:34 -07:00
Luke De Feo
b47c88f2b5 Analytics for target mode
Reviewed By: antonk52

Differential Revision: D47757367

fbshipit-source-id: f6ce53a1edc3095a488097e304d3774b0702185b
2023-07-26 04:24:54 -07:00
Luke De Feo
c1a99a8a52 ONly show framework event monitoring where there are events
Reviewed By: antonk52

Differential Revision: D47757004

fbshipit-source-id: 44e0e6aff0213d3bf684652906abae28777cfe9e
2023-07-26 04:24:54 -07:00
Luke De Feo
f854e9f3f3 rename controls to tree controls and consistent button style
Reviewed By: mweststrate

Differential Revision: D47672437

fbshipit-source-id: 5ce237cfd300a481450411a0242410e01bcc5411
2023-07-26 03:22:38 -07:00
Luke De Feo
ab84bb9bad Add visualiser controls + target mode
Summary:
Now that we have panels for tree visualiser separately we can have visualiser specific controls. There is a dedicated button for focus mode which should make that more discoverable and a better implementation of target mode which uses a slider. This has several benefits:
1. more discoverable
2. more obvious what is going on with the text prompts and a real slider control instead of mouse enter
3. there is no context menu getting in the way of the content

Changelog: UIDebugger Add visualizer target mode feature for selecting views in the z stack easily
Changelog: UIDebugger Add FocusMode button to visualiser toolbar

Reviewed By: mweststrate

Differential Revision: D47671658

fbshipit-source-id: 6f657f9d417280627457624660b934c9898cda58
2023-07-26 03:22:38 -07:00
Luke De Feo
8adf153380 Remove visualizer context menu
Summary: This isnt very discoverable and we can put functionality in the toolbar

Reviewed By: mweststrate

Differential Revision: D47670683

fbshipit-source-id: 8426ba05135f9a56f0a0952e94ac80480cd30a48
2023-07-26 03:22:38 -07:00
Luke De Feo
bf74877ff5 Move visualiser into folder pre split
Reviewed By: mweststrate

Differential Revision: D47664272

fbshipit-source-id: 7cc22b272b9298837d45976996d0197d5e5550f0
2023-07-26 03:22:38 -07:00
Luke De Feo
272d2d2106 Redesign Split Tree and visualiser into panels
Summary: This looks a lot neater and allows us to have separate dedicated visualiser header

Reviewed By: mweststrate

Differential Revision: D47626867

fbshipit-source-id: 843721853e0ff88837afbb9bf3f510a908160d12
2023-07-26 03:22:38 -07:00
Luke De Feo
0e15dce033 New Tree design
Summary:
1. Add indent guidess to all tree depths
2. Monospaced font
3. cleaned up alignment of icons
4. Gave everything a bit more space to breathe

Changelog: UI Debugger Tree UI refresh, added indent guides and fixed alignment

Reviewed By: mweststrate

Differential Revision: D47626869

fbshipit-source-id: e4509621cda6c254f7dd5a7ec9b99c13efb577f4
2023-07-26 03:22:38 -07:00
Luke De Feo
3891a5d61b Introduce selection for elements in z stack aka target mode
Summary:
The old layout plugins target mode would ask you which view you wanted to select when you clicked, the visualiser currently chooses for you based on size of the element.

Sometimes this isnt what you want so I have added a context menu with all the intersecting nodes from which you can select or focus

Reviewed By: lblasa

Differential Revision: D47589789

fbshipit-source-id: 9c9d0d7587b830aa72089267d9bcf2b687142574
2023-07-26 03:22:38 -07:00
Luke De Feo
d52eeffb86 Add ability to favourite virtual devices
Summary:
With a lot of virtual devices it can be confusing to remember which one contains your builds. This allows user to favourite certain ones to avoid this

Changelog: Added ability to favourite emulators / simulators in the launch virtual devices dialog

Reviewed By: mweststrate

Differential Revision: D47724521

fbshipit-source-id: aaec56608ad6ba23634797315f6f9fd77fc8b258
2023-07-25 07:28:03 -07:00
Luke De Feo
a0d6c9a1b8 Fix alignment of logs badge
Reviewed By: mweststrate

Differential Revision: D47720737

fbshipit-source-id: fb4d5ea646bbc5ee2090f28a477e539bd599c02a
2023-07-25 07:28:03 -07:00
Luke De Feo
83ecb4e256 Rework user profile button
Summary:
1. fixed state when no connectivity by using a disabled button, now its styled correctly, (before it was tiny)
2. No need to show the user profile button as its own icon since log in is forced by flipper, so move log out into the more menu

Reviewed By: mweststrate

Differential Revision: D47720740

fbshipit-source-id: c7531a2a2897627c2627080179fd77adfed5c30c
2023-07-25 07:28:03 -07:00
Luke De Feo
d0e8114962 Improve sidebar buttons
Summary:
1. improved the disabled state, no longer shows persistant border
2. made the right sidebar button always visible again since the disabled state is less distracting
3. Made the toggle state be on when the side bar is open
4. Fixed issue where where it would say toggled when sidebar not visible
5. Shortened the names to be less verbose

Reviewed By: mweststrate

Differential Revision: D47720739

fbshipit-source-id: df27e688c7a66e8dee07c4db675851c4355b41db
2023-07-25 07:28:03 -07:00
Luke De Feo
7a5ad8a92d Elevate alerts above troubleshoot
Summary: Similar treatment to troubleshoot problem

Reviewed By: lblasa

Differential Revision: D47720741

fbshipit-source-id: 6875988a9a0763cb4ed473d6e8522581fc27bef3
2023-07-25 07:28:03 -07:00
Luke De Feo
e0da5332d4 Elevante troubleshoot menu so badge appears on top of more
Reviewed By: mweststrate

Differential Revision: D47720738

fbshipit-source-id: 8f1539ad22d87b32277770003241299142d96a03
2023-07-25 07:28:03 -07:00
Michel Weststrate
e7ac579d1c Fix exception initial databaseList request failed: T.sort is not a function
Summary: Exception showed up in our monitoring. The only `.sort` that happens in that request/response sequence is the one updated. Didn't get to the root of this, but likely the plugin returns nothing rather than an empty array when no databases present?

Reviewed By: LukeDefeo

Differential Revision: D47665268

fbshipit-source-id: 3f8dea591db3e6cb5d4e0d09f893a177ad4f642e
2023-07-24 07:46:34 -07:00
Lorenzo Blasa
8f87e27609 Add console logs and messages to Hub
Summary: ^

Reviewed By: passy

Differential Revision: D47665331

fbshipit-source-id: d7cf838899be1871999bf086a4a7c3721b307fd1
2023-07-21 09:28:28 -07:00
Anton Kastritskiy
7b06daa913 hide "toggle r.sidebar" instead of disabling it
Reviewed By: LukeDefeo

Differential Revision: D47669377

fbshipit-source-id: 4bac4e8778576f69405c449021a438eff88b6abf
2023-07-21 07:51:43 -07:00
Luke De Feo
8f857dc1c5 Fixed bug where visualizer not working after using focus more in visualiser context menu
Summary:
I introduced this to stop the visualiser going off while the framework events modal was open. However on mouse leave fires when the context menu is open. and if you click to focus then it never refires.

Also renamed the ref to make it clearer

Reviewed By: lblasa

Differential Revision: D47550672

fbshipit-source-id: 62e108e55e5c42a37d3aebded6467ececdc458df
2023-07-21 07:17:31 -07:00
Luke De Feo
f6dcaa2143 Selection interaction from overlay
Summary:
Previously we were registering a click handler with every single div in the visualiser. This is somewhat wasteful as well as was causing issues since i needed to call stop propagation to prevent the click bubbling and selecting all the parents too.

as a result of stop propagation the context menu behaviour was weird, when left clicking elsewhere to close the context menu it wouldnt work as the click was swallowed by the click handlers for the nodes.

Now we have a much simpler system. The hovered overlay is the click handler. Thats it.

Another benefit of this is the visualisation nodes under the overlays are all interaction less so they can be moved to canvas one day if need be

Reviewed By: lblasa

Differential Revision: D47550673

fbshipit-source-id: 1a607059c68f0b936f0184bd98a6a1492703d41b
2023-07-21 07:17:31 -07:00
Luke De Feo
6faccc4889 UIDRefactor 8/n rename tree types
Summary: The previous names made no sense after they drifted over time

Reviewed By: lblasa

Differential Revision: D47550916

fbshipit-source-id: fa7df17b090c52b68ab4af9388d87365da6e8ff3
2023-07-21 07:17:31 -07:00
Luke De Feo
d8fda847b8 UIDREfactor 7/n Split tree.tsx
Reviewed By: lblasa

Differential Revision: D47548809

fbshipit-source-id: bdcbc96129a289c64a4a0b17fab29ac91d73d48e
2023-07-21 07:17:31 -07:00
Luke De Feo
2655ea8523 UIDRefactor 6/n Move tree into folder
Summary: preparing to split this up a bit

Reviewed By: lblasa

Differential Revision: D47548840

fbshipit-source-id: 907b9cd6a7a044e4aad97f9755fd9b43b81768f1
2023-07-21 07:17:31 -07:00
Luke De Feo
efb23be4cf UID Refactor 5/n Refactor index.tsx
Summary:
This file was huge and was hard to understand what was going on.  changes:

1. UIActions moved out to separate file
2. create UIstate moved out
3. All declared state (atoms or plain js objects) moved to the top of the function like a class
4. utilities moved out

Reviewed By: lblasa

Differential Revision: D47547844

fbshipit-source-id: e7fa705a14a23bff2415016a488147bed7ad9e91
2023-07-21 07:17:31 -07:00
Luke De Feo
957a336349 UID refactor 4/ Expose readonly UIState
Summary:
Currently state writes can either go through a named handler that is easy to find and debug or they can directly modify the state.

By exposing readonly atoms only we ensure that all state writes go through a UIACtions. This adds consistency and ease of future debugging.

E.g We could add a utility to wrap all ui actions with logging statements

Reviewed By: antonk52

Differential Revision: D47547531

fbshipit-source-id: f88651169d8e7c5f7e31068d64f9aa5b6b573647
2023-07-21 07:17:31 -07:00
Luke De Feo
87a1b657c3 UID Refactor 3/n UINode -> ClientNode
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
2023-07-21 07:17:31 -07:00
Luke De Feo
f181551ce6 UID refactor 2/n Split types into client and desktop types
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
2023-07-21 07:17:31 -07:00
Luke De Feo
2cc0ca0167 UID Refactor 1/n move to utils
Summary: Lets start adding some organisation to the folder structure

Reviewed By: lblasa

Differential Revision: D47547530

fbshipit-source-id: 30d20340ccc4b1c3ab4d4712c807831d74028322
2023-07-21 07:17:31 -07:00
Luke De Feo
4df0ad4d35 Add Framework event table
Summary: Very basic framework events table, quite useful for debugging will add more to this soon

Reviewed By: lblasa

Differential Revision: D47520035

fbshipit-source-id: 10f4572dd4ed3529324f03a969773c7e91fde030
2023-07-21 07:17:31 -07:00
Michel Weststrate
af5b9532ec Don't throw on timeouts during client connection.
Summary: Timeout exceptions while connection to new clients where rethrown but catched nowhere. Probably this warning should be handled more gracefully, but this at least moves it to warn rather than spawning our monitoring on transient issues

Reviewed By: passy, antonk52

Differential Revision: D47665050

fbshipit-source-id: ad51808d12e9f4de318d4426933ecb3787839b7c
2023-07-21 04:18:02 -07:00
generatedunixname89002005306973
503abd6d22 Flipper Release: v0.207.0
Summary: Releasing version 0.207.0

Reviewed By: lblasa

Differential Revision: D47629967

fbshipit-source-id: 625011003adde117d024754aab65327dc44e147a
2023-07-20 06:41:58 -07:00
Lorenzo Blasa
4d092f75dd Connectivity Hub has tabs with logs and environment check
Summary:
^

Code will be refactored in future diffs.

Reviewed By: antonk52

Differential Revision: D47629563

fbshipit-source-id: a4af7beecb41bd141ccd350b2edece4af3de6022
2023-07-20 06:01:01 -07:00
Lorenzo Blasa
2958d9d8cb SetupDoctorScreen non-modal option
Summary:
The Setup Doctor screen was hard-set into a modal window. Instead, make this an optional that defaults to yes.

This will allow the usage of the screen in non-modal container.

Reviewed By: antonk52

Differential Revision: D47629528

fbshipit-source-id: c5248df1358f1b14775b90c9bf12fd63b8885caf
2023-07-20 06:01:01 -07:00
Lorenzo Blasa
f566fed761 Only show left sidebar toggle if there is a sidebar
Summary:
^

Not all selections have a left sidebar. If the current selection doesn't have one, it doesn't make sense to have the toggle sidebar button, so hide it.

Reviewed By: LukeDefeo

Differential Revision: D47593545

fbshipit-source-id: 940d59536e26bd1ab341d2038df431c67e0a5442
2023-07-20 04:48:20 -07:00
Lorenzo Blasa
459f16022e Improved titles and sorting
Summary: ^

Reviewed By: antonk52

Differential Revision: D47592581

fbshipit-source-id: f6e32c5ff12a351ed731d81c68fec0b230b3b5d5
2023-07-20 04:48:20 -07:00
Anton Kastritskiy
48fc330cc3 fix missing key on SubMenu
Reviewed By: lblasa

Differential Revision: D47628505

fbshipit-source-id: 8e5c0624a2bef97a9507c181223461d851921bd6
2023-07-20 04:45:52 -07:00
Anton Kastritskiy
7195b35b12 Move troubleshooting guide into a menu
Reviewed By: lblasa

Differential Revision: D47591882

fbshipit-source-id: 84e3732100aa20d5f78b132a4c429b9b742678e9
2023-07-20 03:54:19 -07:00
Anton Kastritskiy
57d4c99e0f Move "Rage" and "Add plugins" buttons into menus
Reviewed By: lblasa

Differential Revision: D47591384

fbshipit-source-id: 4a79373c28e1103ddc351acbcab60650cc8a8eee
2023-07-20 03:54:19 -07:00
Luke De Feo
7812dae764 Migrate framework events backing data structure to datasource
Summary: This will allow us to build a nice table easily.

Reviewed By: lblasa

Differential Revision: D47520029

fbshipit-source-id: 3cdd776533b66688329171eb29b892e0b9153540
2023-07-19 08:58:20 -07:00
Luke De Feo
16480a95f3 Move framework event monitoring out of options
Summary: An more options page drop down of size one didnt really make a great deal of sense

Reviewed By: lblasa

Differential Revision: D47520034

fbshipit-source-id: cea7ac404f73a0d7e5a1541b16097c4fd6549215
2023-07-19 08:58:20 -07:00
Luke De Feo
3282417663 Fix bug where if events come in the creation of a new tab throws exception
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
2023-07-19 08:58:20 -07:00
Luke De Feo
ff7182525a Add main thread filter control
Summary: This adds a filter on top of the event types to only highlight when the thread occurs on the main thread

Reviewed By: lblasa

Differential Revision: D47520036

fbshipit-source-id: b4a67b262345d845e5dcbf79bba5a210c1bca4f8
2023-07-19 08:58:20 -07:00