Skip to content

Commit

Permalink
change links that could perform actions to buttons
Browse files Browse the repository at this point in the history
  • Loading branch information
krvpb024 authored and fguillot committed Feb 4, 2024
1 parent 9b6dbd4 commit 8367413
Show file tree
Hide file tree
Showing 10 changed files with 95 additions and 40 deletions.
12 changes: 10 additions & 2 deletions internal/template/templates/common/feed_list.html
Original file line number Diff line number Diff line change
Expand Up @@ -55,13 +55,19 @@ <h2 id="feed-title-{{ .ID }}" class="item-title">
</ul>
<ul class="item-meta-icons">
<li class="item-meta-icons-refresh">
<a href="{{ route "refreshFeed" "feedID" .ID }}">{{ icon "refresh" }}<span class="icon-label">{{ t "menu.refresh_feed" }}</span></a>
<a href="{{ route "refreshFeed" "feedID" .ID }}"
role="button"
aria-describedby="feed-title-{{ .ID }}">{{ icon "refresh" }}<span class="icon-label">{{ t "menu.refresh_feed" }}</span></a>
</li>
<li class="item-meta-icons-edit">
<a href="{{ route "editFeed" "feedID" .ID }}">{{ icon "edit" }}<span class="icon-label">{{ t "menu.edit_feed" }}</span></a>
<a href="{{ route "editFeed" "feedID" .ID }}"
role="button"
aria-describedby="feed-title-{{ .ID }}">{{ icon "edit" }}<span class="icon-label">{{ t "menu.edit_feed" }}</span></a>
</li>
<li class="item-meta-icons-remove">
<a href="#"
role="button"
aria-describedby="feed-title-{{ .ID }}"
data-confirm="true"
data-label-question="{{ t "confirm.question" }}"
data-label-yes="{{ t "confirm.yes" }}"
Expand All @@ -72,6 +78,8 @@ <h2 id="feed-title-{{ .ID }}" class="item-title">
{{ if .UnreadCount }}
<li class="item-meta-icons-mark-as-read">
<a href="#"
role="button"
aria-describedby="feed-title-{{ .ID }}"
data-confirm="true"
data-label-question="{{ t "confirm.question" }}"
data-label-yes="{{ t "confirm.yes" }}"
Expand Down
2 changes: 1 addition & 1 deletion internal/template/templates/common/feed_menu.html
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
<a href="{{ route "import" }}">{{ icon "feed-import" }}{{ t "menu.import" }}</a>
</li>
<li>
<a href="{{ route "refreshAllFeeds" }}">{{ icon "refresh" }}{{ t "menu.refresh_all_feeds" }}</a>
<a role="button" href="{{ route "refreshAllFeeds" }}">{{ icon "refresh" }}{{ t "menu.refresh_all_feeds" }}</a>
</li>
</ul></nav>
{{ end }}
14 changes: 14 additions & 0 deletions internal/template/templates/common/item_meta.html
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@
<ul class="item-meta-icons">
<li class="item-meta-icons-read">
<a href="#"
role="button"
aria-describedby="entry-title-{{ .entry.ID }}"
title="{{ t "entry.status.title" }}"
data-toggle-status="true"
data-label-loading="{{ t "entry.state.saving" }}"
Expand All @@ -28,6 +30,8 @@
</li>
<li class="item-meta-icons-star">
<a href="#"
role="button"
aria-describedby="entry-title-{{ .entry.ID }}"
data-toggle-bookmark="true"
data-bookmark-url="{{ route "toggleBookmark" "entryID" .entry.ID }}"
data-label-loading="{{ t "entry.state.saving" }}"
Expand All @@ -39,11 +43,15 @@
{{ if .entry.ShareCode }}
<li class="item-meta-icons-share">
<a href="{{ route "sharedEntry" "shareCode" .entry.ShareCode }}"
role="button"
aria-describedby="entry-title-{{ .entry.ID }}"
title="{{ t "entry.shared_entry.title" }}"
target="_blank">{{ icon "share" }}<span class="icon-label">{{ t "entry.shared_entry.label" }}</span></a>
</li>
<li class="item-meta-icons-delete">
<a href="#"
role="button"
aria-describedby="entry-title-{{ .entry.ID }}"
data-confirm="true"
data-url="{{ route "unshareEntry" "entryID" .entry.ID }}"
data-label-question="{{ t "confirm.question" }}"
Expand All @@ -55,6 +63,8 @@
{{ if .hasSaveEntry }}
<li>
<a href="#"
role="button"
aria-describedby="entry-title-{{ .entry.ID }}"
title="{{ t "entry.save.title" }}"
data-save-entry="true"
data-save-url="{{ route "saveEntry" "entryID" .entry.ID }}"
Expand All @@ -65,6 +75,8 @@
{{ end }}
<li class="item-meta-icons-external-url">
<a href="{{ .entry.URL | safeURL }}"
role="button"
aria-describedby="entry-title-{{ .entry.ID }}"
target="_blank"
rel="noopener noreferrer"
referrerpolicy="no-referrer"
Expand All @@ -73,6 +85,8 @@
{{ if .entry.CommentsURL }}
<li class="item-meta-icons-comments">
<a href="{{ .entry.CommentsURL | safeURL }}"
role="button"
aria-describedby="entry-title-{{ .entry.ID }}"
title="{{ t "entry.comments.title" }}"
target="_blank"
rel="noopener noreferrer"
Expand Down
16 changes: 11 additions & 5 deletions internal/template/templates/common/layout.html
Original file line number Diff line number Diff line change
Expand Up @@ -78,10 +78,16 @@
</div>
<ul id="header-menu">
<li {{ if eq .menu "unread" }}class="active"{{ end }} title="{{ t "tooltip.keyboard_shortcuts" "g u" }}">
<a href="{{ route "unread" }}" data-page="unread">{{ t "menu.unread" }}
{{ if gt .countUnread 0 }}
<span class="unread-counter-wrapper">(<span class="unread-counter">{{ .countUnread }}</span>)</span>
{{ end }}
<a href="{{ route "unread" }}"
data-page="unread"
{{ if gt .countUnread 0 }}
aria-label="{{ t "menu.unread" }}, {{ t "page.unread.total" }}: {{ .countUnread }}"
{{ end }}
>
{{ t "menu.unread" }}
{{ if gt .countUnread 0 }}
<span class="unread-counter-wrapper" aria-hidden="true">(<span class="unread-counter">{{ .countUnread }}</span>)</span>
{{ end }}
</a>
</li>
<li {{ if eq .menu "starred" }}class="active"{{ end }} title="{{ t "tooltip.keyboard_shortcuts" "g b" }}">
Expand All @@ -96,7 +102,7 @@
<span class="error-feeds-counter-wrapper">(<span class="error-feeds-counter">{{ .countErrorFeeds }}</span>)</span>
{{ end }}
</a>
<a href="{{ route "addSubscription" }}" title="{{ t "tooltip.keyboard_shortcuts" "+" }}">
<a href="{{ route "addSubscription" }}" title="{{ t "tooltip.keyboard_shortcuts" "+" }}" aria-label="{{ t "menu.add_feed" }}">
(+)
</a>
</li>
Expand Down
4 changes: 2 additions & 2 deletions internal/template/templates/views/bookmark_entries.html
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
{{ define "title"}}{{ t "page.starred.title" }} ({{ .total }}){{ end }}

