Après la mise à jour vers la version 2.6.0.beta6 (3e1b94c227), la carte utilisateur ne s’ouvre plus sur mobile. J’ai effectué des tests sur meta et aucun problème n’a été constaté. Peut-être que ce problème est dû au fait que notre Discourse est en RTL.
Nous n’avons aucun problème sur ordinateur de bureau, mais sur mobile, toucher l’image de l’utilisateur n’ouvre pas la carte ; il faut toucher à nouveau pour accéder au profil.
Aucun journal d’erreur n’est enregistré…
J’ai effectué le test avec un modèle par défaut sans aucun composant.
Je parviens à reproduire ce problème. Il semble s’agir d’un bug dans R2.
Lorsque l’option :rtl est passée au compilateur, celui-ci exécute le CSS à travers R2, qui applique les transformations magiques pour le RTL.
Cela fonctionne très bien, mais pour une raison inconnue, nous semblons tomber sur un cas limite où R2 renvoie un CSS désordonné. Nous utilisons un motif pour créer un effet de fondu sur les menus de navigation mobiles, qui ressemble à ceci.
Ce n’est pas le seul endroit où nous l’utilisons ; c’est juste un exemple.
Il semble que ce motif dépasse les capacités de R2. Nous appelons une fonction RGBA en lui passant une variable CSS, et nous ajoutons également un arrêt (stop).
Lorsque cela est passé à R2, il renvoie quelque chose comme ceci.
Avec cette option désactivée (même sur un environnement local en RTL), nous obtenons ceci :
Le CSS désordonné perturbe le compilateur et provoque l’effacement de tout le CSS qui suit cette règle, le rendant inutilisable et inapplicable.
Ainsi, plusieurs feuilles de style situées après celle-ci ne sont jamais chargées sur les versions mobiles en RTL. La feuille de style de la carte utilisateur en fait partie.
J’ai essayé de réduire la complexité de ce motif en supprimant les arrêts, et cela semble fonctionner. Nous passons donc de ceci :