mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-07-13 03:27:39 +03:00
Resolve #532
This commit is contained in:
parent
a8f4bab23e
commit
afe4da1f65
2 changed files with 4 additions and 7 deletions
10
dev/External/User/ko.js
vendored
10
dev/External/User/ko.js
vendored
|
|
@ -97,16 +97,13 @@ Object.assign(ko.bindingHandlers, {
|
||||||
dragImage || (dragImage = elementById('messagesDragImage'));
|
dragImage || (dragImage = elementById('messagesDragImage'));
|
||||||
if (data && dragImage && !ThemeStore.isMobile()) {
|
if (data && dragImage && !ThemeStore.isMobile()) {
|
||||||
dragImage.querySelector('.text').textContent = data.size;
|
dragImage.querySelector('.text').textContent = data.size;
|
||||||
let img = dragImage.querySelector('i');
|
|
||||||
img.classList.toggle('icon-copy', e.ctrlKey);
|
|
||||||
img.classList.toggle('icon-mail', !e.ctrlKey);
|
|
||||||
|
|
||||||
// Else Chrome doesn't show it
|
// Else Chrome doesn't show it
|
||||||
dragImage.style.left = e.clientX + 'px';
|
dragImage.style.left = e.clientX + 'px';
|
||||||
dragImage.style.top = e.clientY + 'px';
|
dragImage.style.top = e.clientY + 'px';
|
||||||
dragImage.style.right = 'auto';
|
dragImage.style.right = 'auto';
|
||||||
|
|
||||||
setDragAction(e, 'messages', data.copy ? 'copy' : 'move', data, dragImage);
|
setDragAction(e, 'messages', 'copyMove', data, dragImage);
|
||||||
|
|
||||||
// Remove the Chrome visibility
|
// Remove the Chrome visibility
|
||||||
dragImage.style.cssText = '';
|
dragImage.style.cssText = '';
|
||||||
|
|
@ -132,6 +129,7 @@ Object.assign(ko.bindingHandlers, {
|
||||||
fnHover = e => {
|
fnHover = e => {
|
||||||
if (dragMessages()) {
|
if (dragMessages()) {
|
||||||
fnStop(e);
|
fnStop(e);
|
||||||
|
e.dataTransfer.dropEffect = e.ctrlKey ? 'copy' : 'move';
|
||||||
element.classList.add('droppableHover');
|
element.classList.add('droppableHover');
|
||||||
if (folder?.collapsed()) {
|
if (folder?.collapsed()) {
|
||||||
dragTimer.start(() => {
|
dragTimer.start(() => {
|
||||||
|
|
@ -147,10 +145,10 @@ Object.assign(ko.bindingHandlers, {
|
||||||
dragleave: fnStop,
|
dragleave: fnStop,
|
||||||
drop: e => {
|
drop: e => {
|
||||||
fnStop(e);
|
fnStop(e);
|
||||||
if (dragMessages() && ['move','copy'].includes(e.dataTransfer.effectAllowed)) {
|
if (dragMessages() && 'copyMove' == e.dataTransfer.effectAllowed) {
|
||||||
let data = dragData.data;
|
let data = dragData.data;
|
||||||
if (folder && data?.folder && data.size) {
|
if (folder && data?.folder && data.size) {
|
||||||
moveMessagesToFolder(data.folder, data, folder.fullName, /*data.copy &&*/ e.ctrlKey);
|
moveMessagesToFolder(data.folder, data, folder.fullName, e.ctrlKey);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -384,7 +384,6 @@ export class MailMessageList extends AbstractViewRight {
|
||||||
const item = ko.dataFor(doc.elementFromPoint(event.clientX, event.clientY));
|
const item = ko.dataFor(doc.elementFromPoint(event.clientX, event.clientY));
|
||||||
item?.checked?.(true);
|
item?.checked?.(true);
|
||||||
const uids = MessagelistUserStore.listCheckedOrSelectedUidsWithSubMails();
|
const uids = MessagelistUserStore.listCheckedOrSelectedUidsWithSubMails();
|
||||||
uids.copy = event.ctrlKey; // dropEffect
|
|
||||||
uids.folder = FolderUserStore.currentFolderFullName();
|
uids.folder = FolderUserStore.currentFolderFullName();
|
||||||
return uids;
|
return uids;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue