Add multiple blocks if hold down CTRL or SuperKey

This commit is contained in:
Niels Lyngsø
2020-04-15 15:58:26 +02:00
parent a19ebaa8d0
commit 5236dbff75
3 changed files with 15 additions and 10 deletions
@@ -44,9 +44,9 @@ angular.module("umbraco")
vm.model = $scope.model;
vm.selectItem = function(item) {
vm.selectItem = function(item, $event) {
vm.model.selectedItem = item;
vm.model.submit($scope.model);
vm.model.submit($scope.model, $event);
}
vm.close = function() {
@@ -33,7 +33,7 @@
ng-repeat="block in vm.model.availableItems | filter:searchTerm"
block-config-model="block.blockConfigModel"
element-type-model="block.elementTypeModel"
ng-click="vm.selectItem(block)">
ng-click="vm.selectItem(block, $event)">
</umb-block-card>
</div>
</div>
@@ -55,7 +55,7 @@
block-config-model="block.blockConfigModel"
element-type-model="block.elementTypeModel"
ng-repeat="block in vm.model.clipboardItems"
ng-click="vm.model.clickPasteItem(block)">
ng-click="vm.model.clickPasteItem(block, $event)">
</umb-block-card>
</div>
</div>
@@ -239,7 +239,7 @@
view: "views/common/infiniteeditors/blockpicker/blockpicker.html",
size: (amountOfAvailableTypes > 8 ? "medium" : "small"),
filter: (amountOfAvailableTypes > 8),
clickPasteItem: function(item) {
clickPasteItem: function(item, mouseEvent) {
if (item.type === "elementTypeArray") {
var indexIncrementor = 0;
item.pasteData.forEach(function (entry) {
@@ -250,16 +250,21 @@
} else {
requestPasteFromClipboard(createIndex, item.pasteData);
}
blockPickerModel.close();
if(!(mouseEvent.ctrlKey || mouseEvent.metaKey)) {
blockPickerModel.close();
}
},
submit: function(blockPickerModel) {
submit: function(blockPickerModel, mouseEvent) {
var added = false;
if (blockPickerModel && blockPickerModel.selectedItem) {
added = addNewBlock(createIndex, blockPickerModel.selectedItem.blockConfigModel.contentTypeAlias);
}
blockPickerModel.close();
if (added && vm.model.config.useInlineEditingAsDefault !== true && vm.blocks.length > createIndex) {
editBlock(vm.blocks[createIndex]);
if(!(mouseEvent.ctrlKey || mouseEvent.metaKey)) {
blockPickerModel.close();
if (added && vm.model.config.useInlineEditingAsDefault !== true && vm.blocks.length > createIndex) {
editBlock(vm.blocks[createIndex]);
}
}
},
close: function() {