{{ define "page_header"}}
<section class="page-header" aria-labelledby="page-header-title">
<section class="page-header" aria-labelledby="page-header-title page-header-title-count">
<h1 id="page-header-title" dir="auto">
{{ t "page.starred.title" }}
<span aria-hidden="true"> ({{ .total }})</span>
</h1>
<span class="sr-only">{{ t "page.starred.total" }}: {{ .total }}</span>
<span id="page-header-title-count" class="sr-only">{{ t "page.starred.total" }}: {{ .total }}</span>
</section>
{{ end }}

Expand Down
22 changes: 13 additions & 9 deletions internal/template/templates/views/categories.html
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
{{ define "title"}}{{ t "page.categories.title" }} ({{ .total }}){{ end }}

{{ define "page_header"}}
<section class="page-header" aria-labelledby="page-header-title">
<section class="page-header" aria-labelledby="page-header-title page-header-title-count">
<h1 id="page-header-title" dir="auto">
{{ t "page.categories.title" }}
<span aria-hidden="true"> ({{ .total }})</span>
</h1>
<span class="sr-only">{{ t "page.categories.total" }}: {{ .total }}</span>
<span id="page-header-title-count" class="sr-only">{{ t "page.categories.total" }}: {{ .total }}</span>
<nav aria-label="{{ t "page.categories.title" }} {{ t "menu.title" }}">
<ul>
<li>
Expand All @@ -29,13 +29,13 @@ <h1 id="page-header-title" dir="auto">
>
<header id="category-title-{{ .ID }}" class="item-header" dir="auto">
<h2 class="item-title">
<a href="{{ route "categoryEntries" "categoryID" .ID }}">{{ .Title }}</a>
<span aria-hidden="true">(</span>
<span class="sr-only">
{{ t "page.categories.unread_counter" }}:
</span>
<span>{{ .TotalUnread }}</span>
<span aria-hidden="true">)</span>
<a href="{{ route "categoryEntries" "categoryID" .ID }}" aria-label="{{ .Title }}, {{ t "page.categories.unread_counter" }}: {{ .TotalUnread }}">
{{ .Title }}
<span class="category-item-total" aria-hidden="true">
(<span class="sr-only">{{ t "page.categories.unread_counter" }}: </span>{{ .TotalUnread }})
</span>
</a>

