| Index: chrome/browser/ui/panels/panel.cc
|
| diff --git a/chrome/browser/ui/panels/panel.cc b/chrome/browser/ui/panels/panel.cc
|
| index ac3027f277c5594e2e26db4b8fd34bf4ae36b229..722ab694b156db4fbb72373ce9aa48ac5f7b2a0f 100644
|
| --- a/chrome/browser/ui/panels/panel.cc
|
| +++ b/chrome/browser/ui/panels/panel.cc
|
| @@ -63,6 +63,8 @@ void Panel::Initialize(const gfx::Rect& bounds) {
|
| DCHECK(!bounds.IsEmpty());
|
| initialized_ = true;
|
| native_panel_ = CreateNativePanel(browser_, this, bounds);
|
| + if (panel_strip_ != NULL)
|
| + native_panel_->PreventActivationByOS(panel_strip_->IsPanelMinimized(this));
|
| }
|
|
|
| void Panel::OnNativePanelClosed() {
|
| @@ -156,6 +158,12 @@ void Panel::SetAppIconVisibility(bool visible) {
|
| native_panel_->SetPanelAppIconVisibility(visible);
|
| }
|
|
|
| +void Panel::SetPanelStrip(PanelStrip* new_strip) {
|
| + panel_strip_ = new_strip;
|
| + if (panel_strip_ != NULL && initialized_)
|
| + native_panel_->PreventActivationByOS(panel_strip_->IsPanelMinimized(this));
|
| +}
|
| +
|
| void Panel::SetExpansionState(ExpansionState new_state) {
|
| if (expansion_state_ == new_state)
|
| return;
|
| @@ -168,6 +176,9 @@ void Panel::SetExpansionState(ExpansionState new_state) {
|
| if (expansion_state_ == MINIMIZED)
|
| Deactivate();
|
|
|
| + DCHECK(initialized_ && panel_strip_ != NULL);
|
| + native_panel_->PreventActivationByOS(panel_strip_->IsPanelMinimized(this));
|
| +
|
| content::NotificationService::current()->Notify(
|
| chrome::NOTIFICATION_PANEL_CHANGED_EXPANSION_STATE,
|
| content::Source<Panel>(this),
|
|
|