From 0496d99d7c5c448522caafc0d73868711108f31b Mon Sep 17 00:00:00 2001 From: Nicolas Gallagher Date: Wed, 21 Aug 2019 15:51:14 -0700 Subject: [PATCH] [react-events] Rename hook exports For example, 'useHoverResponder' becomes 'useHover' --- packages/react-events/docs/ContextMenu.md | 54 ++++++++++++++ packages/react-events/docs/Focus.md | 32 ++++---- packages/react-events/docs/FocusWithin.md | 41 ++++------ packages/react-events/docs/Hover.md | 48 +++++++----- packages/react-events/docs/Press.md | 38 +++++----- packages/react-events/src/dom/ContextMenu.js | 2 +- packages/react-events/src/dom/Drag.js | 2 +- packages/react-events/src/dom/Focus.js | 4 +- packages/react-events/src/dom/Hover.js | 2 +- packages/react-events/src/dom/Input.js | 2 +- packages/react-events/src/dom/Keyboard.js | 2 +- packages/react-events/src/dom/Press.js | 2 +- packages/react-events/src/dom/Scroll.js | 2 +- packages/react-events/src/dom/Swipe.js | 4 +- .../__tests__/ContextMenu-test.internal.js | 17 ++--- .../src/dom/__tests__/Drag-test.internal.js | 10 +-- .../src/dom/__tests__/Focus-test.internal.js | 18 ++--- .../__tests__/FocusWithin-test.internal.js | 11 ++- .../src/dom/__tests__/Hover-test.internal.js | 20 ++--- .../src/dom/__tests__/Input-test.internal.js | 50 ++++++------- .../dom/__tests__/Keyboard-test.internal.js | 10 +-- .../src/dom/__tests__/Press-test.internal.js | 74 +++++++++---------- .../src/dom/__tests__/Scroll-test.internal.js | 12 +-- 23 files changed, 258 insertions(+), 199 deletions(-) create mode 100644 packages/react-events/docs/ContextMenu.md diff --git a/packages/react-events/docs/ContextMenu.md b/packages/react-events/docs/ContextMenu.md new file mode 100644 index 0000000000000..33b95c452be33 --- /dev/null +++ b/packages/react-events/docs/ContextMenu.md @@ -0,0 +1,54 @@ +# ContextMenu + +The `useContextMenu` hooks responds to context-menu events. + +```js +// Example +const Button = (props) => { + const contextmenu = useContextMenu({ + disabled, + onContextMenu, + preventDefault + }); + + return ( +
+ {props.children} +
+ ); +}; +``` + +## Types + +```js +type ContextMenuEvent = { + altKey: boolean, + buttons: 0 | 1 | 2, + ctrlKey: boolean, + metaKey: boolean, + pageX: number, + pageY: number, + pointerType: PointerType, + shiftKey: boolean, + target: Element, + timeStamp: number, + type: 'contextmenu', + x: number, + y: number, +} +``` + +## Props + +### disabled: boolean = false + +Disables the responder. + +### onContextMenu: (e: ContextMenuEvent) => void + +Called when the user performs a gesture to display a context menu. + +### preventDefault: boolean = true + +Prevents the native behavior (i.e., context menu). diff --git a/packages/react-events/docs/Focus.md b/packages/react-events/docs/Focus.md index 1fef78e370ff4..47afc87240036 100644 --- a/packages/react-events/docs/Focus.md +++ b/packages/react-events/docs/Focus.md @@ -1,29 +1,29 @@ # Focus -The `Focus` module responds to focus and blur events on its child. Focus events +The `useFocus` hook responds to focus and blur events on its child. Focus events are dispatched for all input types, with the exception of `onFocusVisibleChange` which is only dispatched when focusing with a keyboard. -Focus events do not propagate between `Focus` event responders. +Focus events do not propagate between `useFocus` event responders. ```js // Example const Button = (props) => { - const [ focusVisible, setFocusVisible ] = useState(false); + const [ isFocusVisible, setFocusVisible ] = useState(false); + const focus = useFocus({ + onBlur={props.onBlur} + onFocus={props.onFocus} + onFocusVisibleChange={setFocusVisible} + }); return ( - -