Skip to content

Commit

Permalink
Removed aeroelastic keyboard event handlers
Browse files Browse the repository at this point in the history
  • Loading branch information
cqliu1 committed Feb 19, 2019
1 parent c91223c commit 7f66557
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 69 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -124,70 +124,9 @@ const handleMouseDown = (commit, e, isEditable) => {
);
};

const keyCode = key => (key === 'Meta' ? 'MetaLeft' : 'Key' + key.toUpperCase());

const isTextInput = ({ tagName, type }) => {
// input types that aren't variations of text input
const nonTextInputs = [
'button',
'checkbox',
'color',
'file',
'image',
'radio',
'range',
'reset',
'submit',
];

switch (tagName.toLowerCase()) {
case 'input':
return !nonTextInputs.includes(type);
case 'textarea':
return true;
default:
return false;
}
};

const modifierKey = key => ['KeyALT', 'KeyCONTROL'].indexOf(keyCode(key)) > -1;

const handleKeyDown = (commit, e, isEditable) => {
const { key } = e;

if (isEditable && !modifierKey(key)) {
commit('keyboardEvent', {
event: 'keyDown',
code: keyCode(key), // convert to standard event code
});
}
};

const handleKeyPress = (commit, e, isEditable) => {
const { key, target } = e;
const upcaseKey = key && key.toUpperCase();
if (isEditable && !isTextInput(target) && 'GU'.indexOf(upcaseKey) !== -1) {
commit('actionEvent', {
event: upcaseKey === 'G' ? 'group' : 'ungroup',
});
}
};

const handleKeyUp = (commit, { key }, isEditable) => {
if (isEditable && !modifierKey(key)) {
commit('keyboardEvent', {
event: 'keyUp',
code: keyCode(key), // convert to standard event code
});
}
};

export const eventHandlers = {
onMouseDown: props => e => handleMouseDown(props.commit, e, props.isEditable),
onMouseMove: props => e => handleMouseMove(props.commit, e, props.isEditable),
onKeyDown: props => e => handleKeyDown(props.commit, e, props.isEditable),
onKeyPress: props => e => handleKeyPress(props.commit, e, props.isEditable),
onKeyUp: props => e => handleKeyUp(props.commit, e, props.isEditable),
onWheel: props => e => handleWheel(props.commit, e, props.isEditable),
resetHandler: () => () => resetHandler(),
};
10 changes: 10 additions & 0 deletions x-pack/plugins/canvas/public/components/workpad_page/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -217,6 +217,16 @@ export const WorkpadPage = compose(
};
}
), // Updates states; needs to have both local and global
withHandlers({
groupElements: ({ commit }) => () =>
commit('actionEvent', {
event: 'group',
}),
ungroupElements: ({ commit }) => () =>
commit('actionEvent', {
event: 'ungroup',
}),
}),
withHandlers(eventHandlers) // Captures user intent, needs to have reconciled state
)(Component);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,6 @@ export class WorkpadPage extends PureComponent {
width: PropTypes.number.isRequired,
isEditable: PropTypes.bool.isRequired,
onDoubleClick: PropTypes.func,
onKeyDown: PropTypes.func,
onKeyUp: PropTypes.func,
onMouseDown: PropTypes.func,
onMouseMove: PropTypes.func,
onMouseUp: PropTypes.func,
Expand Down Expand Up @@ -71,9 +69,6 @@ export class WorkpadPage extends PureComponent {
width,
isEditable,
onDoubleClick,
onKeyDown,
onKeyPress,
onKeyUp,
onMouseDown,
onMouseMove,
onMouseUp,
Expand All @@ -88,6 +83,8 @@ export class WorkpadPage extends PureComponent {
bringToFront,
sendBackward,
sendToBack,
groupElements,
ungroupElements,
} = this.props;

const keyHandler = (action, event) => {
Expand Down Expand Up @@ -120,6 +117,12 @@ export class WorkpadPage extends PureComponent {
case 'SEND_TO_BACK':
sendToBack();
break;
case 'GROUP':
groupElements();
break;
case 'UNGROUP':
ungroupElements();
break;
}
};

Expand All @@ -140,9 +143,6 @@ export class WorkpadPage extends PureComponent {
onMouseMove={onMouseMove}
onMouseUp={onMouseUp}
onMouseDown={onMouseDown}
onKeyDown={onKeyDown}
onKeyPress={onKeyPress}
onKeyUp={onKeyUp}
onDoubleClick={onDoubleClick}
onAnimationEnd={onAnimationEnd}
onWheel={onWheel}
Expand Down

0 comments on commit 7f66557

Please sign in to comment.