| Index: chrome/browser/ui/toolbar/toolbar_actions_bar.cc
|
| diff --git a/chrome/browser/ui/toolbar/toolbar_actions_bar.cc b/chrome/browser/ui/toolbar/toolbar_actions_bar.cc
|
| index 546acd47f92fd9d1fdeb97a5689438e0ac188593..cb62c0c78411afa01160c687354f8f9ddb1f1b1e 100644
|
| --- a/chrome/browser/ui/toolbar/toolbar_actions_bar.cc
|
| +++ b/chrome/browser/ui/toolbar/toolbar_actions_bar.cc
|
| @@ -493,6 +493,8 @@ void ToolbarActionsBar::OnAnimationEnded() {
|
| // message bubble, or to show a popup.
|
| if (pending_extension_bubble_controller_) {
|
| MaybeShowExtensionBubble(std::move(pending_extension_bubble_controller_));
|
| + } else if (pending_toolbar_bubble_controller_) {
|
| + ShowToolbarActionBubble(std::move(pending_toolbar_bubble_controller_));
|
| } else if (!popped_out_closure_.is_null()) {
|
| popped_out_closure_.Run();
|
| popped_out_closure_.Reset();
|
| @@ -575,6 +577,16 @@ void ToolbarActionsBar::RemoveObserver(ToolbarActionsBarObserver* observer) {
|
| observers_.RemoveObserver(observer);
|
| }
|
|
|
| +void ToolbarActionsBar::ShowToolbarActionBubble(
|
| + scoped_ptr<ToolbarActionsBarBubbleDelegate> bubble) {
|
| + DCHECK(bubble->GetAnchorActionId().empty() ||
|
| + GetActionForId(bubble->GetAnchorActionId()));
|
| + if (delegate_->IsAnimating())
|
| + pending_toolbar_bubble_controller_ = std::move(bubble);
|
| + else
|
| + delegate_->ShowToolbarActionBubble(std::move(bubble));
|
| +}
|
| +
|
| void ToolbarActionsBar::MaybeShowExtensionBubble(
|
| scoped_ptr<extensions::ExtensionMessageBubbleController> controller) {
|
| controller->HighlightExtensionsIfNecessary(); // Safe to call multiple times.
|
|
|