Работает более-менее правильно.
Что бы понять как работает, включите камеру телефона, приложите палец к камере и направьте к сильному источнику света.
На экране очень хорошо будет видно пульсацию!
Просто критическая ошибка) Я даже находил программку которая по минидампам памяти находит виновника. Пробовал кучу дампов — программка так и не смогла вывести виновника.
Вот у меня как раз забавное исключение — я пишу приложение просмотра djvu и pdf файлов на моб. платформу ) Так что больше даже Document.
По этому каждая страница может иметь свои размеры.
Есть еще класс Viewport который отвечает за текущую видимую область документа. При скроллинге viewport меняет свою позицию, а также при зуме меняет размеры.