More screen reader accessibility fixes.
This commit is contained in:
+26
-7
@@ -435,10 +435,10 @@ function setConnected(connected) {
|
||||
for(let elt of document.querySelectorAll('.connected-only')) {
|
||||
if(connected) {
|
||||
elt.classList.remove('invisible');
|
||||
elt.removeAttribute('aria-hidden');
|
||||
setAccessibleHidden(elt, false);
|
||||
} else {
|
||||
elt.classList.add('invisible');
|
||||
elt.setAttribute('aria-hidden', 'true');
|
||||
setAccessibleHidden(elt, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2200,6 +2200,12 @@ function gotFileTransfer(f) {
|
||||
div.classList.add('message-row');
|
||||
let box = document.getElementById('box');
|
||||
box.appendChild(div);
|
||||
if(!f.up) {
|
||||
announceChat(
|
||||
`File offer from ${f.username}: ${f.name}. ` +
|
||||
'Choosing Accept will disclose your IP address.',
|
||||
);
|
||||
}
|
||||
return div;
|
||||
}
|
||||
|
||||
@@ -3620,6 +3626,7 @@ document.getElementById('resizer').addEventListener('keydown', function(e) {
|
||||
function displayError(message, level) {
|
||||
if(!level)
|
||||
level = "error";
|
||||
let text = String(message);
|
||||
let position = 'center';
|
||||
let gravity = 'top';
|
||||
|
||||
@@ -3635,9 +3642,14 @@ function displayError(message, level) {
|
||||
break;
|
||||
}
|
||||
|
||||
if(level === "info")
|
||||
announceChat(text);
|
||||
else
|
||||
announceUrgent(text);
|
||||
|
||||
/** @ts-ignore */
|
||||
Toastify({
|
||||
text: message,
|
||||
text: text,
|
||||
duration: 8000, // Increased from 4000 for screen reader users
|
||||
close: true,
|
||||
position: position,
|
||||
@@ -3742,6 +3754,13 @@ function toggleLeftPanel() {
|
||||
);
|
||||
}
|
||||
|
||||
function setChatPanelVisible(visible) {
|
||||
let chatPanel = document.getElementById('left');
|
||||
setVisibility('left', visible);
|
||||
if(chatPanel)
|
||||
setAccessibleHidden(chatPanel, !visible);
|
||||
}
|
||||
|
||||
document.getElementById('sidebarCollapse').onclick = function(e) {
|
||||
e.preventDefault();
|
||||
toggleLeftPanel();
|
||||
@@ -3762,7 +3781,7 @@ document.getElementById('closeside').onclick = function(e) {
|
||||
|
||||
document.getElementById('close-chat').onclick = function(e) {
|
||||
e.preventDefault();
|
||||
setVisibility('left', false);
|
||||
setChatPanelVisible(false);
|
||||
setVisibility('show-chat', true);
|
||||
resizePeers();
|
||||
document.getElementById('show-chat').focus();
|
||||
@@ -3770,7 +3789,7 @@ document.getElementById('close-chat').onclick = function(e) {
|
||||
|
||||
document.getElementById('show-chat').onclick = function(e) {
|
||||
e.preventDefault();
|
||||
setVisibility('left', true);
|
||||
setChatPanelVisible(true);
|
||||
setVisibility('show-chat', false);
|
||||
resizePeers();
|
||||
document.getElementById('close-chat').focus();
|
||||
@@ -3891,7 +3910,7 @@ document.addEventListener('keydown', function(e) {
|
||||
|
||||
if(isChatVisible) {
|
||||
// Collapse chat
|
||||
setVisibility('left', false);
|
||||
setChatPanelVisible(false);
|
||||
setVisibility('show-chat', true);
|
||||
resizePeers();
|
||||
|
||||
@@ -3909,7 +3928,7 @@ document.addEventListener('keydown', function(e) {
|
||||
}, 100);
|
||||
} else {
|
||||
// Expand chat
|
||||
setVisibility('left', true);
|
||||
setChatPanelVisible(true);
|
||||
setVisibility('show-chat', false);
|
||||
resizePeers();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user