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.
4
5#include "chrome/browser/ui/views/tabs/window_finder.h"
6
7#include "ui/views/widget/desktop_aura/x11_topmost_window_finder.h"
8
9#if defined(USE_ASH)
10aura::Window* GetLocalProcessWindowAtPointAsh(
11    const gfx::Point& screen_point,
12    const std::set<aura::Window*>& ignore);
13#endif
14
15aura::Window* GetLocalProcessWindowAtPoint(
16    chrome::HostDesktopType host_desktop_type,
17    const gfx::Point& screen_point,
18    const std::set<aura::Window*>& ignore) {
19#if defined(USE_ASH)
20  if (host_desktop_type == chrome::HOST_DESKTOP_TYPE_ASH)
21    return GetLocalProcessWindowAtPointAsh(screen_point, ignore);
22#endif
23
24  // The X11 server is the canonical state of what the window stacking order
25  // is.
26  views::X11TopmostWindowFinder finder;
27  return finder.FindLocalProcessWindowAt(screen_point, ignore);
28}
29