summaryrefslogtreecommitdiffstats
path: root/ash/shell.cc
diff options
context:
space:
mode:
Diffstat (limited to 'ash/shell.cc')
-rw-r--r--ash/shell.cc8
1 files changed, 7 insertions, 1 deletions
diff --git a/ash/shell.cc b/ash/shell.cc
index a4053fc..84f1663 100644
--- a/ash/shell.cc
+++ b/ash/shell.cc
@@ -48,6 +48,7 @@
#include "ash/wm/screen_dimmer.h"
#include "ash/wm/shadow_controller.h"
#include "ash/wm/shelf_layout_manager.h"
+#include "ash/wm/slow_animation_event_filter.h"
#include "ash/wm/stacking_controller.h"
#include "ash/wm/status_area_layout_manager.h"
#include "ash/wm/system_gesture_event_filter.h"
@@ -557,11 +558,13 @@ Shell::Shell(ShellDelegate* delegate)
Shell::~Shell() {
views::FocusManagerFactory::Install(NULL);
+ // Please keep in same order as in Init() because it's easy to miss one.
RemoveRootWindowEventFilter(key_rewriter_filter_.get());
RemoveRootWindowEventFilter(partial_screenshot_filter_.get());
RemoveRootWindowEventFilter(input_method_filter_.get());
RemoveRootWindowEventFilter(window_modality_controller_.get());
RemoveRootWindowEventFilter(system_gesture_filter_.get());
+ RemoveRootWindowEventFilter(slow_animation_filter_.get());
#if !defined(OS_MACOSX)
RemoveRootWindowEventFilter(accelerator_filter_.get());
#endif
@@ -584,7 +587,7 @@ Shell::~Shell() {
system_tray_.reset();
tray_delegate_.reset();
- // Desroy secondary monitor's widgets before all the windows are destroyed.
+ // Destroy secondary monitor's widgets before all the windows are destroyed.
monitor_controller_.reset();
// Delete containers now so that child windows does not access
@@ -704,6 +707,9 @@ void Shell::Init() {
system_gesture_filter_.reset(new internal::SystemGestureEventFilter);
AddRootWindowEventFilter(system_gesture_filter_.get());
+ slow_animation_filter_.reset(new internal::SlowAnimationEventFilter);
+ AddRootWindowEventFilter(slow_animation_filter_.get());
+
root_window->SetCursor(ui::kCursorPointer);
if (initially_hide_cursor_)
root_window->ShowCursor(false);