Index: chrome/browser/ui/panels/panel_browser_view.cc |
diff --git a/chrome/browser/ui/panels/panel_browser_view.cc b/chrome/browser/ui/panels/panel_browser_view.cc |
index 6aa691255657c980d790b560b1649c54e27a02e4..c4f93943025dc680041e8161e4cabb6ea9214828 100644 |
--- a/chrome/browser/ui/panels/panel_browser_view.cc |
+++ b/chrome/browser/ui/panels/panel_browser_view.cc |
@@ -328,7 +328,8 @@ void PanelBrowserView::DrawAttention() { |
is_drawing_attention_ = true; |
// Bring up the titlebar to get people's attention. |
- if (panel_->expansion_state() == Panel::MINIMIZED) |
+ if (panel_->layout_state() == Panel::DOCKED && |
+ panel_->expansion_state() == Panel::MINIMIZED) |
panel_->SetExpansionState(Panel::TITLE_ONLY); |
GetFrameView()->SchedulePaint(); |
@@ -485,7 +486,8 @@ bool PanelBrowserView::OnTitlebarMouseReleased() { |
// Do not minimize the panel when we just clear the attention state. This is |
// a hack to prevent the panel from being minimized when the user clicks on |
// the title-bar to clear the attention. |
- if (panel_->expansion_state() == Panel::EXPANDED && |
+ if (panel_->layout_state() == Panel::DOCKED && |
+ panel_->expansion_state() == Panel::EXPANDED && |
base::TimeTicks::Now() - attention_cleared_time_ < |
base::TimeDelta::FromMilliseconds(kSuspendMinimizeOnClickIntervalMs)) { |
return true; |
@@ -496,10 +498,16 @@ bool PanelBrowserView::OnTitlebarMouseReleased() { |
base::TimeDelta::FromMilliseconds(kShortClickThresholdMs)) |
return true; |
- Panel::ExpansionState new_expansion_state = |
- (panel_->expansion_state() != Panel::EXPANDED) ? Panel::EXPANDED |
- : Panel::MINIMIZED; |
- panel_->SetExpansionState(new_expansion_state); |
+ if (panel_->layout_state() == Panel::IN_OVERFLOW) { |
+ panel_->SetLayoutState(Panel::DOCKED); |
+ panel_->SetExpansionState(Panel::EXPANDED); |
+ } else { |
+ Panel::ExpansionState new_expansion_state = |
+ (panel_->expansion_state() != Panel::EXPANDED) ? Panel::EXPANDED |
+ : Panel::MINIMIZED; |
+ panel_->SetExpansionState(new_expansion_state); |
+ } |
+ |
return true; |
} |