Review paired list content layout ; ESC for unselection
This commit is contained in:
@@ -189,44 +189,56 @@ onLoad(() => {
|
||||
|
||||
// keyboard handling
|
||||
document.on('keyup', e => {
|
||||
let tab = document.location.hash;
|
||||
switch (e.key) {
|
||||
case 'Escape': {
|
||||
if ($('#player').hasClass('shown') && $('#needle')[0].value) {
|
||||
if (tab === '#registration') {
|
||||
if ($('#player').hasClass('shown') && $('#needle')[0].value) {
|
||||
$('#needle')[0].value = '';
|
||||
initSearch();
|
||||
} else {
|
||||
close_modal();
|
||||
} else {
|
||||
close_modal();
|
||||
}
|
||||
} else if (tab === '#pairing') {
|
||||
console.log('here')
|
||||
$('#pairing-lists .selected.listitem').removeClass('selected');
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 'ArrowDown': {
|
||||
if (typeof(searchResultShown) === 'function' && searchResultShown()) {
|
||||
let lines = $('.result-line');
|
||||
if (typeof (searchHighlight) === 'undefined') searchHighlight = 0;
|
||||
else ++searchHighlight;
|
||||
searchHighlight = Math.min(searchHighlight, lines.length - 1);
|
||||
lines.removeClass('highlighted');
|
||||
lines[searchHighlight].addClass('highlighted');
|
||||
if (tab === '#registration') {
|
||||
if (typeof(searchResultShown) === 'function' && searchResultShown()) {
|
||||
let lines = $('.result-line');
|
||||
if (typeof (searchHighlight) === 'undefined') searchHighlight = 0;
|
||||
else ++searchHighlight;
|
||||
searchHighlight = Math.min(searchHighlight, lines.length - 1);
|
||||
lines.removeClass('highlighted');
|
||||
lines[searchHighlight].addClass('highlighted');
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 'ArrowUp': {
|
||||
if (typeof(searchResultShown) === 'function' && searchResultShown()) {
|
||||
let lines = $('.result-line');
|
||||
if (typeof (searchHighlight) === 'undefined') searchHighlight = 0;
|
||||
else --searchHighlight;
|
||||
searchHighlight = Math.max(searchHighlight, 0);
|
||||
lines.removeClass('highlighted');
|
||||
lines[searchHighlight].addClass('highlighted');
|
||||
if (tab === '#registration') {
|
||||
if (typeof(searchResultShown) === 'function' && searchResultShown()) {
|
||||
let lines = $('.result-line');
|
||||
if (typeof (searchHighlight) === 'undefined') searchHighlight = 0;
|
||||
else --searchHighlight;
|
||||
searchHighlight = Math.max(searchHighlight, 0);
|
||||
lines.removeClass('highlighted');
|
||||
lines[searchHighlight].addClass('highlighted');
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 'Enter': {
|
||||
if (typeof(searchResultShown) === 'function') {
|
||||
if (searchResultShown()) {
|
||||
fillPlayer(searchResult[searchHighlight]);
|
||||
} else {
|
||||
$('#register')[0].click();
|
||||
if (tab === '#registration') {
|
||||
if (typeof(searchResultShown) === 'function') {
|
||||
if (searchResultShown()) {
|
||||
fillPlayer(searchResult[searchHighlight]);
|
||||
} else {
|
||||
$('#register')[0].click();
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
Reference in New Issue
Block a user