AngularJS + Safari: força a página a rolar para o topo quando as páginas mudarem

Estou tendo um comportamento de rolagem estranho, somente safari, usando o AngularJS.

Sempre que o usuário folheia as páginas, as páginas estão sendo alteradas como se fossem AJAX. Eu entendo que eles estão em AngualrJS, mas o comportamento resultante é que o navegador não rola para o topo quando o usuário muda de página.

Eu tentei forçar o navegador a rolar para o topo sempre que um novo controlador está sendo usado, mas não parece fazer nada.

Estou executando o seguinte JS no topo de cada controlador:

document.body.scrollTop = document.documentElement.scrollTop = 0;

Este também é um bug somente do Safari, todos os outros navegadores irão rolar para o topo quando a página mudar. Alguém encontrou um problema semelhante ou pensa em uma maneira melhor de resolvê-lo?