Fix "value possibly truncated" warnings on MSVC, net/disk_cache edition.
[chromium-blink-merge.git] / ui / views / test / test_views_delegate_aura.cc
blob8eb1a86b99259c805f10b52372c412c64acfabf0
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "ui/views/test/test_views_delegate.h"
7 #include "ui/aura/env.h"
8 #include "ui/wm/core/wm_state.h"
10 #if !defined(OS_CHROMEOS)
11 #include "ui/views/widget/desktop_aura/desktop_native_widget_aura.h"
12 #endif // !defined(OS_CHROMEOS)
15 namespace views {
17 TestViewsDelegate::TestViewsDelegate()
18 : context_factory_(nullptr),
19 use_desktop_native_widgets_(false),
20 use_transparent_windows_(false) {
21 DCHECK(!ViewsDelegate::views_delegate);
22 ViewsDelegate::views_delegate = this;
23 #if defined(USE_AURA)
24 wm_state_.reset(new wm::WMState);
25 #endif
28 TestViewsDelegate::~TestViewsDelegate() {
29 if (ViewsDelegate::views_delegate == this)
30 ViewsDelegate::views_delegate = NULL;
33 void TestViewsDelegate::OnBeforeWidgetInit(
34 Widget::InitParams* params,
35 internal::NativeWidgetDelegate* delegate) {
36 if (params->opacity == Widget::InitParams::INFER_OPACITY) {
37 params->opacity = use_transparent_windows_ ?
38 Widget::InitParams::TRANSLUCENT_WINDOW :
39 Widget::InitParams::OPAQUE_WINDOW;
41 #if !defined(OS_CHROMEOS)
42 if (!params->native_widget && use_desktop_native_widgets_)
43 params->native_widget = new DesktopNativeWidgetAura(delegate);
44 #endif // !defined(OS_CHROMEOS)
47 ui::ContextFactory* TestViewsDelegate::GetContextFactory() {
48 if (context_factory_)
49 return context_factory_;
50 if (aura::Env::GetInstance())
51 return aura::Env::GetInstance()->context_factory();
52 return nullptr;
55 } // namespace views