• Matt Jones's avatar
    Add ApplicationViewportInsetProvider · 0060e84c
    Matt Jones authored
    This patch adds a uniform mechanism for controlling the viewport insets
    for the application. The general approach is such that a feature using
    the inset system doesn't have to worry about the specific tab it is
    on, only whether there should currently be an inset. In more detail,
    this patch does the following:
    
    - The WindowAndroid owns the new ApplicationViewportInsetSupplier.
      - This object hosts basic logic to determine what the window inset
        should be given multiple providers. Currently this is just the
        max(...).
    - Tabs register themselves as observers of the AVIS from the
      TabViewAndroidDelegate associated with their web contents.
    - The TabViewAndroidDelegate hosts the actual inset functionality
      and reparenting and visibility logic. The tab is ignorant to this.
    - The previously public insetViewportBottom has been made private and
      its only user converted to use the new system.
    
    Bug: 1048183
    Change-Id: I4e6b63e0e9faf29694dd8957bddd757db5b1f005
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2064597Reviewed-by: default avatarTed Choc <tedchoc@chromium.org>
    Commit-Queue: Matthew Jones <mdjones@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#749177}
    0060e84c
chrome_junit_test_java_sources.gni 20.5 KB