Safari 5 : empêcher les rechargements automatiques

Avec Safari 5.1 dans Lion, un problème est récurrent chez certains utilisateurs (dont moi) : le navigateur recharge parfois sans raisons tous les onglets, ce qui est très énervant.

La raison est simple : depuis Lion, Safari fonctionne en fait avec un processus pour le navigateur (l’interface) et un second pour le rendu des pages elles-mêmes. C’est intéressant : si le rendu plante, le navigateur ne plante pas. Sauf que si le rendu plante, tous les onglets sont rechargés, les onglets ne sont pas visiblement pas séparés.

Il y a une solution pour éviter le problème, mais elle a des défauts. En fait, il « suffit » de désactiver la séparation des processus. Sous Lion, ça a plusieurs défauts : certaines extensions ne fonctionnent plus et surtout une partie des gestes sur le trackpad et la souris ne fonctionnent plus.

Pour la modification, il faut d’abord taper une commande dans le Terminal. Il faut la taper et ensuite (re)lancer Safari.

defaults write com.apple.Safari IncludeInternalDebugMenu 1

Une fois Safari lancé, il faut se déplacer dans le (nouveau) menu « Debug » et décocher « Use Multi-process Windows ». Il faut ensuite relancer Safari pour que les modifications prennent effet. Si ça fonctionne, le nom des pages sera suivi de [SP].

Pour faire disparaître le menu, une autre commande.

defaults delete com.apple.Safari IncludeInternalDebugMenu