Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(575)

Side by Side Diff: chrome/browser/ui/views/frame/browser_frame.cc

Issue 8890036: Aura: Separate constrained window and translucent frame flags (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rename workspace manager flag Created 9 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 "chrome/browser/ui/views/frame/browser_frame.h" 5 #include "chrome/browser/ui/views/frame/browser_frame.h"
6 6
7 #include "base/command_line.h"
7 #include "chrome/browser/themes/theme_service.h" 8 #include "chrome/browser/themes/theme_service.h"
8 #include "chrome/browser/themes/theme_service_factory.h" 9 #include "chrome/browser/themes/theme_service_factory.h"
9 #include "chrome/browser/ui/browser.h" 10 #include "chrome/browser/ui/browser.h"
10 #include "chrome/browser/ui/browser_list.h" 11 #include "chrome/browser/ui/browser_list.h"
11 #include "chrome/browser/ui/views/frame/browser_non_client_frame_view.h" 12 #include "chrome/browser/ui/views/frame/browser_non_client_frame_view.h"
12 #include "chrome/browser/ui/views/frame/browser_root_view.h" 13 #include "chrome/browser/ui/views/frame/browser_root_view.h"
13 #include "chrome/browser/ui/views/frame/browser_view.h" 14 #include "chrome/browser/ui/views/frame/browser_view.h"
14 #include "chrome/browser/ui/views/frame/native_browser_frame.h" 15 #include "chrome/browser/ui/views/frame/native_browser_frame.h"
15 #include "chrome/common/chrome_switches.h" 16 #include "chrome/common/chrome_switches.h"
16 #include "ui/base/theme_provider.h" 17 #include "ui/base/theme_provider.h"
17 #include "ui/views/widget/native_widget.h" 18 #include "ui/views/widget/native_widget.h"
18 19
19 #if defined(OS_WIN) && !defined(USE_AURA) 20 #if defined(OS_WIN) && !defined(USE_AURA)
20 #include "chrome/browser/ui/views/frame/glass_browser_frame_view.h" 21 #include "chrome/browser/ui/views/frame/glass_browser_frame_view.h"
21 #elif defined(OS_CHROMEOS) 22 #elif defined(OS_CHROMEOS)
22 #include "chrome/browser/chromeos/system/runtime_environment.h" 23 #include "chrome/browser/chromeos/system/runtime_environment.h"
23 #endif 24 #endif
24 25
26 #if defined(USE_AURA)
27 #include "ui/aura/aura_switches.h"
28 #endif
29
25 //////////////////////////////////////////////////////////////////////////////// 30 ////////////////////////////////////////////////////////////////////////////////
26 // BrowserFrame, public: 31 // BrowserFrame, public:
27 32
28 BrowserFrame::BrowserFrame(BrowserView* browser_view) 33 BrowserFrame::BrowserFrame(BrowserView* browser_view)
29 : native_browser_frame_(NULL), 34 : native_browser_frame_(NULL),
30 root_view_(NULL), 35 root_view_(NULL),
31 browser_frame_view_(NULL), 36 browser_frame_view_(NULL),
32 browser_view_(browser_view) { 37 browser_view_(browser_view) {
33 browser_view_->set_frame(this); 38 browser_view_->set_frame(this);
34 set_is_secondary_widget(false); 39 set_is_secondary_widget(false);
(...skipping 16 matching lines...) Expand all
51 params.bounds = browser_view_->browser()->GetSavedWindowBounds(); 56 params.bounds = browser_view_->browser()->GetSavedWindowBounds();
52 params.show_state = browser_view_->browser()->GetSavedWindowShowState(); 57 params.show_state = browser_view_->browser()->GetSavedWindowShowState();
53 } 58 }
54 if (browser_view_->browser()->is_type_panel()) { 59 if (browser_view_->browser()->is_type_panel()) {
55 // We need to set the top-most bit when the panel window is created. 60 // We need to set the top-most bit when the panel window is created.
56 // There is a Windows bug/feature that would very likely prevent the window 61 // There is a Windows bug/feature that would very likely prevent the window
57 // from being changed to top-most after the window is created without 62 // from being changed to top-most after the window is created without
58 // activation. 63 // activation.
59 params.keep_on_top = true; 64 params.keep_on_top = true;
60 } 65 }
66 #if defined(USE_AURA)
67 CommandLine* command_line = CommandLine::ForCurrentProcess();
68 if (command_line->HasSwitch(switches::kAuraTranslucentFrames))
69 params.transparent = true;
70 #endif
61 Init(params); 71 Init(params);
62 #if defined(OS_CHROMEOS) && !defined(USE_AURA) 72 #if defined(OS_CHROMEOS) && !defined(USE_AURA)
63 // On ChromeOS we always want top-level windows to appear active. 73 // On ChromeOS we always want top-level windows to appear active.
64 if (!browser_view_->IsBrowserTypePopup()) 74 if (!browser_view_->IsBrowserTypePopup())
65 DisableInactiveRendering(); 75 DisableInactiveRendering();
66 #endif 76 #endif
67 } 77 }
68 78
69 int BrowserFrame::GetMinimizeButtonOffset() const { 79 int BrowserFrame::GetMinimizeButtonOffset() const {
70 return native_browser_frame_->GetMinimizeButtonOffset(); 80 return native_browser_frame_->GetMinimizeButtonOffset();
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
146 // set ourselves as the last active browser window to ensure that we get 156 // set ourselves as the last active browser window to ensure that we get
147 // treated as such by the rest of Chrome. 157 // treated as such by the rest of Chrome.
148 BrowserList::SetLastActive(browser_view_->browser()); 158 BrowserList::SetLastActive(browser_view_->browser());
149 } 159 }
150 Widget::OnNativeWidgetActivationChanged(active); 160 Widget::OnNativeWidgetActivationChanged(active);
151 } 161 }
152 162
153 AvatarMenuButton* BrowserFrame::GetAvatarMenuButton() { 163 AvatarMenuButton* BrowserFrame::GetAvatarMenuButton() {
154 return browser_frame_view_->avatar_button(); 164 return browser_frame_view_->avatar_button();
155 } 165 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698