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/root_window_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_root_window_host_win.h"
11 #include "ui/aura/root_window_host.h"
15 class RootWindowHostFactoryImpl : public ash::RootWindowHostFactory {
17 RootWindowHostFactoryImpl() {}
19 // Overridden from RootWindowHostFactory:
20 virtual aura::RootWindowHost* CreateRootWindowHost(
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::RemoteRootWindowHostWin::Create(initial_bounds);
27 return aura::RootWindowHost::Create(initial_bounds);
36 RootWindowHostFactory* RootWindowHostFactory::Create() {
37 return new RootWindowHostFactoryImpl;