mirror of
https://github.com/the-djmaze/snappymail.git
synced 2025-01-30 10:37:54 +08:00
Changes for #1412
This commit is contained in:
parent
9eb5646aec
commit
a352ebff25
40 changed files with 102 additions and 46 deletions
7
dev/External/SquireUI.js
vendored
7
dev/External/SquireUI.js
vendored
|
@ -270,6 +270,13 @@ class SquireUI
|
|||
btn.classList.toggle('active', 'source' == this.mode);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
clear: {
|
||||
removeStyle: {
|
||||
html: '⎚',
|
||||
cmd: () => squire.setStyle()
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "العام",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Общи",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Všeobecné",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Generelt",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Bild URL",
|
||||
"IMAGEUPLOAD": "Bilddatei auswählen",
|
||||
"UNDO": "Rückgängig",
|
||||
"REDO": "Wiederholen"
|
||||
"REDO": "Wiederholen",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Allgemein",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Γενικό",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "General",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "General",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "General",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Üldine",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Orokorra",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "عمومی",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Yleinen",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "URL de l'image",
|
||||
"IMAGEUPLOAD": "Sélection de l'image",
|
||||
"UNDO": "Annuler",
|
||||
"REDO": "Refaire"
|
||||
"REDO": "Refaire",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Général",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Általános",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Umum",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Almennt",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Generali",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "全般",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "일반",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Pagrindiniai",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Vispārējie",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Generelt",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Afbeelding URL",
|
||||
"IMAGEUPLOAD": "Upload afbeelding",
|
||||
"UNDO": "Ongedaan maken",
|
||||
"REDO": "Opnieuw"
|
||||
"REDO": "Opnieuw",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Algemeen",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Odnośnik obrazu",
|
||||
"IMAGEUPLOAD": "Wybierz obraz",
|
||||
"UNDO": "Cofnij",
|
||||
"REDO": "Ponów"
|
||||
"REDO": "Ponów",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Ogólne",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Geral",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Imagem por URL",
|
||||
"IMAGEUPLOAD": "Escolher imagem",
|
||||
"UNDO": "Desfazer",
|
||||
"REDO": "Refazer"
|
||||
"REDO": "Refazer",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Geral",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Imagem por URL",
|
||||
"IMAGEUPLOAD": "Escolher imagem",
|
||||
"UNDO": "Desfazer",
|
||||
"REDO": "Refazer"
|
||||
"REDO": "Refazer",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Geral",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "De bază",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Основные",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Všeobecné",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Splošno",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Allmänt",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Genel",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "Основні",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "Image URL",
|
||||
"IMAGEUPLOAD": "Image select",
|
||||
"UNDO": "Undo",
|
||||
"REDO": "Redo"
|
||||
"REDO": "Redo",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "General",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "图片 URL",
|
||||
"IMAGEUPLOAD": "选择图片",
|
||||
"UNDO": "撤销",
|
||||
"REDO": "重做"
|
||||
"REDO": "重做",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "常规",
|
||||
|
|
|
@ -386,7 +386,8 @@
|
|||
"IMAGEURL": "圖片 URL",
|
||||
"IMAGEUPLOAD": "圖片選取",
|
||||
"UNDO": "復原",
|
||||
"REDO": "取消復原"
|
||||
"REDO": "取消復原",
|
||||
"REMOVESTYLE": "Remove style"
|
||||
},
|
||||
"SETTINGS_LABELS": {
|
||||
"GENERAL": "一般設定",
|
||||
|
|
27
vendors/squire/build/squire-raw.js
vendored
27
vendors/squire/build/squire-raw.js
vendored
|
@ -1808,12 +1808,12 @@ const
|
|||
|
||||
setAttributes = (node, props) => {
|
||||
props && Object.entries(props).forEach(([k,v]) => {
|
||||
if ("style" === k && typeof v === "object") {
|
||||
Object.entries(v).forEach(([k,v]) => node.style[k] = v);
|
||||
} else if (v != null) {
|
||||
node.setAttribute(k, v);
|
||||
} else {
|
||||
if (null == v) {
|
||||
node.removeAttribute(k);
|
||||
} else if ("style" === k && typeof v === "object") {
|
||||
Object.entries(v).forEach(([k,v]) => node.style[k] = v);
|
||||
} else {
|
||||
node.setAttribute(k, v);
|
||||
}
|
||||
});
|
||||
},
|
||||
|
@ -2262,7 +2262,7 @@ class Squire
|
|||
},
|
||||
formatRemove: event => {
|
||||
event.preventDefault();
|
||||
this.setStyle(null);
|
||||
this.setStyle();
|
||||
},
|
||||
formatSetBlockTextDirection: event => {
|
||||
event.preventDefault();
|
||||
|
@ -3665,9 +3665,20 @@ class Squire
|
|||
let end = range ? range.endContainer : 0;
|
||||
// When the selection is all the text inside an element, set style on the element itself
|
||||
if ("dir" == name || (isTextNode(start) && 0 === range.startOffset && start === end && end.length === range.endOffset)) {
|
||||
this.saveUndoState(range);
|
||||
this._recordUndoState(range);
|
||||
setAttributes(start.parentNode, {[name]: value});
|
||||
this.setRange(range);
|
||||
// this.setRange(range);
|
||||
this._docWasChanged();
|
||||
}
|
||||
// Else when it should remove the attribute
|
||||
else if (null == value) {
|
||||
this._recordUndoState(range);
|
||||
let node = getClosest(range.commonAncestorContainer, this._root, '*');
|
||||
range.collapsed
|
||||
? setAttributes(node, {[name]: value})
|
||||
: node.querySelectorAll('*').forEach(el => setAttributes(el, {[name]: value}));
|
||||
// this.setRange(range);
|
||||
this._docWasChanged();
|
||||
}
|
||||
// Else create a span element
|
||||
else {
|
||||
|
|
Loading…
Reference in a new issue