fix: v10.1.5 - corregir scroll listener, barra visible y URL única

Problemas corregidos:

1. Scroll Listener Corregido (último evento cortado)
   - Cambiado de findFirstVisibleItemPosition() a findLastCompletelyVisibleItemPosition()
   - Ahora el scroll solo se detiene cuando el último elemento está completamente visible
   - Antes: el último evento aparecía solo a la mitad

2. Barra de Scroll Más Visible
   - Opacidad aumentada de #4DFFFFFF (30%) a #CCFFFFFF (80%)
   - Ancho de barra: 8dp (antes no definido)
   - Estilo cambiado de outsideOverlay a insideInset
   - scrollbarFadeDuration="0" para siempre visible
   - Radio de esquinas: 4dp (antes 2dp)

3. URL Única (eliminar bloqueos de ISP)
   - Eliminado sistema de fallback múltiples URLs
   - Ahora usa solo: https://streamtp10.com/eventos.json
   - Eliminado KEY_WORKING_URL y lógica de fallback
   - Código más simple y eficiente

Archivos modificados:
- app/src/main/java/com/streamplayer/EventRepository.java (simplificado)
- app/src/main/java/com/streamplayer/MainActivity.java (scroll fix)
- app/src/main/res/drawable/scrollbar_vertical.xml (más visible)
- app/src/main/res/layout/activity_main.xml (scrollbar config)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Apple
2026-02-09 21:45:49 -03:00
parent 97adc46509
commit 19c31ebf1b
5 changed files with 64 additions and 53 deletions

View File

@@ -194,16 +194,15 @@ public class MainActivity extends AppCompatActivity {
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
// Only prevent downward scroll when at the last item
// Only prevent downward scroll when at the last COMPLETELY VISIBLE item
if (dy > 0) { // Scrolling down
int visibleItemCount = eventLayoutManager.getChildCount();
int totalItemCount = eventLayoutManager.getItemCount();
int firstVisibleItemPosition = eventLayoutManager.findFirstVisibleItemPosition();
// Check if we're at the last item
if (firstVisibleItemPosition + visibleItemCount >= totalItemCount) {
// Prevent further scrolling by stopping the scroll
recyclerView.stopScroll();
if (totalItemCount > 0) {
int lastCompletelyVisiblePosition = eventLayoutManager.findLastCompletelyVisibleItemPosition();
// Only stop scroll if we're at the last completely visible item
if (lastCompletelyVisiblePosition == totalItemCount - 1) {
recyclerView.stopScroll();
}
}
}
}