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_desktop_window_tree_host_win.h" | 5 #include "chrome/browser/ui/views/frame/browser_desktop_window_tree_host_win.h" |
6 | 6 |
7 #include <dwmapi.h> | 7 #include <dwmapi.h> |
8 | 8 |
9 #include "chrome/browser/lifetime/application_lifetime.h" | 9 #include "chrome/browser/lifetime/application_lifetime.h" |
10 #include "chrome/browser/themes/theme_service.h" | 10 #include "chrome/browser/themes/theme_service.h" |
11 #include "chrome/browser/themes/theme_service_factory.h" | 11 #include "chrome/browser/themes/theme_service_factory.h" |
12 #include "chrome/browser/ui/views/frame/browser_frame.h" | 12 #include "chrome/browser/ui/views/frame/browser_frame.h" |
13 #include "chrome/browser/ui/views/frame/browser_frame_common_win.h" | 13 #include "chrome/browser/ui/views/frame/browser_frame_common_win.h" |
14 #include "chrome/browser/ui/views/frame/browser_view.h" | 14 #include "chrome/browser/ui/views/frame/browser_view.h" |
15 #include "chrome/browser/ui/views/frame/browser_window_property_manager_win.h" | 15 #include "chrome/browser/ui/views/frame/browser_window_property_manager_win.h" |
16 #include "chrome/browser/ui/views/frame/system_menu_insertion_delegate_win.h" | 16 #include "chrome/browser/ui/views/frame/system_menu_insertion_delegate_win.h" |
17 #include "chrome/browser/ui/views/tabs/tab_strip.h" | 17 #include "chrome/browser/ui/views/tabs/tab_strip.h" |
18 #include "chrome/browser/ui/views/theme_image_mapper.h" | 18 #include "chrome/browser/ui/views/theme_image_mapper.h" |
19 #include "ui/base/theme_provider.h" | 19 #include "ui/base/theme_provider.h" |
20 #include "ui/gfx/win/dpi.h" | 20 #include "ui/gfx/dpi.h" |
21 #include "ui/views/controls/menu/native_menu_win.h" | 21 #include "ui/views/controls/menu/native_menu_win.h" |
22 | 22 |
23 #pragma comment(lib, "dwmapi.lib") | 23 #pragma comment(lib, "dwmapi.lib") |
24 | 24 |
25 namespace { | 25 namespace { |
26 | 26 |
27 const int kClientEdgeThickness = 3; | 27 const int kClientEdgeThickness = 3; |
28 // We need to offset the DWMFrame into the toolbar so that the blackness | 28 // We need to offset the DWMFrame into the toolbar so that the blackness |
29 // doesn't show up on our rounded corners. | 29 // doesn't show up on our rounded corners. |
30 const int kDWMFrameTopOffset = 3; | 30 const int kDWMFrameTopOffset = 3; |
(...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
304 margins.cxLeftWidth = kClientEdgeThickness + 1; | 304 margins.cxLeftWidth = kClientEdgeThickness + 1; |
305 margins.cxRightWidth = kClientEdgeThickness + 1; | 305 margins.cxRightWidth = kClientEdgeThickness + 1; |
306 margins.cyBottomHeight = kClientEdgeThickness + 1; | 306 margins.cyBottomHeight = kClientEdgeThickness + 1; |
307 margins.cyTopHeight = kClientEdgeThickness + 1; | 307 margins.cyTopHeight = kClientEdgeThickness + 1; |
308 } | 308 } |
309 // In maximized mode, we only have a titlebar strip of glass, no side/bottom | 309 // In maximized mode, we only have a titlebar strip of glass, no side/bottom |
310 // borders. | 310 // borders. |
311 if (!browser_view_->IsFullscreen()) { | 311 if (!browser_view_->IsFullscreen()) { |
312 gfx::Rect tabstrip_bounds( | 312 gfx::Rect tabstrip_bounds( |
313 browser_frame_->GetBoundsForTabStrip(browser_view_->tabstrip())); | 313 browser_frame_->GetBoundsForTabStrip(browser_view_->tabstrip())); |
314 tabstrip_bounds = gfx::win::DIPToScreenRect(tabstrip_bounds); | 314 tabstrip_bounds = gfx::DIPToScreenRect(tabstrip_bounds); |
315 margins.cyTopHeight = tabstrip_bounds.bottom() + kDWMFrameTopOffset; | 315 margins.cyTopHeight = tabstrip_bounds.bottom() + kDWMFrameTopOffset; |
316 } | 316 } |
317 } | 317 } |
318 return margins; | 318 return margins; |
319 } | 319 } |
320 | 320 |
321 //////////////////////////////////////////////////////////////////////////////// | 321 //////////////////////////////////////////////////////////////////////////////// |
322 // BrowserDesktopWindowTreeHost, public: | 322 // BrowserDesktopWindowTreeHost, public: |
323 | 323 |
324 // static | 324 // static |
325 BrowserDesktopWindowTreeHost* | 325 BrowserDesktopWindowTreeHost* |
326 BrowserDesktopWindowTreeHost::CreateBrowserDesktopWindowTreeHost( | 326 BrowserDesktopWindowTreeHost::CreateBrowserDesktopWindowTreeHost( |
327 views::internal::NativeWidgetDelegate* native_widget_delegate, | 327 views::internal::NativeWidgetDelegate* native_widget_delegate, |
328 views::DesktopNativeWidgetAura* desktop_native_widget_aura, | 328 views::DesktopNativeWidgetAura* desktop_native_widget_aura, |
329 BrowserView* browser_view, | 329 BrowserView* browser_view, |
330 BrowserFrame* browser_frame) { | 330 BrowserFrame* browser_frame) { |
331 return new BrowserDesktopWindowTreeHostWin(native_widget_delegate, | 331 return new BrowserDesktopWindowTreeHostWin(native_widget_delegate, |
332 desktop_native_widget_aura, | 332 desktop_native_widget_aura, |
333 browser_view, | 333 browser_view, |
334 browser_frame); | 334 browser_frame); |
335 } | 335 } |
OLD | NEW |