dillon1000/react
Commit
Browse files DevTools context menu (#17608)
* Added rudimentary context menu hook and menu UI * Added backend support for copying a value at a specific path for the inspected element * Added backend support for storing a value (at a specified path) as a global variable * Added special casing to enable copying undefined/unserializable values to the clipboard * Added copy and store-as-global context menu options to selected element props panel * Store global variables separately, with auto-incremented name (like browsers do) * Added tests for new copy and store-as-global backend functions * Fixed some ownerDocument/contentWindow edge cases * Refactored context menu to support dynamic options Used this mechanism to add a conditional menu option for inspecting the current value (if it's a function) * Renamed "safeSerialize" to "serializeToString" and added inline comment
Changed paths32 files
First-parent comparisonpackages/react-devtools-extensions/src/main.js ModifiedM packages/react-devtools-extensions/src/utils.js ModifiedM packages/react-devtools-shared/src/__tests__/inspectedElementContext-test.js ModifiedM packages/react-devtools-shared/src/__tests__/legacy/inspectElement-test.js ModifiedM packages/react-devtools-shared/src/__tests__/setupTests.js ModifiedM packages/react-devtools-shared/src/backend/agent.js ModifiedM packages/react-devtools-shared/src/backend/legacy/renderer.js ModifiedM packages/react-devtools-shared/src/backend/renderer.js ModifiedM packages/react-devtools-shared/src/backend/types.js ModifiedM packages/react-devtools-shared/src/backend/utils.js ModifiedM packages/react-devtools-shared/src/bridge.js ModifiedA packages/react-devtools-shared/src/devtools/ContextMenu/ContextMenu.css AddedA packages/react-devtools-shared/src/devtools/ContextMenu/ContextMenu.js AddedA packages/react-devtools-shared/src/devtools/ContextMenu/ContextMenuItem.css AddedA packages/react-devtools-shared/src/devtools/ContextMenu/ContextMenuItem.js AddedA packages/react-devtools-shared/src/devtools/ContextMenu/Contexts.js AddedA packages/react-devtools-shared/src/devtools/ContextMenu/useContextMenu.js AddedM packages/react-devtools-shared/src/devtools/views/Components/HooksTree.js ModifiedM packages/react-devtools-shared/src/devtools/views/Components/InspectedElementContext.js ModifiedM packages/react-devtools-shared/src/devtools/views/Components/InspectedElementTree.js ModifiedM packages/react-devtools-shared/src/devtools/views/Components/KeyValue.js ModifiedM packages/react-devtools-shared/src/devtools/views/Components/SelectedElement.css ModifiedM packages/react-devtools-shared/src/devtools/views/Components/SelectedElement.js ModifiedM packages/react-devtools-shared/src/devtools/views/DevTools.js ModifiedM packages/react-devtools-shared/src/devtools/views/Icon.js ModifiedM packages/react-devtools-shared/src/devtools/views/Settings/SettingsContext.js ModifiedM packages/react-devtools-shared/src/devtools/views/context.js ModifiedM packages/react-devtools-shared/src/devtools/views/root.css ModifiedA packages/react-devtools-shell/src/app/InspectableElements/CircularReferences.js AddedM packages/react-devtools-shell/src/app/InspectableElements/InspectableElements.js ModifiedM packages/react-devtools-shell/src/app/InspectableElements/SimpleValues.js ModifiedM packages/react-devtools-shell/src/devtools.js ModifiedPatch
Files changed
Rendering syntax-highlighted changes…