mirror of
https://github.com/sartography/bpmn-js.git
synced 2025-02-09 15:44:16 +00:00
feat(keyboard): rewrite listeners to use event passed in context
With the new version of `diagram-js`, the keyboard listeners receive a single parameter which is an object with `KeyboardEvent` event as the only property. `BpmnKeyBindings` needed to change in order to make use of new version of API.
This commit is contained in:
parent
03cd2a7e11
commit
75135b667a
@ -6,61 +6,119 @@
|
|||||||
*/
|
*/
|
||||||
export default function BpmnKeyBindings(keyboard, editorActions) {
|
export default function BpmnKeyBindings(keyboard, editorActions) {
|
||||||
|
|
||||||
keyboard.addListener(function(key, modifiers) {
|
// ctrl + a -> select all elements
|
||||||
|
function selectAll(context) {
|
||||||
|
|
||||||
// ctrl + a -> select all elements
|
var event = context.event;
|
||||||
if (key === 65 && keyboard.isCmd(modifiers)) {
|
|
||||||
|
if (event.keyCode === 65 && keyboard.isCmd(event)) {
|
||||||
editorActions.trigger('selectElements');
|
editorActions.trigger('selectElements');
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// ctrl + f -> search labels
|
// ctrl + f -> search labels
|
||||||
if (key === 70 && keyboard.isCmd(modifiers)) {
|
function find(context) {
|
||||||
|
|
||||||
|
var event = context.event;
|
||||||
|
|
||||||
|
if (event.keyCode === 70 && keyboard.isCmd(event)) {
|
||||||
editorActions.trigger('find');
|
editorActions.trigger('find');
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (keyboard.hasModifier(modifiers)) {
|
// s -> activate space tool
|
||||||
|
function spaceTool(context) {
|
||||||
|
|
||||||
|
var event = context.event;
|
||||||
|
|
||||||
|
if (keyboard.hasModifier(event)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// s -> activate space tool
|
if (event.keyCode === 83) {
|
||||||
if (key === 83) {
|
|
||||||
editorActions.trigger('spaceTool');
|
editorActions.trigger('spaceTool');
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// l -> activate lasso tool
|
// l -> activate lasso tool
|
||||||
if (key === 76) {
|
function lassoTool(context) {
|
||||||
|
|
||||||
|
var event = context.event;
|
||||||
|
|
||||||
|
if (keyboard.hasModifier(event)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (event.keyCode === 76) {
|
||||||
editorActions.trigger('lassoTool');
|
editorActions.trigger('lassoTool');
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// h -> activate hand tool
|
|
||||||
if (key === 72) {
|
// h -> activate hand tool
|
||||||
|
function handTool(context) {
|
||||||
|
|
||||||
|
var event = context.event;
|
||||||
|
|
||||||
|
if (keyboard.hasModifier(event)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (event.keyCode === 72) {
|
||||||
editorActions.trigger('handTool');
|
editorActions.trigger('handTool');
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// c -> activate global connect tool
|
// c -> activate global connect tool
|
||||||
if (key === 67) {
|
function globalConnectTool(context) {
|
||||||
|
|
||||||
|
var event = context.event;
|
||||||
|
|
||||||
|
if (keyboard.hasModifier(event)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (event.keyCode === 67) {
|
||||||
editorActions.trigger('globalConnectTool');
|
editorActions.trigger('globalConnectTool');
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// e -> activate direct editing
|
// e -> activate direct editing
|
||||||
if (key === 69) {
|
function directEditing(context) {
|
||||||
|
|
||||||
|
var event = context.event;
|
||||||
|
|
||||||
|
if (keyboard.hasModifier(event)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (event.keyCode === 69) {
|
||||||
editorActions.trigger('directEditing');
|
editorActions.trigger('directEditing');
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
|
|
||||||
|
|
||||||
|
keyboard.addListener(selectAll);
|
||||||
|
keyboard.addListener(find);
|
||||||
|
keyboard.addListener(spaceTool);
|
||||||
|
keyboard.addListener(lassoTool);
|
||||||
|
keyboard.addListener(handTool);
|
||||||
|
keyboard.addListener(globalConnectTool);
|
||||||
|
keyboard.addListener(directEditing);
|
||||||
}
|
}
|
||||||
|
|
||||||
BpmnKeyBindings.$inject = [
|
BpmnKeyBindings.$inject = [
|
||||||
|
Loading…
x
Reference in New Issue
Block a user