| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "views/bubble/bubble_delegate.h" | 5 #include "views/bubble/bubble_delegate.h" |
| 6 | 6 |
| 7 #include "ui/base/animation/slide_animation.h" | 7 #include "ui/base/animation/slide_animation.h" |
| 8 #include "views/bubble/bubble_frame_view.h" | 8 #include "views/bubble/bubble_frame_view.h" |
| 9 #include "views/widget/widget.h" | 9 #include "views/widget/widget.h" |
| 10 | 10 |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 105 border_widget_->Close(); | 105 border_widget_->Close(); |
| 106 } | 106 } |
| 107 | 107 |
| 108 // static | 108 // static |
| 109 Widget* BubbleDelegateView::CreateBubble(BubbleDelegateView* bubble_delegate, | 109 Widget* BubbleDelegateView::CreateBubble(BubbleDelegateView* bubble_delegate, |
| 110 Widget* parent_widget) { | 110 Widget* parent_widget) { |
| 111 bubble_delegate->Init(); | 111 bubble_delegate->Init(); |
| 112 Widget* bubble_widget = CreateBubbleWidget(bubble_delegate, parent_widget); | 112 Widget* bubble_widget = CreateBubbleWidget(bubble_delegate, parent_widget); |
| 113 | 113 |
| 114 #if defined(OS_WIN) && !defined(USE_AURA) | 114 #if defined(OS_WIN) && !defined(USE_AURA) |
| 115 // First set the contents view to initialize view bounds for widget sizing. |
| 116 bubble_widget->SetContentsView(bubble_delegate->GetContentsView()); |
| 115 bubble_delegate->InitializeBorderWidget(parent_widget); | 117 bubble_delegate->InitializeBorderWidget(parent_widget); |
| 116 bubble_widget->SetContentsView(bubble_delegate->GetContentsView()); | |
| 117 bubble_widget->SetBounds(bubble_delegate->GetBubbleClientBounds()); | 118 bubble_widget->SetBounds(bubble_delegate->GetBubbleClientBounds()); |
| 118 #else | 119 #else |
| 119 bubble_widget->SetBounds(bubble_delegate->GetBubbleBounds()); | 120 bubble_widget->SetBounds(bubble_delegate->GetBubbleBounds()); |
| 120 #endif | 121 #endif |
| 121 | 122 |
| 122 bubble_widget->AddObserver(bubble_delegate); | 123 bubble_widget->AddObserver(bubble_delegate); |
| 123 if (parent_widget && parent_widget->GetTopLevelWidget()) | 124 if (parent_widget && parent_widget->GetTopLevelWidget()) |
| 124 parent_widget->GetTopLevelWidget()->DisableInactiveRendering(); | 125 parent_widget->GetTopLevelWidget()->DisableInactiveRendering(); |
| 125 return bubble_widget; | 126 return bubble_widget; |
| 126 } | 127 } |
| (...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 251 } | 252 } |
| 252 | 253 |
| 253 gfx::Rect BubbleDelegateView::GetBubbleClientBounds() const { | 254 gfx::Rect BubbleDelegateView::GetBubbleClientBounds() const { |
| 254 gfx::Rect client_bounds(GetBubbleFrameView()->GetBoundsForClientView()); | 255 gfx::Rect client_bounds(GetBubbleFrameView()->GetBoundsForClientView()); |
| 255 client_bounds.Offset(border_widget_->GetWindowScreenBounds().origin()); | 256 client_bounds.Offset(border_widget_->GetWindowScreenBounds().origin()); |
| 256 return client_bounds; | 257 return client_bounds; |
| 257 } | 258 } |
| 258 #endif | 259 #endif |
| 259 | 260 |
| 260 } // namespace views | 261 } // namespace views |
| OLD | NEW |