OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "ash/root_window_controller.h" | 5 #include "ash/root_window_controller.h" |
6 | 6 |
7 #include <queue> | 7 #include <queue> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "ash/ash_constants.h" | 10 #include "ash/ash_constants.h" |
(...skipping 646 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
657 } | 657 } |
658 aura::Window* keyboard_container = | 658 aura::Window* keyboard_container = |
659 keyboard_controller->GetContainerWindow(); | 659 keyboard_controller->GetContainerWindow(); |
660 if (keyboard_container->GetRootWindow() == GetRootWindow()) { | 660 if (keyboard_container->GetRootWindow() == GetRootWindow()) { |
661 aura::Window* parent = | 661 aura::Window* parent = |
662 GetContainer(kShellWindowId_ImeWindowParentContainer); | 662 GetContainer(kShellWindowId_ImeWindowParentContainer); |
663 DCHECK(parent); | 663 DCHECK(parent); |
664 parent->RemoveChild(keyboard_container); | 664 parent->RemoveChild(keyboard_container); |
665 // Virtual keyboard may be deactivated while still showing, notify all | 665 // Virtual keyboard may be deactivated while still showing, notify all |
666 // observers that keyboard bounds changed to 0 before remove them. | 666 // observers that keyboard bounds changed to 0 before remove them. |
667 | |
668 // Shelf has already been shut down. Don't send a keyboard bounds changing | |
669 // notification to it. | |
stevenjb
2016/01/25 23:28:17
This is problematic. Since (presumably) shelf()->s
jdufault
2016/01/26 00:55:05
Reverted this change, the keyboard is now deinited
| |
670 keyboard_controller->RemoveObserver(shelf()->shelf_layout_manager()); | |
671 | |
667 keyboard_controller->NotifyKeyboardBoundsChanging(gfx::Rect()); | 672 keyboard_controller->NotifyKeyboardBoundsChanging(gfx::Rect()); |
668 keyboard_controller->RemoveObserver(shelf()->shelf_layout_manager()); | 673 |
669 keyboard_controller->RemoveObserver(panel_layout_manager_); | 674 keyboard_controller->RemoveObserver(panel_layout_manager_); |
670 keyboard_controller->RemoveObserver(docked_layout_manager_); | 675 keyboard_controller->RemoveObserver(docked_layout_manager_); |
671 keyboard_controller->RemoveObserver( | 676 keyboard_controller->RemoveObserver( |
672 workspace_controller_->layout_manager()); | 677 workspace_controller_->layout_manager()); |
673 keyboard_controller->RemoveObserver( | 678 keyboard_controller->RemoveObserver( |
674 always_on_top_controller_->GetLayoutManager()); | 679 always_on_top_controller_->GetLayoutManager()); |
675 Shell::GetInstance()->delegate()->VirtualKeyboardActivated(false); | 680 Shell::GetInstance()->delegate()->VirtualKeyboardActivated(false); |
676 } | 681 } |
677 } | 682 } |
678 | 683 |
(...skipping 378 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1057 else | 1062 else |
1058 DisableTouchHudProjection(); | 1063 DisableTouchHudProjection(); |
1059 } | 1064 } |
1060 | 1065 |
1061 RootWindowController* GetRootWindowController( | 1066 RootWindowController* GetRootWindowController( |
1062 const aura::Window* root_window) { | 1067 const aura::Window* root_window) { |
1063 return root_window ? GetRootWindowSettings(root_window)->controller : NULL; | 1068 return root_window ? GetRootWindowSettings(root_window)->controller : NULL; |
1064 } | 1069 } |
1065 | 1070 |
1066 } // namespace ash | 1071 } // namespace ash |
OLD | NEW |