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 <vector> | 7 #include <vector> |
8 | 8 |
9 #include "ash/ash_switches.h" | 9 #include "ash/ash_switches.h" |
10 #include "ash/desktop_background/desktop_background_widget_controller.h" | 10 #include "ash/desktop_background/desktop_background_widget_controller.h" |
(...skipping 473 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
484 return status_area->system_tray(); | 484 return status_area->system_tray(); |
485 } | 485 } |
486 | 486 |
487 void RootWindowController::ShowContextMenu( | 487 void RootWindowController::ShowContextMenu( |
488 const gfx::Point& location_in_screen) { | 488 const gfx::Point& location_in_screen) { |
489 aura::RootWindow* target = Shell::IsLauncherPerDisplayEnabled() ? | 489 aura::RootWindow* target = Shell::IsLauncherPerDisplayEnabled() ? |
490 root_window() : Shell::GetPrimaryRootWindow(); | 490 root_window() : Shell::GetPrimaryRootWindow(); |
491 DCHECK(Shell::GetInstance()->delegate()); | 491 DCHECK(Shell::GetInstance()->delegate()); |
492 scoped_ptr<ui::MenuModel> menu_model( | 492 scoped_ptr<ui::MenuModel> menu_model( |
493 Shell::GetInstance()->delegate()->CreateContextMenu(target)); | 493 Shell::GetInstance()->delegate()->CreateContextMenu(target)); |
| 494 if (!menu_model.get()) |
| 495 return; |
494 | 496 |
495 views::MenuModelAdapter menu_model_adapter(menu_model.get()); | 497 views::MenuModelAdapter menu_model_adapter(menu_model.get()); |
496 views::MenuRunner menu_runner(menu_model_adapter.CreateMenu()); | 498 views::MenuRunner menu_runner(menu_model_adapter.CreateMenu()); |
497 views::Widget* widget = | 499 views::Widget* widget = |
498 root_window_->GetProperty(kDesktopController)->widget(); | 500 root_window_->GetProperty(kDesktopController)->widget(); |
499 | 501 |
500 if (menu_runner.RunMenuAt( | 502 if (menu_runner.RunMenuAt( |
501 widget, NULL, gfx::Rect(location_in_screen, gfx::Size()), | 503 widget, NULL, gfx::Rect(location_in_screen, gfx::Size()), |
502 views::MenuItemView::TOPLEFT, views::MenuRunner::CONTEXT_MENU) == | 504 views::MenuItemView::TOPLEFT, views::MenuRunner::CONTEXT_MENU) == |
503 views::MenuRunner::MENU_DELETED) | 505 views::MenuRunner::MENU_DELETED) |
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
691 "OverlayContainer", | 693 "OverlayContainer", |
692 lock_screen_related_containers); | 694 lock_screen_related_containers); |
693 SetUsesScreenCoordinates(overlay_container); | 695 SetUsesScreenCoordinates(overlay_container); |
694 | 696 |
695 CreateContainer(kShellWindowId_PowerButtonAnimationContainer, | 697 CreateContainer(kShellWindowId_PowerButtonAnimationContainer, |
696 "PowerButtonAnimationContainer", root_window) ; | 698 "PowerButtonAnimationContainer", root_window) ; |
697 } | 699 } |
698 | 700 |
699 } // namespace internal | 701 } // namespace internal |
700 } // namespace ash | 702 } // namespace ash |
OLD | NEW |