Files
twblue/context.md
2026-02-01 14:57:17 +01:00

1.9 KiB

Contexto de trabajo

Objetivo final

Igualar la experiencia de Bluesky con Mastodon en la interfaz (menús, diálogos, buffers y accesos), manteniendo las diferencias sólo cuando el protocolo lo exige. Mastodon es la referencia.

Estado actual

Se está siguiendo falta.md por orden. Los puntos 1 a 8 y 10-11 están marcados como "Hecho". Punto 9 parcialmente completado.

Cambios recientes (sesión actual)

  • Perfil de usuario mejorado: imágenes de avatar/banner, botones de timeline (posts, followers, following).
  • Acciones de usuario en perfil: follow, unfollow, mute, unmute, block, unblock.
  • Autocompletado añadido al diálogo de acciones de usuario.
  • Atajos de teclado (&) añadidos a botones del perfil.
  • Persistencia de búsquedas implementada (se guardan y restauran al reiniciar).
  • Paginación completa en todos los buffers: HomeTimeline, FollowingTimeline, NotificationBuffer, LikesBuffer, MentionsBuffer, SentBuffer, UserTimeline, SearchBuffer.

Cambios anteriores

  • Activado autocompletado en el diálogo "Ver timeline..." y validación de usuario.
  • Reposts/Likes ahora abren buffers con paginación bajo "Timelines".
  • Restauración de followers/following propios sin duplicar.
  • Estructura del árbol: se añadió "Searches" en Bluesky.
  • Menús: para Bluesky, las opciones no aplicables se ocultan usando el sentinel "HIDE".

Puntos pendientes

Ninguno. Todos los puntos de falta.md están completados.

Notas técnicas

  • update_menus en src/controller/mainController.py interpreta "HIDE" para ocultar entradas.
  • Buffers de Reposts/Likes usan PostUserListBuffer con cursor para paginación.
  • Las búsquedas ahora se guardan en session.settings["other_buffers"]["searches"].
  • Perfil de usuario descarga imágenes en thread separado para no bloquear UI.
  • Paginación usa patrón: self.next_cursor guardado en start_stream(), usado en get_more_items().
  • El menú "load_previous_items" activa get_more_items() en el buffer actual.