mirror of
https://github.com/9001/copyparty.git
synced 2025-08-17 09:02:15 -06:00
ie11 fixes (2024? haha no way dude it's like 2004 right)
* fix crash on keyboard input in modals * text editor works again (but without markdown preview) * keyboard hotkeys for the few features that actually work
This commit is contained in:
parent
7a936ea01e
commit
2fd2c6b948
|
@ -255,19 +255,19 @@ window.baguetteBox = (function () {
|
||||||
if (anymod(e, true))
|
if (anymod(e, true))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
var k = e.code + '', v = vid(), pos = -1;
|
var k = (e.code || e.key) + '', v = vid(), pos = -1;
|
||||||
|
|
||||||
if (k == "BracketLeft")
|
if (k == "BracketLeft")
|
||||||
setloop(1);
|
setloop(1);
|
||||||
else if (k == "BracketRight")
|
else if (k == "BracketRight")
|
||||||
setloop(2);
|
setloop(2);
|
||||||
else if (e.shiftKey && k != 'KeyR')
|
else if (e.shiftKey && k != "KeyR" && k != "R")
|
||||||
return;
|
return;
|
||||||
else if (k == "ArrowLeft" || k == "KeyJ")
|
else if (k == "ArrowLeft" || k == "KeyJ" || k == "Left" || k == "j")
|
||||||
showPreviousImage();
|
showPreviousImage();
|
||||||
else if (k == "ArrowRight" || k == "KeyL")
|
else if (k == "ArrowRight" || k == "KeyL" || k == "Right" || k == "l")
|
||||||
showNextImage();
|
showNextImage();
|
||||||
else if (k == "Escape")
|
else if (k == "Escape" || k == "Esc")
|
||||||
hideOverlay();
|
hideOverlay();
|
||||||
else if (k == "Home")
|
else if (k == "Home")
|
||||||
showFirstImage(e);
|
showFirstImage(e);
|
||||||
|
@ -295,9 +295,9 @@ window.baguetteBox = (function () {
|
||||||
}
|
}
|
||||||
else if (k == "KeyF")
|
else if (k == "KeyF")
|
||||||
tglfull();
|
tglfull();
|
||||||
else if (k == "KeyS")
|
else if (k == "KeyS" || k == "s")
|
||||||
tglsel();
|
tglsel();
|
||||||
else if (k == "KeyR")
|
else if (k == "KeyR" || k == "r" || k == "R")
|
||||||
rotn(e.shiftKey ? -1 : 1);
|
rotn(e.shiftKey ? -1 : 1);
|
||||||
else if (k == "KeyY")
|
else if (k == "KeyY")
|
||||||
dlpic();
|
dlpic();
|
||||||
|
|
|
@ -1653,7 +1653,9 @@ html.cz .tgl.btn.on {
|
||||||
color: var(--fg-max);
|
color: var(--fg-max);
|
||||||
}
|
}
|
||||||
#tree ul a.hl {
|
#tree ul a.hl {
|
||||||
|
color: #fff;
|
||||||
color: var(--btn-1-fg);
|
color: var(--btn-1-fg);
|
||||||
|
background: #000;
|
||||||
background: var(--btn-1-bg);
|
background: var(--btn-1-bg);
|
||||||
text-shadow: none;
|
text-shadow: none;
|
||||||
}
|
}
|
||||||
|
@ -2174,6 +2176,7 @@ html.y #bbox-overlay figcaption a {
|
||||||
}
|
}
|
||||||
#bbox-halp {
|
#bbox-halp {
|
||||||
color: var(--fg-max);
|
color: var(--fg-max);
|
||||||
|
background: #fff;
|
||||||
background: var(--bg);
|
background: var(--bg);
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
|
|
|
@ -3656,7 +3656,8 @@ var fileman = (function () {
|
||||||
(function (a) {
|
(function (a) {
|
||||||
f[a].inew.onkeydown = function (e) {
|
f[a].inew.onkeydown = function (e) {
|
||||||
rn_ok(a, true);
|
rn_ok(a, true);
|
||||||
if (e.key.endsWith('Enter'))
|
var kc = (e.code || e.key) + '';
|
||||||
|
if (kc.endsWith('Enter'))
|
||||||
return rn_apply();
|
return rn_apply();
|
||||||
};
|
};
|
||||||
QS('.rn_dec' + k).onclick = function (e) {
|
QS('.rn_dec' + k).onclick = function (e) {
|
||||||
|
@ -3748,10 +3749,12 @@ var fileman = (function () {
|
||||||
spresets();
|
spresets();
|
||||||
|
|
||||||
ire.onkeydown = ifmt.onkeydown = function (e) {
|
ire.onkeydown = ifmt.onkeydown = function (e) {
|
||||||
if (e.key == 'Escape')
|
var k = (e.code || e.key) + '';
|
||||||
|
|
||||||
|
if (k == 'Escape' || k == 'Esc')
|
||||||
return rn_cancel();
|
return rn_cancel();
|
||||||
|
|
||||||
if (e.key.endsWith('Enter'))
|
if (k.endsWith('Enter'))
|
||||||
return rn_apply();
|
return rn_apply();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -4926,14 +4929,14 @@ document.onkeydown = function (e) {
|
||||||
if (QS('#bbox-overlay.visible') || modal.busy)
|
if (QS('#bbox-overlay.visible') || modal.busy)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
var k = e.code + '', pos = -1, n,
|
var k = (e.code || e.key) + '', pos = -1, n,
|
||||||
ae = document.activeElement,
|
ae = document.activeElement,
|
||||||
aet = ae && ae != document.body ? ae.nodeName.toLowerCase() : '';
|
aet = ae && ae != document.body ? ae.nodeName.toLowerCase() : '';
|
||||||
|
|
||||||
if (e.key == '?')
|
if (e.key == '?')
|
||||||
return hkhelp();
|
return hkhelp();
|
||||||
|
|
||||||
if (k == 'Escape') {
|
if (k == 'Escape' || k == 'Esc') {
|
||||||
ae && ae.blur();
|
ae && ae.blur();
|
||||||
tt.hide();
|
tt.hide();
|
||||||
|
|
||||||
|
@ -5003,23 +5006,23 @@ document.onkeydown = function (e) {
|
||||||
if (k.endsWith('Enter') && ae && (ae.onclick || ae.hasAttribute('tabIndex')))
|
if (k.endsWith('Enter') && ae && (ae.onclick || ae.hasAttribute('tabIndex')))
|
||||||
return ev(e) && ae.click() || true;
|
return ev(e) && ae.click() || true;
|
||||||
|
|
||||||
if (aet && aet != 'a' && aet != 'tr' && aet != 'pre')
|
if (aet && aet != 'a' && aet != 'tr' && aet != 'td' && aet != 'div' && aet != 'pre')
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (ctrl(e)) {
|
if (ctrl(e)) {
|
||||||
if (k == 'KeyX')
|
if (k == 'KeyX' || k == 'x')
|
||||||
return fileman.cut();
|
return fileman.cut();
|
||||||
|
|
||||||
if (k == 'KeyV')
|
if (k == 'KeyV' || k == 'v')
|
||||||
return fileman.paste();
|
return fileman.paste();
|
||||||
|
|
||||||
if (k == 'KeyK')
|
if (k == 'KeyK' || k == 'k')
|
||||||
return fileman.delete();
|
return fileman.delete();
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (e.shiftKey && k != 'KeyA' && k != 'KeyD')
|
if (e.shiftKey && k != 'KeyA' && k != 'KeyD' && k != 'A' && k != 'D')
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (k.indexOf('Digit') === 0)
|
if (k.indexOf('Digit') === 0)
|
||||||
|
@ -5028,16 +5031,17 @@ document.onkeydown = function (e) {
|
||||||
if (pos !== -1)
|
if (pos !== -1)
|
||||||
return seek_au_mul(pos) || true;
|
return seek_au_mul(pos) || true;
|
||||||
|
|
||||||
if (k == 'KeyJ')
|
if (k == 'KeyJ' || k == 'j')
|
||||||
return prev_song() || true;
|
return prev_song() || true;
|
||||||
|
|
||||||
if (k == 'KeyL')
|
if (k == 'KeyL' || k == 'l')
|
||||||
return next_song() || true;
|
return next_song() || true;
|
||||||
|
|
||||||
if (k == 'KeyP')
|
if (k == 'KeyP' || k == 'p')
|
||||||
return playpause() || true;
|
return playpause() || true;
|
||||||
|
|
||||||
n = k == 'KeyU' ? -10 : k == 'KeyO' ? 10 : 0;
|
n = (k == 'KeyU' || k == 'u') ? -10 :
|
||||||
|
(k == 'KeyO' || k == 'o') ? 10 : 0;
|
||||||
if (n !== 0)
|
if (n !== 0)
|
||||||
return seek_au_rel(n) || true;
|
return seek_au_rel(n) || true;
|
||||||
|
|
||||||
|
@ -5046,51 +5050,52 @@ document.onkeydown = function (e) {
|
||||||
showfile.active() ? ebi('dldoc').click() :
|
showfile.active() ? ebi('dldoc').click() :
|
||||||
dl_song();
|
dl_song();
|
||||||
|
|
||||||
n = k == 'KeyI' ? -1 : k == 'KeyK' ? 1 : 0;
|
n = (k == 'KeyI' || k == 'i') ? -1 :
|
||||||
|
(k == 'KeyK' || k == 'k') ? 1 : 0;
|
||||||
if (n !== 0)
|
if (n !== 0)
|
||||||
return tree_neigh(n);
|
return tree_neigh(n);
|
||||||
|
|
||||||
if (k == 'KeyM')
|
if (k == 'KeyM' || k == 'm')
|
||||||
return tree_up();
|
return tree_up();
|
||||||
|
|
||||||
if (k == 'KeyB')
|
if (k == 'KeyB' || k == 'b')
|
||||||
return treectl.hidden ? treectl.entree() : treectl.detree();
|
return treectl.hidden ? treectl.entree() : treectl.detree();
|
||||||
|
|
||||||
if (k == 'KeyG')
|
if (k == 'KeyG' || k == 'g')
|
||||||
return ebi('griden').click();
|
return ebi('griden').click();
|
||||||
|
|
||||||
if (k == 'KeyT')
|
if (k == 'KeyT' || k == 't')
|
||||||
return ebi('thumbs').click();
|
return ebi('thumbs').click();
|
||||||
|
|
||||||
if (k == 'KeyV')
|
if (k == 'KeyV' || k == 'v')
|
||||||
return ebi('filetree').click();
|
return ebi('filetree').click();
|
||||||
|
|
||||||
if (k == 'F2')
|
if (k == 'F2')
|
||||||
return fileman.rename();
|
return fileman.rename();
|
||||||
|
|
||||||
if (!treectl.hidden && (!e.shiftKey || !thegrid.en)) {
|
if (!treectl.hidden && (!e.shiftKey || !thegrid.en)) {
|
||||||
if (k == 'KeyA')
|
if (k == 'KeyA' || k == 'a')
|
||||||
return QS('#twig').click();
|
return QS('#twig').click();
|
||||||
|
|
||||||
if (k == 'KeyD')
|
if (k == 'KeyD' || k == 'd')
|
||||||
return QS('#twobytwo').click();
|
return QS('#twobytwo').click();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (showfile.active()) {
|
if (showfile.active()) {
|
||||||
if (k == 'KeyS')
|
if (k == 'KeyS' || k == 's')
|
||||||
showfile.tglsel();
|
showfile.tglsel();
|
||||||
if (k == 'KeyE' && ebi('editdoc').style.display != 'none')
|
if ((k == 'KeyE' || k == 'e') && ebi('editdoc').style.display != 'none')
|
||||||
ebi('editdoc').click();
|
ebi('editdoc').click();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (thegrid.en) {
|
if (thegrid.en) {
|
||||||
if (k == 'KeyS')
|
if (k == 'KeyS' || k == 's')
|
||||||
return ebi('gridsel').click();
|
return ebi('gridsel').click();
|
||||||
|
|
||||||
if (k == 'KeyA')
|
if (k == 'KeyA' || k == 'a')
|
||||||
return QSA('#ghead a[z]')[0].click();
|
return QSA('#ghead a[z]')[0].click();
|
||||||
|
|
||||||
if (k == 'KeyD')
|
if (k == 'KeyD' || k == 'd')
|
||||||
return QSA('#ghead a[z]')[1].click();
|
return QSA('#ghead a[z]')[1].click();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -5203,7 +5208,7 @@ document.onkeydown = function (e) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function ev_search_keydown(e) {
|
function ev_search_keydown(e) {
|
||||||
if (e.key.endsWith('Enter'))
|
if ((e.key + '').endsWith('Enter'))
|
||||||
do_search();
|
do_search();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -216,6 +216,11 @@ function convert_markdown(md_text, dest_dom) {
|
||||||
md_html = DOMPurify.sanitize(md_html);
|
md_html = DOMPurify.sanitize(md_html);
|
||||||
}
|
}
|
||||||
catch (ex) {
|
catch (ex) {
|
||||||
|
if (IE) {
|
||||||
|
dest_dom.innerHTML = 'IE cannot into markdown ;_;';
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (ext)
|
if (ext)
|
||||||
md_plug_err(ex, ext[1]);
|
md_plug_err(ex, ext[1]);
|
||||||
|
|
||||||
|
|
|
@ -1009,7 +1009,7 @@ var set_lno = (function () {
|
||||||
md_home(ev.shiftKey);
|
md_home(ev.shiftKey);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (!ev.shiftKey && (ev.code.endsWith("Enter") || kc == 13)) {
|
if (!ev.shiftKey && ((ev.code + '').endsWith("Enter") || kc == 13)) {
|
||||||
return md_newline();
|
return md_newline();
|
||||||
}
|
}
|
||||||
if (!ev.shiftKey && kc == 8) {
|
if (!ev.shiftKey && kc == 8) {
|
||||||
|
|
|
@ -1563,7 +1563,7 @@ var modal = (function () {
|
||||||
};
|
};
|
||||||
|
|
||||||
var onkey = function (e) {
|
var onkey = function (e) {
|
||||||
var k = e.code,
|
var k = (e.code || e.key) + '',
|
||||||
eok = ebi('modal-ok'),
|
eok = ebi('modal-ok'),
|
||||||
eng = ebi('modal-ng'),
|
eng = ebi('modal-ng'),
|
||||||
ae = document.activeElement;
|
ae = document.activeElement;
|
||||||
|
@ -1578,10 +1578,10 @@ var modal = (function () {
|
||||||
return ok(e);
|
return ok(e);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((k == 'ArrowLeft' || k == 'ArrowRight') && eng && (ae == eok || ae == eng))
|
if ((k == 'ArrowLeft' || k == 'ArrowRight' || k == 'Left' || k == 'Right') && eng && (ae == eok || ae == eng))
|
||||||
return (ae == eok ? eng : eok).focus() || ev(e);
|
return (ae == eok ? eng : eok).focus() || ev(e);
|
||||||
|
|
||||||
if (k == 'Escape')
|
if (k == 'Escape' || k == 'Esc')
|
||||||
return ng(e);
|
return ng(e);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue