summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ash/accelerators/accelerator_dispatcher.cc4
-rw-r--r--ash/accelerators/accelerator_filter.cc12
-rw-r--r--ash/accelerators/accelerator_filter.h2
-rw-r--r--ash/drag_drop/drag_drop_controller.cc5
-rw-r--r--ash/drag_drop/drag_drop_controller.h2
-rw-r--r--ash/launcher/launcher_tooltip_manager_unittest.cc4
-rw-r--r--ash/tooltips/tooltip_controller.cc3
-rw-r--r--ash/tooltips/tooltip_controller.h2
-rw-r--r--ash/wm/activation_controller.cc3
-rw-r--r--ash/wm/activation_controller.h2
-rw-r--r--ash/wm/event_rewriter_event_filter.cc14
-rw-r--r--ash/wm/event_rewriter_event_filter.h2
-rw-r--r--ash/wm/overlay_event_filter.cc8
-rw-r--r--ash/wm/overlay_event_filter.h2
-rw-r--r--ash/wm/system_modal_container_event_filter.cc7
-rw-r--r--ash/wm/system_modal_container_event_filter.h2
-rw-r--r--ash/wm/toplevel_window_event_handler.cc3
-rw-r--r--ash/wm/toplevel_window_event_handler.h2
-rw-r--r--ash/wm/user_activity_detector.cc3
-rw-r--r--ash/wm/user_activity_detector.h2
-rw-r--r--ash/wm/user_activity_detector_unittest.cc15
-rw-r--r--ash/wm/window_cycle_controller.cc5
-rw-r--r--ash/wm/window_manager_unittest.cc9
-rw-r--r--ash/wm/workspace/frame_maximize_button.cc5
-rw-r--r--chrome/browser/extensions/api/input/input.cc9
-rw-r--r--content/browser/renderer_host/render_widget_host_view_aura.cc12
-rw-r--r--content/browser/renderer_host/render_widget_host_view_aura.h2
-rw-r--r--content/browser/web_contents/web_contents_view_aura.cc3
-rw-r--r--content/browser/web_contents/web_contents_view_aura.h2
-rw-r--r--ui/aura/root_window_unittest.cc13
-rw-r--r--ui/aura/test/test_event_handler.cc3
-rw-r--r--ui/aura/test/test_event_handler.h2
-rw-r--r--ui/aura/test/test_window_delegate.cc10
-rw-r--r--ui/aura/test/test_window_delegate.h4
-rw-r--r--ui/base/events/event_dispatcher_unittest.cc4
-rw-r--r--ui/base/events/event_handler.cc5
-rw-r--r--ui/base/events/event_handler.h2
-rw-r--r--ui/base/events/event_target.cc5
-rw-r--r--ui/base/events/event_target.h2
-rw-r--r--ui/views/corewm/compound_event_filter.cc12
-rw-r--r--ui/views/corewm/compound_event_filter.h4
-rw-r--r--ui/views/corewm/focus_controller.cc3
-rw-r--r--ui/views/corewm/focus_controller.h2
-rw-r--r--ui/views/corewm/input_method_event_filter.cc5
-rw-r--r--ui/views/corewm/input_method_event_filter.h2
-rw-r--r--ui/views/corewm/window_modality_controller.cc5
-rw-r--r--ui/views/corewm/window_modality_controller.h2
-rw-r--r--ui/views/view.cc3
-rw-r--r--ui/views/view.h2
-rw-r--r--ui/views/widget/desktop_aura/desktop_activation_client.cc3
-rw-r--r--ui/views/widget/desktop_aura/desktop_activation_client.h2
-rw-r--r--ui/views/widget/desktop_aura/desktop_native_widget_aura.cc18
-rw-r--r--ui/views/widget/desktop_aura/desktop_native_widget_aura.h2
-rw-r--r--ui/views/widget/native_widget_aura.cc11
-rw-r--r--ui/views/widget/native_widget_aura.h2
-rw-r--r--ui/views/widget/native_widget_delegate.h2
-rw-r--r--ui/views/widget/native_widget_win.cc3
-rw-r--r--ui/views/widget/root_view.cc16
-rw-r--r--ui/views/widget/root_view.h2
-rw-r--r--ui/views/widget/widget.cc8
-rw-r--r--ui/views/widget/widget.h2
-rw-r--r--ui/views/widget/widget_unittest.cc6
62 files changed, 157 insertions, 156 deletions
diff --git a/ash/accelerators/accelerator_dispatcher.cc b/ash/accelerators/accelerator_dispatcher.cc
index ee56cef..41a292f 100644
--- a/ash/accelerators/accelerator_dispatcher.cc
+++ b/ash/accelerators/accelerator_dispatcher.cc
@@ -74,8 +74,8 @@ bool AcceleratorDispatcher::Dispatch(const base::NativeEvent& event) {
ui::EventHandler* event_rewriter =
ash::Shell::GetInstance()->event_rewriter_filter();
DCHECK(event_rewriter);
- ui::EventResult result = event_rewriter->OnKeyEvent(&key_event);
- if (result & ui::ER_CONSUMED)
+ event_rewriter->OnKeyEvent(&key_event);
+ if (key_event.stopped_propagation())
return true;
ash::AcceleratorController* accelerator_controller =
ash::Shell::GetInstance()->accelerator_controller();
diff --git a/ash/accelerators/accelerator_filter.cc b/ash/accelerators/accelerator_filter.cc
index 51c4450..892beab 100644
--- a/ash/accelerators/accelerator_filter.cc
+++ b/ash/accelerators/accelerator_filter.cc
@@ -67,12 +67,12 @@ AcceleratorFilter::~AcceleratorFilter() {
////////////////////////////////////////////////////////////////////////////////
// AcceleratorFilter, EventFilter implementation:
-ui::EventResult AcceleratorFilter::OnKeyEvent(ui::KeyEvent* event) {
+void AcceleratorFilter::OnKeyEvent(ui::KeyEvent* event) {
const ui::EventType type = event->type();
if (type != ui::ET_KEY_PRESSED && type != ui::ET_KEY_RELEASED)
- return ui::ER_UNHANDLED;
+ return;
if (event->is_char())
- return ui::ER_UNHANDLED;
+ return;
ui::Accelerator accelerator(event->key_code(),
event->flags() & kModifierFlagMask);
@@ -85,9 +85,9 @@ ui::EventResult AcceleratorFilter::OnKeyEvent(ui::KeyEvent* event) {
aura::Window* target = static_cast<aura::Window*>(event->target());
if (!ShouldProcessAcceleratorsNow(accelerator, target))
- return ui::ER_UNHANDLED;
- return Shell::GetInstance()->accelerator_controller()->Process(accelerator) ?
- ui::ER_CONSUMED : ui::ER_UNHANDLED;
+ return;
+ if (Shell::GetInstance()->accelerator_controller()->Process(accelerator))
+ event->StopPropagation();
}
} // namespace internal
diff --git a/ash/accelerators/accelerator_filter.h b/ash/accelerators/accelerator_filter.h
index 2f125c4..a43241a 100644
--- a/ash/accelerators/accelerator_filter.h
+++ b/ash/accelerators/accelerator_filter.h
@@ -21,7 +21,7 @@ class ASH_EXPORT AcceleratorFilter : public ui::EventHandler {
virtual ~AcceleratorFilter();
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
private:
DISALLOW_COPY_AND_ASSIGN(AcceleratorFilter);
diff --git a/ash/drag_drop/drag_drop_controller.cc b/ash/drag_drop/drag_drop_controller.cc
index f3d0343..91aa4a7 100644
--- a/ash/drag_drop/drag_drop_controller.cc
+++ b/ash/drag_drop/drag_drop_controller.cc
@@ -285,12 +285,11 @@ bool DragDropController::IsDragDropInProgress() {
return !!drag_drop_tracker_.get();
}
-ui::EventResult DragDropController::OnKeyEvent(ui::KeyEvent* event) {
+void DragDropController::OnKeyEvent(ui::KeyEvent* event) {
if (IsDragDropInProgress() && event->key_code() == ui::VKEY_ESCAPE) {
DragCancel();
- return ui::ER_CONSUMED;
+ event->StopPropagation();
}
- return ui::ER_UNHANDLED;
}
ui::EventResult DragDropController::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/ash/drag_drop/drag_drop_controller.h b/ash/drag_drop/drag_drop_controller.h
index bef79a0..49dfb65ed 100644
--- a/ash/drag_drop/drag_drop_controller.h
+++ b/ash/drag_drop/drag_drop_controller.h
@@ -65,7 +65,7 @@ class ASH_EXPORT DragDropController
virtual bool IsDragDropInProgress() OVERRIDE;
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
virtual void OnTouchEvent(ui::TouchEvent* event) OVERRIDE;
virtual void OnGestureEvent(ui::GestureEvent* event) OVERRIDE;
diff --git a/ash/launcher/launcher_tooltip_manager_unittest.cc b/ash/launcher/launcher_tooltip_manager_unittest.cc
index e1464da..0fcbe28 100644
--- a/ash/launcher/launcher_tooltip_manager_unittest.cc
+++ b/ash/launcher/launcher_tooltip_manager_unittest.cc
@@ -156,8 +156,8 @@ TEST_F(LauncherTooltipManagerTest, ShouldHideForEvents) {
// Should not hide for key events.
ui::KeyEvent key_event(ui::ET_KEY_PRESSED, ui::VKEY_A, ui::EF_NONE, false);
SetEventTarget(root_window, &key_event);
- EXPECT_EQ(ui::ER_UNHANDLED,
- event_handler->OnKeyEvent(&key_event));
+ event_handler->OnKeyEvent(&key_event);
+ EXPECT_FALSE(key_event.handled());
EXPECT_TRUE(TooltipIsVisible());
// Should hide for touch events.
diff --git a/ash/tooltips/tooltip_controller.cc b/ash/tooltips/tooltip_controller.cc
index 21dcab5..ef80f9b 100644
--- a/ash/tooltips/tooltip_controller.cc
+++ b/ash/tooltips/tooltip_controller.cc
@@ -249,7 +249,7 @@ void TooltipController::SetTooltipsEnabled(bool enable) {
UpdateTooltip(tooltip_window_);
}
-ui::EventResult TooltipController::OnKeyEvent(ui::KeyEvent* event) {
+void TooltipController::OnKeyEvent(ui::KeyEvent* event) {
// On key press, we want to hide the tooltip and not show it until change.
// This is the same behavior as hiding tooltips on timeout. Hence, we can
// simply simulate a timeout.
@@ -257,7 +257,6 @@ ui::EventResult TooltipController::OnKeyEvent(ui::KeyEvent* event) {
tooltip_shown_timer_.Stop();
TooltipShownTimerFired();
}
- return ui::ER_UNHANDLED;
}
ui::EventResult TooltipController::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/ash/tooltips/tooltip_controller.h b/ash/tooltips/tooltip_controller.h
index d07f181..6ac7b27 100644
--- a/ash/tooltips/tooltip_controller.h
+++ b/ash/tooltips/tooltip_controller.h
@@ -44,7 +44,7 @@ class ASH_EXPORT TooltipController : public aura::client::TooltipClient,
virtual void SetTooltipsEnabled(bool enable) OVERRIDE;
// Overridden from ui::EventHandler.
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
virtual void OnTouchEvent(ui::TouchEvent* event) OVERRIDE;
diff --git a/ash/wm/activation_controller.cc b/ash/wm/activation_controller.cc
index 5544078..a17109e 100644
--- a/ash/wm/activation_controller.cc
+++ b/ash/wm/activation_controller.cc
@@ -272,8 +272,7 @@ void ActivationController::OnWindowFocused(aura::Window* gained_focus,
////////////////////////////////////////////////////////////////////////////////
// ActivationController, ui::EventHandler implementation:
-ui::EventResult ActivationController::OnKeyEvent(ui::KeyEvent* event) {
- return ui::ER_UNHANDLED;
+void ActivationController::OnKeyEvent(ui::KeyEvent* event) {
}
ui::EventResult ActivationController::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/ash/wm/activation_controller.h b/ash/wm/activation_controller.h
index 23fe737..f9b023f 100644
--- a/ash/wm/activation_controller.h
+++ b/ash/wm/activation_controller.h
@@ -75,7 +75,7 @@ class ASH_EXPORT ActivationController
private:
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
virtual void OnScrollEvent(ui::ScrollEvent* event) OVERRIDE;
virtual void OnTouchEvent(ui::TouchEvent* event) OVERRIDE;
diff --git a/ash/wm/event_rewriter_event_filter.cc b/ash/wm/event_rewriter_event_filter.cc
index fc36c0c..81ed7e5 100644
--- a/ash/wm/event_rewriter_event_filter.cc
+++ b/ash/wm/event_rewriter_event_filter.cc
@@ -20,25 +20,23 @@ void EventRewriterEventFilter::SetEventRewriterDelegate(
delegate_.swap(delegate);
}
-ui::EventResult EventRewriterEventFilter::OnKeyEvent(ui::KeyEvent* event) {
+void EventRewriterEventFilter::OnKeyEvent(ui::KeyEvent* event) {
if (!delegate_.get())
- return ui::ER_UNHANDLED;
+ return;
// Do not consume a translated key event which is generated by an IME.
if (event->type() == ui::ET_TRANSLATED_KEY_PRESS ||
event->type() == ui::ET_TRANSLATED_KEY_RELEASE) {
- return ui::ER_UNHANDLED;
+ return;
}
switch (delegate_->RewriteOrFilterKeyEvent(event)) {
case EventRewriterDelegate::ACTION_REWRITE_EVENT:
- return ui::ER_UNHANDLED;
+ break;
case EventRewriterDelegate::ACTION_DROP_EVENT:
- return ui::ER_CONSUMED;
+ event->StopPropagation();
+ break;
}
-
- NOTREACHED();
- return ui::ER_UNHANDLED;
}
ui::EventResult EventRewriterEventFilter::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/ash/wm/event_rewriter_event_filter.h b/ash/wm/event_rewriter_event_filter.h
index f839064..6939001 100644
--- a/ash/wm/event_rewriter_event_filter.h
+++ b/ash/wm/event_rewriter_event_filter.h
@@ -27,7 +27,7 @@ class ASH_EXPORT EventRewriterEventFilter : public ui::EventHandler {
private:
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
scoped_ptr<EventRewriterDelegate> delegate_;
diff --git a/ash/wm/overlay_event_filter.cc b/ash/wm/overlay_event_filter.cc
index 1a333b7..2319d2f 100644
--- a/ash/wm/overlay_event_filter.cc
+++ b/ash/wm/overlay_event_filter.cc
@@ -21,9 +21,9 @@ OverlayEventFilter::~OverlayEventFilter() {
delegate_ = NULL;
}
-ui::EventResult OverlayEventFilter::OnKeyEvent(ui::KeyEvent* event) {
+void OverlayEventFilter::OnKeyEvent(ui::KeyEvent* event) {
if (!delegate_)
- return ui::ER_UNHANDLED;
+ return;
// Do not consume a translated key event which is generated by an IME (e.g.,
// ui::VKEY_PROCESSKEY) since the key event is generated in response to a key
@@ -31,7 +31,7 @@ ui::EventResult OverlayEventFilter::OnKeyEvent(ui::KeyEvent* event) {
// confuse key event handling JavaScript code in a page.
if (event->type() == ui::ET_TRANSLATED_KEY_PRESS ||
event->type() == ui::ET_TRANSLATED_KEY_RELEASE) {
- return ui::ER_UNHANDLED;
+ return;
}
if (delegate_ && delegate_->IsCancelingKeyEvent(event))
@@ -46,7 +46,7 @@ ui::EventResult OverlayEventFilter::OnKeyEvent(ui::KeyEvent* event) {
// Always handled: other windows shouldn't receive input while we're
// displaying an overlay.
- return ui::ER_CONSUMED;
+ event->StopPropagation();
}
void OverlayEventFilter::OnLoginStateChanged(
diff --git a/ash/wm/overlay_event_filter.h b/ash/wm/overlay_event_filter.h
index 87c115c..1989e45 100644
--- a/ash/wm/overlay_event_filter.h
+++ b/ash/wm/overlay_event_filter.h
@@ -52,7 +52,7 @@ class OverlayEventFilter : public ui::EventHandler,
void Cancel();
// ui::EventHandler overrides:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
// ShellObserver overrides:
virtual void OnLoginStateChanged(user::LoginStatus status) OVERRIDE;
diff --git a/ash/wm/system_modal_container_event_filter.cc b/ash/wm/system_modal_container_event_filter.cc
index 5103d2d..da9600f 100644
--- a/ash/wm/system_modal_container_event_filter.cc
+++ b/ash/wm/system_modal_container_event_filter.cc
@@ -19,11 +19,10 @@ SystemModalContainerEventFilter::SystemModalContainerEventFilter(
SystemModalContainerEventFilter::~SystemModalContainerEventFilter() {
}
-ui::EventResult SystemModalContainerEventFilter::OnKeyEvent(
- ui::KeyEvent* event) {
+void SystemModalContainerEventFilter::OnKeyEvent(ui::KeyEvent* event) {
aura::Window* target = static_cast<aura::Window*>(event->target());
- return delegate_->CanWindowReceiveEvents(target) ? ui::ER_UNHANDLED :
- ui::ER_CONSUMED;
+ if (!delegate_->CanWindowReceiveEvents(target))
+ event->StopPropagation();
}
ui::EventResult SystemModalContainerEventFilter::OnMouseEvent(
diff --git a/ash/wm/system_modal_container_event_filter.h b/ash/wm/system_modal_container_event_filter.h
index 64653ee..f1ac513 100644
--- a/ash/wm/system_modal_container_event_filter.h
+++ b/ash/wm/system_modal_container_event_filter.h
@@ -22,7 +22,7 @@ class ASH_EXPORT SystemModalContainerEventFilter : public ui::EventHandler {
virtual ~SystemModalContainerEventFilter();
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
private:
diff --git a/ash/wm/toplevel_window_event_handler.cc b/ash/wm/toplevel_window_event_handler.cc
index 865fcda..96f26e2 100644
--- a/ash/wm/toplevel_window_event_handler.cc
+++ b/ash/wm/toplevel_window_event_handler.cc
@@ -123,12 +123,11 @@ ToplevelWindowEventHandler::~ToplevelWindowEventHandler() {
*destroyed_ = true;
}
-ui::EventResult ToplevelWindowEventHandler::OnKeyEvent(ui::KeyEvent* event) {
+void ToplevelWindowEventHandler::OnKeyEvent(ui::KeyEvent* event) {
if (window_resizer_.get() && event->type() == ui::ET_KEY_PRESSED &&
event->key_code() == ui::VKEY_ESCAPE) {
CompleteDrag(DRAG_REVERT, event->flags());
}
- return ui::ER_UNHANDLED;
}
ui::EventResult ToplevelWindowEventHandler::OnMouseEvent(
diff --git a/ash/wm/toplevel_window_event_handler.h b/ash/wm/toplevel_window_event_handler.h
index 4277cf4..1340937 100644
--- a/ash/wm/toplevel_window_event_handler.h
+++ b/ash/wm/toplevel_window_event_handler.h
@@ -38,7 +38,7 @@ class ASH_EXPORT ToplevelWindowEventHandler
virtual ~ToplevelWindowEventHandler();
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
virtual void OnGestureEvent(ui::GestureEvent* event) OVERRIDE;
diff --git a/ash/wm/user_activity_detector.cc b/ash/wm/user_activity_detector.cc
index 4338acc..6c55f89 100644
--- a/ash/wm/user_activity_detector.cc
+++ b/ash/wm/user_activity_detector.cc
@@ -34,9 +34,8 @@ void UserActivityDetector::OnAllOutputsTurnedOff() {
ignore_next_mouse_event_ = true;
}
-ui::EventResult UserActivityDetector::OnKeyEvent(ui::KeyEvent* event) {
+void UserActivityDetector::OnKeyEvent(ui::KeyEvent* event) {
MaybeNotify();
- return ui::ER_UNHANDLED;
}
ui::EventResult UserActivityDetector::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/ash/wm/user_activity_detector.h b/ash/wm/user_activity_detector.h
index 89a2518..9d8ec28 100644
--- a/ash/wm/user_activity_detector.h
+++ b/ash/wm/user_activity_detector.h
@@ -35,7 +35,7 @@ class ASH_EXPORT UserActivityDetector : public ui::EventHandler {
void OnAllOutputsTurnedOff();
// ui::EventHandler implementation.
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
virtual void OnScrollEvent(ui::ScrollEvent* event) OVERRIDE;
virtual void OnTouchEvent(ui::TouchEvent* event) OVERRIDE;
diff --git a/ash/wm/user_activity_detector_unittest.cc b/ash/wm/user_activity_detector_unittest.cc
index 1e3105b..979c9ea 100644
--- a/ash/wm/user_activity_detector_unittest.cc
+++ b/ash/wm/user_activity_detector_unittest.cc
@@ -92,7 +92,8 @@ TEST_F(UserActivityDetectorTest, Basic) {
ui::KeyEvent key_event(ui::ET_KEY_PRESSED, ui::VKEY_A, ui::EF_NONE, false);
SetEventTarget(window.get(), &key_event);
- EXPECT_EQ(ui::ER_UNHANDLED, detector_->OnKeyEvent(&key_event));
+ detector_->OnKeyEvent(&key_event);
+ EXPECT_FALSE(key_event.handled());
EXPECT_EQ(1, observer_->num_invocations());
observer_->reset_stats();
@@ -141,13 +142,15 @@ TEST_F(UserActivityDetectorTest, RateLimitNotifications) {
// The observer should be notified about a key event.
ui::KeyEvent event(ui::ET_KEY_PRESSED, ui::VKEY_A, ui::EF_NONE, false);
SetEventTarget(window.get(), &event);
- EXPECT_FALSE(detector_->OnKeyEvent(&event));
+ detector_->OnKeyEvent(&event);
+ EXPECT_FALSE(event.handled());
EXPECT_EQ(1, observer_->num_invocations());
observer_->reset_stats();
// It shouldn't be notified if a second event occurs
// in the same instant in time.
- EXPECT_FALSE(detector_->OnKeyEvent(&event));
+ detector_->OnKeyEvent(&event);
+ EXPECT_FALSE(event.handled());
EXPECT_EQ(0, observer_->num_invocations());
observer_->reset_stats();
@@ -155,7 +158,8 @@ TEST_F(UserActivityDetectorTest, RateLimitNotifications) {
AdvanceTime(
base::TimeDelta::FromMilliseconds(
UserActivityDetector::kNotifyIntervalMs - 100));
- EXPECT_EQ(ui::ER_UNHANDLED, detector_->OnKeyEvent(&event));
+ detector_->OnKeyEvent(&event);
+ EXPECT_FALSE(event.handled());
EXPECT_EQ(0, observer_->num_invocations());
observer_->reset_stats();
@@ -164,7 +168,8 @@ TEST_F(UserActivityDetectorTest, RateLimitNotifications) {
AdvanceTime(base::TimeDelta::FromMilliseconds(
UserActivityDetector::kNotifyIntervalMs));
- EXPECT_EQ(ui::ER_UNHANDLED, detector_->OnKeyEvent(&event));
+ detector_->OnKeyEvent(&event);
+ EXPECT_FALSE(event.handled());
EXPECT_EQ(1, observer_->num_invocations());
}
diff --git a/ash/wm/window_cycle_controller.cc b/ash/wm/window_cycle_controller.cc
index 4158451..2aae2a6 100644
--- a/ash/wm/window_cycle_controller.cc
+++ b/ash/wm/window_cycle_controller.cc
@@ -34,7 +34,7 @@ class WindowCycleEventFilter : public ui::EventHandler {
virtual ~WindowCycleEventFilter();
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
private:
DISALLOW_COPY_AND_ASSIGN(WindowCycleEventFilter);
};
@@ -46,14 +46,13 @@ WindowCycleEventFilter::WindowCycleEventFilter() {
WindowCycleEventFilter::~WindowCycleEventFilter() {
}
-ui::EventResult WindowCycleEventFilter::OnKeyEvent(ui::KeyEvent* event) {
+void WindowCycleEventFilter::OnKeyEvent(ui::KeyEvent* event) {
// Views uses VKEY_MENU for both left and right Alt keys.
if (event->key_code() == ui::VKEY_MENU &&
event->type() == ui::ET_KEY_RELEASED) {
Shell::GetInstance()->window_cycle_controller()->AltKeyReleased();
// Warning: |this| will be deleted from here on.
}
- return ui::ER_UNHANDLED; // Always let the event propagate.
}
// Adds all the children of |window| to |windows|.
diff --git a/ash/wm/window_manager_unittest.cc b/ash/wm/window_manager_unittest.cc
index 98568e4..773a4a6 100644
--- a/ash/wm/window_manager_unittest.cc
+++ b/ash/wm/window_manager_unittest.cc
@@ -54,9 +54,12 @@ class CustomEventHandler : public aura::test::TestEventHandler {
}
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE {
- ui::EventResult result = aura::test::TestEventHandler::OnKeyEvent(event);
- return key_result_ == ui::ER_UNHANDLED ? result : key_result_;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE {
+ aura::test::TestEventHandler::OnKeyEvent(event);
+ if (key_result_ & ui::ER_HANDLED)
+ event->SetHandled();
+ if (key_result_ & ui::ER_CONSUMED)
+ event->StopPropagation();
}
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE {
diff --git a/ash/wm/workspace/frame_maximize_button.cc b/ash/wm/workspace/frame_maximize_button.cc
index f650cdb..bf25172 100644
--- a/ash/wm/workspace/frame_maximize_button.cc
+++ b/ash/wm/workspace/frame_maximize_button.cc
@@ -47,7 +47,7 @@ class FrameMaximizeButton::EscapeEventFilter : public ui::EventHandler {
virtual ~EscapeEventFilter();
// EventFilter overrides:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
private:
FrameMaximizeButton* button_;
@@ -65,13 +65,12 @@ FrameMaximizeButton::EscapeEventFilter::~EscapeEventFilter() {
Shell::GetInstance()->RemovePreTargetHandler(this);
}
-ui::EventResult FrameMaximizeButton::EscapeEventFilter::OnKeyEvent(
+void FrameMaximizeButton::EscapeEventFilter::OnKeyEvent(
ui::KeyEvent* event) {
if (event->type() == ui::ET_KEY_PRESSED &&
event->key_code() == ui::VKEY_ESCAPE) {
button_->Cancel(false);
}
- return ui::ER_UNHANDLED;
}
// FrameMaximizeButton ---------------------------------------------------------
diff --git a/chrome/browser/extensions/api/input/input.cc b/chrome/browser/extensions/api/input/input.cc
index e25f580..43c0e30 100644
--- a/chrome/browser/extensions/api/input/input.cc
+++ b/chrome/browser/extensions/api/input/input.cc
@@ -122,9 +122,12 @@ bool SendKeyboardEventInputFunction::RunImpl() {
views::InputMethod* ime = widget->GetInputMethod();
if (ime) {
ime->DispatchKeyEvent(event);
- } else if (!widget->OnKeyEvent(event)) {
- error_ = kKeyEventUnprocessedError;
- return false;
+ } else {
+ widget->OnKeyEvent(&event);
+ if (event.handled()) {
+ error_ = kKeyEventUnprocessedError;
+ return false;
+ }
}
return true;
diff --git a/content/browser/renderer_host/render_widget_host_view_aura.cc b/content/browser/renderer_host/render_widget_host_view_aura.cc
index aa07886..180c243 100644
--- a/content/browser/renderer_host/render_widget_host_view_aura.cc
+++ b/content/browser/renderer_host/render_widget_host_view_aura.cc
@@ -1460,11 +1460,13 @@ scoped_refptr<ui::Texture> RenderWidgetHostViewAura::CopyTexture() {
////////////////////////////////////////////////////////////////////////////////
// RenderWidgetHostViewAura, ui::EventHandler implementation:
-ui::EventResult RenderWidgetHostViewAura::OnKeyEvent(ui::KeyEvent* event) {
+void RenderWidgetHostViewAura::OnKeyEvent(ui::KeyEvent* event) {
TRACE_EVENT0("browser", "RenderWidgetHostViewAura::OnKeyEvent");
- if (popup_child_host_view_ && popup_child_host_view_->NeedsInputGrab() &&
- popup_child_host_view_->OnKeyEvent(event))
- return ui::ER_HANDLED;
+ if (popup_child_host_view_ && popup_child_host_view_->NeedsInputGrab()) {
+ popup_child_host_view_->OnKeyEvent(event);
+ if (event->handled())
+ return;
+ }
// We need to handle the Escape key for Pepper Flash.
if (is_fullscreen_ && event->key_code() == ui::VKEY_ESCAPE) {
@@ -1497,7 +1499,7 @@ ui::EventResult RenderWidgetHostViewAura::OnKeyEvent(ui::KeyEvent* event) {
host_->ForwardKeyboardEvent(webkit_event);
}
}
- return ui::ER_HANDLED;
+ event->SetHandled();
}
ui::EventResult RenderWidgetHostViewAura::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/content/browser/renderer_host/render_widget_host_view_aura.h b/content/browser/renderer_host/render_widget_host_view_aura.h
index 710c5cf..c078ffb 100644
--- a/content/browser/renderer_host/render_widget_host_view_aura.h
+++ b/content/browser/renderer_host/render_widget_host_view_aura.h
@@ -196,7 +196,7 @@ class RenderWidgetHostViewAura
virtual scoped_refptr<ui::Texture> CopyTexture() OVERRIDE;
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
virtual void OnScrollEvent(ui::ScrollEvent* event) OVERRIDE;
virtual void OnTouchEvent(ui::TouchEvent* event) OVERRIDE;
diff --git a/content/browser/web_contents/web_contents_view_aura.cc b/content/browser/web_contents/web_contents_view_aura.cc
index 03e2eb8..c31128b 100644
--- a/content/browser/web_contents/web_contents_view_aura.cc
+++ b/content/browser/web_contents/web_contents_view_aura.cc
@@ -908,8 +908,7 @@ scoped_refptr<ui::Texture> WebContentsViewAura::CopyTexture() {
////////////////////////////////////////////////////////////////////////////////
// WebContentsViewAura, ui::EventHandler implementation:
-ui::EventResult WebContentsViewAura::OnKeyEvent(ui::KeyEvent* event) {
- return ui::ER_UNHANDLED;
+void WebContentsViewAura::OnKeyEvent(ui::KeyEvent* event) {
}
ui::EventResult WebContentsViewAura::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/content/browser/web_contents/web_contents_view_aura.h b/content/browser/web_contents/web_contents_view_aura.h
index b2fec96..6b2a1d0 100644
--- a/content/browser/web_contents/web_contents_view_aura.h
+++ b/content/browser/web_contents/web_contents_view_aura.h
@@ -151,7 +151,7 @@ class CONTENT_EXPORT WebContentsViewAura
virtual scoped_refptr<ui::Texture> CopyTexture() OVERRIDE;
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
// Overridden from aura::client::DragDropDelegate:
diff --git a/ui/aura/root_window_unittest.cc b/ui/aura/root_window_unittest.cc
index e76c787c..9f97cb7 100644
--- a/ui/aura/root_window_unittest.cc
+++ b/ui/aura/root_window_unittest.cc
@@ -81,9 +81,9 @@ class ConsumeKeyHandler : public test::TestEventHandler {
virtual ~ConsumeKeyHandler() {}
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE {
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE {
test::TestEventHandler::OnKeyEvent(event);
- return ui::ER_CONSUMED;
+ event->StopPropagation();
}
private:
@@ -441,9 +441,8 @@ class EventFilterRecorder : public ui::EventHandler {
Events& events() { return events_; }
// ui::EventHandler overrides:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE {
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE {
events_.push_back(event->type());
- return ui::ER_UNHANDLED;
}
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE {
@@ -640,10 +639,9 @@ class DeletingEventFilter : public ui::EventHandler {
private:
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE {
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE {
if (delete_during_pre_handle_)
delete event->target();
- return ui::ER_UNHANDLED;
}
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE {
@@ -674,11 +672,10 @@ class DeletingWindowDelegate : public test::TestWindowDelegate {
private:
// Overridden from WindowDelegate:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE {
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE {
if (delete_during_handle_)
delete window_;
got_event_ = true;
- return ui::ER_UNHANDLED;
}
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE {
diff --git a/ui/aura/test/test_event_handler.cc b/ui/aura/test/test_event_handler.cc
index 910b301..8e05579 100644
--- a/ui/aura/test/test_event_handler.cc
+++ b/ui/aura/test/test_event_handler.cc
@@ -25,9 +25,8 @@ void TestEventHandler::Reset() {
num_gesture_events_ = 0;
}
-ui::EventResult TestEventHandler::OnKeyEvent(ui::KeyEvent* event) {
+void TestEventHandler::OnKeyEvent(ui::KeyEvent* event) {
num_key_events_++;
- return ui::ER_UNHANDLED;
}
ui::EventResult TestEventHandler::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/ui/aura/test/test_event_handler.h b/ui/aura/test/test_event_handler.h
index c934136..443232d 100644
--- a/ui/aura/test/test_event_handler.h
+++ b/ui/aura/test/test_event_handler.h
@@ -28,7 +28,7 @@ class TestEventHandler : public ui::EventHandler {
void Reset();
// ui::EventHandler overrides:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
virtual void OnScrollEvent(ui::ScrollEvent* event) OVERRIDE;
virtual void OnTouchEvent(ui::TouchEvent* event) OVERRIDE;
diff --git a/ui/aura/test/test_window_delegate.cc b/ui/aura/test/test_window_delegate.cc
index eb34561..155e343 100644
--- a/ui/aura/test/test_window_delegate.cc
+++ b/ui/aura/test/test_window_delegate.cc
@@ -102,16 +102,19 @@ ColorTestWindowDelegate::ColorTestWindowDelegate(SkColor color)
: color_(color),
last_key_code_(ui::VKEY_UNKNOWN) {
}
+
ColorTestWindowDelegate::~ColorTestWindowDelegate() {
}
-ui::EventResult ColorTestWindowDelegate::OnKeyEvent(ui::KeyEvent* event) {
+void ColorTestWindowDelegate::OnKeyEvent(ui::KeyEvent* event) {
last_key_code_ = event->key_code();
- return ui::ER_HANDLED;
+ event->SetHandled();
}
+
void ColorTestWindowDelegate::OnWindowDestroyed() {
delete this;
}
+
void ColorTestWindowDelegate::OnPaint(gfx::Canvas* canvas) {
canvas->DrawColor(color_, SkXfermode::kSrc_Mode);
}
@@ -144,7 +147,7 @@ EventCountDelegate::EventCountDelegate()
key_release_count_(0) {
}
-ui::EventResult EventCountDelegate::OnKeyEvent(ui::KeyEvent* event) {
+void EventCountDelegate::OnKeyEvent(ui::KeyEvent* event) {
switch (event->type()) {
case ui::ET_KEY_PRESSED:
key_press_count_++;
@@ -154,7 +157,6 @@ ui::EventResult EventCountDelegate::OnKeyEvent(ui::KeyEvent* event) {
default:
break;
}
- return ui::ER_UNHANDLED;
}
ui::EventResult EventCountDelegate::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/ui/aura/test/test_window_delegate.h b/ui/aura/test/test_window_delegate.h
index 209f98c..1abd955 100644
--- a/ui/aura/test/test_window_delegate.h
+++ b/ui/aura/test/test_window_delegate.h
@@ -78,7 +78,7 @@ class ColorTestWindowDelegate : public TestWindowDelegate {
ui::KeyboardCode last_key_code() const { return last_key_code_; }
// Overridden from TestWindowDelegate:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual void OnWindowDestroyed() OVERRIDE;
virtual void OnPaint(gfx::Canvas* canvas) OVERRIDE;
@@ -110,7 +110,7 @@ class EventCountDelegate : public TestWindowDelegate {
EventCountDelegate();
// Overridden from TestWindowDelegate:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
// Returns the counts of mouse motion events in the
diff --git a/ui/base/events/event_dispatcher_unittest.cc b/ui/base/events/event_dispatcher_unittest.cc
index 1cc8ba6..41eed09 100644
--- a/ui/base/events/event_dispatcher_unittest.cc
+++ b/ui/base/events/event_dispatcher_unittest.cc
@@ -80,9 +80,9 @@ class TestEventHandler : public EventHandler {
private:
// Overridden from EventHandler:
- virtual EventResult OnKeyEvent(KeyEvent* event) OVERRIDE {
+ virtual void OnKeyEvent(KeyEvent* event) OVERRIDE {
ReceivedEvent(event);
- return event_result_;
+ SetStatusOnEvent(event);
}
virtual EventResult OnMouseEvent(MouseEvent* event) OVERRIDE {
diff --git a/ui/base/events/event_handler.cc b/ui/base/events/event_handler.cc
index df35e59..85ec7d5 100644
--- a/ui/base/events/event_handler.cc
+++ b/ui/base/events/event_handler.cc
@@ -23,7 +23,7 @@ EventHandler::~EventHandler() {
void EventHandler::OnEvent(Event* event) {
ui::EventResult result = ui::ER_UNHANDLED;
if (event->IsKeyEvent())
- result = OnKeyEvent(static_cast<KeyEvent*>(event));
+ OnKeyEvent(static_cast<KeyEvent*>(event));
else if (event->IsMouseEvent())
result = OnMouseEvent(static_cast<MouseEvent*>(event));
else if (event->IsScrollEvent())
@@ -39,8 +39,7 @@ void EventHandler::OnEvent(Event* event) {
event->SetHandled();
}
-EventResult EventHandler::OnKeyEvent(KeyEvent* event) {
- return ui::ER_UNHANDLED;
+void EventHandler::OnKeyEvent(KeyEvent* event) {
}
EventResult EventHandler::OnMouseEvent(MouseEvent* event) {
diff --git a/ui/base/events/event_handler.h b/ui/base/events/event_handler.h
index 233b5cb..1084889 100644
--- a/ui/base/events/event_handler.h
+++ b/ui/base/events/event_handler.h
@@ -36,7 +36,7 @@ class UI_EXPORT EventHandler {
// default implementation for un-handled events.
virtual void OnEvent(Event* event);
- virtual EventResult OnKeyEvent(KeyEvent* event);
+ virtual void OnKeyEvent(KeyEvent* event);
virtual EventResult OnMouseEvent(MouseEvent* event);
diff --git a/ui/base/events/event_target.cc b/ui/base/events/event_target.cc
index c587877..649c722 100644
--- a/ui/base/events/event_target.cc
+++ b/ui/base/events/event_target.cc
@@ -52,9 +52,10 @@ void EventTarget::OnEvent(Event* event) {
EventHandler::OnEvent(event);
}
-EventResult EventTarget::OnKeyEvent(KeyEvent* event) {
+void EventTarget::OnKeyEvent(KeyEvent* event) {
CHECK_EQ(this, event->target());
- return target_handler_ ? target_handler_->OnKeyEvent(event) : ER_UNHANDLED;
+ if (target_handler_)
+ target_handler_->OnKeyEvent(event);
}
EventResult EventTarget::OnMouseEvent(MouseEvent* event) {
diff --git a/ui/base/events/event_target.h b/ui/base/events/event_target.h
index 1bd5033..c54fa2b 100644
--- a/ui/base/events/event_target.h
+++ b/ui/base/events/event_target.h
@@ -73,7 +73,7 @@ class UI_EXPORT EventTarget : public EventHandler {
// Overridden from EventHandler:
virtual void OnEvent(Event* event) OVERRIDE;
- virtual EventResult OnKeyEvent(KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(KeyEvent* event) OVERRIDE;
virtual EventResult OnMouseEvent(MouseEvent* event) OVERRIDE;
virtual void OnScrollEvent(ScrollEvent* event) OVERRIDE;
virtual void OnTouchEvent(TouchEvent* event) OVERRIDE;
diff --git a/ui/views/corewm/compound_event_filter.cc b/ui/views/corewm/compound_event_filter.cc
index 9e857c6..0b77b28 100644
--- a/ui/views/corewm/compound_event_filter.cc
+++ b/ui/views/corewm/compound_event_filter.cc
@@ -139,15 +139,13 @@ void CompoundEventFilter::UpdateCursor(aura::Window* target,
}
}
-ui::EventResult CompoundEventFilter::FilterKeyEvent(ui::KeyEvent* event) {
- int result = ui::ER_UNHANDLED;
+void CompoundEventFilter::FilterKeyEvent(ui::KeyEvent* event) {
if (handlers_.might_have_observers()) {
ObserverListBase<ui::EventHandler>::Iterator it(handlers_);
ui::EventHandler* handler;
- while (!(result & ui::ER_CONSUMED) && (handler = it.GetNext()) != NULL)
- result |= handler->OnKeyEvent(event);
+ while (!event->stopped_propagation() && (handler = it.GetNext()) != NULL)
+ handler->OnKeyEvent(event);
}
- return static_cast<ui::EventResult>(result);
}
ui::EventResult CompoundEventFilter::FilterMouseEvent(ui::MouseEvent* event) {
@@ -192,13 +190,13 @@ void CompoundEventFilter::SetCursorVisibilityOnEvent(aura::Window* target,
////////////////////////////////////////////////////////////////////////////////
// CompoundEventFilter, ui::EventHandler implementation:
-ui::EventResult CompoundEventFilter::OnKeyEvent(ui::KeyEvent* event) {
+void CompoundEventFilter::OnKeyEvent(ui::KeyEvent* event) {
if (ShouldHideCursorOnKeyEvent(*event)) {
SetCursorVisibilityOnEvent(
static_cast<aura::Window*>(event->target()), event, false);
}
- return FilterKeyEvent(event);
+ FilterKeyEvent(event);
}
ui::EventResult CompoundEventFilter::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/ui/views/corewm/compound_event_filter.h b/ui/views/corewm/compound_event_filter.h
index 223b0b6..685c606 100644
--- a/ui/views/corewm/compound_event_filter.h
+++ b/ui/views/corewm/compound_event_filter.h
@@ -63,7 +63,7 @@ class VIEWS_EXPORT CompoundEventFilter : public ui::EventHandler {
void UpdateCursor(aura::Window* target, ui::MouseEvent* event);
// Dispatches event to additional filters.
- ui::EventResult FilterKeyEvent(ui::KeyEvent* event);
+ void FilterKeyEvent(ui::KeyEvent* event);
ui::EventResult FilterMouseEvent(ui::MouseEvent* event);
void FilterTouchEvent(ui::TouchEvent* event);
@@ -78,7 +78,7 @@ class VIEWS_EXPORT CompoundEventFilter : public ui::EventHandler {
bool show);
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
virtual void OnScrollEvent(ui::ScrollEvent* event) OVERRIDE;
virtual void OnTouchEvent(ui::TouchEvent* event) OVERRIDE;
diff --git a/ui/views/corewm/focus_controller.cc b/ui/views/corewm/focus_controller.cc
index 4f273af..b5bbd90 100644
--- a/ui/views/corewm/focus_controller.cc
+++ b/ui/views/corewm/focus_controller.cc
@@ -149,8 +149,7 @@ void FocusController::OnWindowHiddenInRootWindow(
////////////////////////////////////////////////////////////////////////////////
// FocusController, ui::EventHandler implementation:
-ui::EventResult FocusController::OnKeyEvent(ui::KeyEvent* event) {
- return ui::ER_UNHANDLED;
+void FocusController::OnKeyEvent(ui::KeyEvent* event) {
}
ui::EventResult FocusController::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/ui/views/corewm/focus_controller.h b/ui/views/corewm/focus_controller.h
index a14968a..afd45cd 100644
--- a/ui/views/corewm/focus_controller.h
+++ b/ui/views/corewm/focus_controller.h
@@ -71,7 +71,7 @@ class VIEWS_EXPORT FocusController : public aura::client::ActivationClient,
bool destroyed) OVERRIDE;
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
virtual void OnScrollEvent(ui::ScrollEvent* event) OVERRIDE;
virtual void OnTouchEvent(ui::TouchEvent* event) OVERRIDE;
diff --git a/ui/views/corewm/input_method_event_filter.cc b/ui/views/corewm/input_method_event_filter.cc
index f80d3ca..d7a1d38 100644
--- a/ui/views/corewm/input_method_event_filter.cc
+++ b/ui/views/corewm/input_method_event_filter.cc
@@ -37,14 +37,13 @@ void InputMethodEventFilter::SetInputMethodPropertyInRootWindow(
////////////////////////////////////////////////////////////////////////////////
// InputMethodEventFilter, EventFilter implementation:
-ui::EventResult InputMethodEventFilter::OnKeyEvent(ui::KeyEvent* event) {
+void InputMethodEventFilter::OnKeyEvent(ui::KeyEvent* event) {
const ui::EventType type = event->type();
if (type == ui::ET_TRANSLATED_KEY_PRESS ||
type == ui::ET_TRANSLATED_KEY_RELEASE) {
// The |event| is already handled by this object, change the type of the
// event to ui::ET_KEY_* and pass it to the next filter.
static_cast<ui::TranslatedKeyEvent*>(event)->ConvertToKeyEvent();
- return ui::ER_UNHANDLED;
} else {
// If the focused window is changed, all requests to IME will be
// discarded so it's safe to update the target_root_window_ here.
@@ -55,7 +54,7 @@ ui::EventResult InputMethodEventFilter::OnKeyEvent(ui::KeyEvent* event) {
input_method_->DispatchKeyEvent(event->native_event());
else
input_method_->DispatchFabricatedKeyEvent(*event);
- return ui::ER_CONSUMED;
+ event->StopPropagation();
}
}
diff --git a/ui/views/corewm/input_method_event_filter.h b/ui/views/corewm/input_method_event_filter.h
index c0d3a94..67633fc 100644
--- a/ui/views/corewm/input_method_event_filter.h
+++ b/ui/views/corewm/input_method_event_filter.h
@@ -39,7 +39,7 @@ class VIEWS_EXPORT InputMethodEventFilter
private:
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
// Overridden from ui::internal::InputMethodDelegate.
virtual void DispatchKeyEventPostIME(const base::NativeEvent& event) OVERRIDE;
diff --git a/ui/views/corewm/window_modality_controller.cc b/ui/views/corewm/window_modality_controller.cc
index dd91a20..c6b2a37 100644
--- a/ui/views/corewm/window_modality_controller.cc
+++ b/ui/views/corewm/window_modality_controller.cc
@@ -103,9 +103,10 @@ WindowModalityController::~WindowModalityController() {
////////////////////////////////////////////////////////////////////////////////
// WindowModalityController, aura::EventFilter implementation:
-ui::EventResult WindowModalityController::OnKeyEvent(ui::KeyEvent* event) {
+void WindowModalityController::OnKeyEvent(ui::KeyEvent* event) {
aura::Window* target = static_cast<aura::Window*>(event->target());
- return GetModalTransient(target) ? ui::ER_CONSUMED : ui::ER_UNHANDLED;
+ if (GetModalTransient(target))
+ event->StopPropagation();
}
ui::EventResult WindowModalityController::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/ui/views/corewm/window_modality_controller.h b/ui/views/corewm/window_modality_controller.h
index d6efc02..29fa047 100644
--- a/ui/views/corewm/window_modality_controller.h
+++ b/ui/views/corewm/window_modality_controller.h
@@ -38,7 +38,7 @@ class VIEWS_EXPORT WindowModalityController : public ui::EventHandler,
virtual ~WindowModalityController();
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
virtual void OnTouchEvent(ui::TouchEvent* event) OVERRIDE;
diff --git a/ui/views/view.cc b/ui/views/view.cc
index 2fb4fdf..b40faee 100644
--- a/ui/views/view.cc
+++ b/ui/views/view.cc
@@ -867,8 +867,7 @@ bool View::OnMouseWheel(const ui::MouseWheelEvent& event) {
return false;
}
-ui::EventResult View::OnKeyEvent(ui::KeyEvent* event) {
- return ui::ER_UNHANDLED;
+void View::OnKeyEvent(ui::KeyEvent* event) {
}
ui::EventResult View::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/ui/views/view.h b/ui/views/view.h
index d19bec6..6acbd05 100644
--- a/ui/views/view.h
+++ b/ui/views/view.h
@@ -651,7 +651,7 @@ class VIEWS_EXPORT View : public ui::LayerDelegate,
virtual ui::EventTarget* GetParentTarget() OVERRIDE;
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
virtual void OnScrollEvent(ui::ScrollEvent* event) OVERRIDE;
virtual void OnTouchEvent(ui::TouchEvent* event) OVERRIDE;
diff --git a/ui/views/widget/desktop_aura/desktop_activation_client.cc b/ui/views/widget/desktop_aura/desktop_activation_client.cc
index 0581e1b..181f1dd 100644
--- a/ui/views/widget/desktop_aura/desktop_activation_client.cc
+++ b/ui/views/widget/desktop_aura/desktop_activation_client.cc
@@ -158,8 +158,7 @@ bool DesktopActivationClient::CanActivateWindow(aura::Window* window) const {
aura::client::GetActivationDelegate(window)->ShouldActivate());
}
-ui::EventResult DesktopActivationClient::OnKeyEvent(ui::KeyEvent* event) {
- return ui::ER_UNHANDLED;
+void DesktopActivationClient::OnKeyEvent(ui::KeyEvent* event) {
}
ui::EventResult DesktopActivationClient::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/ui/views/widget/desktop_aura/desktop_activation_client.h b/ui/views/widget/desktop_aura/desktop_activation_client.h
index b4d5759..9d426f0 100644
--- a/ui/views/widget/desktop_aura/desktop_activation_client.h
+++ b/ui/views/widget/desktop_aura/desktop_activation_client.h
@@ -60,7 +60,7 @@ class VIEWS_EXPORT DesktopActivationClient
aura::Window* lost_focus) OVERRIDE;
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
virtual void OnScrollEvent(ui::ScrollEvent* event) OVERRIDE;
virtual void OnTouchEvent(ui::TouchEvent* event) OVERRIDE;
diff --git a/ui/views/widget/desktop_aura/desktop_native_widget_aura.cc b/ui/views/widget/desktop_aura/desktop_native_widget_aura.cc
index 9d706bc..36c4fba 100644
--- a/ui/views/widget/desktop_aura/desktop_native_widget_aura.cc
+++ b/ui/views/widget/desktop_aura/desktop_native_widget_aura.cc
@@ -544,27 +544,26 @@ scoped_refptr<ui::Texture> DesktopNativeWidgetAura::CopyTexture() {
////////////////////////////////////////////////////////////////////////////////
// DesktopNativeWidgetAura, ui::EventHandler implementation:
-ui::EventResult DesktopNativeWidgetAura::OnKeyEvent(ui::KeyEvent* event) {
+void DesktopNativeWidgetAura::OnKeyEvent(ui::KeyEvent* event) {
if (event->is_char()) {
// If a ui::InputMethod object is attached to the root window, character
// events are handled inside the object and are not passed to this function.
// If such object is not attached, character events might be sent (e.g. on
// Windows). In this case, we just skip these.
- return ui::ER_UNHANDLED;
+ return;
}
// Renderer may send a key event back to us if the key event wasn't handled,
// and the window may be invisible by that time.
if (!window_->IsVisible())
- return ui::ER_UNHANDLED;
+ return;
- if (native_widget_delegate_->OnKeyEvent(*event))
- return ui::ER_HANDLED;
+ native_widget_delegate_->OnKeyEvent(event);
+ if (event->handled())
+ return;
if (GetWidget()->HasFocusManager() &&
!GetWidget()->GetFocusManager()->OnKeyEvent(*event))
- return ui::ER_HANDLED;
-
- return ui::ER_UNHANDLED;
+ event->SetHandled();
}
ui::EventResult DesktopNativeWidgetAura::OnMouseEvent(ui::MouseEvent* event) {
@@ -671,7 +670,8 @@ void DesktopNativeWidgetAura::OnWindowFocused(aura::Window* gained_focus,
void DesktopNativeWidgetAura::DispatchKeyEventPostIME(const ui::KeyEvent& key) {
FocusManager* focus_manager =
native_widget_delegate_->AsWidget()->GetFocusManager();
- if (native_widget_delegate_->OnKeyEvent(key) || !focus_manager)
+ native_widget_delegate_->OnKeyEvent(const_cast<ui::KeyEvent*>(&key));
+ if (key.handled() || !focus_manager)
return;
focus_manager->OnKeyEvent(key);
}
diff --git a/ui/views/widget/desktop_aura/desktop_native_widget_aura.h b/ui/views/widget/desktop_aura/desktop_native_widget_aura.h
index b81c77b..38c5fad 100644
--- a/ui/views/widget/desktop_aura/desktop_native_widget_aura.h
+++ b/ui/views/widget/desktop_aura/desktop_native_widget_aura.h
@@ -171,7 +171,7 @@ class VIEWS_EXPORT DesktopNativeWidgetAura
virtual scoped_refptr<ui::Texture> CopyTexture() OVERRIDE;
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
virtual void OnScrollEvent(ui::ScrollEvent* event) OVERRIDE;
virtual void OnTouchEvent(ui::TouchEvent* event) OVERRIDE;
diff --git a/ui/views/widget/native_widget_aura.cc b/ui/views/widget/native_widget_aura.cc
index 52c7748..e9b29c5 100644
--- a/ui/views/widget/native_widget_aura.cc
+++ b/ui/views/widget/native_widget_aura.cc
@@ -647,7 +647,8 @@ ui::NativeTheme* NativeWidgetAura::GetNativeTheme() const {
void NativeWidgetAura::DispatchKeyEventPostIME(const ui::KeyEvent& key) {
FocusManager* focus_manager = GetWidget()->GetFocusManager();
- if (delegate_->OnKeyEvent(key) || !focus_manager)
+ delegate_->OnKeyEvent(const_cast<ui::KeyEvent*>(&key));
+ if (key.handled() || !focus_manager)
return;
focus_manager->OnKeyEvent(key);
}
@@ -768,20 +769,20 @@ scoped_refptr<ui::Texture> NativeWidgetAura::CopyTexture() {
////////////////////////////////////////////////////////////////////////////////
// NativeWidgetAura, ui::EventHandler implementation:
-ui::EventResult NativeWidgetAura::OnKeyEvent(ui::KeyEvent* event) {
+void NativeWidgetAura::OnKeyEvent(ui::KeyEvent* event) {
if (event->is_char()) {
// If a ui::InputMethod object is attached to the root window, character
// events are handled inside the object and are not passed to this function.
// If such object is not attached, character events might be sent (e.g. on
// Windows). In this case, we just skip these.
- return ui::ER_UNHANDLED;
+ return;
}
// Renderer may send a key event back to us if the key event wasn't handled,
// and the window may be invisible by that time.
if (!window_->IsVisible())
- return ui::ER_UNHANDLED;
+ return;
GetWidget()->GetInputMethod()->DispatchKeyEvent(*event);
- return ui::ER_HANDLED;
+ event->SetHandled();
}
ui::EventResult NativeWidgetAura::OnMouseEvent(ui::MouseEvent* event) {
diff --git a/ui/views/widget/native_widget_aura.h b/ui/views/widget/native_widget_aura.h
index 3910f61..1796fab 100644
--- a/ui/views/widget/native_widget_aura.h
+++ b/ui/views/widget/native_widget_aura.h
@@ -156,7 +156,7 @@ class VIEWS_EXPORT NativeWidgetAura
virtual scoped_refptr<ui::Texture> CopyTexture() OVERRIDE;
// Overridden from ui::EventHandler:
- virtual ui::EventResult OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual ui::EventResult OnMouseEvent(ui::MouseEvent* event) OVERRIDE;
virtual void OnScrollEvent(ui::ScrollEvent* event) OVERRIDE;
virtual void OnTouchEvent(ui::TouchEvent* event) OVERRIDE;
diff --git a/ui/views/widget/native_widget_delegate.h b/ui/views/widget/native_widget_delegate.h
index e23a8d5..a29b095 100644
--- a/ui/views/widget/native_widget_delegate.h
+++ b/ui/views/widget/native_widget_delegate.h
@@ -106,7 +106,7 @@ class VIEWS_EXPORT NativeWidgetDelegate {
virtual int GetNonClientComponent(const gfx::Point& point) = 0;
// Mouse and key event handlers.
- virtual bool OnKeyEvent(const ui::KeyEvent& event) = 0;
+ virtual void OnKeyEvent(ui::KeyEvent* event) = 0;
virtual bool OnMouseEvent(const ui::MouseEvent& event) = 0;
virtual void OnMouseCaptureLost() = 0;
diff --git a/ui/views/widget/native_widget_win.cc b/ui/views/widget/native_widget_win.cc
index d83af80..061cb7a 100644
--- a/ui/views/widget/native_widget_win.cc
+++ b/ui/views/widget/native_widget_win.cc
@@ -764,7 +764,8 @@ bool NativeWidgetWin::HandleMouseEvent(const ui::MouseEvent& event) {
}
bool NativeWidgetWin::HandleKeyEvent(const ui::KeyEvent& event) {
- return delegate_->OnKeyEvent(event);
+ delegate_->OnKeyEvent(const_cast<ui::KeyEvent*>(&event));
+ return event.handled();
}
bool NativeWidgetWin::HandleUntranslatedKeyEvent(const ui::KeyEvent& event) {
diff --git a/ui/views/widget/root_view.cc b/ui/views/widget/root_view.cc
index 03dc04a..5b0de0b 100644
--- a/ui/views/widget/root_view.cc
+++ b/ui/views/widget/root_view.cc
@@ -111,7 +111,7 @@ void RootView::NotifyNativeViewHierarchyChanged(bool attached,
// Input -----------------------------------------------------------------------
-ui::EventResult RootView::DispatchKeyEvent(const ui::KeyEvent& event) {
+void RootView::DispatchKeyEvent(ui::KeyEvent* event) {
bool consumed = false;
View* v = NULL;
@@ -119,17 +119,19 @@ ui::EventResult RootView::DispatchKeyEvent(const ui::KeyEvent& event) {
v = GetFocusManager()->GetFocusedView();
// Special case to handle right-click context menus triggered by the
// keyboard.
- if (v && v->enabled() && ((event.key_code() == ui::VKEY_APPS) ||
- (event.key_code() == ui::VKEY_F10 && event.IsShiftDown()))) {
+ if (v && v->enabled() && ((event->key_code() == ui::VKEY_APPS) ||
+ (event->key_code() == ui::VKEY_F10 && event->IsShiftDown()))) {
v->ShowContextMenu(v->GetKeyboardContextMenuLocation(), false);
- return ui::ER_CONSUMED;
+ event->StopPropagation();
+ return;
}
for (; v && v != this && !consumed; v = v->parent()) {
- consumed = (event.type() == ui::ET_KEY_PRESSED) ?
- v->OnKeyPressed(event) : v->OnKeyReleased(event);
+ consumed = (event->type() == ui::ET_KEY_PRESSED) ?
+ v->OnKeyPressed(*event) : v->OnKeyReleased(*event);
}
- return consumed ? ui::ER_CONSUMED : ui::ER_UNHANDLED;
+ if (consumed)
+ event->StopPropagation();
}
void RootView::DispatchScrollEvent(ui::ScrollEvent* event) {
diff --git a/ui/views/widget/root_view.h b/ui/views/widget/root_view.h
index 1ee1b26..e8be227 100644
--- a/ui/views/widget/root_view.h
+++ b/ui/views/widget/root_view.h
@@ -61,7 +61,7 @@ class VIEWS_EXPORT RootView : public View, public FocusTraversable {
// Process a key event. Send the event to the focused view and up the focus
// path, and finally to the default keyboard handler, until someone consumes
// it. Returns whether anyone consumed the event.
- ui::EventResult DispatchKeyEvent(const ui::KeyEvent& event);
+ void DispatchKeyEvent(ui::KeyEvent* event);
void DispatchScrollEvent(ui::ScrollEvent* event);
void DispatchTouchEvent(ui::TouchEvent* event);
virtual void DispatchGestureEvent(ui::GestureEvent* event);
diff --git a/ui/views/widget/widget.cc b/ui/views/widget/widget.cc
index 4ecf46b..627e1cd 100644
--- a/ui/views/widget/widget.cc
+++ b/ui/views/widget/widget.cc
@@ -1111,10 +1111,10 @@ int Widget::GetNonClientComponent(const gfx::Point& point) {
HTNOWHERE;
}
-bool Widget::OnKeyEvent(const ui::KeyEvent& event) {
- ScopedEvent scoped(this, event);
- return static_cast<internal::RootView*>(GetRootView())->
- DispatchKeyEvent(event) != ui::ER_UNHANDLED;
+void Widget::OnKeyEvent(ui::KeyEvent* event) {
+ ScopedEvent scoped(this, *event);
+ static_cast<internal::RootView*>(GetRootView())->
+ DispatchKeyEvent(event);
}
bool Widget::OnMouseEvent(const ui::MouseEvent& event) {
diff --git a/ui/views/widget/widget.h b/ui/views/widget/widget.h
index 93d258b..b74d0da 100644
--- a/ui/views/widget/widget.h
+++ b/ui/views/widget/widget.h
@@ -667,7 +667,7 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
const gfx::Rect& dirty_region) OVERRIDE;
virtual void OnNativeWidgetPaint(gfx::Canvas* canvas) OVERRIDE;
virtual int GetNonClientComponent(const gfx::Point& point) OVERRIDE;
- virtual bool OnKeyEvent(const ui::KeyEvent& event) OVERRIDE;
+ virtual void OnKeyEvent(ui::KeyEvent* event) OVERRIDE;
virtual bool OnMouseEvent(const ui::MouseEvent& event) OVERRIDE;
virtual void OnMouseCaptureLost() OVERRIDE;
virtual void OnTouchEvent(ui::TouchEvent* event) OVERRIDE;
diff --git a/ui/views/widget/widget_unittest.cc b/ui/views/widget/widget_unittest.cc
index b57ccbd..5a001b8 100644
--- a/ui/views/widget/widget_unittest.cc
+++ b/ui/views/widget/widget_unittest.cc
@@ -1029,9 +1029,11 @@ TEST_F(WidgetTest, KeyboardInputEvent) {
// The press gets handled. The release doesn't have an effect.
ui::KeyEvent backspace_p(ui::ET_KEY_PRESSED, ui::VKEY_DELETE, 0, false);
- EXPECT_TRUE(toplevel->OnKeyEvent(backspace_p));
+ toplevel->OnKeyEvent(&backspace_p);
+ EXPECT_TRUE(backspace_p.stopped_propagation());
ui::KeyEvent backspace_r(ui::ET_KEY_RELEASED, ui::VKEY_DELETE, 0, false);
- EXPECT_FALSE(toplevel->OnKeyEvent(backspace_r));
+ toplevel->OnKeyEvent(&backspace_r);
+ EXPECT_FALSE(backspace_r.handled());
toplevel->Close();
}