diff options
Diffstat (limited to 'ash/test/ash_test_views_delegate.cc')
-rw-r--r-- | ash/test/ash_test_views_delegate.cc | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/ash/test/ash_test_views_delegate.cc b/ash/test/ash_test_views_delegate.cc new file mode 100644 index 0000000..c47bdba --- /dev/null +++ b/ash/test/ash_test_views_delegate.cc @@ -0,0 +1,38 @@ +// Copyright 2014 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "ash/test/ash_test_views_delegate.h" + +#include "ash/shell.h" +#include "content/public/test/web_contents_tester.h" + +namespace ash { +namespace test { + +AshTestViewsDelegate::AshTestViewsDelegate() { +} + +AshTestViewsDelegate::~AshTestViewsDelegate() { +} + +content::WebContents* AshTestViewsDelegate::CreateWebContents( + content::BrowserContext* browser_context, + content::SiteInstance* site_instance) { + return content::WebContentsTester::CreateTestWebContents(browser_context, + site_instance); +} + +void AshTestViewsDelegate::OnBeforeWidgetInit( + views::Widget::InitParams* params, + views::internal::NativeWidgetDelegate* delegate) { + TestViewsDelegate::OnBeforeWidgetInit(params, delegate); + + if (!params->parent && !params->context && ash::Shell::HasInstance()) { + // If the window has neither a parent nor a context add to the root. + params->parent = ash::Shell::GetInstance()->GetPrimaryRootWindow(); + } +} + +} // namespace test +} // namespace ash |