| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "chrome/browser/ui/views/frame/browser_frame.h" | 5 #include "chrome/browser/ui/views/frame/browser_frame.h" |
| 6 | 6 |
| 7 #include "ash/shell.h" | 7 #include "ash/shell.h" |
| 8 #include "base/chromeos/chromeos_version.h" | 8 #include "base/chromeos/chromeos_version.h" |
| 9 #include "base/i18n/rtl.h" | 9 #include "base/i18n/rtl.h" |
| 10 #include "chrome/browser/app_mode/app_mode_utils.h" | 10 #include "chrome/browser/app_mode/app_mode_utils.h" |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 60 views::Widget::InitParams params; | 60 views::Widget::InitParams params; |
| 61 params.delegate = browser_view_; | 61 params.delegate = browser_view_; |
| 62 params.native_widget = native_browser_frame_->AsNativeWidget(); | 62 params.native_widget = native_browser_frame_->AsNativeWidget(); |
| 63 if (browser_view_->browser()->is_type_tabbed()) { | 63 if (browser_view_->browser()->is_type_tabbed()) { |
| 64 // Typed panel/popup can only return a size once the widget has been | 64 // Typed panel/popup can only return a size once the widget has been |
| 65 // created. | 65 // created. |
| 66 chrome::GetSavedWindowBoundsAndShowState(browser_view_->browser(), | 66 chrome::GetSavedWindowBoundsAndShowState(browser_view_->browser(), |
| 67 ¶ms.bounds, | 67 ¶ms.bounds, |
| 68 ¶ms.show_state); | 68 ¶ms.show_state); |
| 69 } | 69 } |
| 70 if (browser_view_->IsPanel()) { | |
| 71 // We need to set the top-most bit when the panel window is created. | |
| 72 // There is a Windows bug/feature that would very likely prevent the window | |
| 73 // from being changed to top-most after the window is created without | |
| 74 // activation. | |
| 75 params.type = views::Widget::InitParams::TYPE_PANEL; | |
| 76 } | |
| 77 #if defined(USE_ASH) | 70 #if defined(USE_ASH) |
| 78 if (browser_view_->browser()->host_desktop_type() == | 71 if (browser_view_->browser()->host_desktop_type() == |
| 79 chrome::HOST_DESKTOP_TYPE_ASH || chrome::ShouldOpenAshOnStartup()) { | 72 chrome::HOST_DESKTOP_TYPE_ASH || chrome::ShouldOpenAshOnStartup()) { |
| 80 params.context = ash::Shell::GetAllRootWindows()[0]; | 73 params.context = ash::Shell::GetAllRootWindows()[0]; |
| 81 } | 74 } |
| 82 #endif | 75 #endif |
| 83 Init(params); | 76 Init(params); |
| 84 | 77 |
| 85 if (!native_browser_frame_->UsesNativeSystemMenu()) { | 78 if (!native_browser_frame_->UsesNativeSystemMenu()) { |
| 86 DCHECK(non_client_view()); | 79 DCHECK(non_client_view()); |
| (...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 196 | 189 |
| 197 AvatarMenuButton* BrowserFrame::GetAvatarMenuButton() { | 190 AvatarMenuButton* BrowserFrame::GetAvatarMenuButton() { |
| 198 return browser_frame_view_->avatar_button(); | 191 return browser_frame_view_->avatar_button(); |
| 199 } | 192 } |
| 200 | 193 |
| 201 #if !defined(OS_WIN) || defined(USE_AURA) | 194 #if !defined(OS_WIN) || defined(USE_AURA) |
| 202 bool BrowserFrame::ShouldLeaveOffsetNearTopBorder() { | 195 bool BrowserFrame::ShouldLeaveOffsetNearTopBorder() { |
| 203 return !IsMaximized(); | 196 return !IsMaximized(); |
| 204 } | 197 } |
| 205 #endif // OS_WIN | 198 #endif // OS_WIN |
| OLD | NEW |