diff --git a/src/app.css b/src/app.css index 9cd0fa3..b9d2056 100644 --- a/src/app.css +++ b/src/app.css @@ -99,7 +99,7 @@ img[src*="profile" i] { filter: grayscale(100%) sepia(20%) hue-rotate(200deg) saturate(70%) brightness(0.9); } -/* Emoji images - grayscale with blue tinge */ +/* Emoji images - grayscale like profile pics */ .emoji, [class*="emoji"], img[alt*="emoji" i], @@ -115,6 +115,17 @@ img[src*="emoji" i] { filter: grayscale(100%) sepia(20%) hue-rotate(200deg) saturate(70%) brightness(0.9); } +/* Apply grayscale filter to reaction buttons containing emojis */ +.reaction-btn, +.kind1-reaction-buttons button { + filter: grayscale(100%) sepia(15%) hue-rotate(200deg) saturate(60%) brightness(0.95); +} + +.dark .reaction-btn, +.dark .kind1-reaction-buttons button { + filter: grayscale(100%) sepia(20%) hue-rotate(200deg) saturate(70%) brightness(0.9); +} + /* Apply to all images in markdown content */ .markdown-content img, .anon-content img { diff --git a/src/lib/components/content/MarkdownRenderer.svelte b/src/lib/components/content/MarkdownRenderer.svelte index bb1ae8b..5d4b781 100644 --- a/src/lib/components/content/MarkdownRenderer.svelte +++ b/src/lib/components/content/MarkdownRenderer.svelte @@ -167,21 +167,21 @@ } .markdown-content :global(.nostr-link) { - color: #3b82f6; + color: var(--fog-accent, #64748b); text-decoration: underline; cursor: pointer; } - .dark .markdown-content :global(.nostr-link) { - color: #60a5fa; + :global(.dark) .markdown-content :global(.nostr-link) { + color: var(--fog-dark-accent, #64748b); } .markdown-content :global(.nostr-link:hover) { - color: #2563eb; + color: var(--fog-text, #475569); } - .dark .markdown-content :global(.nostr-link:hover) { - color: #93c5fd; + :global(.dark) .markdown-content :global(.nostr-link:hover) { + color: var(--fog-dark-text, #cbd5e1); } .markdown-content :global(code) { diff --git a/src/lib/components/content/MediaAttachments.svelte b/src/lib/components/content/MediaAttachments.svelte index b7402cf..db3d94e 100644 --- a/src/lib/components/content/MediaAttachments.svelte +++ b/src/lib/components/content/MediaAttachments.svelte @@ -244,7 +244,7 @@ } .file-link { - color: var(--fog-accent, #3b82f6); + color: var(--fog-accent, #64748b); text-decoration: none; display: inline-flex; align-items: center; diff --git a/src/lib/components/layout/Header.svelte b/src/lib/components/layout/Header.svelte index 8aebf44..8360629 100644 --- a/src/lib/components/layout/Header.svelte +++ b/src/lib/components/layout/Header.svelte @@ -3,6 +3,11 @@ import ThemeToggle from '../preferences/ThemeToggle.svelte'; import UserPreferences from '../preferences/UserPreferences.svelte'; import ProfileBadge from '../layout/ProfileBadge.svelte'; + import KeyboardShortcutsModal from '../modals/KeyboardShortcutsModal.svelte'; + import { keyboardShortcuts } from '../../services/keyboard-shortcuts.js'; + import { onMount } from 'svelte'; + + let showShortcuts = $state(false); let currentSession = $state(sessionManager.session.value); let isLoggedIn = $derived(currentSession !== null); @@ -15,6 +20,18 @@ }); return unsubscribe; }); + + onMount(() => { + // Register ? shortcut for keyboard shortcuts help + const unregister = keyboardShortcuts.register({ + key: '?', + handler: () => { + showShortcuts = true; + }, + description: 'Show keyboard shortcuts' + }); + return unregister; + });
@@ -50,6 +67,14 @@ {:else} Login {/if} + @@ -57,6 +82,8 @@
+ (showShortcuts = false)} /> + diff --git a/src/lib/components/modals/PublicationStatusModal.svelte b/src/lib/components/modals/PublicationStatusModal.svelte index 0cc1b6b..d8af1b2 100644 --- a/src/lib/components/modals/PublicationStatusModal.svelte +++ b/src/lib/components/modals/PublicationStatusModal.svelte @@ -36,8 +36,15 @@ {#if open && results} -