bind.h, callback.h, callback_forward.h, and callback_helpers.h
moved into /base/functional/. Remove the forwarding headers as
well as do some assorted cleanup related to those headers.
Fixed: 1364441
No-Try: true
Cq-Include-Trybots: luci.chrome.try:mac-chrome,win-chrome,linux-chrome,chromeos-eve-chrome,android-internal-rel
Change-Id: I309149935f721c27f2c3373ef40627c0c1f7537b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4167020
Commit-Queue: Avi Drissman <avi@chromium.org>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Owners-Override: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Owners-Override: Avi Drissman <avi@chromium.org>
Reviewed-by: Peter Boström <pbos@chromium.org>
Auto-Submit: Avi Drissman <avi@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1093705}
While people probably shouldn't add new uses of this pattern much, it
appears in a lot of places in the codebase so it's worth writing up.
Change-Id: Ia21a8597f2aadfe9a202fb6058fc856a2439f6e9
Bug: None
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3642419
Commit-Queue: Elly Fong-Jones <ellyjones@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1002326}
ScopedObserver is being deprecated in favor of two new classes:
- base::ScopedObservation for observers that only ever observe
a single source.
- base::ScopedMultiSourceObservation for observers that do or may
observe more than a single source.
Bug: 1145565
Change-Id: I025c150c0970d4258b8f25b7ec0c2d959866e8a6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2911213
Auto-Submit: Sigurður Ásgeirsson <siggi@chromium.org>
Reviewed-by: François Doray <fdoray@chromium.org>
Commit-Queue: François Doray <fdoray@chromium.org>
Cr-Commit-Position: refs/heads/master@{#885198}
Waiting for a state and waiting for an event are subtly different: for
an event, the waiter *must* be constructed before the event is fired
(or else will spin forever), whereas for a state, a waiter may be
constructed at any point (because the state can be queried).
Update the docs with this differentiation and an example.
Bug: None
Change-Id: Ice984ee861df46d9010986e72779639e6c19e400
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2151470
Commit-Queue: Devlin <rdevlin.cronin@chromium.org>
Reviewed-by: Elly Fong-Jones <ellyjones@chromium.org>
Cr-Commit-Position: refs/heads/master@{#759698}
This document outlines the associated data pattern, and the two most
commonly used implementations of it in Chromium: SupportsUserData and
KeyedService.
Bug: None
Change-Id: I45ad8d2961221fd64022168982f454fe655340fc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2102591
Commit-Queue: Elly Fong-Jones <ellyjones@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#750571}
This change has TabStripModelObserver remember which TabStripModels it
is observing, and unregister from those if necessary on destruction. It
also removes instances of now-unnecessary cleanup code in subclass
destructors.
This change also introduces a new observable event on
TabStripModelObserver: OnTabStripModelDestroyed. This event
notifies observers that the model is being destroyed so
they can do any necessary cleanup. In the future most uses
of TabStripModelObserver::TabStripEmpty() should migrate to
OnTabStripModelDestroyed().
Bug: 991308
Change-Id: Ifed459ec4d88136db4a00e4386dc6c2095048b46
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739552
Commit-Queue: Elly Fong-Jones <ellyjones@chromium.org>
Auto-Submit: Elly Fong-Jones <ellyjones@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#686075}