github Arturo254/OpenTune 2.0.6

23 hours ago

OpenTune 2.0.6

Logo de OpenTune
Última Versión Licencia PRs Welcome GitHub Stars GitHub Forks Issues

📌 Notas de la Versión 2.0.6


📌 Cambios Principales

Discord Rich Presence (RPC) y ajustes

UI/UX y preview mejorado

  • Se reemplazó el antiguo RichPresence por EnhancedRichPresence, con:

    • Gradiente de fondo animado al reproducir música.
    • Layout optimizado con mejor tipografía, espaciado e íconos.
    • Indicador de “Playing” cuando la canción está activa.
    • Avatar del artista sobre la miniatura de la canción con borde limpio.
    • Botones de acción (“Listen on YouTube Music”, “Visit OpenTune”) con iconos y mejor disposición.
  • Barra de progreso EnhancedProgressBar con 3 estilos (DEFAULT, SQUIGGLY, SLIM), mostrando tiempo actual y total.

  • Sección de cuenta rediseñada:

    • Icono de Discord grande, cambia de color según estado de login.
    • Botón de login ahora es FilledTonalButton.
  • Banner informativo superior con color primaryContainer y tipografía más clara.

Lógica y preferencias

  • Nueva preferencia SliderStyleKey para personalizar el estilo de la barra de progreso.
  • Estado de reproducción (isPlaying) y duración de la canción ahora impulsan las animaciones del preview.
  • Opción useDetails (discord_use_details) permite mostrar título o artista de manera destacada.
  • Texto clickeable para stateUrl y detailsUrl.

Refactor de la librería kizzy

  • Migración a Kotlin (src/main/kotlin) y actualización a Java 21.
  • Endpoint de proxy de imágenes actualizado.
  • Manejo seguro de errores con runCatching en ApiService.
  • Se removió la funcionalidad de subir imágenes, ya no utilizada.

🎨 Preferencias y UI general

Refactor de Preference Components

  • PreferenceEntry modernizado:

    • Iconos con fondo tintado y esquinas redondeadas.
    • Espaciado y padding mejorados, alineado a Material 3.
    • Todo el entry está recortado con esquinas redondeadas.
  • Nuevos composables:

    • PreferenceGroup y PreferenceCategory para agrupar preferencias en tarjetas con título.
    • PreferenceGroupTitle ya no está en mayúsculas y tiene padding ajustado.
  • EnumPreference ahora permite personalizar los valores mostrados.

  • Animación de tamaño (animateContentSize) para transiciones más suaves.

Limpieza de código

  • Eliminada la función logErrorToDownloads, reemplazada por e.printStackTrace().
  • SwitchPreference movida a paquete común ui.component.

🎤 Letras y reproducción de música

ArtistScreen y ArtistSongsScreen

  • ArtistScreen:

    • Cabecera estilo YouTube Music, con fondo full-width y overlay degradado.
    • Imagen circular del artista y nombre prominente.
    • Botones de acción: Subscribe, Shuffle, Share, ahora con estilo consistente y adaptativo.
    • TopAppBar transparente solo cuando se está en la parte superior de la lista.
  • ArtistSongsScreen:

    • Barra de búsqueda integrada en el TopAppBar.
    • Filtrado de canciones por título o artista.
    • Multi-selección por long-press, con contador de elementos seleccionados.
    • TopAppBar contextual: cambia iconos y acciones según modo (búsqueda o multi-select).
    • VerticalFastScroller añadido para listas largas.

Letras

  • Mejoras de rendimiento, caché de letras y scroll automático más suave.
  • Funcionalidad de compartir como imagen: selección de colores, vista previa en tiempo real y generación de bitmap.
  • Modos fullscreen y flotante, con header dinámico y control de back handler.

⚙️ SettingsCategory Composable

  • Nuevo composable SettingsCategory para agrupar opciones de configuración con estilo uniforme Material 3.

  • SettingsCategoryItem permite:

    • Icono, título, descripción, contenido trailing, badges y resaltar elementos.
    • Click handlers configurables.
  • Reemplazo de PreferenceEntry por SettingsCategory en SettingsScreen y ChangelogButton.

  • Categorías de configuración más limpias y visualmente consistentes.


🌐 LocaleManager

  • Icono de idioma actualizado: languagetranslate.
  • Se eliminó el tint dinámico; ahora usa el tint por defecto o heredado del padre.

Otros cambios importantes

  • Dependencias actualizadas en libs.versions.toml y build.gradle.kts (incluyendo extractor, uiAndroid).
  • Limpieza general de código y refactors menores en todos los archivos de UI.
  • Preparación de la base para futuras integraciones y mejoras en RPC, letras, y theming.

📊 Estadísticas de la Versión:

  • 🔄 Lanzada: Fecha de Lanzamiento
  • 📦 Descargas: Descargas
  • 🛠️ Commits: Commits

🤝 Colaboración de Código Abierto

OpenTune es un proyecto de código abierto y siempre estamos buscando colaboradores para mejorar el proyecto. ¡Tu contribución es bienvenida!

🛠️ Cómo Contribuir:

  1. Haz un fork del repositorio: Clona el repositorio para trabajar en mejoras.
  2. Envía pull requests: Una vez que hayas realizado tus cambios, envía un pull request para que podamos revisar y fusionar tus contribuciones.
  3. Explora y mejora el código fuente: Si encuentras algún error o tienes una idea para mejorar el proyecto, ¡no dudes en compartirla!

📄 Licencia

Este proyecto está bajo la licencia MIT y GPL 3


📝 Registro de Cambios

Full Changelog: 2.0.5...2.0.6


Hecho con amor
OpenTune: Tu música. Tu ritmo. Tu control.

Don't miss a new OpenTune release

NewReleases is sending notifications on new releases.