diff --git a/CHANGELOG-v10.1.6.md b/CHANGELOG-v10.1.6.md
new file mode 100644
index 0000000..649b77f
--- /dev/null
+++ b/CHANGELOG-v10.1.6.md
@@ -0,0 +1,42 @@
+# StreamPlayer v10.1.6 - Corrección de Control Remoto y Scrollbar
+
+## Correcciones Implementadas
+
+### 1. Control Remoto - Prevención de Navegación
+- **Problema**: Al presionar el botón abajo del control remoto en el último evento, se iba a la sección de canales
+- **Solución**: Agregado `setOnKeyListener` para interceptar teclas de navegación
+- Ahora intercepta `KEYCODE_DPAD_DOWN` cuando está en el último elemento
+- Combina scroll listener táctil + manejo de teclas del control remoto
+
+### 2. Barra de Scroll Más Visible
+- **Problema**: La barra de seguimiento no era visible
+- **Solución**:
+ - Color del thumb: Blanco sólido (#FFFFFFFF) - antes 80%
+ - Ancho aumentado a 12dp (antes 8dp)
+ - Radio de esquinas: 6dp (antes 4dp)
+ - Track oscuro agregado (#1A1A1A)
+ - `scrollbarAlwaysDrawVerticalTrack="true"` para siempre visible
+
+## Archivos Modificados
+
+### MainActivity.java
+- Import agregado: `android.view.KeyEvent`
+- `setOnKeyListener` agregado en `showEvents()` para interceptar DPAD_DOWN
+- Combina con scroll listener existente para cobertura completa
+
+### scrollbar_vertical.xml
+- Color cambiado a blanco sólido (#FFFFFFFF)
+- Ancho: 12dp
+- Radio: 6dp
+
+### activity_main.xml
+- `scrollbarSize="12dp"` (antes 8dp)
+- `scrollbarTrackVertical="@color/scrollbar_track"` agregado
+- `scrollbarAlwaysDrawVerticalTrack="true"` agregado
+
+### colors.xml
+- Nuevo color: `scrollbar_track` (#1A1A1A)
+
+## Compatibilidad
+- Android TV con control remoto
+- Versión mínima: API 21+
diff --git a/app/src/main/java/com/streamplayer/MainActivity.java b/app/src/main/java/com/streamplayer/MainActivity.java
index ee9d75b..774225a 100644
--- a/app/src/main/java/com/streamplayer/MainActivity.java
+++ b/app/src/main/java/com/streamplayer/MainActivity.java
@@ -7,6 +7,7 @@ import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
+import android.view.KeyEvent;
import android.view.View;
import android.widget.Button;
import android.widget.ProgressBar;
@@ -188,18 +189,36 @@ public class MainActivity extends AppCompatActivity {
refreshButton.setVisibility(View.VISIBLE);
contentList.setLayoutManager(eventLayoutManager);
contentList.setAdapter(eventAdapter);
- // Add scroll listener to prevent scrolling from Events to Channels section
+ // Clear existing listeners
contentList.clearOnScrollListeners();
+
+ // Prevent navigation out of events section via remote control
+ contentList.setOnKeyListener((v, keyCode, event) -> {
+ if (event.getAction() == KeyEvent.ACTION_DOWN) {
+ if (keyCode == KeyEvent.KEYCODE_DPAD_DOWN) {
+ int totalItemCount = eventLayoutManager.getItemCount();
+ if (totalItemCount > 0) {
+ int lastVisiblePosition = eventLayoutManager.findLastVisibleItemPosition();
+ // Prevent going down if we're at or near the last item
+ if (lastVisiblePosition >= totalItemCount - 1) {
+ // Consume the event to prevent navigation
+ return true;
+ }
+ }
+ }
+ }
+ return false;
+ });
+
+ // Also prevent scroll-based navigation
contentList.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
- // Only prevent downward scroll when at the last COMPLETELY VISIBLE item
if (dy > 0) { // Scrolling down
int totalItemCount = eventLayoutManager.getItemCount();
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();
}
@@ -207,6 +226,7 @@ public class MainActivity extends AppCompatActivity {
}
}
});
+
if (cachedEvents.isEmpty()) {
loadEvents(false);
} else {
diff --git a/app/src/main/res/drawable/scrollbar_vertical.xml b/app/src/main/res/drawable/scrollbar_vertical.xml
index 8337823..0e24e05 100644
--- a/app/src/main/res/drawable/scrollbar_vertical.xml
+++ b/app/src/main/res/drawable/scrollbar_vertical.xml
@@ -1,7 +1,7 @@
-
-
-
+
+
+
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 9c294c4..0509337 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -131,7 +131,9 @@
android:scrollbars="vertical"
android:scrollbarStyle="insideInset"
android:scrollbarThumbVertical="@drawable/scrollbar_vertical"
- android:scrollbarSize="8dp"
+ android:scrollbarTrackVertical="@color/scrollbar_track"
+ android:scrollbarSize="12dp"
+ android:scrollbarAlwaysDrawVerticalTrack="true"
android:scrollbarFadeDuration="0"
android:nextFocusLeft="@id/section_list"
tools:listitem="@layout/item_channel" />
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 9231426..5bf0770 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -10,4 +10,7 @@
#FFC107
#FFD54F
#FF9800
+
+
+ #1A1A1A