Index: components/exo/pointer.cc |
diff --git a/components/exo/pointer.cc b/components/exo/pointer.cc |
index 5640ae93c59f81a7630688fa04c4b1cd93872a17..1e0fa05370942e38510926a7f2fafbbde59b1144 100644 |
--- a/components/exo/pointer.cc |
+++ b/components/exo/pointer.cc |
@@ -125,6 +125,12 @@ void Pointer::SetCursor(Surface* surface, const gfx::Point& hotspot) { |
void Pointer::OnMouseEvent(ui::MouseEvent* event) { |
Surface* target = GetEffectiveTargetForEvent(event); |
+ if (!ash::Shell::GetInstance()->CanWindowReceiveEvents( |
+ static_cast<aura::Window*>(event->target()))) { |
+ event->StopPropagation(); |
+ return; |
+ } |
+ |
// If target is different than the current pointer focus then we need to |
// generate enter and leave events. |
if (target != focus_) { |