FOXA-2239 : la colonne survit à une rafale de D-pad dans Découvrir #1015
No reviewers
Labels
No labels
montee-majeure
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
foXaCe/NuvioTV!1015
Loading…
Reference in a new issue
No description provided.
Delete branch "passe-20261018-190000-colonnerafale"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Résumé
FOXA-2239 — dans Découvrir, une rafale de D-pad haut/bas ne change plus de colonne.
9735a8171FOXA-2239 : la colonne survit a une rafale de D-pad dans DecouvrirPourquoi
Le défilement rapide vertical relève la colonne au départ du geste, en cherchant la carte
focalisée dans les items visibles :
Pendant une rafale, cette carte est déjà sortie de l'écran : la recherche rend
null, et lerepli prend « la dernière carte visible » — donc une autre colonne. Mesuré sur la box le
2026-09-26 : 8 appuis en rafale depuis la colonne 4 ou 5 finissaient en colonne 1 (7 fois sur 8),
et 8 haut ne ramenaient jamais la carte de départ.
Ce qui change
La colonne se déduit de l'index et du nombre de colonnes (
index = ligne × colonnes + colonne) ;le nombre de colonnes se lit sur les débuts de ligne visibles — l'écart entre deux index de
colonne 0 vaut exactement ce nombre. Et si la fonction ne sait pas, on garde la colonne
précédente au lieu de l'écraser par un
null.Les deux fonctions pures vivent dans
ui/screens/search/ColonnesDeLaGrille.kt: les ajouter àl'écran faisait passer le fichier au-dessus du plafond
TooManyFunctionsde detekt — et le plafond araison, un fichier qui porte l'écran et sa géométrie cesse d'être lisible.
Ce qui a été mesuré
5 tests :
null-1→nullSuite complète rejouée : verte en 8m17s. detekt : vert.
⚠ Le banc mesure le calcul de la colonne, pas le geste : la preuve « 8 appuis en rafale ≡ 8
appuis lents » demande la box et la sonde
uiautomatordu rapport deFOXA-2237.Porte jouée par la forge : « Porte / porte* » est le seul contexte qu'exige la protection de
main.Scope boundaries
Les autres grilles qui partagent
dpadVerticalFastScroll(FolderDetailScreen, l'accueil viaModernHomeRowsList) ne sont pas touchées : leurs sites de relevé sont différents, et le ticketdemande la même vérification après celle-ci. Un seul correctif à la fois.