• Elly Fong-Jones's avatar
    views: make BubbleDialogDelegate not a WidgetObserver · 18121992
    Elly Fong-Jones authored
    Presently, BubbleDialogDelegate is a WidgetObserver, and observes both
    its anchor widget and its own widget for various events. There is a
    problem with this: subclasses are unintentionally abusing the fact that
    BubbleDialogDelegate is a WidgetObserver to observe changes to either
    the anchor widget or the bubble widget. Very few of these subclasses:
    
    * Are aware that BubbleDialogDelegate actually observes multiple
      widgets
    * Are aware of the intricacies of when BubbleDialogDelegate starts &
      stops observing widgets
    * Bother to call the BubbleDialogDelegate implementations of the
      WidgetObserver methods from their overrides
    
    Change-Id: I9de0d1429431f33e80b564ad3e545c976d141a7e
    Bug: 1011446
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2227054
    Commit-Queue: Robert Liao <robliao@chromium.org>
    Reviewed-by: default avatarRobert Liao <robliao@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#774700}
    18121992
bubble_dialog_delegate_view.cc 23.1 KB