Mac の Chrome で Overleaf を使っているときに文字が打てなくなるバグの原因を突き止めた


TL;DR

  • Chrome で Overleaf を使っていたら時々入力を受け付けなくなる状況が発生していた
  • 調べたら、Mac の日本語入力システムでテキストを打っていて変換を確定する前に打ち込んでいる文字を全部消すと入力を受け付けなくなる、ということが分かった
  • ゲストモードでは普通に使えたので色々調べてたら、自分の環境では Chrome の画面縮小で 75% 以下にすると発生するバグだと判明した

タイトルが長い。 タイトルが長い場合は得てしてそれで言いたいことが尽きていることが多い。

入力を受け付けなくなるというのがどういう感じか gif を貼っておく。

最初に「おーばーりーふ」と打った際にはまだ入力を確定しておらず、Tab などで変換ができる状態である。 ここで入力を確定せずに「おーばーりーふ」の文字を全て delete で削除する。 すると、そこで何か打とうとしても入力が虚空に消えてしまうという問題である。

簡単な解除方法として、カーソルを一度動かして戻せばまた入力を受け付けてくれるようになる。 また、Safari など他のブラウザではこの問題は発生していない(自分は Safari しか試してないけど)。

Twitter で書いたけどそれほど反応はなく、他の人は発生してないのだろうか?という感じ。 サポートに連絡したが、かな入力のプラグインとか使ってないかというくらいしかコメントをもらえなかったし、known issue なのかもよく分からない。 他のブラウザとかで作業はできて深刻な問題ではないので、まああまり期待せずに待ってくださいという感じだった。

ちなみに環境は以下。そんなに extension は入れないタイプだし悪さをするようなものも思い当たるふしがない。

macOS: Mojave 10.14.6
Google Chrome: Version 78.0.3904.108 (Official Build) (64-bit)

解決

同じ状況に陥っている人があまりいないので、自分の環境が他の人と違う部分があるんだろうなと思って少し真面目に調べてみた。

とりあえずゲストモードで使ってみる。バグは発生しない。 以前 カーソルがずれる問題に対処 したときはフォントが悪さをしてたのでその辺も気にして眺めてみるが、違いはない。 実際 Overleaf 上のフォントは同じフォントであるように見える。

うーんと思って横に並べて見比べながら、ゲストモードは文字サイズが大きくて嫌だなぁなどと考える。 自分のマシンは MacBook (Retina, 12-inch, 2017) で画面が小さいので、一画面の情報量が多くなるように基本的に 75% の表示サイズで Chrome を使っているからである。

そこでふいにページの表示サイズとかあり得るかなと思い立って、おもむろに 80% に上げてみる。バグが発生しない! 逆により小さくするとバグが発生し更にカーソルのズレとかも発生することが分かった。

完全に余談だけど、「〜しない!」みたいなステートメントを見ると「銀の手は消えない!」を思い出すよね。

そういえばあんまり表示サイズを小さくし過ぎると Google 検索の結果表示もバグったりするよなぁなどと思ったりしつつ、一応の解決をみた。 サポートの人にもこの現象を報告して終了。

まとめ

Chrome で Overleaf を使うと結構バグりがちな気がする。 今回はページ表示サイズの問題だった。

ちまちまやってちゃダメだ、ページ表示サイズだってどーんといこうや(?)