Introduce proximity_auth component.
[chromium-blink-merge.git] / ui / aura / window_targeter.h
blobe64ef75f8073c7bdec0ab48e1f9d394784af7bcc
1 // Copyright (c) 2013 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 #ifndef UI_AURA_WINDOW_TARGETER_H_
6 #define UI_AURA_WINDOW_TARGETER_H_
8 #include "ui/aura/aura_export.h"
9 #include "ui/events/event_targeter.h"
11 namespace aura {
13 class Window;
15 class AURA_EXPORT WindowTargeter : public ui::EventTargeter {
16 public:
17 WindowTargeter();
18 virtual ~WindowTargeter();
20 protected:
21 // ui::EventTargeter:
22 virtual ui::EventTarget* FindTargetForEvent(ui::EventTarget* root,
23 ui::Event* event) OVERRIDE;
24 virtual ui::EventTarget* FindTargetForLocatedEvent(
25 ui::EventTarget* root,
26 ui::LocatedEvent* event) OVERRIDE;
27 virtual bool SubtreeCanAcceptEvent(
28 ui::EventTarget* target,
29 const ui::LocatedEvent& event) const OVERRIDE;
30 virtual bool EventLocationInsideBounds(
31 ui::EventTarget* target,
32 const ui::LocatedEvent& event) const OVERRIDE;
34 private:
35 Window* FindTargetForKeyEvent(Window* root_window,
36 const ui::KeyEvent& event);
37 Window* FindTargetInRootWindow(Window* root_window,
38 const ui::LocatedEvent& event);
40 DISALLOW_COPY_AND_ASSIGN(WindowTargeter);
43 } // namespace aura
45 #endif // UI_AURA_WINDOW_TARGETER_H_