add tabindex to clickable elements (dismiss notification/s & go to profile link) #1781

This commit is contained in:
daria 2025-03-26 13:55:56 +02:00
parent 14556db750
commit 422b92ba7a
No known key found for this signature in database
GPG Key ID: B698EF05B31BB9A5
3 changed files with 17 additions and 3 deletions

View File

@ -135,7 +135,7 @@ define(req, function(AppConfig, Default, Language) {
};
Messages.user_profile = 'Go to user profile';
return Messages;
});

View File

@ -81,8 +81,16 @@ define([
Common.openURL(Hash.hashToHref('', 'calendar'));
});
} else if (userData && typeof(userData) === "object" && userData.profile) {
avatar = h('span.cp-avatar');
avatar = h('span.cp-avatar',{
tabindex: 0,
title: Messages.user_profile
});
Common.displayAvatar($(avatar), userData.avatar, userData.displayName || userData.name);
$(avatar).keydown(function (e) {
if (e.which === 13 || e.which === 32) {
$(avatar).click();
}
});
$(avatar).click(function (e) {
e.stopPropagation();
Common.openURL(Hash.hashToHref(userData.profile, 'profile'));
@ -136,6 +144,7 @@ define([
if (data.content.isDismissible) {
var dismissIcon = h('span.fa.fa-times');
var dismiss = h('div.cp-notification-dismiss', {
tabindex: 0,
title: Messages.notifications_dismiss,
}, dismissIcon);
$(dismiss).addClass("cp-clickable")

View File

@ -74,7 +74,7 @@ define([
h("h5.cp-app-notifications-panel-title",
(Messages.notificationsPage || "Notifications") + " - " + categoryName),
h("div.cp-app-notifications-panel-titlebar-buttons", [
dismissAll = h("div.cp-app-notifications-dismissall.cp-clickable", { title: Messages.notifications_dismissAll || "Dismiss All" }, h("span.fa.fa-trash")),
dismissAll = h("div.cp-app-notifications-dismissall.cp-clickable", { tabindex: 0, title: Messages.notifications_dismissAll || "Dismiss All" }, h("span.fa.fa-trash")),
]),
]),
notifsList = h("div.cp-app-notifications-panel-list", [
@ -154,6 +154,11 @@ define([
}
});
$(dismissAll).keydown(function (e) {
if (e.keyCode === 13 || e.keyCode === 32) {
$(dismissAll).click();
}
});
$(dismissAll).click(function () {
notifsData.forEach(function (data) {
if (data.content.isDismissible) {