Index: ui/events/null_event_targeter.h |
diff --git a/ui/events/null_event_targeter.h b/ui/events/null_event_targeter.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..c22e7a7681fd3877798c31cecd9b83321557d8d7 |
--- /dev/null |
+++ b/ui/events/null_event_targeter.h |
@@ -0,0 +1,28 @@ |
+// Copyright 2015 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 "base/compiler_specific.h" |
+#include "base/macros.h" |
+#include "ui/events/event_targeter.h" |
+#include "ui/events/events_export.h" |
+ |
+namespace ui { |
+ |
+// NullEventTargeter can be installed on a root window to prevent it from |
+// dispatching events such as during shutdown. |
+class EVENTS_EXPORT NullEventTargeter : public EventTargeter { |
+ public: |
+ NullEventTargeter(); |
+ ~NullEventTargeter() override; |
+ |
+ // EventTargeter: |
+ EventTarget* FindTargetForEvent(EventTarget* root, Event* event) override; |
+ EventTarget* FindNextBestTarget(EventTarget* previous_target, |
+ Event* event) override; |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(NullEventTargeter); |
+}; |
+ |
+} // namespace ui |