Minamp 1.6: adjustable UI size, larger text and controls

- New setting "Text and button size" (Normal / Large / Extra large): scales
  text, icons and buttons on top of the phone's density (App.UI_SCALES)
- Larger default text, rows, tiles, touch targets and player icons; all sizes
  now live in res/values/dimens.xml
- Seek bar knob drawn in code, since Android 2.x caches XML shapes at the
  size they were first loaded
- Full-width buttons wrap to two lines instead of cutting words off
- Shorter labels so they fit 240x320 screens in both languages
- tools/check_fit.py checks that UI texts fit their slots at every size and
  language using Droid Sans metrics; build.sh runs it and setup_toolchain.sh
  fetches the font

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
xockoandClaude Opus 5.5 committed 2026-10-15 08:02:49 +02:00
1 parent fa67e95fde
commit bbdab09f83
32 files changed
+457 -190

No files matched your search

+19 -14
View File
@@ -10,10 +10,10 @@ S = {
"app_name": ("Minamp", "Minamp"),
# tabs / headers
"tab_home": ("HOME", "INICIO"),
"tab_artists": ("ARTISTS", "ARTISTAS"),
"tab_albums": ("ALBUMS", "ÁLBUMS"),
"tab_playlists": ("PLAYLISTS", "LISTAS"),
"tab_home": ("Home", "Inicio"),
"tab_artists": ("Artists", "Artistas"),
"tab_albums": ("Albums", "Álbums"),
"tab_playlists": ("Playlists", "Listas"),
"playing_from": ("PLAYING FROM", "REPRODUCINDO DESDE"),
"see_all": ("SEE ALL ›", "VER TODO ›"),
"album_link": ("Album ›", "Álbum ›"),
@@ -21,12 +21,12 @@ S = {
# setup
"tagline": ("Your Plex music, anywhere,\non a very small phone.", "A túa música de Plex, onde queiras,\nnun teléfono moi pequeno."),
"sign_in": ("Sign in with Plex", "Iniciar sesión con Plex"),
"connect_address": ("Connect to a server address", "Conectar a un enderezo de servidor"),
"connect_address": ("Connect by address", "Conectar por enderezo"),
"connection_log": ("Connection log", "Rexistro de conexión"),
"pin_open": ("On a computer or a newer phone, open", "Nun ordenador ou nun teléfono máis novo, abre"),
"pin_enter": ("and enter this code:", "e escribe este código:"),
"pin_waiting": ("Waiting for you to link…", "Agardando a que vincules a conta…"),
"pin_check_now": ("I've entered it — check now", "Xa o escribín: comprobar agora"),
"pin_check_now": ("Check now", "Comprobar agora"),
"cancel": ("Cancel", "Cancelar"),
"server_address": ("Server address", "Enderezo do servidor"),
"server_address_help": ("e.g. 192.168.1.20 or https://plex.example.com. Signing in with Plex is easier and finds remote addresses for you.",
@@ -90,9 +90,9 @@ S = {
# actions
"play": ("Play", "Reproducir"),
"play_all": ("Play all", "Reproducir todo"),
"play_all": ("Play all", "Reproducir"),
"shuffle": ("Shuffle", "Aleatorio"),
"artist_radio": ("Artist radio", "Radio do artista"),
"artist_radio": ("Radio", "Radio"),
"artist_radio_shuffle": ("Artist radio (shuffle)", "Radio do artista (aleatorio)"),
"play_next": ("Play next", "Reproducir a continuación"),
"add_to_queue": ("Add to queue", "Engadir á cola"),
@@ -129,6 +129,11 @@ S = {
"set_connection": ("Connection: %1$s", "Conexión: %1$s"),
"set_log": ("Connection log & streaming test", "Rexistro de conexión e proba de reprodución"),
"set_language": ("Language: %1$s", "Idioma: %1$s"),
"set_size": ("Text and button size: %1$s", "Tamaño de texto e botóns: %1$s"),
"size_title": ("Text and button size", "Tamaño de texto e botóns"),
"size_normal": ("Normal", "Normal"),
"size_large": ("Large", "Grande"),
"size_xlarge": ("Extra large", "Moi grande"),
"sign_out": ("Sign out", "Pechar sesión"),
"quality_home_title": ("Quality at home", "Calidade na casa"),
"quality_away_title": ("Quality away / mobile", "Calidade fóra / datos móbiles"),
@@ -158,11 +163,11 @@ S = {
"loved_radio": ("Favourites radio", "Radio de favoritas"),
"loved_radio_sub": ("Your top rated", "As mellor valoradas"),
"time_travel": ("Time travel", "Viaxe no tempo"),
"time_travel_sub": ("Pick a decade", "Escolle unha década"),
"time_travel_sub": ("Pick a decade", "Escolle década"),
"random_album": ("Random album", "Álbum ao chou"),
"random_album_sub": ("Feeling lucky", "Proba sorte"),
"recently_added": ("Recently added", "Engadidos recentemente"),
"recently_played": ("Recently played", "Escoitados recentemente"),
"recently_added": ("Recently added", "Novidades"),
"recently_played": ("Recently played", "Últimas escoitas"),
"finding_decades": ("Finding decades…", "Buscando décadas…"),
"no_years": ("No release years in this library", "Esta biblioteca non ten anos de publicación"),
"surprise_me": ("Surprise me", "Sorpréndeme"),
@@ -192,7 +197,7 @@ S = {
"nothing_playing": ("Nothing playing", "Non se está a reproducir nada"),
"pick_something": ("Pick something from your library", "Escolle algo da túa biblioteca"),
"end_of_track": ("End of track", "Fin da pista"),
"sleep": ("Sleep", "Temporizador"),
"sleep": ("Sleep", "Durmir"),
"sleep_timer": ("Sleep timer", "Temporizador de apagado"),
"sleep_off": ("Off", "Desactivado"),
"sleep_15": ("15 minutes", "15 minutos"),
@@ -211,7 +216,7 @@ S = {
"paused_dot": ("Paused · ", "En pausa · "),
# queue
"up_next": ("Up next", "A continuación"),
"up_next": ("Queue", "Cola"),
"shuffle_on": ("Shuffle on", "Aleatorio activado"),
"shuffle_off": ("Shuffle off", "Aleatorio desactivado"),
"remove_from_queue": ("Remove from queue", "Quitar da cola"),
@@ -220,7 +225,7 @@ S = {
"clear_everything": ("Clear everything", "Borralo todo"),
# search
"search_hint": ("Artists, albums, tracks", "Artistas, álbums, cancións"),
"search_hint": ("Search music", "Buscar música"),
"search_in": ("Search %1$s", "Buscar en %1$s"),
"searching": ("Searching…", "Buscando…"),
"nothing_found_q": ("Nothing found for “%1$s”", "Non se atopou nada para “%1$s”"),