diff --git a/CHANGELOG.md b/CHANGELOG.md index d9bca37d0..5a7f18394 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ #### What's New - Added basic equalizer support in external apps like Wavelet [#211] +- Added option to control the type of action shown on the playback bar - Detail UI now displays the type of item shown (ex. the release type) #### What's Improved diff --git a/app/src/main/java/org/oxycblt/auxio/home/HomeFragment.kt b/app/src/main/java/org/oxycblt/auxio/home/HomeFragment.kt index 2485e5654..eb68194b0 100644 --- a/app/src/main/java/org/oxycblt/auxio/home/HomeFragment.kt +++ b/app/src/main/java/org/oxycblt/auxio/home/HomeFragment.kt @@ -344,7 +344,7 @@ class HomeFragment : ViewBindingFragment(), Toolbar.OnMenuI when (indexing) { is Indexer.Indexing.Indeterminate -> { - binding.homeIndexingStatus.text = context.getString(R.string.lng_indexing_desc) + binding.homeIndexingStatus.text = context.getString(R.string.lng_indexing) binding.homeIndexingProgress.isIndeterminate = true } is Indexer.Indexing.Songs -> { diff --git a/app/src/main/java/org/oxycblt/auxio/music/MusicUtil.kt b/app/src/main/java/org/oxycblt/auxio/music/MusicUtil.kt index ce4cee322..1a56c957e 100644 --- a/app/src/main/java/org/oxycblt/auxio/music/MusicUtil.kt +++ b/app/src/main/java/org/oxycblt/auxio/music/MusicUtil.kt @@ -36,13 +36,13 @@ fun ContentResolver.queryCursor( ) = query(uri, projection, selector, args, null) /** Shortcut for making a [ContentResolver] query and using the particular cursor with [use]. */ -fun ContentResolver.useQuery( +inline fun ContentResolver.useQuery( uri: Uri, projection: Array, selector: String? = null, args: Array? = null, block: (Cursor) -> R -): R? = queryCursor(uri, projection, selector, args)?.use(block) +) = queryCursor(uri, projection, selector, args)?.use(block) /** * For some reason the album cover URI namespace does not have a member in [MediaStore], but it diff --git a/app/src/main/java/org/oxycblt/auxio/music/system/IndexerNotifications.kt b/app/src/main/java/org/oxycblt/auxio/music/system/IndexerNotifications.kt index 7134d38b6..f2acf3c43 100644 --- a/app/src/main/java/org/oxycblt/auxio/music/system/IndexerNotifications.kt +++ b/app/src/main/java/org/oxycblt/auxio/music/system/IndexerNotifications.kt @@ -19,7 +19,6 @@ package org.oxycblt.auxio.music.system import android.content.Context import androidx.core.app.NotificationCompat -import androidx.core.app.NotificationManagerCompat import org.oxycblt.auxio.BuildConfig import org.oxycblt.auxio.IntegerTable import org.oxycblt.auxio.R @@ -37,8 +36,8 @@ class IndexingNotification(private val context: Context) : setSilent(true) setContentIntent(context.newMainPendingIntent()) setVisibility(NotificationCompat.VISIBILITY_PUBLIC) - setContentTitle(context.getString(R.string.lng_indexing)) - setContentText(context.getString(R.string.lng_indexing_desc)) + setContentTitle(context.getString(R.string.lbl_indexing)) + setContentText(context.getString(R.string.lng_indexing)) setProgress(0, 0, true) } @@ -49,7 +48,7 @@ class IndexingNotification(private val context: Context) : when (indexing) { is Indexer.Indexing.Indeterminate -> { logD("Updating state to $indexing") - setContentText(context.getString(R.string.lng_indexing_desc)) + setContentText(context.getString(R.string.lng_indexing)) setProgress(0, 0, true) return true } @@ -78,8 +77,8 @@ class ObservingNotification(context: Context) : ServiceNotification(context, IND setSilent(true) setContentIntent(context.newMainPendingIntent()) setVisibility(NotificationCompat.VISIBILITY_PUBLIC) - setContentTitle(context.getString(R.string.lng_observing)) - setContentText(context.getString(R.string.lng_observing_desc)) + setContentTitle(context.getString(R.string.lbl_observing)) + setContentText(context.getString(R.string.lng_observing)) } override val code: Int @@ -88,6 +87,4 @@ class ObservingNotification(context: Context) : ServiceNotification(context, IND private val INDEXER_CHANNEL = ServiceNotification.ChannelInfo( - id = BuildConfig.APPLICATION_ID + ".channel.INDEXER", - R.string.info_indexer_channel_name, - NotificationManagerCompat.IMPORTANCE_LOW) + id = BuildConfig.APPLICATION_ID + ".channel.INDEXER", nameRes = R.string.lbl_indexer) diff --git a/app/src/main/java/org/oxycblt/auxio/playback/replaygain/ReplayGainMode.kt b/app/src/main/java/org/oxycblt/auxio/playback/replaygain/ReplayGain.kt similarity index 87% rename from app/src/main/java/org/oxycblt/auxio/playback/replaygain/ReplayGainMode.kt rename to app/src/main/java/org/oxycblt/auxio/playback/replaygain/ReplayGain.kt index 04c1b05d1..fd73db7f2 100644 --- a/app/src/main/java/org/oxycblt/auxio/playback/replaygain/ReplayGainMode.kt +++ b/app/src/main/java/org/oxycblt/auxio/playback/replaygain/ReplayGain.kt @@ -43,3 +43,11 @@ enum class ReplayGainMode { } } } + +/** Represents the ReplayGain pre-amp values. */ +data class ReplayGainPreAmp( + /** The value to use when ReplayGain tags are present. */ + val with: Float, + /** The value to use when ReplayGain tags are not present. */ + val without: Float, +) diff --git a/app/src/main/java/org/oxycblt/auxio/playback/replaygain/ReplayGainPreAmp.kt b/app/src/main/java/org/oxycblt/auxio/playback/replaygain/ReplayGainPreAmp.kt deleted file mode 100644 index 33fb3d412..000000000 --- a/app/src/main/java/org/oxycblt/auxio/playback/replaygain/ReplayGainPreAmp.kt +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright (c) 2022 Auxio Project - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -package org.oxycblt.auxio.playback.replaygain - -/** Represents the ReplayGain pre-amp values. */ -data class ReplayGainPreAmp( - /** The value to use when ReplayGain tags are present. */ - val with: Float, - /** The value to use when ReplayGain tags are not present. */ - val without: Float, -) diff --git a/app/src/main/java/org/oxycblt/auxio/playback/system/NotificationComponent.kt b/app/src/main/java/org/oxycblt/auxio/playback/system/NotificationComponent.kt index d25ac9c0a..50984fc64 100644 --- a/app/src/main/java/org/oxycblt/auxio/playback/system/NotificationComponent.kt +++ b/app/src/main/java/org/oxycblt/auxio/playback/system/NotificationComponent.kt @@ -24,7 +24,6 @@ import android.support.v4.media.MediaMetadataCompat import android.support.v4.media.session.MediaSessionCompat import androidx.annotation.DrawableRes import androidx.core.app.NotificationCompat -import androidx.core.app.NotificationManagerCompat import androidx.media.app.NotificationCompat.MediaStyle import org.oxycblt.auxio.BuildConfig import org.oxycblt.auxio.IntegerTable @@ -146,7 +145,6 @@ class NotificationComponent(private val context: Context, sessionToken: MediaSes val CHANNEL_INFO = ChannelInfo( id = BuildConfig.APPLICATION_ID + ".channel.PLAYBACK", - nameRes = R.string.info_playback_channel_name, - importance = NotificationManagerCompat.IMPORTANCE_LOW) + nameRes = R.string.lbl_playback) } } diff --git a/app/src/main/java/org/oxycblt/auxio/settings/Settings.kt b/app/src/main/java/org/oxycblt/auxio/settings/Settings.kt index 79f3c23e0..aebff02a3 100644 --- a/app/src/main/java/org/oxycblt/auxio/settings/Settings.kt +++ b/app/src/main/java/org/oxycblt/auxio/settings/Settings.kt @@ -120,7 +120,8 @@ class Settings(private val context: Context, private val callback: Callback? = n /** Which action to display on the playback bar. */ val barAction: BarAction get() = - BarAction.fromIntCode(inner.getInt(context.getString(R.string.set_key_bar_action), -1)) + BarAction.fromIntCode( + inner.getInt(context.getString(R.string.set_key_bar_action), Int.MIN_VALUE)) ?: BarAction.NEXT /** @@ -138,7 +139,7 @@ class Settings(private val context: Context, private val callback: Callback? = n val replayGainMode: ReplayGainMode get() = ReplayGainMode.fromIntCode( - inner.getInt(context.getString(R.string.set_key_replay_gain), -1)) + inner.getInt(context.getString(R.string.set_key_replay_gain), Int.MIN_VALUE)) ?: ReplayGainMode.OFF /** The current ReplayGain pre-amp configuration */ @@ -159,7 +160,8 @@ class Settings(private val context: Context, private val callback: Callback? = n val libPlaybackMode: PlaybackMode get() = PlaybackMode.fromInt( - inner.getInt(context.getString(R.string.set_key_library_song_playback_mode), -1)) + inner.getInt( + context.getString(R.string.set_key_library_song_playback_mode), Int.MIN_VALUE)) ?: PlaybackMode.ALL_SONGS /** @@ -169,7 +171,8 @@ class Settings(private val context: Context, private val callback: Callback? = n val detailPlaybackMode: PlaybackMode? get() = PlaybackMode.fromInt( - inner.getInt(context.getString(R.string.set_key_detail_song_playback_mode), -1)) + inner.getInt( + context.getString(R.string.set_key_detail_song_playback_mode), Int.MIN_VALUE)) /** Whether shuffle should stay on when a new song is selected. */ val keepShuffle: Boolean @@ -219,11 +222,14 @@ class Settings(private val context: Context, private val callback: Callback? = n /** The current filter mode of the search tab */ var searchFilterMode: DisplayMode? get() = - DisplayMode.fromInt(inner.getInt(context.getString(R.string.set_key_search_filter), -1)) + DisplayMode.fromInt( + inner.getInt(context.getString(R.string.set_key_search_filter), Int.MIN_VALUE)) set(value) { logD(value) inner.edit { - putInt(context.getString(R.string.set_key_search_filter), value?.intCode ?: -1) + putInt( + context.getString(R.string.set_key_search_filter), + value?.intCode ?: Int.MIN_VALUE) apply() } } @@ -231,7 +237,8 @@ class Settings(private val context: Context, private val callback: Callback? = n /** The song sort mode on HomeFragment */ var libSongSort: Sort get() = - Sort.fromIntCode(inner.getInt(context.getString(R.string.set_key_lib_songs_sort), -1)) + Sort.fromIntCode( + inner.getInt(context.getString(R.string.set_key_lib_songs_sort), Int.MIN_VALUE)) ?: Sort(Sort.Mode.ByName, true) set(value) { inner.edit { @@ -243,7 +250,8 @@ class Settings(private val context: Context, private val callback: Callback? = n /** The album sort mode on HomeFragment */ var libAlbumSort: Sort get() = - Sort.fromIntCode(inner.getInt(context.getString(R.string.set_key_lib_albums_sort), -1)) + Sort.fromIntCode( + inner.getInt(context.getString(R.string.set_key_lib_albums_sort), Int.MIN_VALUE)) ?: Sort(Sort.Mode.ByName, true) set(value) { inner.edit { @@ -255,7 +263,8 @@ class Settings(private val context: Context, private val callback: Callback? = n /** The artist sort mode on HomeFragment */ var libArtistSort: Sort get() = - Sort.fromIntCode(inner.getInt(context.getString(R.string.set_key_lib_artists_sort), -1)) + Sort.fromIntCode( + inner.getInt(context.getString(R.string.set_key_lib_artists_sort), Int.MIN_VALUE)) ?: Sort(Sort.Mode.ByName, true) set(value) { inner.edit { @@ -267,7 +276,8 @@ class Settings(private val context: Context, private val callback: Callback? = n /** The genre sort mode on HomeFragment */ var libGenreSort: Sort get() = - Sort.fromIntCode(inner.getInt(context.getString(R.string.set_key_lib_genres_sort), -1)) + Sort.fromIntCode( + inner.getInt(context.getString(R.string.set_key_lib_genres_sort), Int.MIN_VALUE)) ?: Sort(Sort.Mode.ByName, true) set(value) { inner.edit { @@ -281,7 +291,8 @@ class Settings(private val context: Context, private val callback: Callback? = n get() { var sort = Sort.fromIntCode( - inner.getInt(context.getString(R.string.set_key_detail_album_sort), -1)) + inner.getInt( + context.getString(R.string.set_key_detail_album_sort), Int.MIN_VALUE)) ?: Sort(Sort.Mode.ByDisc, true) // Correct legacy album sort modes to Disc @@ -302,7 +313,7 @@ class Settings(private val context: Context, private val callback: Callback? = n var detailArtistSort: Sort get() = Sort.fromIntCode( - inner.getInt(context.getString(R.string.set_key_detail_artist_sort), -1)) + inner.getInt(context.getString(R.string.set_key_detail_artist_sort), Int.MIN_VALUE)) ?: Sort(Sort.Mode.ByYear, false) set(value) { inner.edit { @@ -315,7 +326,7 @@ class Settings(private val context: Context, private val callback: Callback? = n var detailGenreSort: Sort get() = Sort.fromIntCode( - inner.getInt(context.getString(R.string.set_key_detail_genre_sort), -1)) + inner.getInt(context.getString(R.string.set_key_detail_genre_sort), Int.MIN_VALUE)) ?: Sort(Sort.Mode.ByName, true) set(value) { inner.edit { diff --git a/app/src/main/java/org/oxycblt/auxio/settings/SettingsListFragment.kt b/app/src/main/java/org/oxycblt/auxio/settings/SettingsListFragment.kt index b7f09920f..242ac6b8d 100644 --- a/app/src/main/java/org/oxycblt/auxio/settings/SettingsListFragment.kt +++ b/app/src/main/java/org/oxycblt/auxio/settings/SettingsListFragment.kt @@ -121,18 +121,18 @@ class SettingsListFragment : PreferenceFragmentCompat() { when (preference.key) { context.getString(R.string.set_key_save_state) -> { playbackModel.savePlaybackState { - this.context?.showToast(R.string.lng_state_saved) + this.context?.showToast(R.string.lbl_state_saved) } } context.getString(R.string.set_key_wipe_state) -> { playbackModel.wipePlaybackState { - this.context?.showToast(R.string.lng_state_wiped) + this.context?.showToast(R.string.lbl_state_wiped) } } context.getString(R.string.set_key_restore_state) -> playbackModel.tryRestorePlaybackState { restored -> if (restored) { - this.context?.showToast(R.string.lng_state_restored) + this.context?.showToast(R.string.lbl_state_restored) } else { this.context?.showToast(R.string.err_did_not_restore) } diff --git a/app/src/main/java/org/oxycblt/auxio/ui/system/ServiceNotification.kt b/app/src/main/java/org/oxycblt/auxio/ui/system/ServiceNotification.kt index 87572c8aa..80eabe5e3 100644 --- a/app/src/main/java/org/oxycblt/auxio/ui/system/ServiceNotification.kt +++ b/app/src/main/java/org/oxycblt/auxio/ui/system/ServiceNotification.kt @@ -17,13 +17,11 @@ package org.oxycblt.auxio.ui.system -import android.app.NotificationChannel -import android.app.NotificationManager import android.content.Context -import android.os.Build import androidx.annotation.StringRes +import androidx.core.app.NotificationChannelCompat import androidx.core.app.NotificationCompat -import org.oxycblt.auxio.util.getSystemServiceCompat +import androidx.core.app.NotificationManagerCompat /** * Wrapper around [NotificationCompat.Builder] that automates parts of the notification setup, under @@ -32,15 +30,18 @@ import org.oxycblt.auxio.util.getSystemServiceCompat */ abstract class ServiceNotification(context: Context, info: ChannelInfo) : NotificationCompat.Builder(context, info.id) { - private val notificationManager = context.getSystemServiceCompat(NotificationManager::class) + private val notificationManager = NotificationManagerCompat.from(context) init { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { - val channel = - NotificationChannel(info.id, context.getString(info.nameRes), info.importance) + val channel = + NotificationChannelCompat.Builder(info.id, NotificationManagerCompat.IMPORTANCE_LOW) + .setName(context.getString(info.nameRes)) + .setLightsEnabled(false) + .setVibrationEnabled(false) + .setShowBadge(false) + .build() - notificationManager.createNotificationChannel(channel) - } + notificationManager.createNotificationChannel(channel) } abstract val code: Int @@ -49,5 +50,5 @@ abstract class ServiceNotification(context: Context, info: ChannelInfo) : notificationManager.notify(code, build()) } - data class ChannelInfo(val id: String, @StringRes val nameRes: Int, val importance: Int) + data class ChannelInfo(val id: String, @StringRes val nameRes: Int) } diff --git a/app/src/main/res/values-ar-rIQ/strings.xml b/app/src/main/res/values-ar-rIQ/strings.xml index 10f332a42..82acc6de3 100644 --- a/app/src/main/res/values-ar-rIQ/strings.xml +++ b/app/src/main/res/values-ar-rIQ/strings.xml @@ -4,7 +4,7 @@ مشغل موسيقى بسيط ومعقول لنظام الاندرويد. تشغيل الموسيقى - عرض وتحكم بشتغيل الموسيقى + عرض وتحكم بشتغيل الموسيقى إعادة المحاولة @@ -43,7 +43,7 @@ أذهب إلى الفنان أذهب إلى الالبوم - تم حفظ الحالة + تم حفظ الحالة أضف احفظ @@ -82,7 +82,7 @@ صوتيات صخب الصوت - اطفاء + اطفاء تفضيل المقطع تفضيل الالبوم ديناميكي diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index 9681e5d5a..eeb93d50f 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -3,8 +3,8 @@ Jednoduchý, rozumný hudební přehrávač pro Android. Přehrávání hudby - Načítání hudby - Zobrazení a ovládání přehrávání hudby + Načítání hudby + Zobrazení a ovládání přehrávání hudby Načítání vaší hudební knihovny… Zkusit znovu @@ -40,14 +40,14 @@ Přidáno do fronty Přejít na umělce Přejít na album - Stav uložen + Stav uložen @android:string/ok @android:string/cancel Přidat Uložit - Vyp + Vyp O aplikaci Verze Zdrojový kód @@ -208,14 +208,14 @@ Ignorovat štítky MediaStore Zvýší kvalitu štítků, ale má za následek delší načítací čas (experimentální) Obnovit stav přehrávání - Stav obnoven + Stav obnoven Obnovit dříve uložený stav přehrávání (pokud existuje) Nemohl být obnoven žádný stav - Monitorování hudební knihovny + Monitorování hudební knihovny Automatické znovunačítání - Sledování změn v hudební knihovně… + Sledování změn v hudební knihovně… Znovu načíst vaší hudební knihovnu při změně (experimentální) - Načítání hudby + Načítání hudby Datum přidání Singl Singly @@ -237,7 +237,7 @@ Remixové EP Vymazat stav přehrávání Vymazat dříve uložený stav přehrávání (pokud existuje) - Stav vymazán + Stav vymazán Otevřít frontu Žánr \ No newline at end of file diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 760424cea..49be45c7b 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -28,7 +28,7 @@ Der Warteschlange hinzugefügt Zum Künstler gehen Zum Album gehen - Wiedergabezustand gespeichert + Wiedergabezustand gespeichert Hinzufügen Speichern Keine Ordner @@ -38,7 +38,7 @@ FAQ Lizenzen Entwickelt von OxygenCobalt - Aus + Aus Einstellungen Aussehen @@ -128,7 +128,7 @@ %d Alben Ein einfacher, rationaler Musikplayer für Android. - Musikwiedergabe anzeigen und kontrollieren + Musikwiedergabe anzeigen und kontrollieren Künstler Album Jahr @@ -189,7 +189,7 @@ Lade deine Musikbibliothek… (%1$d/%2$d) Mischen Alle mischen - Musikwiedergabe + Musikwiedergabe Lade deine Musikbibliothek… Abtastrate Zeige Eigenschaften an @@ -201,13 +201,13 @@ Bitrate MediaStore-Tags ignorieren Erhöht Tag-Qualität, benötigt aber längere Ladezeiten (Experimentell) - Überwachen der Musikbibliothek - Musik wird geladen - Musikbibliothek wird auf Änderungen überwacht… + Überwachen der Musikbibliothek + Musik wird geladen + Musikbibliothek wird auf Änderungen überwacht… Hinzugefügt am Musikbibliothek neuladen, sobald es Änderungen gibt (Experimentell) Automatisch neuladen - Zustand wiederhergestellt + Zustand wiederhergestellt Den vorher gespeicherten Wiedergabezustand wiederherstellen (wenn verfügbar) Kein Zustand konnte wiederhergestellt werden EP @@ -230,7 +230,7 @@ Remix-Single Live Den vorher gespeicherten Wiedergabezustand löschen (wenn vorhanden) - Zustand gelöscht + Zustand gelöscht Warteschlange öffnen Wiedergabezustand löschen \ No newline at end of file diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml index e10d2facf..f092a8a81 100644 --- a/app/src/main/res/values-el/strings.xml +++ b/app/src/main/res/values-el/strings.xml @@ -91,7 +91,7 @@ Ρεμίξ EP Συλλογές Συλλογή - Φόρτωση μουσικής + Φόρτωση μουσικής Είδος -%.1f dB %d Hz @@ -101,8 +101,8 @@ Καθόλου φάκελοι Μιά απλή, λογική εφαρμογή αναπαραγωγής μουσικής για Android. Αναπαραγωγή Μουσικής - Φόρτωση μουσικής - Προβολή και έλεγχος αναπαραγωγής μουσικής + Φόρτωση μουσικής + Προβολή και έλεγχος αναπαραγωγής μουσικής Album EP EP @@ -123,12 +123,12 @@ Ακύρωση Pυθμός δειγματοληψίας Φόρτωση της μουσικής συλλογής σας… - Παρακολούθηση της μουσικής συλλογής σας - Η κατάσταση αναπαραγωγής αποθηκεύτηκε + Παρακολούθηση της μουσικής συλλογής σας + Η κατάσταση αναπαραγωγής αποθηκεύτηκε Εκκαθάριση κατάστασης αναπαραγωγής Εκκαθάριση της προηγούμενης αποθηκευμένης κατάστασης αναπαραγωγής (αν υπάρχει) - Η κατάσταση αναπαραγωγής εκκαθαρίστηκε - Η κατάσταση αναπαραγωγής επαναφέρθηκε + Η κατάσταση αναπαραγωγής εκκαθαρίστηκε + Η κατάσταση αναπαραγωγής επαναφέρθηκε Αποθήκευση κατάστασης αναπαραγωγής Αποθήκευση της τωρινής κατάστασης αναπαραγωγής τώρα Αποκατάσταση κατάσταση αναπαραγωγής diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index aac9a9d64..d0d4597d8 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -3,7 +3,7 @@ Un reproductor de música simple y racional para Android. Reproducción de música - Ver y controlar la reproducción musical + Ver y controlar la reproducción musical Reintentar Permitir @@ -34,7 +34,7 @@ Agregado a la cola Ir al artista Ir al álbum - Estado guardado + Estado guardado Agregar Guardar Sin carpetas @@ -68,7 +68,7 @@ Preferir acción de mezcla Sonido ReplayGain - Desactivado + Desactivado Por pista Por álbum Preferir el álbum si se está en reproducción @@ -170,16 +170,16 @@ Cargando tu biblioteca de música… (%1$d/%2$d) Artistas cargados: %d Géneros cargados: %d - Carga de música + Carga de música Número de canciones - Estado restaurado + Estado restaurado Recarga automática Recarga tu biblioteca de música cuando cambia (Experimental) No se puedo restaurar ningún estado Cargando tu librería de música… - Cargando música - Monitorizando la librería de música - Monitorizando cambios en tu librería de música… + Cargando música + Monitorizando la librería de música + Monitorizando cambios en tu librería de música… Audio ogg Cuando se reproduce desde los detalles Fecha de añadido @@ -232,6 +232,6 @@ Eliminar el estado de reproducción guardado previamente (si existe) Abrir la cola Género - Estado limpiado + Estado limpiado Limpiar el estado de reproducción \ No newline at end of file diff --git a/app/src/main/res/values-fil/strings.xml b/app/src/main/res/values-fil/strings.xml index 11e023037..5daffad48 100644 --- a/app/src/main/res/values-fil/strings.xml +++ b/app/src/main/res/values-fil/strings.xml @@ -3,18 +3,18 @@ Naisin ang album Subukan muli Nilo-load ang iyong music library… - Tinitignan ang iyong music library para sa mga pagbabago… + Tinitignan ang iyong music library para sa mga pagbabago… Lahat ng Kanta Mga Album Album Live na album Remix album EP - Nilo-load ang music + Nilo-load ang music Pagtugtog ng kanta - Pagload ng kanta + Pagload ng kanta Mga EP - Tinitignan ang music library + Tinitignan ang music library Single Live na single Remix single @@ -52,12 +52,12 @@ Laki Tulin ng mga bit Tulin ng sample - Naibalik ang kalagayan - Na-save ang kalagayan + Naibalik ang kalagayan + Na-save ang kalagayan Haluin Idagdag I-save - Naka-patay + Naka-patay Tungkol Ulat Tignan sa GitHub @@ -102,7 +102,7 @@ Mga Single Bigyan Mga Genre - Tignan at ayusin ang pagtugtog ng kanta + Tignan at ayusin ang pagtugtog ng kanta Tema Ibahin ang pagkakita at ayos ng mga library tab Inilalapat ang pre-amp sa kasalukuyang ayos habang ito\'y tumutugtog diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 76d476281..012b45eca 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -74,7 +74,7 @@ %s Albums Format - État sauvegardé + État sauvegardé Mélanger OK Statistiques de la bibliothèque @@ -91,7 +91,7 @@ Enregistrer Taille Ajouter - Désactivé + Désactivé Affichage Afficher les pochettes d\'album Onglets de la bibliothèque @@ -99,8 +99,8 @@ Préférer l\'action en mode répétition Un lecteur de musique simple et rationnel pour Android. Lecture de musique - Chargement de musique - Afficher et contrôler la lecture de la musique + Chargement de musique + Afficher et contrôler la lecture de la musique Chargement de votre bibliothèque musicale… Nom Artiste diff --git a/app/src/main/res/values-hr/strings.xml b/app/src/main/res/values-hr/strings.xml index 88c8310ff..dab68db7c 100644 --- a/app/src/main/res/values-hr/strings.xml +++ b/app/src/main/res/values-hr/strings.xml @@ -1,9 +1,9 @@ - Učitavanje glazbe + Učitavanje glazbe Učitavanje tvoje zbirke glazbe … - Nadgledavanje zbirke glazbe - Nadgledavanje tvoje zbirke glazbe u slučaju promjena … + Nadgledavanje zbirke glazbe + Nadgledavanje tvoje zbirke glazbe u slučaju promjena … Pjesme Sve pjesme Albumi @@ -46,15 +46,15 @@ Veličina Brzina prijenosa Frekvencija - Stanje spremljeno - Stanje vraćeno + Stanje spremljeno + Stanje vraćeno Izmiješaj Izmiješaj sve U redu Otkaži Dodaj Spremi - Onemogući + Onemogući O Inačica Izvorni kod @@ -182,8 +182,8 @@ Reprodukcija glazbe Jednostavan i racionalan izvođač glazbe za Android. Pokušaj ponovo - Učitavanje glazbe - Pregledaj i upravljaj reprodukcijom glazbe + Učitavanje glazbe + Pregledaj i upravljaj reprodukcijom glazbe Dozvoli Singl uživo Singl remiks @@ -223,7 +223,7 @@ Ljubičasto Matroska Zvuk Izbriši stanje reprodukcije - Stanje izbrisano + Stanje izbrisano Izbriši prethodno stanje reprodukcije (ako postoji) Otvori popis pjesama Žanr diff --git a/app/src/main/res/values-in/strings.xml b/app/src/main/res/values-in/strings.xml index c790707fa..d8ec34771 100644 --- a/app/src/main/res/values-in/strings.xml +++ b/app/src/main/res/values-in/strings.xml @@ -68,7 +68,7 @@ Putar otomatis headset Selalu mulai bermain ketika headset tersambung (mungkin tidak berfungsi pada semua perangkat) ReplayGain - Off + Off Jalur induk Ukuran Tingkat sampel @@ -79,8 +79,8 @@ Album Pemutar musik yang simpel dan rasional untuk android. Pemutaran Musik - Pemuatan Musik - Lihat dan kontrol pemutaran musik + Pemuatan Musik + Lihat dan kontrol pemutaran musik Tahun Durasi Disk @@ -95,7 +95,7 @@ Lebih suka tindakan mengacak Acak Acak Semua - Status disimpan + Status disimpan Lebih suka trek Lebih suka album Pra-amp ReplayGain diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index e7b529224..9df20be4e 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -3,7 +3,7 @@ Un semplice, razionale lettore musicale per android. Riproduzione musicale - Vedi e gestisci la riproduzione musicale + Vedi e gestisci la riproduzione musicale Riprova Permetti @@ -34,7 +34,7 @@ Accodato Vai all\'artista Vai al disco - Stato salvato + Stato salvato Aggiungi Salva Nessuna cartella @@ -87,7 +87,7 @@ Salva lo stato di riproduzione corrente Ricarica musica Potrebbe cancellare lo stato di riproduzione - Spento + Spento Musica non trovata Caricamento musica fallito @@ -181,7 +181,7 @@ %d kbps Nessuna frequenza di campionamento -%.1f dB - Caricamento musica + Caricamento musica Caricamento libreria musicale… Durata Numero canzoni @@ -199,11 +199,11 @@ Nessuna velocità di trasmissione Cancella Pre-amp ReplayGain - Sto monitorando i cambiamenti nella tua libreria musicale… + Sto monitorando i cambiamenti nella tua libreria musicale… Ricarica la tua libreria musicale se subisce cambiamenti (sperimentale) - Caricamento musica - Monitoraggio libreria musicale - Stato ripristinato + Caricamento musica + Monitoraggio libreria musicale + Stato ripristinato Data aggiunta Ricaricamento automatico Ignora tags MediaStore diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml index 15b126bcf..a3d187d55 100644 --- a/app/src/main/res/values-ko/strings.xml +++ b/app/src/main/res/values-ko/strings.xml @@ -3,7 +3,7 @@ 사용하기 쉽고 실용적인 Android 음악 플레이어입니다. 음악 재생 - 음악 재생 제어 및 상태 확인 + 음악 재생 제어 및 상태 확인 다시 시도 @@ -46,7 +46,7 @@ 아티스트로 이동 앨범으로 이동 - 상태를 저장했습니다. + 상태를 저장했습니다. @android:string/ok @@ -54,7 +54,7 @@ @android:string/cancel 추가 저장 - + 정보 버전 diff --git a/app/src/main/res/values-lt/strings.xml b/app/src/main/res/values-lt/strings.xml index 3512244dd..79226a2e0 100644 --- a/app/src/main/res/values-lt/strings.xml +++ b/app/src/main/res/values-lt/strings.xml @@ -40,7 +40,7 @@ Išsaugoti Apie Pridėti - Išjungta + Išjungta DUK Išvaizda Formatas @@ -50,12 +50,12 @@ Naudokti grynai juodą tamsią temą Paprastas, racionalus „Android“ muzikos grotuvas. Muzikos grojimas - Kraunama muziką - Peržiūrėti ir valdyti muzikos grojimą + Kraunama muziką + Peržiūrėti ir valdyti muzikos grojimą Žanrai Bandykite dar kartą Suteikti - Kraunama muzika + Kraunama muzika Kraunama jūsų muzikos biblioteka… Bibliotekos statistika Rožinis @@ -74,12 +74,12 @@ Nežinomas Atlikėjas Albumo viršelis Tamsiai Violetinė - Stebėjimas muzikos biblioteką - Stebima, ar jūsų muzikos bibliotekoje yra pakeitimų… + Stebėjimas muzikos biblioteką + Stebima, ar jūsų muzikos bibliotekoje yra pakeitimų… Išmaišyti Išmaišyti viską - Atkurta grojimo būsena - Išsaugota grojamo būsena + Atkurta grojimo būsena + Išsaugota grojamo būsena \@android:string/atšaukti Peržiūrėti per „Github“ Rodyti diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index cf13160c7..e54c25752 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -29,7 +29,7 @@ Toegevoegd aan de wachtrij Ga naar artiest Ga naar album - Staat gered + Staat gered Toevoegen Opslaan Geen Mappen @@ -122,7 +122,7 @@ Schijf %d %d kbps +%.1f dB - Muziekweergave bekijken en regelen + Muziekweergave bekijken en regelen %d Hz Bekijk eigenschappen Naam @@ -144,7 +144,7 @@ Totale duur: %s Shuffle Alles \@android:string/ok - Uit + Uit Altijd beginnen met spelen als een headset is aangesloten (werkt mogelijk niet op alle apparaten) Schakel shuffle aan of uit Kan afspeelstatus wissen @@ -163,7 +163,7 @@ Bij het afspelen van item details Ronde modus Afgeronde hoeken op extra UI-elementen inschakelen (vereist dat albumhoezen afgerond zijn) - Staat gerestaureerd + Staat gerestaureerd Bibliotheekstatistieken Verander de zichtbaarheid en volgorde van bibliotheek-tabbladen Headset automatisch afspelen @@ -191,7 +191,7 @@ Albums geladen: %d Artiesten geladen: %d Genres geladen: %d - Muziek aan het laden + Muziek aan het laden Album Looptijd Aantal Liedjes diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 2d58a251b..b4bafe3fc 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -115,7 +115,7 @@ Tamanho Taxa de bits Taxa de amostragem - Estado salvo + Estado salvo Altere a visibilidade e a ordem das guias da biblioteca Tema preto Use um tema escuro puro preto diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index e7edff0e0..754255428 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -3,7 +3,7 @@ Простой и рациональный музыкальный проигрыватель. Воспроизведение - Настройки воспроизведения + Настройки воспроизведения Повторить попытку Разрешить @@ -34,7 +34,7 @@ Добавлено в очередь Перейти к исполнителю Перейти к альбому - Позиция сохранена + Позиция сохранена Добавить Сохранить Нет папок @@ -70,7 +70,7 @@ Воспроизводить при подключении Всегда начинать воспроизведение при подключении наушников (может работать не на всех устройствах) Выравнивание громкости - Выкл. + Выкл. По треку По альбому Предпочитать альбом, если он воспроизводится @@ -149,10 +149,10 @@ %d альбомов %d альбомы - Музыка загружается - Загрузка музыки + Музыка загружается + Загрузка музыки Загрузка музыкальной библиотеки… - Мониторинг музыкальной библиотеки + Мониторинг музыкальной библиотеки Перемешать Перемешать всё \@android:string/ok @@ -162,7 +162,7 @@ Битрейт Диск Трек - Состояние восстановлено + Состояние восстановлено \@android:string/cancel Внимание: Изменение предусилителя на большое положительное значение может привести к появлению искажений на некоторых звуковых дорожках. Свойства @@ -202,8 +202,8 @@ Ogg Концертный альбом Концерт - Мониторинг изменений в музыкальной библиотеке… - Состояние очищено + Мониторинг изменений в музыкальной библиотеке… + Состояние очищено Папки с музыкой Включить Альбом ремиксов diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index 4563028b4..54d55d879 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -73,17 +73,17 @@ Bit hızı Örnek hızı Müzik Çalma - Müzik çalmayı görüntüle ve kontrol et + Müzik çalmayı görüntüle ve kontrol et Android için basit, rasyonel bir müzik çalar. - Müzik Yükleniyor + Müzik Yükleniyor Müzik kitaplığınız yükleniyor… İsim Sanatçı Albüm Yıl Süre - Kapalı - Durum kaydedildi + Kapalı + Durum kaydedildi OxygenCobalt tarafından geliştirildi Siyah tema Kitaplık istatistikleri @@ -191,7 +191,7 @@ Camgöbeği Deniz mavisi Ek arayüz öğelerinde yuvarlatılmış köşeleri etkinleştirir (Albüm kapaklarının yuvarlatılmış olmasını gerektirir) - Durum geri yüklendi + Durum geri yüklendi Önceden kaydedilmiş oynatma durumunu geri getirir (varsa) Yuvarlak mod Oynatma durumunu eski haline getir @@ -199,9 +199,9 @@ Etiket kalitesini artırır, ancak daha uzun yükleme süreleri gerektirir Hiçbir durum geri getirelemedi Tekrarda duraklat - Müzik yükleniyor - Müzik kitaplığı denetleniyor - Müzik kitaplığı değişiklikler için denetleniyor… + Müzik yükleniyor + Müzik kitaplığı denetleniyor + Müzik kitaplığı değişiklikler için denetleniyor… Otomatik yeniden yükleme Müzik kitaplığınız her değiştiğinde yeniden yükler (Deneysel) Eklendiği tarih diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 707f931ef..497b36d3b 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -3,7 +3,7 @@ 一款简洁、克制的 Android 音乐播放器。 音乐播放 - 查看并控制音乐播放 + 查看并控制音乐播放 重试 授予 @@ -34,7 +34,7 @@ 已加入播放队列 查看艺术家 查看专辑 - 已保存播放进度 + 已保存播放进度 添加 保存 没有文件夹 @@ -86,7 +86,7 @@ 立即保存当前播放状态 重新加载音乐 可能会抹除播放状态 - 关闭 + 关闭 没有找到音乐 加载音乐失败 @@ -181,7 +181,7 @@ 高级音乐编码 (AAC) 已加载专辑数量:%d 没有采样率信息 - 音乐加载中 + 音乐加载中 正在加载您的音乐库…… 碟片 时长 @@ -206,11 +206,11 @@ 自动重载中 发生更改时自动重新加载您的曲库(实验性) 打开队列 - 正在加载音乐 - 正在监测曲库 - 正在监测您的曲库以查找更改… - 已清除状态 - 已恢复状态 + 正在加载音乐 + 正在监测曲库 + 正在监测您的曲库以查找更改… + 已清除状态 + 已恢复状态 忽略 MediaStore 标签 EP 专辑 EP 专辑 diff --git a/app/src/main/res/values/settings.xml b/app/src/main/res/values/settings.xml index 2976ffc43..49f20c66e 100644 --- a/app/src/main/res/values/settings.xml +++ b/app/src/main/res/values/settings.xml @@ -107,7 +107,7 @@ - @string/lbl_off + @string/set_replay_gain_off @string/set_replay_gain_track @string/set_replay_gain_album @string/set_replay_gain_dynamic @@ -128,7 +128,7 @@ 0xA11A 0xA11B - -1 + -2147483648 0xA103 0xA104 0xA105 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 52138e0b9..4926afcbe 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -4,13 +4,17 @@ A simple, rational music player for android. - Music playback - Music loading - View and control music playback + + Music loading + + Loading music + + Monitoring music library + Retry Grant @@ -49,11 +53,14 @@ Compilation Soundtracks Soundtrack + Mixtapes + Mixtape Live + Remixes Artist @@ -62,8 +69,11 @@ Genre Genres + Search + Filter + All Sort @@ -107,9 +117,17 @@ @android:string/ok @android:string/cancel + Add + Save - Off + + + State saved + + State cleared + + State restored About Version @@ -121,20 +139,14 @@ - Loading music - Loading your music library… - Monitoring music library - Monitoring your music library for changes… + Load and check for new music + View and control music playback + Loading your music library… + Monitoring your music library for changes… Added to queue Developed by OxygenCobalt Search your library… - - State saved - - State cleared - - State restored @@ -158,7 +170,7 @@ Increases album cover quality, but results in longer loading times and higher memory usage Round mode Enable rounded corners on additional UI elements (Requires album covers to be rounded) - Playback bar action + Playback bar secondary action Skip to next Repeat mode @string/lbl_shuffle @@ -170,6 +182,7 @@ Headset autoplay Always start playing when a headset is connected (may not work on all devices) ReplayGain + Off Prefer track Prefer album Prefer album if one is playing @@ -336,4 +349,4 @@ %d album %d albums - \ No newline at end of file + diff --git a/app/src/main/res/xml-v31/widget_info.xml b/app/src/main/res/xml-v31/widget_info.xml index 78fac7356..3aea33e3b 100644 --- a/app/src/main/res/xml-v31/widget_info.xml +++ b/app/src/main/res/xml-v31/widget_info.xml @@ -1,6 +1,6 @@