• Nate Fischer's avatar
    AW: implement support lib callbacks · f3b8b74e
    Nate Fischer authored
    This implements support library callbacks (WebViewclientCompat). This
    creates a new layer (support_library/callback) which the glue layer
    depends on. This dependency lets us instantiate a
    SupportLibWebViewContentsClientAdapter inside setWebViewClient(), and
    benefit from the glue layer's parameter cleanup code (e.g., in
    onReceivedError2()).
    
    The support_library/callback glue must be a separate layer from
    support_library/ glue, as that already depends on the webkit glue to
    initiate state. Implementing callbacks as a separate target avoids the
    circular dependency.
    
    This refactors the (post-L) glue layer callback methods to take the
    following precedence:
    
     1. SupportLibWebViewContentsClientAdapter (if it supports the callback)
     2. WebViewClient (if on the appropriate platform level)
     3. Default behavior (implementation provided by the glue layer)
    
    This implements both category 1 and 2 APIs.
    
    Design doc: http://go/wv-support-library-callbacks
    
    Bug: 781764
    Test: manual - built test application with latest support-lib changes
    Change-Id: I21e28493873e670cfd428c7eeef12b0e212aeec4
    Reviewed-on: https://chromium-review.googlesource.com/989015Reviewed-by: default avatarRichard Coles <torne@chromium.org>
    Reviewed-by: default avatarGustav Sennton <gsennton@chromium.org>
    Commit-Queue: Nate Fischer <ntfschr@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#548538}
    f3b8b74e
glue.gni 900 Bytes