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
3// found in the LICENSE file.
4
5#include "ui/views/test/desktop_test_views_delegate.h"
6
7#include "ui/views/widget/desktop_aura/desktop_native_widget_aura.h"
8#include "ui/views/widget/native_widget_aura.h"
9
10namespace views {
11
12DesktopTestViewsDelegate::DesktopTestViewsDelegate() {}
13
14DesktopTestViewsDelegate::~DesktopTestViewsDelegate() {}
15
16void DesktopTestViewsDelegate::OnBeforeWidgetInit(
17    Widget::InitParams* params,
18    internal::NativeWidgetDelegate* delegate) {
19#if defined(USE_AURA) && !defined(OS_CHROMEOS)
20  // If we already have a native_widget, we don't have to try to come
21  // up with one.
22  if (params->native_widget)
23    return;
24
25  if (params->parent && params->type != views::Widget::InitParams::TYPE_MENU) {
26    params->native_widget = new views::NativeWidgetAura(delegate);
27  } else if (!params->parent && !params->context) {
28    params->native_widget = new views::DesktopNativeWidgetAura(delegate);
29  }
30#endif
31}
32
33}  // namespace views
34