From caebcec0af74789fed3878da1681bbe25ef93c8f Mon Sep 17 00:00:00 2001 From: Gigi Date: Mon, 13 Oct 2025 15:20:40 +0200 Subject: [PATCH] fix: move relay indicator to footer to prevent overlap with author - Move relay indicator from quote icon to footer as first element - Remove absolute positioning from relay indicator - Update footer layout: relay icon, author name, menu button (left to right) - Author name now sits to the right of relay icon with no overlap - Use margin-right: auto on author to push menu to the right --- src/components/HighlightItem.tsx | 21 +++++++++++---------- src/styles/layout/highlights.css | 8 ++++---- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/src/components/HighlightItem.tsx b/src/components/HighlightItem.tsx index ca09e8a8..fef1a6e8 100644 --- a/src/components/HighlightItem.tsx +++ b/src/components/HighlightItem.tsx @@ -316,16 +316,6 @@ export const HighlightItem: React.FC = ({
- {relayIndicator && ( - - )}
@@ -341,6 +331,17 @@ export const HighlightItem: React.FC = ({
+ {relayIndicator && ( + + )} + {getUserDisplayName()} diff --git a/src/styles/layout/highlights.css b/src/styles/layout/highlights.css index 9bf9a861..66bae3d9 100644 --- a/src/styles/layout/highlights.css +++ b/src/styles/layout/highlights.css @@ -130,8 +130,8 @@ .highlight-item.level-nostrverse .highlight-header, .highlight-item.level-nostrverse .highlight-footer { border-color: color-mix(in srgb, var(--highlight-color-nostrverse, #9333ea) 60%, #333); } -.highlight-quote-icon { color: #646cff; font-size: 1.2rem; flex-shrink: 0; padding: 3rem 0 3rem 1rem; position: relative; } -.highlight-relay-indicator { position: absolute; bottom: 2.85rem; left: 0.35rem; opacity: 0.7; } +.highlight-quote-icon { color: #646cff; font-size: 1.2rem; flex-shrink: 0; padding: 3rem 0 3rem 1rem; } +.highlight-relay-indicator { opacity: 0.7; flex-shrink: 0; } .highlight-relay-indicator:hover { opacity: 1; } /* Mobile: Larger touch targets and better spacing */ @@ -150,8 +150,8 @@ .highlight-text { margin: 0; padding: 0; font-style: italic; color: #ddd; line-height: 1.6; border-left: none; font-size: 0.95rem; } .highlight-comment { margin-top: 0.5rem; padding: 0.75rem; background: rgba(100, 108, 255, 0.1); border-left: 3px solid #646cff; border-radius: 4px; font-size: 0.875rem; color: #ddd; line-height: 1.5; } -.highlight-footer { position: absolute; bottom: 0; left: 0; right: 0; display: flex; align-items: center; justify-content: space-between; gap: 0.5rem; padding: 0.5rem 1rem; font-size: 0.8rem; color: #888; border-bottom: 1px solid #333; border-bottom-left-radius: 8px; border-bottom-right-radius: 8px; transition: border-color 0.2s ease; } -.highlight-author { color: #aaa; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex: 1; display: flex; align-items: center; min-height: 28px; } +.highlight-footer { position: absolute; bottom: 0; left: 0; right: 0; display: flex; align-items: center; gap: 0.5rem; padding: 0.5rem 1rem; font-size: 0.8rem; color: #888; border-bottom: 1px solid #333; border-bottom-left-radius: 8px; border-bottom-right-radius: 8px; transition: border-color 0.2s ease; } +.highlight-author { color: #aaa; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex: 1; display: flex; align-items: center; min-height: 28px; margin-right: auto; } .highlight-menu-wrapper { position: relative; flex-shrink: 0; display: flex; align-items: center; } .highlight-menu { position: absolute; right: 0; top: calc(100% + 4px); background: #2a2a2a; border: 1px solid #444; border-radius: 6px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3); z-index: 1000; min-width: 160px; overflow: hidden; } .highlight-menu-item { width: 100%; background: none; border: none; color: #ddd; padding: 0.625rem 0.875rem; font-size: 0.875rem; display: flex; align-items: center; gap: 0.625rem; cursor: pointer; transition: all 0.15s ease; text-align: left; white-space: nowrap; }