aboutsummaryrefslogtreecommitdiffstats
path: root/frontend/src/components/FeedItem.tsx
diff options
context:
space:
mode:
authorAdam Mathes <adam@adammathes.com>2026-02-13 12:27:31 -0800
committerAdam Mathes <adam@adammathes.com>2026-02-13 12:27:31 -0800
commitb9c7497fc25d23492fe013a3541b8d4d66c6970c (patch)
tree3a909aeb8adb1231b37d1e5b80e613cc10fa416d /frontend/src/components/FeedItem.tsx
parenta1baa8f9655e6fc4343475d2a38b2d7f6c7d0955 (diff)
downloadneko-b9c7497fc25d23492fe013a3541b8d4d66c6970c.tar.gz
neko-b9c7497fc25d23492fe013a3541b8d4d66c6970c.tar.bz2
neko-b9c7497fc25d23492fe013a3541b8d4d66c6970c.zip
UI: replace text star button with icon next to title (NK-ymf1jb)
Diffstat (limited to 'frontend/src/components/FeedItem.tsx')
-rw-r--r--frontend/src/components/FeedItem.tsx17
1 files changed, 10 insertions, 7 deletions
diff --git a/frontend/src/components/FeedItem.tsx b/frontend/src/components/FeedItem.tsx
index 03910e4..23f2bae 100644
--- a/frontend/src/components/FeedItem.tsx
+++ b/frontend/src/components/FeedItem.tsx
@@ -54,6 +54,16 @@ export default function FeedItem({ item: initialItem }: FeedItemProps) {
return (
<li className={`feed-item ${item.read ? 'read' : 'unread'} ${loading ? 'loading' : ''}`}>
<div className="item-header">
+ <button
+ onClick={(e) => {
+ e.stopPropagation();
+ toggleStar();
+ }}
+ className={`star-btn ${item.starred ? 'is-starred' : 'is-unstarred'}`}
+ title={item.starred ? "Unstar" : "Star"}
+ >
+ {item.starred ? '★' : '☆'}
+ </button>
<a href={item.url} target="_blank" rel="noopener noreferrer" className="item-title">
{item.title || '(No Title)'}
</a>
@@ -64,13 +74,6 @@ export default function FeedItem({ item: initialItem }: FeedItemProps) {
{item.feed_title && ` - ${item.feed_title}`}
</a>
<div className="item-actions" style={{ display: 'inline-block', float: 'right' }}>
- <button
- onClick={toggleStar}
- className={`action-btn ${item.starred ? 'is-starred' : 'is-unstarred'}`}
- title={item.starred ? "Unstar" : "Star"}
- >
- {item.starred ? 'unstar' : 'star'}
- </button>
</div>
</div>
{item.description && (