</h2>
</header>
<div class="item-meta">
Expand All @@ -57,6 +57,8 @@ <h2 class="item-title">
{{ if eq (deRef .FeedCount) 0 }}
<li class="item-meta-icons-delete">
<a href="#"
role="button"
aria-describedby="category-title-{{ .ID }}"
data-confirm="true"
data-label-question="{{ t "confirm.question" }}"
data-label-yes="{{ t "confirm.yes" }}"
Expand All @@ -68,6 +70,8 @@ <h2 class="item-title">
{{ if gt (deRef .TotalUnread) 0 }}
<li class="item-meta-icons-mark-as-read">
<a href="#"
role="button"
aria-describedby="category-title-{{ .ID }}"
data-confirm="true"
data-label-question="{{ t "confirm.question" }}"
data-label-yes="{{ t "confirm.yes" }}"
Expand Down
33 changes: 23 additions & 10 deletions internal/template/templates/views/history_entries.html
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
{{ define "title"}}{{ t "page.history.title" }} ({{ .total }}){{ end }}

{{ define "page_header"}}
<section class="page-header" aria-labelledby="page-header-title">
<section class="page-header" aria-labelledby="page-header-title page-header-title-count">
<h1 id="page-header-title">
{{ t "page.history.title" }}
<span aria-hidden="true">({{ .total }})</span>
</h1>
<span class="sr-only">{{ t "page.history.total" }}: {{ .total }}</span>
<span id="page-header-title-count" class="sr-only">{{ t "page.history.total" }}: {{ .total }}</span>
<nav aria-label="{{ t "page.history.title" }} {{ t "menu.title" }}">
<ul>
{{ if .entries }}
<li>
<a href="#"
role="button"
data-confirm="true"
data-url="{{ route "flushHistory" }}"
data-label-question="{{ t "confirm.question" }}"
Expand All @@ -37,16 +38,28 @@ <h1 id="page-header-title">
</div>
<div class="items">
{{ range .entries }}
<article class="item entry-item {{ if $.user.EntrySwipe }}entry-swipe{{ end }} item-status-{{ .Status }}" data-id="{{ .ID }}">
<div class="item-header" dir="auto">
<span class="item-title">
{{ if ne .Feed.Icon.IconID 0 }}
<article
class="item entry-item {{ if $.user.EntrySwipe }}entry-swipe{{ end }} item-status-{{ .Status }}"
data-id="{{ .ID }}"
aria-labelledby="entry-title-{{ .ID }}"
>
<header class="item-header" dir="auto">
<h2 id="entry-title-{{ .ID }}" class="item-title">
<a href="{{ route "readEntry" "entryID" .ID }}">
{{ if ne .Feed.Icon.IconID 0 }}
<img src="{{ route "icon" "iconID" .Feed.Icon.IconID }}" width="16" height="16" loading="lazy" alt="{{ .Feed.Title }}">
{{ end }}
<a href="{{ route "readEntry" "entryID" .ID }}">{{ .Title }}</a>
{{ else }}
<span class="sr-only">{{ .Feed.Title }}</span>
{{ end }}
{{ .Title }}
</a>
</h2>
<span class="category">
<a href="{{ route "categoryEntries" "categoryID" .Feed.Category.ID }}">
{{ .Feed.Category.Title }}
</a>
</span>
<span class="category"><a href="{{ route "categoryEntries" "categoryID" .Feed.Category.ID }}">{{ .Feed.Category.Title }}</a></span>
</div>
</header>
{{ template "item_meta" dict "user" $.user "entry" . "hasSaveEntry" $.hasSaveEntry }}
</article>
{{ end }}
Expand Down
5 changes: 3 additions & 2 deletions internal/template/templates/views/shared_entries.html
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
{{ define "title"}}{{ t "page.shared_entries.title" }} ({{ .total }}){{ end }}

