event_processor.cc revision 5d1f7b1de12d16ceb2c938c56701a3e8bfa558f7
15faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org// Copyright 2013 The Chromium Authors. All rights reserved. 25faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org// Use of this source code is governed by a BSD-style license that can be 35faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org// found in the LICENSE file. 45faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org 55faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org#include "ui/events/event_processor.h" 65faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org 75faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org#include "ui/events/event_target.h" 85faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org#include "ui/events/event_targeter.h" 95faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org 105faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.orgnamespace ui { 115faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org 125faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.orgEventDispatchDetails EventProcessor::OnEventFromSource(Event* event) { 135faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org EventTarget* root = GetRootTarget(); 145faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org CHECK(root); 155faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org EventTargeter* targeter = root->GetEventTargeter(); 165faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org CHECK(targeter); 175faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org PrepareEventForDispatch(event); 185faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org EventTarget* target = targeter->FindTargetForEvent(root, event); 195faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org if (!target) 205faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org return EventDispatchDetails(); 215faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org 225faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org return DispatchEvent(target, event); 235faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org} 245faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org 255faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.orgvoid EventProcessor::PrepareEventForDispatch(Event* event) { 265faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org} 275faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org 285faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org} // namespace ui 295faa2dc266ec933b3961f985e5718236f1ecbe47senorblanco@chromium.org