Chromium Code Reviews| Index: services/ui/ws/platform_display_default.cc |
| diff --git a/services/ui/ws/platform_display_default.cc b/services/ui/ws/platform_display_default.cc |
| index 43fed49ee090ad7ddb617469dd9123fafc337aa7..5d6b5f566092efbb8aad9698db96012b3275d7fb 100644 |
| --- a/services/ui/ws/platform_display_default.cc |
| +++ b/services/ui/ws/platform_display_default.cc |
| @@ -52,6 +52,10 @@ PlatformDisplayDefault::~PlatformDisplayDefault() { |
| platform_window_.reset(); |
| } |
| +EventSink* PlatformDisplayDefault::GetEventSink() { |
| + return delegate_->GetEventSink(); |
| +} |
| + |
| void PlatformDisplayDefault::Init(PlatformDisplayDelegate* delegate) { |
| delegate_ = delegate; |
| @@ -155,6 +159,10 @@ void PlatformDisplayDefault::UpdateEventRootLocation(ui::LocatedEvent* event) { |
| event->set_root_location(location); |
| } |
| +void PlatformDisplayDefault::DispatchEventToDelegate(const ui::Event& event) { |
| + SendEventToSink(const_cast<ui::Event*>(&event)); |
|
sky
2017/03/20 15:42:12
Don't cast away the const here. Instead make this
Peng
2017/03/20 17:24:14
Done.
|
| +} |
| + |
| void PlatformDisplayDefault::OnBoundsChanged(const gfx::Rect& new_bounds) { |
| // We only care if the window size has changed. |
| if (new_bounds.size() == metrics_.bounds_in_pixels.size()) |
| @@ -176,14 +184,14 @@ void PlatformDisplayDefault::DispatchEvent(ui::Event* event) { |
| if (event->IsScrollEvent()) { |
| // TODO(moshayedi): crbug.com/602859. Dispatch scroll events as |
| // they are once we have proper support for scroll events. |
| - delegate_->OnEvent( |
| + DispatchEventToDelegate( |
| ui::PointerEvent(ui::MouseWheelEvent(*event->AsScrollEvent()))); |
| } else if (event->IsMouseEvent()) { |
| - delegate_->OnEvent(ui::PointerEvent(*event->AsMouseEvent())); |
| + DispatchEventToDelegate(ui::PointerEvent(*event->AsMouseEvent())); |
| } else if (event->IsTouchEvent()) { |
| - delegate_->OnEvent(ui::PointerEvent(*event->AsTouchEvent())); |
| + DispatchEventToDelegate(ui::PointerEvent(*event->AsTouchEvent())); |
| } else { |
| - delegate_->OnEvent(*event); |
| + DispatchEventToDelegate(*event); |
| } |
| #if defined(USE_X11) || defined(USE_OZONE) |
| @@ -208,7 +216,7 @@ void PlatformDisplayDefault::DispatchEvent(ui::Event* event) { |
| // example, from 'M' to '^M'. |
| DCHECK_EQ(key_press_event->key_code(), char_event.key_code()); |
| DCHECK_EQ(key_press_event->flags(), char_event.flags()); |
| - delegate_->OnEvent(char_event); |
| + DispatchEventToDelegate(char_event); |
| } |
| #endif |
| } |