[DL/PE]: Remove some duplicated code while force unlocking display locks.

This patch refactors the ancestor walk to be a separate class, simplifying
3 call sites in Document.

R=chrishtr@chromium.org, rakina@chromium.org

Bug: 882663
Change-Id: Ifadb6c625b60cb9aca99d4f311adcdbcfc99da91
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1508698
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Reviewed-by: Rakina Zata Amni <rakina@chromium.org>
Commit-Queue: vmpstr <vmpstr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#639969}
3 files changed