Improve attachment upload methods (#30513)

* Use dropzone to handle file uploading for all cases, including pasting
and dragging
* Merge duplicate code, use consistent behavior for link generating

Close #20130

---------

Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
Tyrone Yeh 2024-06-27 17:31:49 +08:00 committed by GitHub
parent 00fc29aee1
commit 9bc5552c11
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 169 additions and 97 deletions

View file

@ -19,11 +19,10 @@ export async function pngChunks(blob) {
return chunks;
}
// decode a image and try to obtain width and dppx. If will never throw but instead
// decode a image and try to obtain width and dppx. It will never throw but instead
// return default values.
export async function imageInfo(blob) {
let width = 0; // 0 means no width could be determined
let dppx = 1; // 1 dot per pixel for non-HiDPI screens
let width = 0, dppx = 1; // dppx: 1 dot per pixel for non-HiDPI screens
if (blob.type === 'image/png') { // only png is supported currently
try {
@ -41,6 +40,8 @@ export async function imageInfo(blob) {
}
}
} catch {}
} else {
return {}; // no image info for non-image files
}
return {width, dppx};