philharmoniedeparis / metascore-library

The front-end library that powers the metaScore authoring tool.
https://metascore.philharmoniedeparis.fr
CeCILL Free Software License Agreement v2.1
0 stars 0 forks source link

Impossibilité d'éditer du texte dans CKEditor #567

Closed rbailly closed 1 year ago

rbailly commented 1 year ago

Il m'est impossible de rentrer du texte dans une zone de texte, sauf en mode "source". https://next-metascore.philharmoniedeparis.fr/fr/editor/jRGB Sur Chrome 107

semiaddict commented 1 year ago

J'arrive effectivement à reproduire, mais pas sous Firefox !

semiaddict commented 1 year ago

Cela semble être lié à des modifications dans CKEditor. J'arrive en effet à le faire fonctionner plus ou moins correctement (avec tout de même quelques petits couacs) sour Chrome avec la version 34.2.0, mais pas avec les versions 35.x.x .

Selon une discussion dans le github de CKEditor (voir https://github.com/ckeditor/ckeditor5/issues/12400#issuecomment-1313429469), il n'est pas prévu de supporter l'utilisation de CKEditor dans une iframe.

L'utilisation d'une iframe dans l'éditeur de metaScore est un moyen de séparer les CSS du player de l'éditeur (en particulier la CSS personnalisée). D'autres technologies HTML, plus récentes, peuvent être utilisées pour encapsuler la CSS, notamment le Shadow DOM, mais elles risquent d'engendrer des problèmes similaires qu'avec les iframes !

Je vais essayer de trouver la raison de ces dysfonctionnements sous Chrome, mais cela risque de prendre pas mal de temps.

semiaddict commented 1 year ago

Des discussions sont en cours sur les specs du W3C pour résoudre les problèmes de sélection dans les Shadow DOM, mais cela risque de prendre quelques temps avant d'être implémenté dans les navigateurs puis d'être utilisé par CKEditor.

Je ne sais donc pas trop comment faire pour le moment. Je peux revenir à la version 34.2.0 de CKEditor5, mais même avec cette version la sélection "saute" sous Chrome après que l'on est effectué une modification dans le texte.

semiaddict commented 1 year ago

J'ai ramené CKEditor à la version 34.2.0. Cela résout le problème de la saisie, mais n'est toujours pas optimal sous Chrome.

Voici des captures d'écran montrant la différence entre Firefox et Chrome. On peut voir que la sélection dans Chrome est "perdue/cachée" dès qu'on clique sur un bouton dans l'éditeur (le bouton de basculement en gras ici).

Sous Firefox: firefox_On9i4rFxSh

Sous Chrome: chrome_m04uKNjN5u

semiaddict commented 1 year ago

Je ferme ce cas car rien de plus ne peut être fait pour le moment.