From 5237f8b7dc770c7792de4d3c165e78b51182709b Mon Sep 17 00:00:00 2001 From: Will Miao Date: Wed, 17 Jun 2026 15:07:34 +0800 Subject: [PATCH] chore: remove keyboard navigation UI elements and related code - Delete static/css/components/keyboard-nav.css entirely - Remove @import of keyboard-nav.css from style.css - Remove keyboard-nav-hint divs from controls.html and recipes.html - Clean up all keyboard.* translation keys from 10 locale files The actual keyboard scrolling handlers (PageUp/PageDown in infiniteScroll.js and VirtualScroller.js) are kept as they provide core scroll functionality. --- locales/de.json | 9 --- locales/en.json | 9 --- locales/es.json | 9 --- locales/fr.json | 9 --- locales/he.json | 9 --- locales/ja.json | 9 --- locales/ko.json | 9 --- locales/ru.json | 9 --- locales/zh-CN.json | 9 --- locales/zh-TW.json | 9 --- static/css/components/keyboard-nav.css | 96 -------------------------- static/css/style.css | 2 +- templates/components/controls.html | 24 ------- templates/recipes.html | 24 ------- 14 files changed, 1 insertion(+), 235 deletions(-) delete mode 100644 static/css/components/keyboard-nav.css diff --git a/locales/de.json b/locales/de.json index 18f95d7d..6213cad3 100644 --- a/locales/de.json +++ b/locales/de.json @@ -1424,15 +1424,6 @@ "duplicate": "Dieser Tag existiert bereits" } }, - "keyboard": { - "navigation": "Tastatur-Navigation:", - "shortcuts": { - "pageUp": "Eine Seite nach oben scrollen", - "pageDown": "Eine Seite nach unten scrollen", - "home": "Zum Anfang springen", - "end": "Zum Ende springen" - } - }, "initialization": { "title": "Initialisierung", "message": "Ihr Arbeitsbereich wird vorbereitet...", diff --git a/locales/en.json b/locales/en.json index 78ddc154..ca93e66c 100644 --- a/locales/en.json +++ b/locales/en.json @@ -1424,15 +1424,6 @@ "duplicate": "This tag already exists" } }, - "keyboard": { - "navigation": "Keyboard Navigation:", - "shortcuts": { - "pageUp": "Scroll up one page", - "pageDown": "Scroll down one page", - "home": "Jump to top", - "end": "Jump to bottom" - } - }, "initialization": { "title": "Initializing", "message": "Preparing your workspace...", diff --git a/locales/es.json b/locales/es.json index 37a43de0..25830e8a 100644 --- a/locales/es.json +++ b/locales/es.json @@ -1424,15 +1424,6 @@ "duplicate": "Esta etiqueta ya existe" } }, - "keyboard": { - "navigation": "Navegación por teclado:", - "shortcuts": { - "pageUp": "Desplazar hacia arriba una página", - "pageDown": "Desplazar hacia abajo una página", - "home": "Saltar al inicio", - "end": "Saltar al final" - } - }, "initialization": { "title": "Inicializando", "message": "Preparando tu espacio de trabajo...", diff --git a/locales/fr.json b/locales/fr.json index 6f16b50a..db6d59a5 100644 --- a/locales/fr.json +++ b/locales/fr.json @@ -1424,15 +1424,6 @@ "duplicate": "Ce tag existe déjà" } }, - "keyboard": { - "navigation": "Navigation au clavier :", - "shortcuts": { - "pageUp": "Défiler d'une page vers le haut", - "pageDown": "Défiler d'une page vers le bas", - "home": "Aller en haut", - "end": "Aller en bas" - } - }, "initialization": { "title": "Initialisation", "message": "Préparation de votre espace de travail...", diff --git a/locales/he.json b/locales/he.json index 01400f76..7c55e995 100644 --- a/locales/he.json +++ b/locales/he.json @@ -1424,15 +1424,6 @@ "duplicate": "תגית זו כבר קיימת" } }, - "keyboard": { - "navigation": "ניווט במקלדת:", - "shortcuts": { - "pageUp": "גלול עמוד אחד למעלה", - "pageDown": "גלול עמוד אחד למטה", - "home": "קפוץ להתחלה", - "end": "קפוץ לסוף" - } - }, "initialization": { "title": "מאתחל", "message": "מכין את סביבת העבודה שלך...", diff --git a/locales/ja.json b/locales/ja.json index cdab2fe5..29b0998e 100644 --- a/locales/ja.json +++ b/locales/ja.json @@ -1424,15 +1424,6 @@ "duplicate": "このタグは既に存在します" } }, - "keyboard": { - "navigation": "キーボードナビゲーション:", - "shortcuts": { - "pageUp": "1ページ上にスクロール", - "pageDown": "1ページ下にスクロール", - "home": "トップにジャンプ", - "end": "ボトムにジャンプ" - } - }, "initialization": { "title": "初期化中", "message": "ワークスペースを準備中...", diff --git a/locales/ko.json b/locales/ko.json index 43d9fa55..b0aa59a8 100644 --- a/locales/ko.json +++ b/locales/ko.json @@ -1424,15 +1424,6 @@ "duplicate": "이 태그는 이미 존재합니다" } }, - "keyboard": { - "navigation": "키보드 내비게이션:", - "shortcuts": { - "pageUp": "한 페이지 위로 스크롤", - "pageDown": "한 페이지 아래로 스크롤", - "home": "맨 위로 이동", - "end": "맨 아래로 이동" - } - }, "initialization": { "title": "초기화 중", "message": "작업공간을 준비하고 있습니다...", diff --git a/locales/ru.json b/locales/ru.json index 508056dc..c1b63c56 100644 --- a/locales/ru.json +++ b/locales/ru.json @@ -1424,15 +1424,6 @@ "duplicate": "Этот тег уже существует" } }, - "keyboard": { - "navigation": "Навигация с клавиатуры:", - "shortcuts": { - "pageUp": "Прокрутить на страницу вверх", - "pageDown": "Прокрутить на страницу вниз", - "home": "Перейти к началу", - "end": "Перейти к концу" - } - }, "initialization": { "title": "Инициализация", "message": "Подготовка вашего рабочего пространства...", diff --git a/locales/zh-CN.json b/locales/zh-CN.json index 65e7a4bb..a034a742 100644 --- a/locales/zh-CN.json +++ b/locales/zh-CN.json @@ -1424,15 +1424,6 @@ "duplicate": "该标签已存在" } }, - "keyboard": { - "navigation": "键盘导航:", - "shortcuts": { - "pageUp": "向上一页滚动", - "pageDown": "向下一页滚动", - "home": "跳到顶部", - "end": "跳到底部" - } - }, "initialization": { "title": "初始化", "message": "正在准备你的工作空间...", diff --git a/locales/zh-TW.json b/locales/zh-TW.json index 742c8070..6da1ed33 100644 --- a/locales/zh-TW.json +++ b/locales/zh-TW.json @@ -1424,15 +1424,6 @@ "duplicate": "此標籤已存在" } }, - "keyboard": { - "navigation": "鍵盤導覽:", - "shortcuts": { - "pageUp": "向上捲動一頁", - "pageDown": "向下捲動一頁", - "home": "跳至頂部", - "end": "跳至底部" - } - }, "initialization": { "title": "初始化", "message": "正在準備您的工作區...", diff --git a/static/css/components/keyboard-nav.css b/static/css/components/keyboard-nav.css deleted file mode 100644 index eef766fa..00000000 --- a/static/css/components/keyboard-nav.css +++ /dev/null @@ -1,96 +0,0 @@ -/* Keyboard navigation indicator and help */ -.keyboard-nav-hint { - display: inline-flex; - align-items: center; - justify-content: center; - position: relative; - width: 32px; - height: 32px; - border-radius: 50%; - background: var(--card-bg); - border: 1px solid var(--border-color); - color: var(--text-color); - cursor: help; - transition: var(--transition-base); - margin-left: 8px; -} - -.keyboard-nav-hint:hover { - background: var(--lora-accent); - color: white; - transform: translateY(-2px); - box-shadow: var(--shadow-sm); -} - -.keyboard-nav-hint i { - font-size: 14px; -} - -/* Tooltip styling */ -.tooltip { - position: relative; -} - -.tooltip .tooltiptext { - visibility: hidden; - width: 240px; - background-color: var(--lora-surface); - color: var(--text-color); - text-align: center; - border-radius: var(--border-radius-xs); - padding: 8px; - position: absolute; - z-index: 9999; /* Ensure tooltip appears above cards */ - right: 120%; /* Position tooltip to the left of the icon */ - top: 50%; /* Vertically center */ - transform: translateY(-15%); /* Vertically center */ - opacity: 0; - transition: opacity 0.3s; - box-shadow: var(--shadow-lg); - border: 1px solid var(--lora-border); - font-size: 0.85em; - line-height: 1.4; -} - -.tooltip .tooltiptext::after { - content: ""; - position: absolute; - top: 50%; /* Vertically center arrow */ - left: 100%; /* Arrow on the right side */ - margin-top: -5px; - border-width: 5px; - border-style: solid; - border-color: transparent transparent transparent var(--lora-border); /* Arrow points right */ -} - -.tooltip:hover .tooltiptext { - visibility: visible; - opacity: 1; -} - -/* Keyboard shortcuts table */ -.keyboard-shortcuts { - width: 100%; - border-collapse: collapse; - margin-top: 5px; -} - -.keyboard-shortcuts td { - padding: 4px; - text-align: left; -} - -.keyboard-shortcuts td:first-child { - font-weight: bold; - width: 40%; -} - -.key { - display: inline-block; - background: var(--bg-color); - border: 1px solid var(--border-color); - border-radius: 3px; - padding: 1px 5px; - font-size: 0.8em; - box-shadow: var(--shadow-xs); -} diff --git a/static/css/style.css b/static/css/style.css index 5208d90b..9d88d6ff 100644 --- a/static/css/style.css +++ b/static/css/style.css @@ -36,7 +36,7 @@ @import 'components/initialization.css'; @import 'components/progress-panel.css'; @import 'components/duplicates.css'; /* Add duplicates component */ -@import 'components/keyboard-nav.css'; /* Add keyboard navigation component */ + @import 'components/statistics.css'; /* Add statistics component */ @import 'components/sidebar.css'; /* Add sidebar component */ @import 'components/media-viewer.css'; diff --git a/templates/components/controls.html b/templates/components/controls.html index 30e94f89..8b9b98ca 100644 --- a/templates/components/controls.html +++ b/templates/components/controls.html @@ -100,30 +100,6 @@ -
- - - {{ t('keyboard.navigation') }} - - - - - - - - - - - - - - - - - -
Page Up{{ t('keyboard.shortcuts.pageUp') }}
Page Down{{ t('keyboard.shortcuts.pageDown') }}
Home{{ t('keyboard.shortcuts.home') }}
End{{ t('keyboard.shortcuts.end') }}
-
-
\ No newline at end of file diff --git a/templates/recipes.html b/templates/recipes.html index 994c45b5..cc61ec2d 100644 --- a/templates/recipes.html +++ b/templates/recipes.html @@ -137,30 +137,6 @@ -
- - - {{ t('keyboard.navigation') }} - - - - - - - - - - - - - - - - - -
Page Up{{ t('keyboard.shortcuts.pageUp') }}
Page Down{{ t('keyboard.shortcuts.pageDown') }}
Home{{ t('keyboard.shortcuts.home') }}
End{{ t('keyboard.shortcuts.end') }}
-
-