@launchmenu/core
Version:
An environment for visual keyboard controlled applets
65 lines • 5.57 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.handleCursorJumpInput = void 0;
const isFieldControlsSettingsFolder_1 = require("./isFieldControlsSettingsFolder");
const MoveCursorHorizontalCommand_1 = require("../commands/MoveCursorHorizontalCommand");
const JumpCursorCommand_1 = require("../commands/JumpCursorCommand");
const CompoundTextEditCommand_1 = require("../commands/CompoundTextEditCommand");
/**
* Handles cursor jump input (home/end)
* @param event The event to test
* @param targetField The text field to perform the event for
* @param patterns The key patterns to detect, or the base settings to extract them from
* @returns Whether the event was caught
*/
function handleCursorJumpInput(event, { textField, onChange }, patterns) {
if (isFieldControlsSettingsFolder_1.isFieldControlsSettingsFolder(patterns)) {
const op = patterns;
patterns = {
get end() {
return op.end.get();
},
get home() {
return op.home.get();
},
get jumpWordLeft() {
return op.jumpWordLeft.get();
},
get jumpWordRight() {
return op.jumpWordRight.get();
},
get selectAll() {
return op.selectAll.get();
},
get expandSelection() {
return op.expandSelection.get();
},
};
}
const expand = patterns.expandSelection;
if (patterns.jumpWordLeft.matches(event)) {
onChange(new MoveCursorHorizontalCommand_1.MoveCursorHorizontalCommand(textField, -1, expand.matchesModifier(event), true));
return true;
}
if (patterns.jumpWordRight.matches(event)) {
onChange(new MoveCursorHorizontalCommand_1.MoveCursorHorizontalCommand(textField, 1, expand.matchesModifier(event), true));
return true;
}
if (patterns.end.matches(event)) {
onChange(new JumpCursorCommand_1.JumpCursorCommand(textField, { dx: 1 }, expand.matchesModifier(event)));
return true;
}
if (patterns.home.matches(event)) {
onChange(new JumpCursorCommand_1.JumpCursorCommand(textField, { dx: -1 }, expand.matchesModifier(event)));
return true;
}
if (patterns.selectAll.matches(event)) {
onChange(new CompoundTextEditCommand_1.CompoundTextEditCommand([
new JumpCursorCommand_1.JumpCursorCommand(textField, { dx: -1, dy: -1 }),
new JumpCursorCommand_1.JumpCursorCommand(textField, { dx: 1, dy: 1 }, true),
], { name: "Select all" }));
return true;
}
}
exports.handleCursorJumpInput = handleCursorJumpInput;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlQ3Vyc29ySnVtcElucHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RleHRGaWVsZHMvaW50ZXJhY3Rpb24va2V5SGFuZGxlci9oYW5kbGVDdXJzb3JKdW1wSW5wdXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUEsbUZBQThFO0FBQzlFLHlGQUFvRjtBQUNwRixxRUFBZ0U7QUFDaEUsaUZBQTRFO0FBRzVFOzs7Ozs7R0FNRztBQUNILFNBQWdCLHFCQUFxQixDQUNqQyxLQUFlLEVBQ2YsRUFBQyxTQUFTLEVBQUUsUUFBUSxFQUFrQixFQUN0QyxRQVNvRTtJQUVwRSxJQUFJLDZEQUE2QixDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQ3pDLE1BQU0sRUFBRSxHQUFHLFFBQVEsQ0FBQztRQUNwQixRQUFRLEdBQUc7WUFDUCxJQUFJLEdBQUc7Z0JBQ0gsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ3hCLENBQUM7WUFDRCxJQUFJLElBQUk7Z0JBQ0osT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ3pCLENBQUM7WUFDRCxJQUFJLFlBQVk7Z0JBQ1osT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2pDLENBQUM7WUFDRCxJQUFJLGFBQWE7Z0JBQ2IsT0FBTyxFQUFFLENBQUMsYUFBYSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2xDLENBQUM7WUFDRCxJQUFJLFNBQVM7Z0JBQ1QsT0FBTyxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQzlCLENBQUM7WUFDRCxJQUFJLGVBQWU7Z0JBQ2YsT0FBTyxFQUFFLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ3BDLENBQUM7U0FDSixDQUFDO0tBQ0w7SUFFRCxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsZUFBZSxDQUFDO0lBQ3hDLElBQUksUUFBUSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDdEMsUUFBUSxDQUNKLElBQUkseURBQTJCLENBQzNCLFNBQVMsRUFDVCxDQUFDLENBQUMsRUFDRixNQUFNLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxFQUM3QixJQUFJLENBQ1AsQ0FDSixDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUM7S0FDZjtJQUNELElBQUksUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDdkMsUUFBUSxDQUNKLElBQUkseURBQTJCLENBQzNCLFNBQVMsRUFDVCxDQUFDLEVBQ0QsTUFBTSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsRUFDN0IsSUFBSSxDQUNQLENBQ0osQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDO0tBQ2Y7SUFFRCxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQzdCLFFBQVEsQ0FDSixJQUFJLHFDQUFpQixDQUFDLFNBQVMsRUFBRSxFQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUMsRUFBRSxNQUFNLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQzNFLENBQUM7UUFDRixPQUFPLElBQUksQ0FBQztLQUNmO0lBQ0QsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUM5QixRQUFRLENBQ0osSUFBSSxxQ0FBaUIsQ0FBQyxTQUFTLEVBQUUsRUFBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUMsRUFBRSxNQUFNLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQzVFLENBQUM7UUFDRixPQUFPLElBQUksQ0FBQztLQUNmO0lBQ0QsSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUNuQyxRQUFRLENBQ0osSUFBSSxpREFBdUIsQ0FDdkI7WUFDSSxJQUFJLHFDQUFpQixDQUFDLFNBQVMsRUFBRSxFQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUMsQ0FBQztZQUNsRCxJQUFJLHFDQUFpQixDQUFDLFNBQVMsRUFBRSxFQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBQyxFQUFFLElBQUksQ0FBQztTQUN6RCxFQUNELEVBQUMsSUFBSSxFQUFFLFlBQVksRUFBQyxDQUN2QixDQUNKLENBQUM7UUFDRixPQUFPLElBQUksQ0FBQztLQUNmO0FBQ0wsQ0FBQztBQXRGRCxzREFzRkMifQ==
;