Merge branch 'from/develop/tusooa/accessibility-regression' into 'develop'
Fix accessibility regressions Closes #1217 See merge request pleroma/pleroma-fe!1679
This commit is contained in:
commit
6263ad7571
@ -33,7 +33,7 @@
|
|||||||
<div id="notifs-sidebar" />
|
<div id="notifs-sidebar" />
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<main
|
||||||
id="main-scroller"
|
id="main-scroller"
|
||||||
class="column main"
|
class="column main"
|
||||||
:class="{ '-full-height': isChats || isListEdit }"
|
:class="{ '-full-height': isChats || isListEdit }"
|
||||||
@ -50,7 +50,7 @@
|
|||||||
</router-link>
|
</router-link>
|
||||||
</div>
|
</div>
|
||||||
<router-view />
|
<router-view />
|
||||||
</div>
|
</main>
|
||||||
<div
|
<div
|
||||||
id="notifs-column"
|
id="notifs-column"
|
||||||
class="column -scrollable"
|
class="column -scrollable"
|
||||||
|
@ -60,7 +60,7 @@
|
|||||||
v-if="shouldShowAncestors"
|
v-if="shouldShowAncestors"
|
||||||
class="thread-ancestors"
|
class="thread-ancestors"
|
||||||
>
|
>
|
||||||
<div
|
<article
|
||||||
v-for="status in ancestorsOf(diveRoot)"
|
v-for="status in ancestorsOf(diveRoot)"
|
||||||
:key="status.id"
|
:key="status.id"
|
||||||
class="thread-ancestor"
|
class="thread-ancestor"
|
||||||
@ -130,7 +130,7 @@
|
|||||||
</i18n-t>
|
</i18n-t>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</article>
|
||||||
</div>
|
</div>
|
||||||
<thread-tree
|
<thread-tree
|
||||||
v-for="status in showingTopLevel"
|
v-for="status in showingTopLevel"
|
||||||
@ -168,34 +168,36 @@
|
|||||||
v-if="isLinearView"
|
v-if="isLinearView"
|
||||||
class="thread-body"
|
class="thread-body"
|
||||||
>
|
>
|
||||||
<status
|
<article>
|
||||||
v-for="status in conversation"
|
<status
|
||||||
:key="status.id"
|
v-for="status in conversation"
|
||||||
ref="statusComponent"
|
:key="status.id"
|
||||||
:inline-expanded="collapsable && isExpanded"
|
ref="statusComponent"
|
||||||
:statusoid="status"
|
:inline-expanded="collapsable && isExpanded"
|
||||||
:expandable="!isExpanded"
|
:statusoid="status"
|
||||||
:show-pinned="pinnedStatusIdsObject && pinnedStatusIdsObject[status.id]"
|
:expandable="!isExpanded"
|
||||||
:focused="focused(status.id)"
|
:show-pinned="pinnedStatusIdsObject && pinnedStatusIdsObject[status.id]"
|
||||||
:in-conversation="isExpanded"
|
:focused="focused(status.id)"
|
||||||
:highlight="getHighlight()"
|
:in-conversation="isExpanded"
|
||||||
:replies="getReplies(status.id)"
|
:highlight="getHighlight()"
|
||||||
:in-profile="inProfile"
|
:replies="getReplies(status.id)"
|
||||||
:profile-user-id="profileUserId"
|
:in-profile="inProfile"
|
||||||
class="conversation-status status-fadein panel-body"
|
:profile-user-id="profileUserId"
|
||||||
|
class="conversation-status status-fadein panel-body"
|
||||||
|
|
||||||
:toggle-thread-display="toggleThreadDisplay"
|
:toggle-thread-display="toggleThreadDisplay"
|
||||||
:thread-display-status="threadDisplayStatus"
|
:thread-display-status="threadDisplayStatus"
|
||||||
:show-thread-recursively="showThreadRecursively"
|
:show-thread-recursively="showThreadRecursively"
|
||||||
:total-reply-count="totalReplyCount"
|
:total-reply-count="totalReplyCount"
|
||||||
:total-reply-depth="totalReplyDepth"
|
:total-reply-depth="totalReplyDepth"
|
||||||
:status-content-properties="statusContentProperties"
|
:status-content-properties="statusContentProperties"
|
||||||
:set-status-content-property="setStatusContentProperty"
|
:set-status-content-property="setStatusContentProperty"
|
||||||
:toggle-status-content-property="toggleStatusContentProperty"
|
:toggle-status-content-property="toggleStatusContentProperty"
|
||||||
|
|
||||||
@goto="setHighlight"
|
@goto="setHighlight"
|
||||||
@toggleExpanded="toggleExpanded"
|
@toggleExpanded="toggleExpanded"
|
||||||
/>
|
/>
|
||||||
|
</article>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -10,6 +10,8 @@
|
|||||||
<div class="item">
|
<div class="item">
|
||||||
<button
|
<button
|
||||||
class="button-unstyled mobile-nav-button"
|
class="button-unstyled mobile-nav-button"
|
||||||
|
:title="$t('nav.mobile_sidebar')"
|
||||||
|
:aria-expanaded="this.$refs.sideDrawer && !this.$refs.sideDrawer.closed"
|
||||||
@click.stop.prevent="toggleMobileSidebar()"
|
@click.stop.prevent="toggleMobileSidebar()"
|
||||||
>
|
>
|
||||||
<FAIcon
|
<FAIcon
|
||||||
@ -26,6 +28,7 @@
|
|||||||
<button
|
<button
|
||||||
v-if="currentUser"
|
v-if="currentUser"
|
||||||
class="button-unstyled mobile-nav-button"
|
class="button-unstyled mobile-nav-button"
|
||||||
|
:title="unseenNotificationsCount ? $t('nav.mobile_notifications_unread_active') : $t('nav.mobile_notifications')"
|
||||||
@click.stop.prevent="openMobileNotifications()"
|
@click.stop.prevent="openMobileNotifications()"
|
||||||
>
|
>
|
||||||
<FAIcon
|
<FAIcon
|
||||||
@ -39,7 +42,7 @@
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</nav>
|
</nav>
|
||||||
<div
|
<aside
|
||||||
v-if="currentUser"
|
v-if="currentUser"
|
||||||
class="mobile-notifications-drawer"
|
class="mobile-notifications-drawer"
|
||||||
:class="{ '-closed': !notificationsOpen }"
|
:class="{ '-closed': !notificationsOpen }"
|
||||||
@ -52,6 +55,7 @@
|
|||||||
<button
|
<button
|
||||||
v-if="notificationsAtTop"
|
v-if="notificationsAtTop"
|
||||||
class="button-unstyled mobile-nav-button"
|
class="button-unstyled mobile-nav-button"
|
||||||
|
:title="$t('general.scroll_to_top')"
|
||||||
@click.stop.prevent="scrollMobileNotificationsToTop"
|
@click.stop.prevent="scrollMobileNotificationsToTop"
|
||||||
>
|
>
|
||||||
<FALayers class="fa-scale-110 fa-old-padding-layer">
|
<FALayers class="fa-scale-110 fa-old-padding-layer">
|
||||||
@ -64,6 +68,7 @@
|
|||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
class="button-unstyled mobile-nav-button"
|
class="button-unstyled mobile-nav-button"
|
||||||
|
:title="$t('nav.mobile_notifications_close')"
|
||||||
@click.stop.prevent="closeMobileNotifications(true)"
|
@click.stop.prevent="closeMobileNotifications(true)"
|
||||||
>
|
>
|
||||||
<FAIcon
|
<FAIcon
|
||||||
@ -78,7 +83,7 @@
|
|||||||
ref="mobileNotifications"
|
ref="mobileNotifications"
|
||||||
@scroll="onScroll"
|
@scroll="onScroll"
|
||||||
/>
|
/>
|
||||||
</div>
|
</aside>
|
||||||
<SideDrawer
|
<SideDrawer
|
||||||
ref="sideDrawer"
|
ref="sideDrawer"
|
||||||
:logout="logout"
|
:logout="logout"
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
v-if="isLoggedIn"
|
v-if="isLoggedIn"
|
||||||
class="MobilePostButton button-default new-status-button"
|
class="MobilePostButton button-default new-status-button"
|
||||||
:class="{ 'hidden': isHidden, 'always-show': isPersistent }"
|
:class="{ 'hidden': isHidden, 'always-show': isPersistent }"
|
||||||
|
:title="$t('post_status.new_status')"
|
||||||
@click="openPostForm"
|
@click="openPostForm"
|
||||||
>
|
>
|
||||||
<FAIcon icon="pen" />
|
<FAIcon icon="pen" />
|
||||||
|
@ -1,11 +1,14 @@
|
|||||||
<template>
|
<template>
|
||||||
<Status
|
<article
|
||||||
v-if="notification.type === 'mention'"
|
v-if="notification.type === 'mention'"
|
||||||
class="Notification"
|
>
|
||||||
:compact="true"
|
<Status
|
||||||
:statusoid="notification.status"
|
class="Notification"
|
||||||
/>
|
:compact="true"
|
||||||
<div v-else>
|
:statusoid="notification.status"
|
||||||
|
/>
|
||||||
|
</article>
|
||||||
|
<article v-else>
|
||||||
<div
|
<div
|
||||||
v-if="needMute && !unmuted"
|
v-if="needMute && !unmuted"
|
||||||
class="Notification container -muted"
|
class="Notification container -muted"
|
||||||
@ -226,7 +229,7 @@
|
|||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</article>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script src="./notification.js"></script>
|
<script src="./notification.js"></script>
|
||||||
|
@ -3,7 +3,8 @@
|
|||||||
:disabled="minimalMode || disableTeleport"
|
:disabled="minimalMode || disableTeleport"
|
||||||
:to="teleportTarget"
|
:to="teleportTarget"
|
||||||
>
|
>
|
||||||
<div
|
<component
|
||||||
|
:is="noHeading ? 'div' : 'aside'"
|
||||||
ref="root"
|
ref="root"
|
||||||
:class="{ minimal: minimalMode }"
|
:class="{ minimal: minimalMode }"
|
||||||
class="Notifications"
|
class="Notifications"
|
||||||
@ -49,10 +50,14 @@
|
|||||||
</button>
|
</button>
|
||||||
<NotificationFilters class="rightside-button" />
|
<NotificationFilters class="rightside-button" />
|
||||||
</div>
|
</div>
|
||||||
<div class="panel-body">
|
<div
|
||||||
|
class="panel-body"
|
||||||
|
role="feed"
|
||||||
|
>
|
||||||
<div
|
<div
|
||||||
v-for="notification in notificationsToDisplay"
|
v-for="notification in notificationsToDisplay"
|
||||||
:key="notification.id"
|
:key="notification.id"
|
||||||
|
role="listitem"
|
||||||
class="notification"
|
class="notification"
|
||||||
:class="{unseen: !minimalMode && !notification.seen}"
|
:class="{unseen: !minimalMode && !notification.seen}"
|
||||||
>
|
>
|
||||||
@ -88,7 +93,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</component>
|
||||||
</teleport>
|
</teleport>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -43,7 +43,12 @@ const Popover = {
|
|||||||
overlayCentersSelector: String,
|
overlayCentersSelector: String,
|
||||||
|
|
||||||
// Lets hover popover stay when clicking inside of it
|
// Lets hover popover stay when clicking inside of it
|
||||||
stayOnClick: Boolean
|
stayOnClick: Boolean,
|
||||||
|
|
||||||
|
triggerAttrs: {
|
||||||
|
type: Object,
|
||||||
|
default: {}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
inject: ['popoversZLayer'], // override popover z layer
|
inject: ['popoversZLayer'], // override popover z layer
|
||||||
data () {
|
data () {
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
ref="trigger"
|
ref="trigger"
|
||||||
class="button-unstyled popover-trigger-button"
|
class="button-unstyled popover-trigger-button"
|
||||||
type="button"
|
type="button"
|
||||||
|
v-bind="triggerAttrs"
|
||||||
@click="onClick"
|
@click="onClick"
|
||||||
>
|
>
|
||||||
<slot name="trigger" />
|
<slot name="trigger" />
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
trigger="click"
|
trigger="click"
|
||||||
class="QuickFilterSettings"
|
class="QuickFilterSettings"
|
||||||
:bound-to="{ x: 'container' }"
|
:bound-to="{ x: 'container' }"
|
||||||
|
:triggerAttrs="{ title: $t('timeline.quick_filter_settings') }"
|
||||||
>
|
>
|
||||||
<template #content>
|
<template #content>
|
||||||
<div class="dropdown-menu">
|
<div class="dropdown-menu">
|
||||||
@ -79,9 +80,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template #trigger>
|
<template #trigger>
|
||||||
<button class="button-unstyled">
|
<FAIcon icon="filter" />
|
||||||
<FAIcon icon="filter" />
|
|
||||||
</button>
|
|
||||||
</template>
|
</template>
|
||||||
</Popover>
|
</Popover>
|
||||||
</template>
|
</template>
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
trigger="click"
|
trigger="click"
|
||||||
class="QuickViewSettings"
|
class="QuickViewSettings"
|
||||||
:bound-to="{ x: 'container' }"
|
:bound-to="{ x: 'container' }"
|
||||||
|
:triggerAttrs="{ title: $t('timeline.quick_view_settings') }"
|
||||||
>
|
>
|
||||||
<template #content>
|
<template #content>
|
||||||
<div class="dropdown-menu">
|
<div class="dropdown-menu">
|
||||||
@ -66,9 +67,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template #trigger>
|
<template #trigger>
|
||||||
<button class="button-unstyled">
|
<FAIcon icon="bars" />
|
||||||
<FAIcon icon="bars" />
|
|
||||||
</button>
|
|
||||||
</template>
|
</template>
|
||||||
</Popover>
|
</Popover>
|
||||||
</template>
|
</template>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="thread-tree">
|
<article class="thread-tree">
|
||||||
<status
|
<status
|
||||||
:key="status.id"
|
:key="status.id"
|
||||||
ref="statusComponent"
|
ref="statusComponent"
|
||||||
@ -113,7 +113,7 @@
|
|||||||
</template>
|
</template>
|
||||||
</i18n-t>
|
</i18n-t>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</article>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script src="./thread_tree.js"></script>
|
<script src="./thread_tree.js"></script>
|
||||||
|
@ -47,6 +47,7 @@
|
|||||||
v-else-if="!embedded"
|
v-else-if="!embedded"
|
||||||
class="loadmore-text faint veryfaint rightside-icon"
|
class="loadmore-text faint veryfaint rightside-icon"
|
||||||
:title="$t('timeline.up_to_date')"
|
:title="$t('timeline.up_to_date')"
|
||||||
|
:aria-disabled="true"
|
||||||
@click.prevent
|
@click.prevent
|
||||||
>
|
>
|
||||||
<FAIcon
|
<FAIcon
|
||||||
@ -78,10 +79,12 @@
|
|||||||
<div
|
<div
|
||||||
ref="timeline"
|
ref="timeline"
|
||||||
class="timeline"
|
class="timeline"
|
||||||
|
role="feed"
|
||||||
>
|
>
|
||||||
<conversation
|
<conversation
|
||||||
v-for="statusId in filteredPinnedStatusIds"
|
v-for="statusId in filteredPinnedStatusIds"
|
||||||
:key="statusId + '-pinned'"
|
:key="statusId + '-pinned'"
|
||||||
|
role="listitem"
|
||||||
class="status-fadein"
|
class="status-fadein"
|
||||||
:status-id="statusId"
|
:status-id="statusId"
|
||||||
:collapsable="true"
|
:collapsable="true"
|
||||||
@ -92,6 +95,7 @@
|
|||||||
<conversation
|
<conversation
|
||||||
v-for="status in filteredVisibleStatuses"
|
v-for="status in filteredVisibleStatuses"
|
||||||
:key="status.id"
|
:key="status.id"
|
||||||
|
role="listitem"
|
||||||
class="status-fadein"
|
class="status-fadein"
|
||||||
:status-id="status.id"
|
:status-id="status.id"
|
||||||
:collapsable="true"
|
:collapsable="true"
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="user-panel">
|
<aside class="user-panel">
|
||||||
<div
|
<div
|
||||||
v-if="signedIn"
|
v-if="signedIn"
|
||||||
key="user-panel-signed"
|
key="user-panel-signed"
|
||||||
@ -16,7 +16,7 @@
|
|||||||
v-else
|
v-else
|
||||||
key="user-panel"
|
key="user-panel"
|
||||||
/>
|
/>
|
||||||
</div>
|
</aside>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script src="./user_panel.js"></script>
|
<script src="./user_panel.js"></script>
|
||||||
|
@ -158,7 +158,11 @@
|
|||||||
"lists": "Lists",
|
"lists": "Lists",
|
||||||
"edit_nav_mobile": "Customize navigation bar",
|
"edit_nav_mobile": "Customize navigation bar",
|
||||||
"edit_pinned": "Edit pinned items",
|
"edit_pinned": "Edit pinned items",
|
||||||
"edit_finish": "Done editing"
|
"edit_finish": "Done editing",
|
||||||
|
"mobile_sidebar": "Toggle mobile sidebar",
|
||||||
|
"mobile_notifications": "Open notifications",
|
||||||
|
"mobile_notifications": "Open notifications (there are unread ones)",
|
||||||
|
"mobile_notifications_close": "Close notifications"
|
||||||
},
|
},
|
||||||
"notifications": {
|
"notifications": {
|
||||||
"broken_favorite": "Unknown status, searching for it…",
|
"broken_favorite": "Unknown status, searching for it…",
|
||||||
@ -807,7 +811,9 @@
|
|||||||
"no_more_statuses": "No more statuses",
|
"no_more_statuses": "No more statuses",
|
||||||
"no_statuses": "No statuses",
|
"no_statuses": "No statuses",
|
||||||
"socket_reconnected": "Realtime connection established",
|
"socket_reconnected": "Realtime connection established",
|
||||||
"socket_broke": "Realtime connection lost: CloseEvent code {0}"
|
"socket_broke": "Realtime connection lost: CloseEvent code {0}",
|
||||||
|
"quick_view_settings": "Quick view settings",
|
||||||
|
"quick_filter_settings": "Quick filter settings"
|
||||||
},
|
},
|
||||||
"status": {
|
"status": {
|
||||||
"favorites": "Favorites",
|
"favorites": "Favorites",
|
||||||
|
Loading…
Reference in New Issue
Block a user