AndroidのChromeだけ固まる(止まる)ってどういうこと?!

AndroidのChromeだけ固まる(止まる)ってどういうこと?!

たまたま、前記事「WordPress:テンプレート階層がややこしすぎる」の投稿時にプラグイン Highlighting Code Block を導入しましたら、Android の Chrome だけ固まってしまうトラブルに見舞われました。

まだ根本的な解決には至っていませんがその顛末です。

01経緯

前記事「WordPress:テンプレート階層がややこしすぎる」にも少し書いてありますが、表示が止まってしまうのは、Android の Chrome だけです。原因を特定するためにやったことは、

  • デスクトップでは問題なし
  • Android の Firefox, 他のブラウザでは問題なし
  • iPhone の Chrome では問題なし
  • 該当Android Chrome のキャッシュ、データ、アプリを削除するも解消せず
  • 実機を DevTools で調べますと、ほぼ一定のところで停止することは判明するも、原因は特定できず

ということで、直前に導入した Highlighting Code Block を無効化したところ、表示も止まらなくなったということです。その後、

  • Highlighting Code Block 意外の Javascript をすべて外すも解消せず
  • WordPress のテーマを変更するも解消せず

現在のところ、他の Android での確認が出来ていませんので、このトラブルが Android の Chrome 全体のものか、私の Android Xiaomi Mi Mix 2s 個別のものかはわからないという状態です。

02Prism.js で試してみる

プラグイン Highlighting Code Block は Prism.js を使っていますので、直接導入して試してみました。

かなりおかしなことが起きます。

まず、Highlighting Code Block 導入時はうんともすんとも動かなかったのですが、Prism.js 直接ですと10秒ほどで復帰したりします。したりするというのは症状自体が一定しないという意味です。

で、さらにいろいろ Prism.js のプラグインを入れたりして試してみますと、

  • プラグインなしでは復帰までの時間が長い
  • プラグインの Toolbar を導入すると、症状が出なくなる
    ただし、<pre></pre> の要素をタップすると数秒固まる
    タップしない限り、コードの横スクロールなどに問題はない

Toolbar は Copy to Clipboard Button をクリックしますと同時にチェックが入ります。Copy to Clipboard Button を外しても症状は出なくなります。他のプラグインでは数秒固まる症状は変わりません。

どういうことなんでしょう?

03Chrome のバグ?

こんな投稿がありました。

今年の2月16日の投稿で同じ症状が報告されています

これもそうですね。

Android Chrome のバグのようで、9月時点で解消されていないようです。

私の Android のバージョンは 10 です。えらく古いですね(笑)。Chrome は 107.0.5304.91 です。こちらは最新(かな?)です。

さて、シンタックスハイライトはどうしましょう?