Commit Graph
116 Commits
Author SHA1 Message Date
Brian Vaughn 066d47a2f5 Lots of tweaks
Remove selected guideline in favor of background color for selected subtree.
Add badges in grid format to selected elements prop panel.
Show badges beside owners list.
2019-06-01 08:24:24 -07:00
Brian Vaughn 152e4212f5 Fixed bad Bridge disconnections 2019-05-30 09:27:28 -07:00
Brian Vaughn f1de414be1 Updated Chrome installation
1. Removed auto-updates XML (since the feature doens't work for self hosted extensions)
2. Replaced CRX with packed ZIP (since people are having trouble with the CRX, and auto-udpates doesn't work anyway)
2019-05-28 08:52:21 -07:00
Brian Vaughn 672dac7cb7 Handle HTTPS Git clone URLs 2019-05-23 11:55:32 -07:00
Brian Vaughn df1852e816 Persist profiling data after navigation 2019-05-22 20:00:21 -07:00
Brian Vaughn 9eabd982d5 Profiler properly handles unmounted roots 2019-05-22 10:19:26 -07:00
Brian Vaughn bc06860894 Added export to web shell and removed 'downloads' API permission 2019-05-22 06:46:42 -07:00
Brian Vaughn 6ceafb72c1 Upgraded to canary with priority level info 2019-05-20 09:54:07 -07:00
Brian Vaughn 2790e55fec Show commit priority levels in Profiler UI 2019-05-20 09:39:26 -07:00
Sarhan Aissi d3dd879a2b Replaced adm-zip with node-archiver 2019-05-13 03:55:05 +01:00
Frank Calise 1bf9a587ba Fixed build chrome not working on Windows due to rm command not existing 2019-05-12 10:12:17 -04:00
Brian Vaughn f8a7193935 Custom filters are applied by default after extension reload 2019-05-08 14:22:06 -07:00
Brian Vaughn 72d006340b Merge branch '232-clear-profiling-data-for-unmounted-root' of https://github.com/sompylasar/react-devtools-experimental into sompylasar-232-clear-profiling-data-for-unmounted-root 2019-05-03 09:24:58 -07:00
Brian Vaughn 4afad6b3eb Fixed deploy script 2019-05-03 08:55:31 -07:00
Dan Abramov 02d5899ed4 Use WebpackDevServer for local testing 2019-05-01 17:19:26 +01:00
Ivan Babak be87bc778b Fix profiling screenshots data structure to map rootID to commitIndex
Propagate `rootID` throughout the code for `captureScreenshot`.

Rename private profiling maps of `store` to make relations more clear.

Fix missing cleanup for screenshots data in `set importedProfilingData` of `store`.
2019-05-01 01:07:36 -07:00
Brian VaughnandGitHub 33b1fafd96 Merge pull request #229 from sompylasar/217-workaround-disconnected-port-error
Fix for 'Attempting to use a disconnected port object'
2019-04-30 09:15:52 -07:00
Brian VaughnandGitHub 2b0590d46d Merge pull request #233 from gaearon/preset-env
Start using @babel/preset-env
2019-04-30 08:50:17 -07:00
Ivan Babak 2bf97e8f01 Fix for 'Attempting to use a disconnected port object'
Fixes https://github.com/bvaughn/react-devtools-experimental/issues/217

The error reproduces with any two React websites, e.g. `https://reactjs.org` and `https://nextjs.org`, by keeping the DevTools Components tab open and switching between these websites in the same browser tab.

There are several issues with the code that contribute to this:
1. `Bridge` leaves behind a dangling timer that fires `_flush` after the bridge has been abandoned ("shutdown").
2. `bridge.send('shutdown')` is asynchronous, so the event handlers do not get unsubscribed in time.
3. `port.onDisconnect` does not trigger on in-tab navigation like new URL or back/forward navigation.
4. State management design of the code that uses shared variables and callbacks makes it hard to handle race conditions originating from the browser.

This commit cleans up some of the lacking symmetry when using `addListener`/`removeListener`, but the code in `shells/browser/shared/src/main.js` is hard to reason about with regards to race conditions, and there are many possible race conditions originating from the browser, so maybe there could be a better design paradigm (like a formal state machine) to manage the state changes in response to sequences of events than plain old event listeners, callbacks, and shared variables.

Unrelated, but clicking Chrome Back/Forward/Back/Forward very fast makes the browser and the DevTools and the DevTools of DevTools stall and become unresponsive for some time, then recovers but the Back/Forward/Stop/Refresh button and favicon loading indicator may remain broken. Looks like a Chrome bug, some kind of a temporary deadlock in handling the browser history.
2019-04-28 04:45:57 -07:00
Ivan Babak 7caa534afc Remove Agent addBridge: there can only be one bridge, add in constructor
Let's make impossible states truly impossible, and fix Flow types, too.

All three usages of Agent called addBridge right after constructing it.
Agent has one field `_bridge` which is force-typed as not-null despite
there's a temporary zone between the constructor end and addBridge start
where `_bridge` is null.
2019-04-28 04:03:28 -07:00
Dan Abramov ba655512ca Start using @babel/preset-env 2019-04-26 19:37:23 +01:00
Wellington Cordeiro 3759da4d62 fix: correct permissions for Firefox
remove the `background` permissions as it's not used by Firefox, but `activeTab` is and we needed
it.

fix #136
2019-04-22 15:12:33 -06:00
Brian Vaughn 7782376bf1 Yarn deploy sets production NODE_ENV 2019-04-21 09:05:55 -07:00
Brian Vaughn 78c2c764fc Node scripts should fail if not NODE_ENV specified 2019-04-18 18:13:34 -07:00
Brian Vaughn 3336acb8ee Deploy production extension builds 2019-04-18 14:45:24 -07:00
Dan Abramov cd26a5c338 Add production mode to dev shell 2019-04-15 15:39:25 +01:00
Brian Vaughn c8f018ea97 Add package commands for creating dev builds for easier debugging 2019-04-13 18:25:56 -07:00
Dan c0d21c8870 View DOM button opens Elements tab 2019-04-13 18:59:47 +01:00
Brian Vaughn 41426ac2d9 Added missing instruction to Chrome install steps 2019-04-12 15:08:14 -07:00
Brian Vaughn 390c7f3cee Udpated Firefox installation instructions 2019-04-12 14:45:39 -07:00
Brian Vaughn eb151e9381 Chrome build+deploy script auto-increment a prerelease version 2019-04-12 14:42:34 -07:00
Brian Vaughn e7c87491d5 Auto-update Chrome extension 2019-04-12 13:46:05 -07:00
Brian Vaughn d91221431e Firefox only supports peristent background extensions so I've removed the persistent:false flag 2019-04-12 10:20:23 -07:00
Brian Vaughn 68532fb2dc Updated React test utils for newer version of act() 2019-04-12 08:55:29 -07:00
Brian Vaughn 108ed982b8 Add Git revision to extension manifests 2019-04-11 19:06:07 -07:00
Brian Vaughn c7afeb32b1 Add Git revision to build version 2019-04-11 18:44:44 -07:00
Brian Vaughn b6b2fff095 Added ErrorBoundary with GitHub bug link 2019-04-11 17:19:16 -07:00
Brian VaughnandGitHub 4de5905d81 Merge pull request #114 from gaearon/lazy-sync
Send the bridge sync event lazily
2019-04-10 09:28:54 -07:00
Dan Abramov f6142d8acf Put DevTools in dev shell above the inspector 2019-04-10 14:26:33 +01:00
Dan Abramov c7e20140b4 Send the bridge sync event lazily 2019-04-09 20:04:33 +01:00
Dan 5722737ab1 Make DOM selection binding one-way 2019-04-09 01:30:40 +01:00
Dan 60aa91f4dd Remove unnecessary logic 2019-04-08 23:35:01 +01:00
Dan 69c0151b4e Nits 2019-04-08 23:28:31 +01:00
Dan 95b1da2a9d Don't change browser selection unless React selection changed 2019-04-08 21:57:13 +01:00
Dan Abramov 98789d586c Sync DevTools Elements and Components tabs 2019-04-08 20:41:01 +01:00
Dan Abramov 7ae9a0cc86 Preserve state when switching tabs 2019-04-08 15:29:51 +01:00
Dan 4cd0c76117 Fix profiler and nits 2019-04-05 23:34:27 +01:00
Dan Abramov 85ffb4b23f Expand the test fixture 2019-04-05 21:49:37 +01:00
Dan 2e5e99f968 Fix Suspense fragment edge cases 2019-04-05 21:49:37 +01:00
Dan Abramov 722fb18387 Fix double-adding fibers when traversing 2019-04-05 18:18:39 +01:00