{{ define "page_header"}}
<section class="page-header" aria-labelledby="page-header-title">
<section class="page-header" aria-labelledby="page-header-title page-header-title-count">
<h1 id="page-header-title">
{{ t "page.shared_entries.title" }}
<span aria-hidden="true">({{ .total }})</span>
</h1>
<span class="sr-only">{{ t "page.shared_entries.total" }}: {{ .total }}</span>
<span id="page-header-title-count" class="sr-only">{{ t "page.shared_entries.total" }}: {{ .total }}</span>
{{ if .entries }}
<nav aria-label="{{ t "page.shared_entries.title" }} {{ t "menu.title" }}">
<ul>
<li>
<a href="#"
role="button"
data-confirm="true"
data-url="{{ route "flushHistory" }}"
data-label-question="{{ t "confirm.question" }}"
Expand Down
7 changes: 5 additions & 2 deletions internal/template/templates/views/unread_entries.html
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
{{ define "title"}}{{ t "page.unread.title" }} {{ if gt .countUnread 0 }}({{ .countUnread }}){{ end }} {{ end }}

{{ define "page_header"}}
<section class="page-header" aria-labelledby="page-header-title">
<section class="page-header" aria-labelledby="page-header-title page-header-title-count">
<h1 id="page-header-title">
{{ t "page.unread.title" }}
<span aria-hidden="true">(<span class="unread-counter">{{ .countUnread }}</span>)</span>
</h1>
<span class="sr-only">{{ t "page.unread.total" }}: {{ .countUnread }}</span>
<span id="page-header-title-count" class="sr-only">{{ t "page.unread.total" }}: {{ .countUnread }}</span>
{{ if .entries }}
<nav aria-label="{{ t "page.unread.title" }} {{ t "menu.title" }}">
<ul>
<li>
<a href="#"
role="button"
data-action="markPageAsRead"
data-show-only-unread="1"
data-label-question="{{ t "confirm.question" }}"
Expand All @@ -21,6 +22,7 @@ <h1 id="page-header-title">
</li>
<li>
<a href="#"
role="button"
data-confirm="true"
data-url="{{ route "markAllAsRead" }}"
data-redirect-url="{{ route "unread" }}"
Expand Down Expand Up @@ -75,6 +77,7 @@ <h2 id="entry-title-{{ .ID }}" class="item-title">
<ul>
<li>
<a href="#"
role="button"
data-action="markPageAsRead"
data-label-question="{{ t "confirm.question" }}"
data-label-yes="{{ t "confirm.yes" }}"
Expand Down
20 changes: 13 additions & 7 deletions internal/ui/static/css/common.css
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ a:hover {
color: #888;
}

.header a {
.header :is(a, summary) {
font-size: 0.9em;
color: var(--header-link-color);
text-decoration: none;
Expand All @@ -147,10 +147,6 @@ a:hover {
font-weight: 600;
}

.header a:hover {
color: var(--header-link-hover-color);
}

.header a:focus {
color: var(--header-link-focus-color);
}
Expand Down Expand Up @@ -229,7 +225,7 @@ a:hover {
padding: 5px;
inline-size: 24px;
block-size: 24px;
translate: 0 -1px;
translate: 0 -3px;
}

.search details[open] svg {
Expand Down Expand Up @@ -335,7 +331,7 @@ a:hover {
}

.header nav {
align-items: start;
align-items: end;
flex-direction: row;
}

Expand All @@ -355,6 +351,10 @@ a:hover {
display: revert;
}

.header :is(a, summary):hover {
color: var(--header-link-hover-color);
}

.page-header li,
.page-footer li {
display: inline;
Expand Down Expand Up @@ -750,6 +750,11 @@ template {
color: var(--category-link-hover-color);
}


.category-item-total {
color: var(--body-color);
}

/* Pagination */
.pagination {
font-size: 1.1em;
Expand Down Expand Up @@ -822,6 +827,7 @@ template {

.item-header span {
font-weight: normal;
display: inline-block;
}

.item-title {
Expand Down

0 comments on commit 8367413

Please sign in to comment.