Merge pull request #5653 from NadavTasher/feature/assign-members-by-numbers

Feature - Assign members using keyboard shortcut `Ctrl+Alt+[1-9]`
This commit is contained in:
Lauri Ojansivu 2025-01-02 06:01:32 +02:00 committed by GitHub
commit 02b99e0555
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 34 additions and 0 deletions

View file

@ -179,6 +179,35 @@ Mousetrap.bind(numArray, (evt, key) => {
}
});
Mousetrap.bind(_.range(1, 10).map(x => `ctrl+alt+${x}`), (evt, key) => {
// Make sure the current user is defined
if (!ReactiveCache.getCurrentUser())
return;
// Make sure the current user is a board member
if (!ReactiveCache.getCurrentUser().isBoardMember())
return;
const memberIndex = parseInt(key.split("+").pop()) - 1;
const currentBoard = Utils.getCurrentBoard();
const boardMembers = currentBoard.memberUsers();
if (memberIndex >= boardMembers.length)
return;
if (MultiSelection.isActive()) {
for (const cardId of MultiSelection.getSelectedCardIds())
ReactiveCache.getCard(cardId).toggleAssignee(boardMembers[memberIndex]._id);
} else {
const cardId = getSelectedCardId();
if (!cardId)
return;
ReactiveCache.getCard(cardId).toggleAssignee(boardMembers[memberIndex]._id);
}
});
Mousetrap.bind('m', evt => {
const cardId = getSelectedCardId();
if (!cardId) {
@ -333,5 +362,9 @@ Template.keyboardShortcuts.helpers({
keys: ['shift + number keys 1-9'],
action: 'remove-labels-multiselect'
},
{
keys: ['ctrl + alt + number keys 1-9'],
action: 'toggle-asignees'
},
],
});

View file

@ -610,6 +610,7 @@
"has-spenttime-cards": "Has spent time cards",
"time": "Time",
"title": "Title",
"toggle-assignees": "Toggle assignees 1-9 for card (By order of addition to board).",
"toggle-labels": "Toggle labels 1-9 for card. Multi-Selection adds labels 1-9",
"remove-labels-multiselect": "Multi-Selection removes labels 1-9",
"tracking": "Tracking",