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.
5 #include "ash/host/window_tree_host_factory.h"
7 #include "ash/ash_switches.h"
8 #include "base/command_line.h"
9 #include "base/win/windows_version.h"
10 #include "ui/aura/remote_window_tree_host_win.h"
11 #include "ui/aura/window_tree_host.h"
15 class WindowTreeHostFactoryImpl
: public ash::WindowTreeHostFactory
{
17 WindowTreeHostFactoryImpl() {}
19 // Overridden from WindowTreeHostFactory:
20 virtual aura::WindowTreeHost
* CreateWindowTreeHost(
21 const gfx::Rect
& initial_bounds
) OVERRIDE
{
22 if (base::win::GetVersion() >= base::win::VERSION_WIN8
&&
23 !CommandLine::ForCurrentProcess()->HasSwitch(
24 ash::switches::kForceAshToDesktop
))
25 return aura::RemoteWindowTreeHostWin::Create(initial_bounds
);
27 return aura::WindowTreeHost::Create(initial_bounds
);
36 WindowTreeHostFactory
* WindowTreeHostFactory::Create() {
37 return new WindowTreeHostFactoryImpl
;