A fork of https://github.com/crosspoint-reader/crosspoint-reader
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix: Hide unusable button hints when viewing empty directory (#1253)

## Summary

* **What is the goal of this PR?**

Increase accuracy of button hints and text description in the file
browser when viewing empty directory.

* **What changes are included?**

Adjusted button label hint rendering logic in file browser to hide the
"Open", "Up", and "Down" hints when the they are not available due to an
empty directory.

I also changed the NO_BOOKS_FOUND string to NO_FILES_FOUND and updated
translations. File browser shows more than just books so seeing "No
Books Found" really doesn't make sense.

## Additional Context

Very Simple change, here is what that looks like on my device.

<img width="1318" height="879" alt="Untitled (7)"
src="https://github.com/user-attachments/assets/6416c8c8-795d-41a5-9b9f-28d2c26666a0"
/>

---

### AI Usage

While CrossPoint doesn't have restrictions on AI tools in contributing,
please be transparent about their usage as it
helps set the right context for reviewers.

Did you use AI tools to help write this code? _**NO**_

authored by

Lev Roland-Kalb and committed by
GitHub
76681201 04242fa2

+21 -20
+1 -1
lib/I18n/translations/belarusian.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Няма адкрытай кнігі" 15 15 STR_START_READING: "Пачніце чытанне ніжэй" 16 16 STR_BOOKS: "Кнігі" 17 - STR_NO_BOOKS_FOUND: "Кнігі не знойдзены" 17 + STR_NO_FILES_FOUND: "Файлы не знойдзены" 18 18 STR_SELECT_CHAPTER: "Абярыце раздзел" 19 19 STR_NO_CHAPTERS: "Раздзелаў няма" 20 20 STR_END_OF_BOOK: "Канец кнігі"
+1 -1
lib/I18n/translations/catalan.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Cap llibre obert" 15 15 STR_START_READING: "Inicia la lectura a continuació" 16 16 STR_BOOKS: "Llibres" 17 - STR_NO_BOOKS_FOUND: "No s'ha trobat cap llibre" 17 + STR_NO_FILES_FOUND: "No s'han trobat fitxers" 18 18 STR_SELECT_CHAPTER: "Selecciona el capítol" 19 19 STR_NO_CHAPTERS: "Sense capítols" 20 20 STR_END_OF_BOOK: "Final del llibre"
+1 -1
lib/I18n/translations/czech.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Žádná otevřená kniha" 15 15 STR_START_READING: "Začněte číst níže" 16 16 STR_BOOKS: "Knihy" 17 - STR_NO_BOOKS_FOUND: "Žádné knihy nenalezeny" 17 + STR_NO_FILES_FOUND: "Nebyly nalezeny žádné soubory" 18 18 STR_SELECT_CHAPTER: "Vybrat kapitolu" 19 19 STR_NO_CHAPTERS: "Žádné kapitoly" 20 20 STR_END_OF_BOOK: "Konec knihy"
+1 -1
lib/I18n/translations/danish.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Ingen åben bog" 15 15 STR_START_READING: "Start læsning nedenfor" 16 16 STR_BOOKS: "Bøger" 17 - STR_NO_BOOKS_FOUND: "Ingen bøger fundet" 17 + STR_NO_FILES_FOUND: "Ingen filer fundet" 18 18 STR_SELECT_CHAPTER: "Vælg kapitel" 19 19 STR_NO_CHAPTERS: "Ingen kapitler" 20 20 STR_END_OF_BOOK: "Bogen er færdig"
+1 -1
lib/I18n/translations/dutch.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Geen geopend boek" 15 15 STR_START_READING: "Begin hieronder met lezen" 16 16 STR_BOOKS: "Boeken" 17 - STR_NO_BOOKS_FOUND: "Geen boeken gevonden" 17 + STR_NO_FILES_FOUND: "Geen bestanden gevonden" 18 18 STR_SELECT_CHAPTER: "Selecteer hoofdstuk" 19 19 STR_NO_CHAPTERS: "Geen hoofdstukken" 20 20 STR_END_OF_BOOK: "Einde van boek"
+1 -1
lib/I18n/translations/english.yaml
··· 14 14 STR_NO_OPEN_BOOK: "No open book" 15 15 STR_START_READING: "Start reading below" 16 16 STR_BOOKS: "Books" 17 - STR_NO_BOOKS_FOUND: "No books found" 17 + STR_NO_FILES_FOUND: "No files found" 18 18 STR_SELECT_CHAPTER: "Select Chapter" 19 19 STR_NO_CHAPTERS: "No chapters" 20 20 STR_END_OF_BOOK: "End of book"
+1 -1
lib/I18n/translations/finnish.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Kirjaa ei valittu" 15 15 STR_START_READING: "Aloita lukeminen" 16 16 STR_BOOKS: "Kirjat" 17 - STR_NO_BOOKS_FOUND: "Kirjoja ei löytynyt" 17 + STR_NO_FILES_FOUND: "Ei tiedostoja löytynyt" 18 18 STR_SELECT_CHAPTER: "Valitse luku" 19 19 STR_NO_CHAPTERS: "Ei lukuja" 20 20 STR_END_OF_BOOK: "Kirjan loppu"
+1 -1
lib/I18n/translations/french.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Aucun livre ouvert" 15 15 STR_START_READING: "Commencer la lecture" 16 16 STR_BOOKS: "Livres" 17 - STR_NO_BOOKS_FOUND: "Dossier vide" 17 + STR_NO_FILES_FOUND: "Aucun fichier trouvé" 18 18 STR_SELECT_CHAPTER: "Choix du chapitre" 19 19 STR_NO_CHAPTERS: "Aucun chapitre" 20 20 STR_END_OF_BOOK: "Fin du livre"
+1 -1
lib/I18n/translations/german.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Aktuell kein Buch" 15 15 STR_START_READING: "Lesen beginnen" 16 16 STR_BOOKS: "Bücher" 17 - STR_NO_BOOKS_FOUND: "Keine Bücher" 17 + STR_NO_FILES_FOUND: "Keine Dateien gefunden" 18 18 STR_SELECT_CHAPTER: "Kapitel auswählen" 19 19 STR_NO_CHAPTERS: "Keine Kapitel" 20 20 STR_END_OF_BOOK: "Buchende"
+1 -1
lib/I18n/translations/italian.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Nessun libro aperto" 15 15 STR_START_READING: "Inizia a leggere di seguito" 16 16 STR_BOOKS: "Libri" 17 - STR_NO_BOOKS_FOUND: "Nessun libro trovato" 17 + STR_NO_FILES_FOUND: "Nessun file trovato" 18 18 STR_SELECT_CHAPTER: "Seleziona capitolo" 19 19 STR_NO_CHAPTERS: "Nessun capitolo" 20 20 STR_END_OF_BOOK: "Fine del libro"
+1 -1
lib/I18n/translations/polish.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Brak otwartych książek" 15 15 STR_START_READING: "Zacznij czytać" 16 16 STR_BOOKS: "Książki" 17 - STR_NO_BOOKS_FOUND: "Nie znaleziono książek" 17 + STR_NO_FILES_FOUND: "Nie znaleziono plików" 18 18 STR_SELECT_CHAPTER: "Wybierz rozdział" 19 19 STR_NO_CHAPTERS: "Brak rozdziałów" 20 20 STR_END_OF_BOOK: "Koniec książki"
+1 -1
lib/I18n/translations/portuguese.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Nenhum livro aberto" 15 15 STR_START_READING: "Comece a ler abaixo" 16 16 STR_BOOKS: "Livros" 17 - STR_NO_BOOKS_FOUND: "Nenhum livro encontrado" 17 + STR_NO_FILES_FOUND: "Nenhum arquivo encontrado" 18 18 STR_SELECT_CHAPTER: "Escolher capítulo" 19 19 STR_NO_CHAPTERS: "Sem capítulos" 20 20 STR_END_OF_BOOK: "Fim do livro"
+1 -1
lib/I18n/translations/romanian.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Nicio carte deschisă" 15 15 STR_START_READING: "Începeţi lectura" 16 16 STR_BOOKS: "Cărţi" 17 - STR_NO_BOOKS_FOUND: "Nicio carte găsită" 17 + STR_NO_FILES_FOUND: "Nu s-au găsit fișiere" 18 18 STR_SELECT_CHAPTER: "Selectaţi capitolul" 19 19 STR_NO_CHAPTERS: "Niciun capitol" 20 20 STR_END_OF_BOOK: "Sfârşitul cărţii"
+1 -1
lib/I18n/translations/russian.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Нет открытой книги" 15 15 STR_START_READING: "Начать чтение ниже" 16 16 STR_BOOKS: "Книги" 17 - STR_NO_BOOKS_FOUND: "Книги не найдены" 17 + STR_NO_FILES_FOUND: "Файлы не найдены" 18 18 STR_SELECT_CHAPTER: "Выберите главу" 19 19 STR_NO_CHAPTERS: "Глав нет" 20 20 STR_END_OF_BOOK: "Конец книги"
+1 -1
lib/I18n/translations/spanish.yaml
··· 14 14 STR_NO_OPEN_BOOK: "No hay libros abiertos" 15 15 STR_START_READING: "Comenzar a leer" 16 16 STR_BOOKS: "Libros" 17 - STR_NO_BOOKS_FOUND: "No se encontraron libros" 17 + STR_NO_FILES_FOUND: "No se encontraron archivos" 18 18 STR_SELECT_CHAPTER: "Seleccionar capítulo" 19 19 STR_NO_CHAPTERS: "Sin capítulos" 20 20 STR_END_OF_BOOK: "Fin del libro"
+1 -1
lib/I18n/translations/swedish.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Ingen öppen bok" 15 15 STR_START_READING: "Börja läsa nedan" 16 16 STR_BOOKS: "Böcker" 17 - STR_NO_BOOKS_FOUND: "Inga böcker hittade" 17 + STR_NO_FILES_FOUND: "Inga filer hittades" 18 18 STR_SELECT_CHAPTER: "Välj kapitel" 19 19 STR_NO_CHAPTERS: "Inga kapitel" 20 20 STR_END_OF_BOOK: "Slutet på boken"
+1 -1
lib/I18n/translations/ukrainian.yaml
··· 14 14 STR_NO_OPEN_BOOK: "Немає відкритої книги" 15 15 STR_START_READING: "Почніть читання нижче" 16 16 STR_BOOKS: "Книги" 17 - STR_NO_BOOKS_FOUND: "Книг не знайдено" 17 + STR_NO_FILES_FOUND: "Файли не знайдено" 18 18 STR_SELECT_CHAPTER: "Виберіть розділ" 19 19 STR_NO_CHAPTERS: "Немає розділів" 20 20 STR_END_OF_BOOK: "Кінець книги"
+4 -3
src/activities/home/MyLibraryActivity.cpp
··· 257 257 const int contentTop = metrics.topPadding + metrics.headerHeight + metrics.verticalSpacing; 258 258 const int contentHeight = pageHeight - contentTop - metrics.buttonHintsHeight - metrics.verticalSpacing; 259 259 if (files.empty()) { 260 - renderer.drawText(UI_10_FONT_ID, metrics.contentSidePadding, contentTop + 20, tr(STR_NO_BOOKS_FOUND)); 260 + renderer.drawText(UI_10_FONT_ID, metrics.contentSidePadding, contentTop + 20, tr(STR_NO_FILES_FOUND)); 261 261 } else { 262 262 GUI.drawList( 263 263 renderer, Rect{0, contentTop, pageWidth, contentHeight}, files.size(), selectorIndex, ··· 266 266 } 267 267 268 268 // Help text 269 - const auto labels = mappedInput.mapLabels(basepath == "/" ? tr(STR_HOME) : tr(STR_BACK), tr(STR_OPEN), tr(STR_DIR_UP), 270 - tr(STR_DIR_DOWN)); 269 + const auto labels = 270 + mappedInput.mapLabels(basepath == "/" ? tr(STR_HOME) : tr(STR_BACK), files.empty() ? "" : tr(STR_OPEN), 271 + files.empty() ? "" : tr(STR_DIR_UP), files.empty() ? "" : tr(STR_DIR_DOWN)); 271 272 GUI.drawButtonHints(renderer, labels.btn1, labels.btn2, labels.btn3, labels.btn4); 272 273 273 274 renderer.displayBuffer();